summaryrefslogtreecommitdiff
path: root/lib/GSL/Special
diff options
context:
space:
mode:
Diffstat (limited to 'lib/GSL/Special')
-rw-r--r--lib/GSL/Special/Clausen.hs2
-rw-r--r--lib/GSL/Special/Coulomb.hs2
-rw-r--r--lib/GSL/Special/Coupling.hs2
-rw-r--r--lib/GSL/Special/Dawson.hs2
-rw-r--r--lib/GSL/Special/Debye.hs2
-rw-r--r--lib/GSL/Special/Dilog.hs2
-rw-r--r--lib/GSL/Special/Elementary.hs2
-rw-r--r--lib/GSL/Special/Ellint.hs2
-rw-r--r--lib/GSL/Special/Expint.hs2
-rw-r--r--lib/GSL/Special/Fermi_dirac.hs2
-rw-r--r--lib/GSL/Special/Gegenbauer.hs2
-rw-r--r--lib/GSL/Special/Hyperg.hs2
-rw-r--r--lib/GSL/Special/Laguerre.hs2
-rw-r--r--lib/GSL/Special/Lambert.hs2
-rw-r--r--lib/GSL/Special/Legendre.hs278
-rw-r--r--lib/GSL/Special/Log.hs2
-rw-r--r--lib/GSL/Special/Pow_int.hs2
-rw-r--r--lib/GSL/Special/Psi.hs2
-rw-r--r--lib/GSL/Special/Synchrotron.hs2
-rw-r--r--lib/GSL/Special/Trig.hs2
-rw-r--r--lib/GSL/Special/Zeta.hs2
-rw-r--r--lib/GSL/Special/legendre.h44
-rw-r--r--lib/GSL/Special/manual.txt2
23 files changed, 364 insertions, 0 deletions
diff --git a/lib/GSL/Special/Clausen.hs b/lib/GSL/Special/Clausen.hs
index 9089499..33da421 100644
--- a/lib/GSL/Special/Clausen.hs
+++ b/lib/GSL/Special/Clausen.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Clausen-Functions.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Coulomb.hs b/lib/GSL/Special/Coulomb.hs
index df3b8a4..6995ee3 100644
--- a/lib/GSL/Special/Coulomb.hs
+++ b/lib/GSL/Special/Coulomb.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Coulomb-Functions.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Coupling.hs b/lib/GSL/Special/Coupling.hs
index e57108b..fb949d1 100644
--- a/lib/GSL/Special/Coupling.hs
+++ b/lib/GSL/Special/Coupling.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Coupling-Coefficients.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Dawson.hs b/lib/GSL/Special/Dawson.hs
index 62d0baf..54671e1 100644
--- a/lib/GSL/Special/Dawson.hs
+++ b/lib/GSL/Special/Dawson.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Dawson-Function.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Debye.hs b/lib/GSL/Special/Debye.hs
index aa0bd89..ecb617e 100644
--- a/lib/GSL/Special/Debye.hs
+++ b/lib/GSL/Special/Debye.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Debye-Functions.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Dilog.hs b/lib/GSL/Special/Dilog.hs
index 199095a..c7412dd 100644
--- a/lib/GSL/Special/Dilog.hs
+++ b/lib/GSL/Special/Dilog.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Dilogarithm.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Elementary.hs b/lib/GSL/Special/Elementary.hs
index 5da89ca..1eab1ce 100644
--- a/lib/GSL/Special/Elementary.hs
+++ b/lib/GSL/Special/Elementary.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Elementary-Operations.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Ellint.hs b/lib/GSL/Special/Ellint.hs
index f79c702..b277072 100644
--- a/lib/GSL/Special/Ellint.hs
+++ b/lib/GSL/Special/Ellint.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Elliptic-Integrals.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Expint.hs b/lib/GSL/Special/Expint.hs
index f761966..6dd5959 100644
--- a/lib/GSL/Special/Expint.hs
+++ b/lib/GSL/Special/Expint.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Exponential-Integrals.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Fermi_dirac.hs b/lib/GSL/Special/Fermi_dirac.hs
index 26923d2..454ce1c 100644
--- a/lib/GSL/Special/Fermi_dirac.hs
+++ b/lib/GSL/Special/Fermi_dirac.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Fermi_002dDirac-Function.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Gegenbauer.hs b/lib/GSL/Special/Gegenbauer.hs
index 06f3628..d4309db 100644
--- a/lib/GSL/Special/Gegenbauer.hs
+++ b/lib/GSL/Special/Gegenbauer.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Gegenbauer-Functions.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Hyperg.hs b/lib/GSL/Special/Hyperg.hs
index c84c32c..afe60e6 100644
--- a/lib/GSL/Special/Hyperg.hs
+++ b/lib/GSL/Special/Hyperg.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Hypergeometric-Functions.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Laguerre.hs b/lib/GSL/Special/Laguerre.hs
index 6fa4343..61f366b 100644
--- a/lib/GSL/Special/Laguerre.hs
+++ b/lib/GSL/Special/Laguerre.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Laguerre-Functions.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Lambert.hs b/lib/GSL/Special/Lambert.hs
index ff4c75c..ded7fa0 100644
--- a/lib/GSL/Special/Lambert.hs
+++ b/lib/GSL/Special/Lambert.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Lambert-W-Functions.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Legendre.hs b/lib/GSL/Special/Legendre.hs
new file mode 100644
index 0000000..70315e9
--- /dev/null
+++ b/lib/GSL/Special/Legendre.hs
@@ -0,0 +1,278 @@
1------------------------------------------------------------
2{- |
3Module : GSL.Special.Legendre
4Copyright : (c) Alberto Ruiz 2006
5License : GPL-style
6Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional
8Portability : uses ffi
9
10Wrappers for selected functions described at:
11
12<http://www.gnu.org/software/gsl/manual/html_node/Legendre-Functions-and-Spherical-Harmonics.html>
13
14-}
15------------------------------------------------------------
16
17module GSL.Special.Legendre(
18 legendre_Pl_e
19, legendre_Pl
20, legendre_P1_e
21, legendre_P2_e
22, legendre_P3_e
23, legendre_P1
24, legendre_P2
25, legendre_P3
26, legendre_Q0_e
27, legendre_Q0
28, legendre_Q1_e
29, legendre_Q1
30, legendre_Ql_e
31, legendre_Ql
32, legendre_Plm_e
33, legendre_Plm
34, legendre_sphPlm_e
35, legendre_sphPlm
36, legendre_array_size
37, conicalP_half_e
38, conicalP_half
39, conicalP_mhalf_e
40, conicalP_mhalf
41, conicalP_0_e
42, conicalP_0
43, conicalP_1_e
44, conicalP_1
45, conicalP_sph_reg_e
46, conicalP_sph_reg
47, conicalP_cyl_reg_e
48, conicalP_cyl_reg
49, legendre_H3d_0_e
50, legendre_H3d_0
51, legendre_H3d_1_e
52, legendre_H3d_1
53, legendre_H3d_e
54, legendre_H3d
55) where
56
57import Foreign(Ptr)
58import GSL.Special.Internal
59
60-- | wrapper for int gsl_sf_legendre_Pl_e(int l,double x,gsl_sf_result* result);
61legendre_Pl_e :: Int -> Double -> (Double,Double)
62legendre_Pl_e l x = createSFR "legendre_Pl_e" $ gsl_sf_legendre_Pl_e l x
63foreign import ccall "legendre.h gsl_sf_legendre_Pl_e" gsl_sf_legendre_Pl_e :: Int -> Double -> Ptr Double -> IO(Int)
64
65-- | wrapper for double gsl_sf_legendre_Pl(int l,double x);
66legendre_Pl :: Int -> Double -> Double
67legendre_Pl = gsl_sf_legendre_Pl
68foreign import ccall "legendre.h gsl_sf_legendre_Pl" gsl_sf_legendre_Pl :: Int -> Double -> Double
69
70-- | wrapper for int gsl_sf_legendre_Pl_array(int lmax,double x,double* result_array);
71legendre_Pl_array :: Int -> Double -> Ptr Double -> Int
72legendre_Pl_array = gsl_sf_legendre_Pl_array
73foreign import ccall "legendre.h gsl_sf_legendre_Pl_array" gsl_sf_legendre_Pl_array :: Int -> Double -> Ptr Double -> Int
74
75-- | wrapper for int gsl_sf_legendre_Pl_deriv_array(int lmax,double x,double* result_array,double* result_deriv_array);
76legendre_Pl_deriv_array :: Int -> Double -> Ptr Double -> Ptr Double -> Int
77legendre_Pl_deriv_array = gsl_sf_legendre_Pl_deriv_array
78foreign import ccall "legendre.h gsl_sf_legendre_Pl_deriv_array" gsl_sf_legendre_Pl_deriv_array :: Int -> Double -> Ptr Double -> Ptr Double -> Int
79
80-- | wrapper for int gsl_sf_legendre_P1_e(double x,gsl_sf_result* result);
81legendre_P1_e :: Double -> (Double,Double)
82legendre_P1_e x = createSFR "legendre_P1_e" $ gsl_sf_legendre_P1_e x
83foreign import ccall "legendre.h gsl_sf_legendre_P1_e" gsl_sf_legendre_P1_e :: Double -> Ptr Double -> IO(Int)
84
85-- | wrapper for int gsl_sf_legendre_P2_e(double x,gsl_sf_result* result);
86legendre_P2_e :: Double -> (Double,Double)
87legendre_P2_e x = createSFR "legendre_P2_e" $ gsl_sf_legendre_P2_e x
88foreign import ccall "legendre.h gsl_sf_legendre_P2_e" gsl_sf_legendre_P2_e :: Double -> Ptr Double -> IO(Int)
89
90-- | wrapper for int gsl_sf_legendre_P3_e(double x,gsl_sf_result* result);
91legendre_P3_e :: Double -> (Double,Double)
92legendre_P3_e x = createSFR "legendre_P3_e" $ gsl_sf_legendre_P3_e x
93foreign import ccall "legendre.h gsl_sf_legendre_P3_e" gsl_sf_legendre_P3_e :: Double -> Ptr Double -> IO(Int)
94
95-- | wrapper for double gsl_sf_legendre_P1(double x);
96legendre_P1 :: Double -> Double
97legendre_P1 = gsl_sf_legendre_P1
98foreign import ccall "legendre.h gsl_sf_legendre_P1" gsl_sf_legendre_P1 :: Double -> Double
99
100-- | wrapper for double gsl_sf_legendre_P2(double x);
101legendre_P2 :: Double -> Double
102legendre_P2 = gsl_sf_legendre_P2
103foreign import ccall "legendre.h gsl_sf_legendre_P2" gsl_sf_legendre_P2 :: Double -> Double
104
105-- | wrapper for double gsl_sf_legendre_P3(double x);
106legendre_P3 :: Double -> Double
107legendre_P3 = gsl_sf_legendre_P3
108foreign import ccall "legendre.h gsl_sf_legendre_P3" gsl_sf_legendre_P3 :: Double -> Double
109
110-- | wrapper for int gsl_sf_legendre_Q0_e(double x,gsl_sf_result* result);
111legendre_Q0_e :: Double -> (Double,Double)
112legendre_Q0_e x = createSFR "legendre_Q0_e" $ gsl_sf_legendre_Q0_e x
113foreign import ccall "legendre.h gsl_sf_legendre_Q0_e" gsl_sf_legendre_Q0_e :: Double -> Ptr Double -> IO(Int)
114
115-- | wrapper for double gsl_sf_legendre_Q0(double x);
116legendre_Q0 :: Double -> Double
117legendre_Q0 = gsl_sf_legendre_Q0
118foreign import ccall "legendre.h gsl_sf_legendre_Q0" gsl_sf_legendre_Q0 :: Double -> Double
119
120-- | wrapper for int gsl_sf_legendre_Q1_e(double x,gsl_sf_result* result);
121legendre_Q1_e :: Double -> (Double,Double)
122legendre_Q1_e x = createSFR "legendre_Q1_e" $ gsl_sf_legendre_Q1_e x
123foreign import ccall "legendre.h gsl_sf_legendre_Q1_e" gsl_sf_legendre_Q1_e :: Double -> Ptr Double -> IO(Int)
124
125-- | wrapper for double gsl_sf_legendre_Q1(double x);
126legendre_Q1 :: Double -> Double
127legendre_Q1 = gsl_sf_legendre_Q1
128foreign import ccall "legendre.h gsl_sf_legendre_Q1" gsl_sf_legendre_Q1 :: Double -> Double
129
130-- | wrapper for int gsl_sf_legendre_Ql_e(int l,double x,gsl_sf_result* result);
131legendre_Ql_e :: Int -> Double -> (Double,Double)
132legendre_Ql_e l x = createSFR "legendre_Ql_e" $ gsl_sf_legendre_Ql_e l x
133foreign import ccall "legendre.h gsl_sf_legendre_Ql_e" gsl_sf_legendre_Ql_e :: Int -> Double -> Ptr Double -> IO(Int)
134
135-- | wrapper for double gsl_sf_legendre_Ql(int l,double x);
136legendre_Ql :: Int -> Double -> Double
137legendre_Ql = gsl_sf_legendre_Ql
138foreign import ccall "legendre.h gsl_sf_legendre_Ql" gsl_sf_legendre_Ql :: Int -> Double -> Double
139
140-- | wrapper for int gsl_sf_legendre_Plm_e(int l,int m,double x,gsl_sf_result* result);
141legendre_Plm_e :: Int -> Int -> Double -> (Double,Double)
142legendre_Plm_e l m x = createSFR "legendre_Plm_e" $ gsl_sf_legendre_Plm_e l m x
143foreign import ccall "legendre.h gsl_sf_legendre_Plm_e" gsl_sf_legendre_Plm_e :: Int -> Int -> Double -> Ptr Double -> IO(Int)
144
145-- | wrapper for double gsl_sf_legendre_Plm(int l,int m,double x);
146legendre_Plm :: Int -> Int -> Double -> Double
147legendre_Plm = gsl_sf_legendre_Plm
148foreign import ccall "legendre.h gsl_sf_legendre_Plm" gsl_sf_legendre_Plm :: Int -> Int -> Double -> Double
149
150-- | wrapper for int gsl_sf_legendre_Plm_array(int lmax,int m,double x,double* result_array);
151legendre_Plm_array :: Int -> Int -> Double -> Ptr Double -> Int
152legendre_Plm_array = gsl_sf_legendre_Plm_array
153foreign import ccall "legendre.h gsl_sf_legendre_Plm_array" gsl_sf_legendre_Plm_array :: Int -> Int -> Double -> Ptr Double -> Int
154
155-- | wrapper for int gsl_sf_legendre_Plm_deriv_array(int lmax,int m,double x,double* result_array,double* result_deriv_array);
156legendre_Plm_deriv_array :: Int -> Int -> Double -> Ptr Double -> Ptr Double -> Int
157legendre_Plm_deriv_array = gsl_sf_legendre_Plm_deriv_array
158foreign import ccall "legendre.h gsl_sf_legendre_Plm_deriv_array" gsl_sf_legendre_Plm_deriv_array :: Int -> Int -> Double -> Ptr Double -> Ptr Double -> Int
159
160-- | wrapper for int gsl_sf_legendre_sphPlm_e(int l,int m,double x,gsl_sf_result* result);
161legendre_sphPlm_e :: Int -> Int -> Double -> (Double,Double)
162legendre_sphPlm_e l m x = createSFR "legendre_sphPlm_e" $ gsl_sf_legendre_sphPlm_e l m x
163foreign import ccall "legendre.h gsl_sf_legendre_sphPlm_e" gsl_sf_legendre_sphPlm_e :: Int -> Int -> Double -> Ptr Double -> IO(Int)
164
165-- | wrapper for double gsl_sf_legendre_sphPlm(int l,int m,double x);
166legendre_sphPlm :: Int -> Int -> Double -> Double
167legendre_sphPlm = gsl_sf_legendre_sphPlm
168foreign import ccall "legendre.h gsl_sf_legendre_sphPlm" gsl_sf_legendre_sphPlm :: Int -> Int -> Double -> Double
169
170-- | wrapper for int gsl_sf_legendre_sphPlm_array(int lmax,int m,double x,double* result_array);
171legendre_sphPlm_array :: Int -> Int -> Double -> Ptr Double -> Int
172legendre_sphPlm_array = gsl_sf_legendre_sphPlm_array
173foreign import ccall "legendre.h gsl_sf_legendre_sphPlm_array" gsl_sf_legendre_sphPlm_array :: Int -> Int -> Double -> Ptr Double -> Int
174
175-- | wrapper for int gsl_sf_legendre_sphPlm_deriv_array(int lmax,int m,double x,double* result_array,double* result_deriv_array);
176legendre_sphPlm_deriv_array :: Int -> Int -> Double -> Ptr Double -> Ptr Double -> Int
177legendre_sphPlm_deriv_array = gsl_sf_legendre_sphPlm_deriv_array
178foreign import ccall "legendre.h gsl_sf_legendre_sphPlm_deriv_array" gsl_sf_legendre_sphPlm_deriv_array :: Int -> Int -> Double -> Ptr Double -> Ptr Double -> Int
179
180-- | wrapper for int gsl_sf_legendre_array_size(int lmax,int m);
181legendre_array_size :: Int -> Int -> Int
182legendre_array_size = gsl_sf_legendre_array_size
183foreign import ccall "legendre.h gsl_sf_legendre_array_size" gsl_sf_legendre_array_size :: Int -> Int -> Int
184
185-- | wrapper for int gsl_sf_conicalP_half_e(double lambda,double x,gsl_sf_result* result);
186conicalP_half_e :: Double -> Double -> (Double,Double)
187conicalP_half_e lambda x = createSFR "conicalP_half_e" $ gsl_sf_conicalP_half_e lambda x
188foreign import ccall "legendre.h gsl_sf_conicalP_half_e" gsl_sf_conicalP_half_e :: Double -> Double -> Ptr Double -> IO(Int)
189
190-- | wrapper for double gsl_sf_conicalP_half(double lambda,double x);
191conicalP_half :: Double -> Double -> Double
192conicalP_half = gsl_sf_conicalP_half
193foreign import ccall "legendre.h gsl_sf_conicalP_half" gsl_sf_conicalP_half :: Double -> Double -> Double
194
195-- | wrapper for int gsl_sf_conicalP_mhalf_e(double lambda,double x,gsl_sf_result* result);
196conicalP_mhalf_e :: Double -> Double -> (Double,Double)
197conicalP_mhalf_e lambda x = createSFR "conicalP_mhalf_e" $ gsl_sf_conicalP_mhalf_e lambda x
198foreign import ccall "legendre.h gsl_sf_conicalP_mhalf_e" gsl_sf_conicalP_mhalf_e :: Double -> Double -> Ptr Double -> IO(Int)
199
200-- | wrapper for double gsl_sf_conicalP_mhalf(double lambda,double x);
201conicalP_mhalf :: Double -> Double -> Double
202conicalP_mhalf = gsl_sf_conicalP_mhalf
203foreign import ccall "legendre.h gsl_sf_conicalP_mhalf" gsl_sf_conicalP_mhalf :: Double -> Double -> Double
204
205-- | wrapper for int gsl_sf_conicalP_0_e(double lambda,double x,gsl_sf_result* result);
206conicalP_0_e :: Double -> Double -> (Double,Double)
207conicalP_0_e lambda x = createSFR "conicalP_0_e" $ gsl_sf_conicalP_0_e lambda x
208foreign import ccall "legendre.h gsl_sf_conicalP_0_e" gsl_sf_conicalP_0_e :: Double -> Double -> Ptr Double -> IO(Int)
209
210-- | wrapper for double gsl_sf_conicalP_0(double lambda,double x);
211conicalP_0 :: Double -> Double -> Double
212conicalP_0 = gsl_sf_conicalP_0
213foreign import ccall "legendre.h gsl_sf_conicalP_0" gsl_sf_conicalP_0 :: Double -> Double -> Double
214
215-- | wrapper for int gsl_sf_conicalP_1_e(double lambda,double x,gsl_sf_result* result);
216conicalP_1_e :: Double -> Double -> (Double,Double)
217conicalP_1_e lambda x = createSFR "conicalP_1_e" $ gsl_sf_conicalP_1_e lambda x
218foreign import ccall "legendre.h gsl_sf_conicalP_1_e" gsl_sf_conicalP_1_e :: Double -> Double -> Ptr Double -> IO(Int)
219
220-- | wrapper for double gsl_sf_conicalP_1(double lambda,double x);
221conicalP_1 :: Double -> Double -> Double
222conicalP_1 = gsl_sf_conicalP_1
223foreign import ccall "legendre.h gsl_sf_conicalP_1" gsl_sf_conicalP_1 :: Double -> Double -> Double
224
225-- | wrapper for int gsl_sf_conicalP_sph_reg_e(int l,double lambda,double x,gsl_sf_result* result);
226conicalP_sph_reg_e :: Int -> Double -> Double -> (Double,Double)
227conicalP_sph_reg_e l lambda x = createSFR "conicalP_sph_reg_e" $ gsl_sf_conicalP_sph_reg_e l lambda x
228foreign import ccall "legendre.h gsl_sf_conicalP_sph_reg_e" gsl_sf_conicalP_sph_reg_e :: Int -> Double -> Double -> Ptr Double -> IO(Int)
229
230-- | wrapper for double gsl_sf_conicalP_sph_reg(int l,double lambda,double x);
231conicalP_sph_reg :: Int -> Double -> Double -> Double
232conicalP_sph_reg = gsl_sf_conicalP_sph_reg
233foreign import ccall "legendre.h gsl_sf_conicalP_sph_reg" gsl_sf_conicalP_sph_reg :: Int -> Double -> Double -> Double
234
235-- | wrapper for int gsl_sf_conicalP_cyl_reg_e(int m,double lambda,double x,gsl_sf_result* result);
236conicalP_cyl_reg_e :: Int -> Double -> Double -> (Double,Double)
237conicalP_cyl_reg_e m lambda x = createSFR "conicalP_cyl_reg_e" $ gsl_sf_conicalP_cyl_reg_e m lambda x
238foreign import ccall "legendre.h gsl_sf_conicalP_cyl_reg_e" gsl_sf_conicalP_cyl_reg_e :: Int -> Double -> Double -> Ptr Double -> IO(Int)
239
240-- | wrapper for double gsl_sf_conicalP_cyl_reg(int m,double lambda,double x);
241conicalP_cyl_reg :: Int -> Double -> Double -> Double
242conicalP_cyl_reg = gsl_sf_conicalP_cyl_reg
243foreign import ccall "legendre.h gsl_sf_conicalP_cyl_reg" gsl_sf_conicalP_cyl_reg :: Int -> Double -> Double -> Double
244
245-- | wrapper for int gsl_sf_legendre_H3d_0_e(double lambda,double eta,gsl_sf_result* result);
246legendre_H3d_0_e :: Double -> Double -> (Double,Double)
247legendre_H3d_0_e lambda eta = createSFR "legendre_H3d_0_e" $ gsl_sf_legendre_H3d_0_e lambda eta
248foreign import ccall "legendre.h gsl_sf_legendre_H3d_0_e" gsl_sf_legendre_H3d_0_e :: Double -> Double -> Ptr Double -> IO(Int)
249
250-- | wrapper for double gsl_sf_legendre_H3d_0(double lambda,double eta);
251legendre_H3d_0 :: Double -> Double -> Double
252legendre_H3d_0 = gsl_sf_legendre_H3d_0
253foreign import ccall "legendre.h gsl_sf_legendre_H3d_0" gsl_sf_legendre_H3d_0 :: Double -> Double -> Double
254
255-- | wrapper for int gsl_sf_legendre_H3d_1_e(double lambda,double eta,gsl_sf_result* result);
256legendre_H3d_1_e :: Double -> Double -> (Double,Double)
257legendre_H3d_1_e lambda eta = createSFR "legendre_H3d_1_e" $ gsl_sf_legendre_H3d_1_e lambda eta
258foreign import ccall "legendre.h gsl_sf_legendre_H3d_1_e" gsl_sf_legendre_H3d_1_e :: Double -> Double -> Ptr Double -> IO(Int)
259
260-- | wrapper for double gsl_sf_legendre_H3d_1(double lambda,double eta);
261legendre_H3d_1 :: Double -> Double -> Double
262legendre_H3d_1 = gsl_sf_legendre_H3d_1
263foreign import ccall "legendre.h gsl_sf_legendre_H3d_1" gsl_sf_legendre_H3d_1 :: Double -> Double -> Double
264
265-- | wrapper for int gsl_sf_legendre_H3d_e(int l,double lambda,double eta,gsl_sf_result* result);
266legendre_H3d_e :: Int -> Double -> Double -> (Double,Double)
267legendre_H3d_e l lambda eta = createSFR "legendre_H3d_e" $ gsl_sf_legendre_H3d_e l lambda eta
268foreign import ccall "legendre.h gsl_sf_legendre_H3d_e" gsl_sf_legendre_H3d_e :: Int -> Double -> Double -> Ptr Double -> IO(Int)
269
270-- | wrapper for double gsl_sf_legendre_H3d(int l,double lambda,double eta);
271legendre_H3d :: Int -> Double -> Double -> Double
272legendre_H3d = gsl_sf_legendre_H3d
273foreign import ccall "legendre.h gsl_sf_legendre_H3d" gsl_sf_legendre_H3d :: Int -> Double -> Double -> Double
274
275-- | wrapper for int gsl_sf_legendre_H3d_array(int lmax,double lambda,double eta,double* result_array);
276legendre_H3d_array :: Int -> Double -> Double -> Ptr Double -> Int
277legendre_H3d_array = gsl_sf_legendre_H3d_array
278foreign import ccall "legendre.h gsl_sf_legendre_H3d_array" gsl_sf_legendre_H3d_array :: Int -> Double -> Double -> Ptr Double -> Int
diff --git a/lib/GSL/Special/Log.hs b/lib/GSL/Special/Log.hs
index 9fd51a8..0d62e99 100644
--- a/lib/GSL/Special/Log.hs
+++ b/lib/GSL/Special/Log.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Logarithm-and-Related-Functions.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Pow_int.hs b/lib/GSL/Special/Pow_int.hs
index 3585db4..b476a92 100644
--- a/lib/GSL/Special/Pow_int.hs
+++ b/lib/GSL/Special/Pow_int.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Power-Function.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Psi.hs b/lib/GSL/Special/Psi.hs
index 59c9495..31f4f8c 100644
--- a/lib/GSL/Special/Psi.hs
+++ b/lib/GSL/Special/Psi.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Psi-_0028Digamma_0029-Function.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Synchrotron.hs b/lib/GSL/Special/Synchrotron.hs
index da49c34..7cec281 100644
--- a/lib/GSL/Special/Synchrotron.hs
+++ b/lib/GSL/Special/Synchrotron.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Synchrotron-Functions.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Trig.hs b/lib/GSL/Special/Trig.hs
index 56d3933..4d37a05 100644
--- a/lib/GSL/Special/Trig.hs
+++ b/lib/GSL/Special/Trig.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Trigonometric-Functions.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/Zeta.hs b/lib/GSL/Special/Zeta.hs
index ae514c0..6eff537 100644
--- a/lib/GSL/Special/Zeta.hs
+++ b/lib/GSL/Special/Zeta.hs
@@ -7,7 +7,9 @@ Maintainer : Alberto Ruiz (aruiz at um dot es)
7Stability : provisional 7Stability : provisional
8Portability : uses ffi 8Portability : uses ffi
9 9
10Wrappers for selected functions described at:
10 11
12<http://www.gnu.org/software/gsl/manual/html_node/Zeta-Functions.html>
11 13
12-} 14-}
13------------------------------------------------------------ 15------------------------------------------------------------
diff --git a/lib/GSL/Special/legendre.h b/lib/GSL/Special/legendre.h
new file mode 100644
index 0000000..aebe84f
--- /dev/null
+++ b/lib/GSL/Special/legendre.h
@@ -0,0 +1,44 @@
1int gsl_sf_legendre_Pl_e(int l,double x,double* result);
2double gsl_sf_legendre_Pl(int l,double x);
3int gsl_sf_legendre_Pl_array(int lmax,double x,double* result_array);
4int gsl_sf_legendre_Pl_deriv_array(int lmax,double x,double* result_array,double* result_deriv_array);
5int gsl_sf_legendre_P1_e(double x,double* result);
6int gsl_sf_legendre_P2_e(double x,double* result);
7int gsl_sf_legendre_P3_e(double x,double* result);
8double gsl_sf_legendre_P1(double x);
9double gsl_sf_legendre_P2(double x);
10double gsl_sf_legendre_P3(double x);
11int gsl_sf_legendre_Q0_e(double x,double* result);
12double gsl_sf_legendre_Q0(double x);
13int gsl_sf_legendre_Q1_e(double x,double* result);
14double gsl_sf_legendre_Q1(double x);
15int gsl_sf_legendre_Ql_e(int l,double x,double* result);
16double gsl_sf_legendre_Ql(int l,double x);
17int gsl_sf_legendre_Plm_e(int l,int m,double x,double* result);
18double gsl_sf_legendre_Plm(int l,int m,double x);
19int gsl_sf_legendre_Plm_array(int lmax,int m,double x,double* result_array);
20int gsl_sf_legendre_Plm_deriv_array(int lmax,int m,double x,double* result_array,double* result_deriv_array);
21int gsl_sf_legendre_sphPlm_e(int l,int m,double x,double* result);
22double gsl_sf_legendre_sphPlm(int l,int m,double x);
23int gsl_sf_legendre_sphPlm_array(int lmax,int m,double x,double* result_array);
24int gsl_sf_legendre_sphPlm_deriv_array(int lmax,int m,double x,double* result_array,double* result_deriv_array);
25int gsl_sf_legendre_array_size(int lmax,int m);
26int gsl_sf_conicalP_half_e(double lambda,double x,double* result);
27double gsl_sf_conicalP_half(double lambda,double x);
28int gsl_sf_conicalP_mhalf_e(double lambda,double x,double* result);
29double gsl_sf_conicalP_mhalf(double lambda,double x);
30int gsl_sf_conicalP_0_e(double lambda,double x,double* result);
31double gsl_sf_conicalP_0(double lambda,double x);
32int gsl_sf_conicalP_1_e(double lambda,double x,double* result);
33double gsl_sf_conicalP_1(double lambda,double x);
34int gsl_sf_conicalP_sph_reg_e(int l,double lambda,double x,double* result);
35double gsl_sf_conicalP_sph_reg(int l,double lambda,double x);
36int gsl_sf_conicalP_cyl_reg_e(int m,double lambda,double x,double* result);
37double gsl_sf_conicalP_cyl_reg(int m,double lambda,double x);
38int gsl_sf_legendre_H3d_0_e(double lambda,double eta,double* result);
39double gsl_sf_legendre_H3d_0(double lambda,double eta);
40int gsl_sf_legendre_H3d_1_e(double lambda,double eta,double* result);
41double gsl_sf_legendre_H3d_1(double lambda,double eta);
42int gsl_sf_legendre_H3d_e(int l,double lambda,double eta,double* result);
43double gsl_sf_legendre_H3d(int l,double lambda,double eta);
44int gsl_sf_legendre_H3d_array(int lmax,double lambda,double eta,double* result_array);
diff --git a/lib/GSL/Special/manual.txt b/lib/GSL/Special/manual.txt
index a95823d..1391d06 100644
--- a/lib/GSL/Special/manual.txt
+++ b/lib/GSL/Special/manual.txt
@@ -6,5 +6,7 @@ Coupling
6 remove deprecated INCORRECT 6 remove deprecated INCORRECT
7Trig.hs 7Trig.hs
8 qualify names 8 qualify names
9Legendre.hs
10 remove extern inline
9Log.hs 11Log.hs
10 remove extern inline, qualify name 12 remove extern inline, qualify name