![]() |
CosmoBolognaLib
Free Software C++/Python libraries for cosmological calculations
|
The namespace of the FFTlog wrappers More...
Functions | |
void | fhti_ (int *_n, double *_mu, double *_q, double *_dlnr, double *_kr, int *_kropt, double *_wsave, int *_ok) |
wrapper of the fhti subroutine contained in External/fftlog-f90-master/fftlog.f This is an initialization routine More... | |
void | fftl_ (int *_n, double *_a, double *_rk, int *_dir, double *_wsave) |
wrapper of the fftl subroutine contained in External/fftlog-f90-master/fftlog.f This subroutine computes the discrete Fourier sine or cosine transform of a logarithmically spaced periodic sequence More... | |
std::vector< double > | transform_FFTlog (const std::vector< double > yy, const int dir, const std::vector< double > xx, const std::vector< double > fx, const double mu=0, const double q=0, const double kr=1, const int kropt=0) |
wrapper of the FFTlog to compute the discrete Fourier sine or cosine transform of a logarithmically spaced periodic sequence More... | |
void | transform_FFTlog (std::vector< double > &yy, std::vector< double > &fy, const int dir, const std::vector< double > xx, const std::vector< double > fx, const double mu=0, const double q=0, const double kr=1, const int kropt=0) |
wrapper of the FFTlog to compute the discrete Fourier sine or cosine transform of a logarithmically spaced periodic sequence More... | |
The namespace of the FFTlog wrappers
The fftlog namespace contains all the wrapper functions of the FFTlog routines, by Hamilton (see Hamilton 2000, Appendix B)
For a complete description of the routines please refer to http://casa.colorado.edu/~ajsh/FFTLog/
void cbl::wrapper::fftlog::fftl_ | ( | int * | _n, |
double * | _a, | ||
double * | _rk, | ||
int * | _dir, | ||
double * | _wsave | ||
) |
wrapper of the fftl subroutine contained in External/fftlog-f90-master/fftlog.f This subroutine computes the discrete Fourier sine or cosine transform of a logarithmically spaced periodic sequence
_n | number of points in the array to be transformed |
_a | input → the array A to transform, output → the transformed array |
_rk | \(r_c/k_c\) |
_dir | 1 → forward transform, -1 → backward transform |
_wsave | working array |
void cbl::wrapper::fftlog::fhti_ | ( | int * | _n, |
double * | _mu, | ||
double * | _q, | ||
double * | _dlnr, | ||
double * | _kr, | ||
int * | _kropt, | ||
double * | _wsave, | ||
int * | _ok | ||
) |
wrapper of the fhti subroutine contained in External/fftlog-f90-master/fftlog.f This is an initialization routine
[in] | _n | number of points in the array to be transformed |
[in] | _mu | index of \(J_\mu\) in Hankel transform |
[in] | _q | exponent of power law bias |
[in] | _dlnr | separation between natural log of points |
[in] | _kr | \(k_c\cdot r_c\) where c is the central point of the array \(kr = k_j r_{n+1-j} = k_{n+1-j} r_j\) |
[in] | _kropt | 0 → use input kr as is; 1 → change kr to nearest low-ringing kr, quietly; 2 → change kr to nearest low-ringing kr, verbosely; 3 → change kr interactively |
[out] | _wsave | working array |
[out] | _ok | 1 → all went ok; 0 → error in initializations |
vector< double > cbl::wrapper::fftlog::transform_FFTlog | ( | const std::vector< double > | yy, |
const int | dir, | ||
const std::vector< double > | xx, | ||
const std::vector< double > | fx, | ||
const double | mu = 0 , |
||
const double | q = 0 , |
||
const double | kr = 1 , |
||
const int | kropt = 0 |
||
) |
wrapper of the FFTlog to compute
the discrete Fourier sine or cosine transform of a logarithmically spaced periodic sequence
yy | array containing the output positions |
dir | → forward transform, -1 → backward transform |
xx | the input position of the array to transform |
fx | the array to transform |
mu | index of \(J_\mu\) in Hankel transform |
q | exponent of power law bias |
kr | \(k_c\cdot r_c\) where c is the central point of the array \(kr = k_j r_{n+1-j} = k_{n+1-j} r_j\) |
kropt | 0 → use input kr as is; 1 → change kr to nearest low-ringing kr, quietly; 2 → change kr to nearest low-ringing kr, verbosely; 3 → change kr interactively. |
Definition at line 43 of file FFTlog.cpp.
void cbl::wrapper::fftlog::transform_FFTlog | ( | std::vector< double > & | yy, |
std::vector< double > & | fy, | ||
const int | dir, | ||
const std::vector< double > | xx, | ||
const std::vector< double > | fx, | ||
const double | mu = 0 , |
||
const double | q = 0 , |
||
const double | kr = 1 , |
||
const int | kropt = 0 |
||
) |
wrapper of the FFTlog to compute the discrete Fourier sine or cosine transform of a logarithmically spaced periodic sequence
yy | array containing the output positions |
fy | the transformed array |
dir | → forward transform, -1 → backward transform |
xx | the input position of the array to transform |
fx | the array to transform |
mu | index of \(J_\mu\) in Hankel transform |
q | exponent of power law bias |
kr | \(k_c\cdot r_c\) where c is the central point of the array \(kr = k_j r_{n+1-j} = k_{n+1-j} r_j\) . |
kropt | 0 → use input kr as is; 1 → change kr to nearest low-ringing kr, quietly; 2 → change kr to nearest low-ringing kr, verbosely; 3 → change kr interactively |
Definition at line 61 of file FFTlog.cpp.