summaryrefslogtreecommitdiff
path: root/packages/special/lib/Numeric/GSL/Special/Airy.hs
blob: 78f14b8dcd1fa546f1aa09d2693135eeffcc412b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
{-# LANGUAGE CPP #-}
------------------------------------------------------------
-- |
-- Module      :  Numeric.GSL.Special.Airy
-- Copyright   :  (c) Alberto Ruiz 2006-11
-- License     :  GPL
-- Maintainer  :  Alberto Ruiz (aruiz at um dot es)
-- Stability   :  provisional
-- Portability :  uses ffi
--
-- Wrappers for selected functions described at:
--
-- <http://www.google.com/search?q=gsl_sf_airy.h&as_sitesearch=www.gnu.org/software/gsl/manual&btnI=Lucky>
------------------------------------------------------------

module Numeric.GSL.Special.Airy(
  airy_Ai_e
, airy_Ai
, airy_Bi_e
, airy_Bi
, airy_Ai_scaled_e
, airy_Ai_scaled
, airy_Bi_scaled_e
, airy_Bi_scaled
, airy_Ai_deriv_e
, airy_Ai_deriv
, airy_Bi_deriv_e
, airy_Bi_deriv
, airy_Ai_deriv_scaled_e
, airy_Ai_deriv_scaled
, airy_Bi_deriv_scaled_e
, airy_Bi_deriv_scaled
, airy_zero_Ai_e
, airy_zero_Ai
, airy_zero_Bi_e
, airy_zero_Bi
, airy_zero_Ai_deriv_e
, airy_zero_Ai_deriv
, airy_zero_Bi_deriv_e
, airy_zero_Bi_deriv
, Precision(..)
) where

import Foreign(Ptr)
import Foreign.C.Types
import Numeric.GSL.Special.Internal

airy_Ai_e :: Double -> Precision -> (Double,Double)
airy_Ai_e x mode = createSFR "airy_Ai_e" $ gsl_sf_airy_Ai_e x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Ai_e" gsl_sf_airy_Ai_e :: Double -> Gsl_mode_t -> Ptr () -> IO CInt

airy_Ai :: Double -> Precision -> Double
airy_Ai x mode = gsl_sf_airy_Ai x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Ai" gsl_sf_airy_Ai :: Double -> Gsl_mode_t -> Double

airy_Bi_e :: Double -> Precision -> (Double,Double)
airy_Bi_e x mode = createSFR "airy_Bi_e" $ gsl_sf_airy_Bi_e x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Bi_e" gsl_sf_airy_Bi_e :: Double -> Gsl_mode_t -> Ptr () -> IO CInt

airy_Bi :: Double -> Precision -> Double
airy_Bi x mode = gsl_sf_airy_Bi x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Bi" gsl_sf_airy_Bi :: Double -> Gsl_mode_t -> Double

airy_Ai_scaled_e :: Double -> Precision -> (Double,Double)
airy_Ai_scaled_e x mode = createSFR "airy_Ai_scaled_e" $ gsl_sf_airy_Ai_scaled_e x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Ai_scaled_e" gsl_sf_airy_Ai_scaled_e :: Double -> Gsl_mode_t -> Ptr () -> IO CInt

airy_Ai_scaled :: Double -> Precision -> Double
airy_Ai_scaled x mode = gsl_sf_airy_Ai_scaled x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Ai_scaled" gsl_sf_airy_Ai_scaled :: Double -> Gsl_mode_t -> Double

airy_Bi_scaled_e :: Double -> Precision -> (Double,Double)
airy_Bi_scaled_e x mode = createSFR "airy_Bi_scaled_e" $ gsl_sf_airy_Bi_scaled_e x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Bi_scaled_e" gsl_sf_airy_Bi_scaled_e :: Double -> Gsl_mode_t -> Ptr () -> IO CInt

airy_Bi_scaled :: Double -> Precision -> Double
airy_Bi_scaled x mode = gsl_sf_airy_Bi_scaled x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Bi_scaled" gsl_sf_airy_Bi_scaled :: Double -> Gsl_mode_t -> Double

airy_Ai_deriv_e :: Double -> Precision -> (Double,Double)
airy_Ai_deriv_e x mode = createSFR "airy_Ai_deriv_e" $ gsl_sf_airy_Ai_deriv_e x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Ai_deriv_e" gsl_sf_airy_Ai_deriv_e :: Double -> Gsl_mode_t -> Ptr () -> IO CInt

airy_Ai_deriv :: Double -> Precision -> Double
airy_Ai_deriv x mode = gsl_sf_airy_Ai_deriv x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Ai_deriv" gsl_sf_airy_Ai_deriv :: Double -> Gsl_mode_t -> Double

airy_Bi_deriv_e :: Double -> Precision -> (Double,Double)
airy_Bi_deriv_e x mode = createSFR "airy_Bi_deriv_e" $ gsl_sf_airy_Bi_deriv_e x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Bi_deriv_e" gsl_sf_airy_Bi_deriv_e :: Double -> Gsl_mode_t -> Ptr () -> IO CInt

airy_Bi_deriv :: Double -> Precision -> Double
airy_Bi_deriv x mode = gsl_sf_airy_Bi_deriv x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Bi_deriv" gsl_sf_airy_Bi_deriv :: Double -> Gsl_mode_t -> Double

airy_Ai_deriv_scaled_e :: Double -> Precision -> (Double,Double)
airy_Ai_deriv_scaled_e x mode = createSFR "airy_Ai_deriv_scaled_e" $ gsl_sf_airy_Ai_deriv_scaled_e x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Ai_deriv_scaled_e" gsl_sf_airy_Ai_deriv_scaled_e :: Double -> Gsl_mode_t -> Ptr () -> IO CInt

airy_Ai_deriv_scaled :: Double -> Precision -> Double
airy_Ai_deriv_scaled x mode = gsl_sf_airy_Ai_deriv_scaled x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Ai_deriv_scaled" gsl_sf_airy_Ai_deriv_scaled :: Double -> Gsl_mode_t -> Double

airy_Bi_deriv_scaled_e :: Double -> Precision -> (Double,Double)
airy_Bi_deriv_scaled_e x mode = createSFR "airy_Bi_deriv_scaled_e" $ gsl_sf_airy_Bi_deriv_scaled_e x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Bi_deriv_scaled_e" gsl_sf_airy_Bi_deriv_scaled_e :: Double -> Gsl_mode_t -> Ptr () -> IO CInt

airy_Bi_deriv_scaled :: Double -> Precision -> Double
airy_Bi_deriv_scaled x mode = gsl_sf_airy_Bi_deriv_scaled x  (precCode mode)
foreign import ccall SAFE_CHEAP "gsl_sf_airy_Bi_deriv_scaled" gsl_sf_airy_Bi_deriv_scaled :: Double -> Gsl_mode_t -> Double

airy_zero_Ai_e :: CInt -> (Double,Double)
airy_zero_Ai_e s = createSFR "airy_zero_Ai_e" $ gsl_sf_airy_zero_Ai_e s
foreign import ccall SAFE_CHEAP "gsl_sf_airy_zero_Ai_e" gsl_sf_airy_zero_Ai_e :: CInt -> Ptr () -> IO CInt

airy_zero_Ai :: CInt -> Double
airy_zero_Ai = gsl_sf_airy_zero_Ai
foreign import ccall SAFE_CHEAP "gsl_sf_airy_zero_Ai" gsl_sf_airy_zero_Ai :: CInt -> Double

airy_zero_Bi_e :: CInt -> (Double,Double)
airy_zero_Bi_e s = createSFR "airy_zero_Bi_e" $ gsl_sf_airy_zero_Bi_e s
foreign import ccall SAFE_CHEAP "gsl_sf_airy_zero_Bi_e" gsl_sf_airy_zero_Bi_e :: CInt -> Ptr () -> IO CInt

airy_zero_Bi :: CInt -> Double
airy_zero_Bi = gsl_sf_airy_zero_Bi
foreign import ccall SAFE_CHEAP "gsl_sf_airy_zero_Bi" gsl_sf_airy_zero_Bi :: CInt -> Double

airy_zero_Ai_deriv_e :: CInt -> (Double,Double)
airy_zero_Ai_deriv_e s = createSFR "airy_zero_Ai_deriv_e" $ gsl_sf_airy_zero_Ai_deriv_e s
foreign import ccall SAFE_CHEAP "gsl_sf_airy_zero_Ai_deriv_e" gsl_sf_airy_zero_Ai_deriv_e :: CInt -> Ptr () -> IO CInt

airy_zero_Ai_deriv :: CInt -> Double
airy_zero_Ai_deriv = gsl_sf_airy_zero_Ai_deriv
foreign import ccall SAFE_CHEAP "gsl_sf_airy_zero_Ai_deriv" gsl_sf_airy_zero_Ai_deriv :: CInt -> Double

airy_zero_Bi_deriv_e :: CInt -> (Double,Double)
airy_zero_Bi_deriv_e s = createSFR "airy_zero_Bi_deriv_e" $ gsl_sf_airy_zero_Bi_deriv_e s
foreign import ccall SAFE_CHEAP "gsl_sf_airy_zero_Bi_deriv_e" gsl_sf_airy_zero_Bi_deriv_e :: CInt -> Ptr () -> IO CInt

airy_zero_Bi_deriv :: CInt -> Double
airy_zero_Bi_deriv = gsl_sf_airy_zero_Bi_deriv
foreign import ccall SAFE_CHEAP "gsl_sf_airy_zero_Bi_deriv" gsl_sf_airy_zero_Bi_deriv :: CInt -> Double