1 %module
"Math::GSL::QRNG"
3 %include
"gsl_typemaps.i"
5 %apply double
*OUTPUT { double x
[] };
8 %typemap
(argout
) double x
[] {
16 $result
= sv_newmortal
();
17 sv_setnv
($result
,(NV
) *($
1));
20 $result
= sv_newmortal
();
21 sv_setnv
($result
,(NV
) *($
1+1));
26 #include
"gsl/gsl_types.h"
27 #include
"gsl/gsl_qrng.h"
30 %include
"gsl/gsl_types.h"
31 %include
"gsl/gsl_qrng.h"
35 @EXPORT_OK
= qw
($gsl_qrng_niederreiter_2 $gsl_qrng_sobol $gsl_qrng_halton $gsl_qrng_reversehalton
36 gsl_qrng_alloc gsl_qrng_memcpy gsl_qrng_clone
37 gsl_qrng_free gsl_qrng_init gsl_qrng_name
38 gsl_qrng_size gsl_qrng_state gsl_qrng_get
40 %EXPORT_TAGS
= ( all
=> [ @EXPORT_OK
] );
47 Math
::GSL
::QRNG
- Quasi-random number generator
51 use Math
::GSL
::QRNG qw
/:all
/;
55 Here is a list of all the functions included in this module
:
59 =item C
<gsl_qrng_alloc
($T
, $n
)> - This function returns a pointer to a newly-created instance of a quasi-random sequence generator of type $T and dimension $d. The type $T must be one of the constants included in this module.
61 =item C
<gsl_qrng_clone
($q
)> - This function returns a pointer to a newly created generator which is an exact copy of the generator $q.
63 =item C
<gsl_qrng_memcpy
($dest
, $src
)> - This function copies the quasi-random sequence generator $src into the pre-existing generator $dest
, making $dest into an exact copy of $src. The two generators must be of the same type.
65 =item C
<gsl_qrng_free
($q
)> - This function frees all the memory associated with the generator $q.
67 =item C
<gsl_qrng_init
($q
)> - This function reinitializes the generator $q to its starting point. Note that quasi-random sequences do not use a seed and always produce the same set of values.
69 =item C
<gsl_qrng_name
($q
)> - This function returns a pointer to the name of the generator $q.
71 =item C
<gsl_qrng_size
($q
)> - This function returns the size of the state of generator r from the generator $q. You can use this information to access the state directly.
73 =item C
<gsl_qrng_state
($q
)> - This function returns a pointer to the state of generator r from the generator $q. You can use this information to access the state directly.
79 This module also contains the following constants
:
83 =item C
<$gsl_qrng_niederreiter_2
>
85 =item C
<$gsl_qrng_sobol
>
87 =item C
<$gsl_qrng_halton
>
89 =item C
<$gsl_qrng_reversehalton
>
93 For more informations on the functions
, we refer you to the GSL offcial documentation
: L
<http
://www.gnu.org
/software
/gsl
/manual
/html_node
/>
95 Tip
: search on google
: site
:http
://www.gnu.org
/software
/gsl
/manual
/html_node
/ name_of_the_function_you_want
102 Jonathan Leto
<jonathan@leto.net
> and Thierry Moisan
<thierry.moisan@gmail.com
>
104 =head1 COPYRIGHT
AND LICENSE
106 Copyright
(C
) 2008 Jonathan Leto and Thierry Moisan
108 This program is free software
; you can redistribute it and
/or modify it
109 under the same terms as Perl itself.