summaryrefslogtreecommitdiff
path: root/packages/special/lib/Numeric/GSL/Special/Hyperg.hs
blob: 3f63b8fe53f0a5fab85c4feba96ff06689a8d8de (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
{-# LANGUAGE CPP #-}
------------------------------------------------------------
-- |
-- Module      :  Numeric.GSL.Special.Hyperg
-- 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_hyperg.h&as_sitesearch=www.gnu.org/software/gsl/manual&btnI=Lucky>
------------------------------------------------------------

module Numeric.GSL.Special.Hyperg(
  hyperg_0F1_e
, hyperg_0F1
, hyperg_1F1_int_e
, hyperg_1F1_int
, hyperg_1F1_e
, hyperg_1F1
, hyperg_U_int_e
, hyperg_U_int
, hyperg_U_int_e10_e
, hyperg_U_e
, hyperg_U
, hyperg_U_e10_e
, hyperg_2F1_e
, hyperg_2F1
, hyperg_2F1_conj_e
, hyperg_2F1_conj
, hyperg_2F1_renorm_e
, hyperg_2F1_renorm
, hyperg_2F1_conj_renorm_e
, hyperg_2F1_conj_renorm
, hyperg_2F0_e
, hyperg_2F0
) where

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

hyperg_0F1_e :: Double -> Double -> (Double,Double)
hyperg_0F1_e c x = createSFR "hyperg_0F1_e" $ gsl_sf_hyperg_0F1_e c x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_0F1_e" gsl_sf_hyperg_0F1_e :: Double -> Double -> Ptr () -> IO CInt

hyperg_0F1 :: Double -> Double -> Double
hyperg_0F1 = gsl_sf_hyperg_0F1
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_0F1" gsl_sf_hyperg_0F1 :: Double -> Double -> Double

hyperg_1F1_int_e :: CInt -> CInt -> Double -> (Double,Double)
hyperg_1F1_int_e m n x = createSFR "hyperg_1F1_int_e" $ gsl_sf_hyperg_1F1_int_e m n x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_1F1_int_e" gsl_sf_hyperg_1F1_int_e :: CInt -> CInt -> Double -> Ptr () -> IO CInt

hyperg_1F1_int :: CInt -> CInt -> Double -> Double
hyperg_1F1_int = gsl_sf_hyperg_1F1_int
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_1F1_int" gsl_sf_hyperg_1F1_int :: CInt -> CInt -> Double -> Double

hyperg_1F1_e :: Double -> Double -> Double -> (Double,Double)
hyperg_1F1_e a b x = createSFR "hyperg_1F1_e" $ gsl_sf_hyperg_1F1_e a b x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_1F1_e" gsl_sf_hyperg_1F1_e :: Double -> Double -> Double -> Ptr () -> IO CInt

hyperg_1F1 :: Double -> Double -> Double -> Double
hyperg_1F1 = gsl_sf_hyperg_1F1
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_1F1" gsl_sf_hyperg_1F1 :: Double -> Double -> Double -> Double

hyperg_U_int_e :: CInt -> CInt -> Double -> (Double,Double)
hyperg_U_int_e m n x = createSFR "hyperg_U_int_e" $ gsl_sf_hyperg_U_int_e m n x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_U_int_e" gsl_sf_hyperg_U_int_e :: CInt -> CInt -> Double -> Ptr () -> IO CInt

hyperg_U_int :: CInt -> CInt -> Double -> Double
hyperg_U_int = gsl_sf_hyperg_U_int
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_U_int" gsl_sf_hyperg_U_int :: CInt -> CInt -> Double -> Double

hyperg_U_int_e10_e :: CInt -> CInt -> Double -> (Double,Int,Double)
hyperg_U_int_e10_e m n x = createSFR_E10 "hyperg_U_int_e10_e" $ gsl_sf_hyperg_U_int_e10_e m n x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_U_int_e10_e" gsl_sf_hyperg_U_int_e10_e :: CInt -> CInt -> Double -> Ptr () -> IO CInt

hyperg_U_e :: Double -> Double -> Double -> (Double,Double)
hyperg_U_e a b x = createSFR "hyperg_U_e" $ gsl_sf_hyperg_U_e a b x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_U_e" gsl_sf_hyperg_U_e :: Double -> Double -> Double -> Ptr () -> IO CInt

hyperg_U :: Double -> Double -> Double -> Double
hyperg_U = gsl_sf_hyperg_U
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_U" gsl_sf_hyperg_U :: Double -> Double -> Double -> Double

hyperg_U_e10_e :: Double -> Double -> Double -> (Double,Int,Double)
hyperg_U_e10_e a b x = createSFR_E10 "hyperg_U_e10_e" $ gsl_sf_hyperg_U_e10_e a b x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_U_e10_e" gsl_sf_hyperg_U_e10_e :: Double -> Double -> Double -> Ptr () -> IO CInt

hyperg_2F1_e :: Double -> Double -> Double -> Double -> (Double,Double)
hyperg_2F1_e a b c x = createSFR "hyperg_2F1_e" $ gsl_sf_hyperg_2F1_e a b c x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_2F1_e" gsl_sf_hyperg_2F1_e :: Double -> Double -> Double -> Double -> Ptr () -> IO CInt

hyperg_2F1 :: Double -> Double -> Double -> Double -> Double
hyperg_2F1 = gsl_sf_hyperg_2F1
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_2F1" gsl_sf_hyperg_2F1 :: Double -> Double -> Double -> Double -> Double

hyperg_2F1_conj_e :: Double -> Double -> Double -> Double -> (Double,Double)
hyperg_2F1_conj_e aR aI c x = createSFR "hyperg_2F1_conj_e" $ gsl_sf_hyperg_2F1_conj_e aR aI c x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_2F1_conj_e" gsl_sf_hyperg_2F1_conj_e :: Double -> Double -> Double -> Double -> Ptr () -> IO CInt

hyperg_2F1_conj :: Double -> Double -> Double -> Double -> Double
hyperg_2F1_conj = gsl_sf_hyperg_2F1_conj
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_2F1_conj" gsl_sf_hyperg_2F1_conj :: Double -> Double -> Double -> Double -> Double

hyperg_2F1_renorm_e :: Double -> Double -> Double -> Double -> (Double,Double)
hyperg_2F1_renorm_e a b c x = createSFR "hyperg_2F1_renorm_e" $ gsl_sf_hyperg_2F1_renorm_e a b c x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_2F1_renorm_e" gsl_sf_hyperg_2F1_renorm_e :: Double -> Double -> Double -> Double -> Ptr () -> IO CInt

hyperg_2F1_renorm :: Double -> Double -> Double -> Double -> Double
hyperg_2F1_renorm = gsl_sf_hyperg_2F1_renorm
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_2F1_renorm" gsl_sf_hyperg_2F1_renorm :: Double -> Double -> Double -> Double -> Double

hyperg_2F1_conj_renorm_e :: Double -> Double -> Double -> Double -> (Double,Double)
hyperg_2F1_conj_renorm_e aR aI c x = createSFR "hyperg_2F1_conj_renorm_e" $ gsl_sf_hyperg_2F1_conj_renorm_e aR aI c x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_2F1_conj_renorm_e" gsl_sf_hyperg_2F1_conj_renorm_e :: Double -> Double -> Double -> Double -> Ptr () -> IO CInt

hyperg_2F1_conj_renorm :: Double -> Double -> Double -> Double -> Double
hyperg_2F1_conj_renorm = gsl_sf_hyperg_2F1_conj_renorm
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_2F1_conj_renorm" gsl_sf_hyperg_2F1_conj_renorm :: Double -> Double -> Double -> Double -> Double

hyperg_2F0_e :: Double -> Double -> Double -> (Double,Double)
hyperg_2F0_e a b x = createSFR "hyperg_2F0_e" $ gsl_sf_hyperg_2F0_e a b x
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_2F0_e" gsl_sf_hyperg_2F0_e :: Double -> Double -> Double -> Ptr () -> IO CInt

hyperg_2F0 :: Double -> Double -> Double -> Double
hyperg_2F0 = gsl_sf_hyperg_2F0
foreign import ccall SAFE_CHEAP "gsl_sf_hyperg_2F0" gsl_sf_hyperg_2F0 :: Double -> Double -> Double -> Double