FLAG
1.0b1
Exact Fourier-Laguerre transform in spherical coordinates
|
#include <complex.h>
Go to the source code of this file.
Functions | |
void | flag_spherlaguerre_quadrature (double *roots, double *weights, int N, int alpha) |
double | flag_spherlaguerre_tau (double R, int N) |
double | flag_spherlaguerre_Rmax (int N) |
void | flag_spherlaguerre_sampling (double *nodes, double *weights, double tau, int N) |
void | flag_spherbessel_sampling (double *nodes, double *weights, double R, int N) |
void | flag_spherlaguerre_analysis (double *fn, const double *f, const double *nodes, const double *weights, double tau, int N) |
void | flag_spherlaguerre_synthesis (double *f, const double *fn, const double *nodes, int Nnodes, double tau, int N) |
void | flag_spherlaguerre_synthesis_gen (double *f, const double *fn, const double *nodes, int Nnodes, double tau, int N, int alpha) |
void | flag_spherlaguerre_allocate_sampling (double **nodes, double **weights, int N) |
void | flag_spherlaguerre_mapped_analysis (complex double *fn, const complex double *f, const double *weights, const double *nodes, double tau, int N, int mapsize) |
void | flag_spherlaguerre_mapped_synthesis (complex double *f, const complex double *fn, const double *nodes, int Nnodes, double tau, int N, int mapsize) |
void | flag_spherlaguerre_basis (double *KN, const int N, const double *nodes, int Nnodes, double tau) |
void flag_spherbessel_sampling | ( | double * | nodes, |
double * | weights, | ||
double | R, | ||
int | N | ||
) |
Definition at line 479 of file flag_spherlaguerre.c.
void flag_spherlaguerre_allocate_sampling | ( | double ** | nodes, |
double ** | weights, | ||
int | N | ||
) |
Allocate spherical Laguerre sampling scheme.
[out] | nodes | Nodes of the sampling. |
[out] | weights | Weights for the SLAG quadrature. |
[in] | N | Harmonic band-limit. |
none |
Definition at line 253 of file flag_spherlaguerre.c.
void flag_spherlaguerre_analysis | ( | double * | fn, |
const double * | f, | ||
const double * | nodes, | ||
const double * | weights, | ||
double | tau, | ||
int | N | ||
) |
Perform spherical Laguerre analysis.
[out] | fn | SLAG coefficients. |
[in] | f | Input dataset. |
[in] | nodes | Nodes of the sampling. |
[in] | weights | Weights for the SLAG quadrature. |
[in] | N | Harmonic band-limit. |
none |
Definition at line 262 of file flag_spherlaguerre.c.
void flag_spherlaguerre_basis | ( | double * | KN, |
const int | N, | ||
const double * | nodes, | ||
int | Nnodes, | ||
double | tau | ||
) |
Compute the spherical-Laguerre basis functions on a grid of radii
[out] | KN | Synthesised basis function. |
[in] | N | SLAG band-limit. |
[in] | nodes | Radii where the function must be calculated. |
[in] | Nnodes | Number of radii. |
none |
Definition at line 443 of file flag_spherlaguerre.c.
void flag_spherlaguerre_mapped_analysis | ( | complex double * | fn, |
const complex double * | f, | ||
const double * | weights, | ||
const double * | nodes, | ||
double | tau, | ||
int | N, | ||
int | mapsize | ||
) |
Perform spherical Laguerre analysis. 3D mapped version - suitable for FLAG transform.
[out] | fn | SLAG coefficients. |
[in] | f | Input dataset. |
[in] | nodes | Nodes of the sampling. |
[in] | weights | Weights for the SLAG quadrature. |
[in] | mapsize | Size of each layer (L^2 in FLAG). |
[in] | N | Harmonic band-limit. |
none |
Definition at line 337 of file flag_spherlaguerre.c.
void flag_spherlaguerre_mapped_synthesis | ( | complex double * | f, |
const complex double * | fn, | ||
const double * | nodes, | ||
int | Nnodes, | ||
double | tau, | ||
int | N, | ||
int | mapsize | ||
) |
Perform spherical Laguerre synthesis. 3D mapped version - suitable for FLAG transform.
[out] | f | Synthesised dataset. |
[in] | fn | Input SLAG coefficients. |
[in] | nodes | Nodes of the sampling. |
[in] | mapsize | Size of each layer (L^2 in FLAG). |
[in] | N | Harmonic band-limit. |
none |
Definition at line 389 of file flag_spherlaguerre.c.
void flag_spherlaguerre_quadrature | ( | double * | roots, |
double * | weights, | ||
int | N, | ||
int | alpha | ||
) |
Compute Gauss-Laguerre quadrature (nodes and weights).
[out] | roots | Gauss-Laguerre nodes. |
[out] | weights | Gauss-Laguerre weights. |
[in] | N | Harmonic band-limit. |
none |
Definition at line 60 of file flag_spherlaguerre.c.
double flag_spherlaguerre_Rmax | ( | int | N | ) |
Compute spherical Laguerre maximum R.
[in] | N | Harmonic band-limit. |
R | Radial limit / boundary. |
Definition at line 160 of file flag_spherlaguerre.c.
void flag_spherlaguerre_sampling | ( | double * | nodes, |
double * | weights, | ||
double | tau, | ||
int | N | ||
) |
Compute spherical Laguerre sampling scheme.
[out] | nodes | Nodes of the sampling. |
[out] | weights | Weights for the SLAG quadrature. |
[in] | R | Radial limit / boundary. |
[in] | N | Harmonic band-limit. |
none |
Definition at line 236 of file flag_spherlaguerre.c.
void flag_spherlaguerre_synthesis | ( | double * | f, |
const double * | fn, | ||
const double * | nodes, | ||
int | Nnodes, | ||
double | tau, | ||
int | N | ||
) |
Perform spherical Laguerre synthesis.
[out] | f | Synthesised dataset. |
[in] | fn | Input SLAG coefficients. |
[in] | nodes | Nodes of the sampling. |
[in] | N | Harmonic band-limit. |
none |
Definition at line 297 of file flag_spherlaguerre.c.
void flag_spherlaguerre_synthesis_gen | ( | double * | f, |
const double * | fn, | ||
const double * | nodes, | ||
int | Nnodes, | ||
double | tau, | ||
int | N, | ||
int | alpha | ||
) |
Definition at line 303 of file flag_spherlaguerre.c.
double flag_spherlaguerre_tau | ( | double | R, |
int | N | ||
) |
Compute spherical Laguerre scaling factor tau.
[in] | R | Radial limit / boundary. |
[in] | N | Harmonic band-limit. |
tau | Scaling factor for the SLAG sampling. |
Definition at line 153 of file flag_spherlaguerre.c.