summaryrefslogtreecommitdiff
path: root/packages/special/lib/Numeric/GSL/Special/Legendre.hs
diff options
context:
space:
mode:
Diffstat (limited to 'packages/special/lib/Numeric/GSL/Special/Legendre.hs')
-rw-r--r--packages/special/lib/Numeric/GSL/Special/Legendre.hs233
1 files changed, 233 insertions, 0 deletions
diff --git a/packages/special/lib/Numeric/GSL/Special/Legendre.hs b/packages/special/lib/Numeric/GSL/Special/Legendre.hs
new file mode 100644
index 0000000..e329457
--- /dev/null
+++ b/packages/special/lib/Numeric/GSL/Special/Legendre.hs
@@ -0,0 +1,233 @@
1------------------------------------------------------------
2-- |
3-- Module : Numeric.GSL.Special.Legendre
4-- Copyright : (c) Alberto Ruiz 2006
5-- License : GPL
6-- Maintainer : Alberto Ruiz (aruiz at um dot es)
7-- Stability : provisional
8-- Portability : uses ffi
9--
10-- Wrappers for selected functions described at:
11--
12-- <http://www.google.com/search?q=gsl_sf_legendre.h&as_sitesearch=www.gnu.org/software/gsl/manual&btnI=Lucky>
13------------------------------------------------------------
14
15module Numeric.GSL.Special.Legendre(
16 legendre_Pl_e
17, legendre_Pl
18, legendre_P1_e
19, legendre_P2_e
20, legendre_P3_e
21, legendre_P1
22, legendre_P2
23, legendre_P3
24, legendre_Q0_e
25, legendre_Q0
26, legendre_Q1_e
27, legendre_Q1
28, legendre_Ql_e
29, legendre_Ql
30, legendre_Plm_e
31, legendre_Plm
32, legendre_sphPlm_e
33, legendre_sphPlm
34, legendre_array_size
35, conicalP_half_e
36, conicalP_half
37, conicalP_mhalf_e
38, conicalP_mhalf
39, conicalP_0_e
40, conicalP_0
41, conicalP_1_e
42, conicalP_1
43, conicalP_sph_reg_e
44, conicalP_sph_reg
45, conicalP_cyl_reg_e
46, conicalP_cyl_reg
47, legendre_H3d_0_e
48, legendre_H3d_0
49, legendre_H3d_1_e
50, legendre_H3d_1
51, legendre_H3d_e
52, legendre_H3d
53) where
54
55import Foreign(Ptr)
56import Foreign.C.Types(CInt)
57import Numeric.GSL.Special.Internal
58
59legendre_Pl_e :: CInt -> Double -> (Double,Double)
60legendre_Pl_e l x = createSFR "legendre_Pl_e" $ gsl_sf_legendre_Pl_e l x
61foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Pl_e" gsl_sf_legendre_Pl_e :: CInt -> Double -> Ptr () -> IO CInt
62
63legendre_Pl :: CInt -> Double -> Double
64legendre_Pl = gsl_sf_legendre_Pl
65foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Pl" gsl_sf_legendre_Pl :: CInt -> Double -> Double
66
67legendre_Pl_array :: CInt -> Double -> Ptr Double -> CInt
68legendre_Pl_array = gsl_sf_legendre_Pl_array
69foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Pl_array" gsl_sf_legendre_Pl_array :: CInt -> Double -> Ptr Double -> CInt
70
71legendre_Pl_deriv_array :: CInt -> Double -> Ptr Double -> Ptr Double -> CInt
72legendre_Pl_deriv_array = gsl_sf_legendre_Pl_deriv_array
73foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Pl_deriv_array" gsl_sf_legendre_Pl_deriv_array :: CInt -> Double -> Ptr Double -> Ptr Double -> CInt
74
75legendre_P1_e :: Double -> (Double,Double)
76legendre_P1_e x = createSFR "legendre_P1_e" $ gsl_sf_legendre_P1_e x
77foreign import ccall SAFE_CHEAP "gsl_sf_legendre_P1_e" gsl_sf_legendre_P1_e :: Double -> Ptr () -> IO CInt
78
79legendre_P2_e :: Double -> (Double,Double)
80legendre_P2_e x = createSFR "legendre_P2_e" $ gsl_sf_legendre_P2_e x
81foreign import ccall SAFE_CHEAP "gsl_sf_legendre_P2_e" gsl_sf_legendre_P2_e :: Double -> Ptr () -> IO CInt
82
83legendre_P3_e :: Double -> (Double,Double)
84legendre_P3_e x = createSFR "legendre_P3_e" $ gsl_sf_legendre_P3_e x
85foreign import ccall SAFE_CHEAP "gsl_sf_legendre_P3_e" gsl_sf_legendre_P3_e :: Double -> Ptr () -> IO CInt
86
87legendre_P1 :: Double -> Double
88legendre_P1 = gsl_sf_legendre_P1
89foreign import ccall SAFE_CHEAP "gsl_sf_legendre_P1" gsl_sf_legendre_P1 :: Double -> Double
90
91legendre_P2 :: Double -> Double
92legendre_P2 = gsl_sf_legendre_P2
93foreign import ccall SAFE_CHEAP "gsl_sf_legendre_P2" gsl_sf_legendre_P2 :: Double -> Double
94
95legendre_P3 :: Double -> Double
96legendre_P3 = gsl_sf_legendre_P3
97foreign import ccall SAFE_CHEAP "gsl_sf_legendre_P3" gsl_sf_legendre_P3 :: Double -> Double
98
99legendre_Q0_e :: Double -> (Double,Double)
100legendre_Q0_e x = createSFR "legendre_Q0_e" $ gsl_sf_legendre_Q0_e x
101foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Q0_e" gsl_sf_legendre_Q0_e :: Double -> Ptr () -> IO CInt
102
103legendre_Q0 :: Double -> Double
104legendre_Q0 = gsl_sf_legendre_Q0
105foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Q0" gsl_sf_legendre_Q0 :: Double -> Double
106
107legendre_Q1_e :: Double -> (Double,Double)
108legendre_Q1_e x = createSFR "legendre_Q1_e" $ gsl_sf_legendre_Q1_e x
109foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Q1_e" gsl_sf_legendre_Q1_e :: Double -> Ptr () -> IO CInt
110
111legendre_Q1 :: Double -> Double
112legendre_Q1 = gsl_sf_legendre_Q1
113foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Q1" gsl_sf_legendre_Q1 :: Double -> Double
114
115legendre_Ql_e :: CInt -> Double -> (Double,Double)
116legendre_Ql_e l x = createSFR "legendre_Ql_e" $ gsl_sf_legendre_Ql_e l x
117foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Ql_e" gsl_sf_legendre_Ql_e :: CInt -> Double -> Ptr () -> IO CInt
118
119legendre_Ql :: CInt -> Double -> Double
120legendre_Ql = gsl_sf_legendre_Ql
121foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Ql" gsl_sf_legendre_Ql :: CInt -> Double -> Double
122
123legendre_Plm_e :: CInt -> CInt -> Double -> (Double,Double)
124legendre_Plm_e l m x = createSFR "legendre_Plm_e" $ gsl_sf_legendre_Plm_e l m x
125foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Plm_e" gsl_sf_legendre_Plm_e :: CInt -> CInt -> Double -> Ptr () -> IO CInt
126
127legendre_Plm :: CInt -> CInt -> Double -> Double
128legendre_Plm = gsl_sf_legendre_Plm
129foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Plm" gsl_sf_legendre_Plm :: CInt -> CInt -> Double -> Double
130
131legendre_Plm_array :: CInt -> CInt -> Double -> Ptr Double -> CInt
132legendre_Plm_array = gsl_sf_legendre_Plm_array
133foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Plm_array" gsl_sf_legendre_Plm_array :: CInt -> CInt -> Double -> Ptr Double -> CInt
134
135legendre_Plm_deriv_array :: CInt -> CInt -> Double -> Ptr Double -> Ptr Double -> CInt
136legendre_Plm_deriv_array = gsl_sf_legendre_Plm_deriv_array
137foreign import ccall SAFE_CHEAP "gsl_sf_legendre_Plm_deriv_array" gsl_sf_legendre_Plm_deriv_array :: CInt -> CInt -> Double -> Ptr Double -> Ptr Double -> CInt
138
139legendre_sphPlm_e :: CInt -> CInt -> Double -> (Double,Double)
140legendre_sphPlm_e l m x = createSFR "legendre_sphPlm_e" $ gsl_sf_legendre_sphPlm_e l m x
141foreign import ccall SAFE_CHEAP "gsl_sf_legendre_sphPlm_e" gsl_sf_legendre_sphPlm_e :: CInt -> CInt -> Double -> Ptr () -> IO CInt
142
143legendre_sphPlm :: CInt -> CInt -> Double -> Double
144legendre_sphPlm = gsl_sf_legendre_sphPlm
145foreign import ccall SAFE_CHEAP "gsl_sf_legendre_sphPlm" gsl_sf_legendre_sphPlm :: CInt -> CInt -> Double -> Double
146
147legendre_sphPlm_array :: CInt -> CInt -> Double -> Ptr Double -> CInt
148legendre_sphPlm_array = gsl_sf_legendre_sphPlm_array
149foreign import ccall SAFE_CHEAP "gsl_sf_legendre_sphPlm_array" gsl_sf_legendre_sphPlm_array :: CInt -> CInt -> Double -> Ptr Double -> CInt
150
151legendre_sphPlm_deriv_array :: CInt -> CInt -> Double -> Ptr Double -> Ptr Double -> CInt
152legendre_sphPlm_deriv_array = gsl_sf_legendre_sphPlm_deriv_array
153foreign import ccall SAFE_CHEAP "gsl_sf_legendre_sphPlm_deriv_array" gsl_sf_legendre_sphPlm_deriv_array :: CInt -> CInt -> Double -> Ptr Double -> Ptr Double -> CInt
154
155legendre_array_size :: CInt -> CInt -> CInt
156legendre_array_size = gsl_sf_legendre_array_size
157foreign import ccall SAFE_CHEAP "gsl_sf_legendre_array_size" gsl_sf_legendre_array_size :: CInt -> CInt -> CInt
158
159conicalP_half_e :: Double -> Double -> (Double,Double)
160conicalP_half_e lambda x = createSFR "conicalP_half_e" $ gsl_sf_conicalP_half_e lambda x
161foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_half_e" gsl_sf_conicalP_half_e :: Double -> Double -> Ptr () -> IO CInt
162
163conicalP_half :: Double -> Double -> Double
164conicalP_half = gsl_sf_conicalP_half
165foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_half" gsl_sf_conicalP_half :: Double -> Double -> Double
166
167conicalP_mhalf_e :: Double -> Double -> (Double,Double)
168conicalP_mhalf_e lambda x = createSFR "conicalP_mhalf_e" $ gsl_sf_conicalP_mhalf_e lambda x
169foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_mhalf_e" gsl_sf_conicalP_mhalf_e :: Double -> Double -> Ptr () -> IO CInt
170
171conicalP_mhalf :: Double -> Double -> Double
172conicalP_mhalf = gsl_sf_conicalP_mhalf
173foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_mhalf" gsl_sf_conicalP_mhalf :: Double -> Double -> Double
174
175conicalP_0_e :: Double -> Double -> (Double,Double)
176conicalP_0_e lambda x = createSFR "conicalP_0_e" $ gsl_sf_conicalP_0_e lambda x
177foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_0_e" gsl_sf_conicalP_0_e :: Double -> Double -> Ptr () -> IO CInt
178
179conicalP_0 :: Double -> Double -> Double
180conicalP_0 = gsl_sf_conicalP_0
181foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_0" gsl_sf_conicalP_0 :: Double -> Double -> Double
182
183conicalP_1_e :: Double -> Double -> (Double,Double)
184conicalP_1_e lambda x = createSFR "conicalP_1_e" $ gsl_sf_conicalP_1_e lambda x
185foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_1_e" gsl_sf_conicalP_1_e :: Double -> Double -> Ptr () -> IO CInt
186
187conicalP_1 :: Double -> Double -> Double
188conicalP_1 = gsl_sf_conicalP_1
189foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_1" gsl_sf_conicalP_1 :: Double -> Double -> Double
190
191conicalP_sph_reg_e :: CInt -> Double -> Double -> (Double,Double)
192conicalP_sph_reg_e l lambda x = createSFR "conicalP_sph_reg_e" $ gsl_sf_conicalP_sph_reg_e l lambda x
193foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_sph_reg_e" gsl_sf_conicalP_sph_reg_e :: CInt -> Double -> Double -> Ptr () -> IO CInt
194
195conicalP_sph_reg :: CInt -> Double -> Double -> Double
196conicalP_sph_reg = gsl_sf_conicalP_sph_reg
197foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_sph_reg" gsl_sf_conicalP_sph_reg :: CInt -> Double -> Double -> Double
198
199conicalP_cyl_reg_e :: CInt -> Double -> Double -> (Double,Double)
200conicalP_cyl_reg_e m lambda x = createSFR "conicalP_cyl_reg_e" $ gsl_sf_conicalP_cyl_reg_e m lambda x
201foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_cyl_reg_e" gsl_sf_conicalP_cyl_reg_e :: CInt -> Double -> Double -> Ptr () -> IO CInt
202
203conicalP_cyl_reg :: CInt -> Double -> Double -> Double
204conicalP_cyl_reg = gsl_sf_conicalP_cyl_reg
205foreign import ccall SAFE_CHEAP "gsl_sf_conicalP_cyl_reg" gsl_sf_conicalP_cyl_reg :: CInt -> Double -> Double -> Double
206
207legendre_H3d_0_e :: Double -> Double -> (Double,Double)
208legendre_H3d_0_e lambda eta = createSFR "legendre_H3d_0_e" $ gsl_sf_legendre_H3d_0_e lambda eta
209foreign import ccall SAFE_CHEAP "gsl_sf_legendre_H3d_0_e" gsl_sf_legendre_H3d_0_e :: Double -> Double -> Ptr () -> IO CInt
210
211legendre_H3d_0 :: Double -> Double -> Double
212legendre_H3d_0 = gsl_sf_legendre_H3d_0
213foreign import ccall SAFE_CHEAP "gsl_sf_legendre_H3d_0" gsl_sf_legendre_H3d_0 :: Double -> Double -> Double
214
215legendre_H3d_1_e :: Double -> Double -> (Double,Double)
216legendre_H3d_1_e lambda eta = createSFR "legendre_H3d_1_e" $ gsl_sf_legendre_H3d_1_e lambda eta
217foreign import ccall SAFE_CHEAP "gsl_sf_legendre_H3d_1_e" gsl_sf_legendre_H3d_1_e :: Double -> Double -> Ptr () -> IO CInt
218
219legendre_H3d_1 :: Double -> Double -> Double
220legendre_H3d_1 = gsl_sf_legendre_H3d_1
221foreign import ccall SAFE_CHEAP "gsl_sf_legendre_H3d_1" gsl_sf_legendre_H3d_1 :: Double -> Double -> Double
222
223legendre_H3d_e :: CInt -> Double -> Double -> (Double,Double)
224legendre_H3d_e l lambda eta = createSFR "legendre_H3d_e" $ gsl_sf_legendre_H3d_e l lambda eta
225foreign import ccall SAFE_CHEAP "gsl_sf_legendre_H3d_e" gsl_sf_legendre_H3d_e :: CInt -> Double -> Double -> Ptr () -> IO CInt
226
227legendre_H3d :: CInt -> Double -> Double -> Double
228legendre_H3d = gsl_sf_legendre_H3d
229foreign import ccall SAFE_CHEAP "gsl_sf_legendre_H3d" gsl_sf_legendre_H3d :: CInt -> Double -> Double -> Double
230
231legendre_H3d_array :: CInt -> Double -> Double -> Ptr Double -> CInt
232legendre_H3d_array = gsl_sf_legendre_H3d_array
233foreign import ccall SAFE_CHEAP "gsl_sf_legendre_H3d_array" gsl_sf_legendre_H3d_array :: CInt -> Double -> Double -> Ptr Double -> CInt