1 /* specfunc/gsl_sf_lambert.h 2 * 3 * Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 Gerard Jungman 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation; either version 3 of the License, or (at 8 * your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, but 11 * WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 */ 19 20 /* Author: G. Jungman */ 21 22 #ifndef __GSL_SF_LAMBERT_H__ 23 #define __GSL_SF_LAMBERT_H__ 24 25 #include "gsl_sf_result.h" 26 27 #undef __BEGIN_DECLS 28 #undef __END_DECLS 29 #ifdef __cplusplus 30 # define __BEGIN_DECLS extern "C" { 31 # define __END_DECLS } 32 #else 33 # define __BEGIN_DECLS /* empty */ 34 # define __END_DECLS /* empty */ 35 #endif 36 37 __BEGIN_DECLS 38 39 40 /* Lambert's Function W_0(x) 41 * 42 * W_0(x) is the principal branch of the 43 * implicit function defined by W e^W = x. 44 * 45 * -1/E < x < \infty 46 * 47 * exceptions: GSL_EMAXITER; 48 */ 49 int gsl_sf_lambert_W0_e(double x, gsl_sf_result * result); 50 double gsl_sf_lambert_W0(double x); 51 52 53 /* Lambert's Function W_{-1}(x) 54 * 55 * W_{-1}(x) is the second real branch of the 56 * implicit function defined by W e^W = x. 57 * It agrees with W_0(x) when x >= 0. 58 * 59 * -1/E < x < \infty 60 * 61 * exceptions: GSL_MAXITER; 62 */ 63 int gsl_sf_lambert_Wm1_e(double x, gsl_sf_result * result); 64 double gsl_sf_lambert_Wm1(double x); 65 66 67 __END_DECLS 68 69 #endif /* __GSL_SF_LAMBERT_H__ */ 70