| Top |
Functions
Types and Values
| struct | NcmSFSphericalHarmonicsK |
| struct | NcmSFSphericalHarmonicsP |
| #define | NCM_SF_SPHERICAL_HARMONICS_MAX_LEN |
| #define | NCM_SF_SPHERICAL_HARMONICS_DEFAULT_ABSTOL |
| #define | NCM_SF_SPHERICAL_HARMONICS_ARRAY_DEFAULT_ABSTOL |
| #define | NCM_SF_SPHERICAL_HARMONICS_EPS |
| #define | NCM_SF_SPHERICAL_HARMONICS_LATERAL_MOVE |
| const gdouble | sn_2l0_5 |
| const gdouble | snm1_2l0_2 |
| const gdouble | sqrt1mx2 |
| const gdouble | x |
| const gint | l0 |
| const gint | m |
| const gint | twol0 |
| const gint | l0mm |
| const gint | l0pm |
| const gdouble | Llp1 |
| const gdouble | Ll |
| const gdouble | Mlp1 |
| const gdouble | Ml |
| const gdouble | Pl0m |
| const gdouble | Pl0p1m |
| gdouble | min_Plm |
| const gdouble | abs_Plm |
| const gint | lmax |
Object Hierarchy
GBoxed ├── NcmSFSphericalHarmonicsY ╰── NcmSFSphericalHarmonicsYArray GObject ╰── NcmSFSphericalHarmonics
Functions
ncm_sf_spherical_harmonics_Y_new ()
NcmSFSphericalHarmonicsY * ncm_sf_spherical_harmonics_Y_new (NcmSFSphericalHarmonics *spha,const gdouble abstol);
FIXME
ncm_sf_spherical_harmonics_Y_dup ()
NcmSFSphericalHarmonicsY *
ncm_sf_spherical_harmonics_Y_dup (NcmSFSphericalHarmonicsY *sphaY);
FIXME
ncm_sf_spherical_harmonics_Y_free ()
void
ncm_sf_spherical_harmonics_Y_free (NcmSFSphericalHarmonicsY *sphaY);
FIXME
ncm_sf_spherical_harmonics_Y_get_lm ()
gdouble
ncm_sf_spherical_harmonics_Y_get_lm (NcmSFSphericalHarmonicsY *sphaY);
ncm_sf_spherical_harmonics_Y_get_lp1m ()
gdouble
ncm_sf_spherical_harmonics_Y_get_lp1m (NcmSFSphericalHarmonicsY *sphaY);
ncm_sf_spherical_harmonics_Y_get_x ()
gdouble
ncm_sf_spherical_harmonics_Y_get_x (NcmSFSphericalHarmonicsY *sphaY);
ncm_sf_spherical_harmonics_Y_get_l ()
gint
ncm_sf_spherical_harmonics_Y_get_l (NcmSFSphericalHarmonicsY *sphaY);
ncm_sf_spherical_harmonics_Y_get_m ()
gint
ncm_sf_spherical_harmonics_Y_get_m (NcmSFSphericalHarmonicsY *sphaY);
ncm_sf_spherical_harmonics_Y_next_l ()
void
ncm_sf_spherical_harmonics_Y_next_l (NcmSFSphericalHarmonicsY *sphaY);
Move the recursion for $x$ to $l = l + 1$.
ncm_sf_spherical_harmonics_Y_next_l2 ()
void ncm_sf_spherical_harmonics_Y_next_l2 (NcmSFSphericalHarmonicsY *sphaY,gdouble * restrict Yblm);
Move the recursion for $x$ to $l = l + 2$.
ncm_sf_spherical_harmonics_Y_next_l4 ()
void ncm_sf_spherical_harmonics_Y_next_l4 (NcmSFSphericalHarmonicsY *sphaY,gdouble * restrict Yblm);
Move the recursion for $x$ to $l = l + 4$.
ncm_sf_spherical_harmonics_Y_next_l2pn ()
void ncm_sf_spherical_harmonics_Y_next_l2pn (NcmSFSphericalHarmonicsY *sphaY,gdouble * restrict Yblm,const gint n);
ncm_sf_spherical_harmonics_Y_next_m ()
void
ncm_sf_spherical_harmonics_Y_next_m (NcmSFSphericalHarmonicsY *sphaY);
Restart the recursion for $x$ at $l = m + 1,\; m = m + 1$. If the value of $Ybll < a$ where $a$ is the absolute tolerance, advance $l$ until the tolerance is reached.
ncm_sf_spherical_harmonics_Y_reset ()
void
ncm_sf_spherical_harmonics_Y_reset (NcmSFSphericalHarmonicsY *sphaY);
ncm_sf_spherical_harmonics_Y_array_new ()
NcmSFSphericalHarmonicsYArray * ncm_sf_spherical_harmonics_Y_array_new (NcmSFSphericalHarmonics *spha,const gint len,const gdouble abstol);
FIXME
ncm_sf_spherical_harmonics_Y_array_dup ()
NcmSFSphericalHarmonicsYArray *
ncm_sf_spherical_harmonics_Y_array_dup
(NcmSFSphericalHarmonicsYArray *sphaYa);
FIXME
ncm_sf_spherical_harmonics_Y_array_free ()
void
ncm_sf_spherical_harmonics_Y_array_free
(NcmSFSphericalHarmonicsYArray *sphaYa);
FIXME
ncm_sf_spherical_harmonics_Y_array_get_lm ()
gdouble ncm_sf_spherical_harmonics_Y_array_get_lm (NcmSFSphericalHarmonicsYArray *sphaYa,const gint len,const gint i);
ncm_sf_spherical_harmonics_Y_array_get_lp1m ()
gdouble ncm_sf_spherical_harmonics_Y_array_get_lp1m (NcmSFSphericalHarmonicsYArray *sphaYa,const gint len,const gint i);
ncm_sf_spherical_harmonics_Y_array_get_x ()
gdouble ncm_sf_spherical_harmonics_Y_array_get_x (NcmSFSphericalHarmonicsYArray *sphaYa,const gint i);
ncm_sf_spherical_harmonics_Y_array_get_l ()
gint
ncm_sf_spherical_harmonics_Y_array_get_l
(NcmSFSphericalHarmonicsYArray *sphaYa);
ncm_sf_spherical_harmonics_Y_array_get_m ()
gint
ncm_sf_spherical_harmonics_Y_array_get_m
(NcmSFSphericalHarmonicsYArray *sphaYa);
ncm_sf_spherical_harmonics_Y_array_next_l ()
void ncm_sf_spherical_harmonics_Y_array_next_l (NcmSFSphericalHarmonicsYArray *sphaYa,const gint len);
ncm_sf_spherical_harmonics_Y_array_next_l2 ()
void ncm_sf_spherical_harmonics_Y_array_next_l2 (NcmSFSphericalHarmonicsYArray *sphaYa,const gint len,gdouble * restrict Yblm);
ncm_sf_spherical_harmonics_Y_array_next_l4 ()
void ncm_sf_spherical_harmonics_Y_array_next_l4 (NcmSFSphericalHarmonicsYArray *sphaYa,const gint len,gdouble * restrict Yblm);
ncm_sf_spherical_harmonics_Y_array_next_l2pn ()
void ncm_sf_spherical_harmonics_Y_array_next_l2pn (NcmSFSphericalHarmonicsYArray *sphaYa,const gint len,gdouble * restrict Yblm,const gint n);
ncm_sf_spherical_harmonics_Y_array_next_m ()
void ncm_sf_spherical_harmonics_Y_array_next_m (NcmSFSphericalHarmonicsYArray *sphaYa,const gint len);
ncm_sf_spherical_harmonics_Y_array_reset ()
void ncm_sf_spherical_harmonics_Y_array_reset (NcmSFSphericalHarmonicsYArray *sphaYa,const gint len);
ncm_sf_spherical_harmonics_new ()
NcmSFSphericalHarmonics *
ncm_sf_spherical_harmonics_new (const gint lmax);
Creates a new NcmSFSphericalHarmonics object.
ncm_sf_spherical_harmonics_ref ()
NcmSFSphericalHarmonics *
ncm_sf_spherical_harmonics_ref (NcmSFSphericalHarmonics *spha);
Increase the reference of spha
by one.
ncm_sf_spherical_harmonics_free ()
void
ncm_sf_spherical_harmonics_free (NcmSFSphericalHarmonics *spha);
Decrease the reference count of spha
by one.
ncm_sf_spherical_harmonics_clear ()
void
ncm_sf_spherical_harmonics_clear (NcmSFSphericalHarmonics **spha);
Decrease the reference count of spha
by one, and sets the pointer *spha
to
NULL.
ncm_sf_spherical_harmonics_set_lmax ()
void ncm_sf_spherical_harmonics_set_lmax (NcmSFSphericalHarmonics *spha,const gint lmax);
Sets the maximum l to lmax
.
ncm_sf_spherical_harmonics_get_lmax ()
gint
ncm_sf_spherical_harmonics_get_lmax (NcmSFSphericalHarmonics *spha);
Gets the maximum l to lmax
.
ncm_sf_spherical_harmonics_start_rec ()
void ncm_sf_spherical_harmonics_start_rec (NcmSFSphericalHarmonics *spha,NcmSFSphericalHarmonicsY *sphaY,const gdouble theta);
Start recursion for $\theta$ at $l = 0,\; m = 0$.
ncm_sf_spherical_harmonics_start_rec_array ()
void ncm_sf_spherical_harmonics_start_rec_array (NcmSFSphericalHarmonics *spha,NcmSFSphericalHarmonicsYArray *sphaYa,const gint len,const gdouble *theta);
Start recursion for the array $\theta_i$ at $l = 0,\; m = 0$. The array theta
must have
length len
.
ncm_sf_spherical_harmonics_get_Klm ()
NcmSFSphericalHarmonicsK * ncm_sf_spherical_harmonics_get_Klm (NcmSFSphericalHarmonics *spha,const gint l0,const gint m);
Gets an array of NcmSFSphericalHarmonicsK with the coeficients necessary to move the recurence from $(l_0, m)\; \to\; (l_\mathrm{max}, m)$.
[skip]
Returns
a pointer to an array of NcmSFSphericalHarmonicsK.
[array][element-type NcmSFSphericalHarmonicsK]
Types and Values
struct NcmSFSphericalHarmonicsK
struct NcmSFSphericalHarmonicsK {
gdouble l;
gdouble lp1;
};
Recurrence coefficients.
struct NcmSFSphericalHarmonicsP
struct NcmSFSphericalHarmonicsP {
gdouble x;
gdouble sqrt1mx2;
gdouble l0m;
gdouble l0p1m;
gdouble lm;
gdouble lp1m;
};
Boxed P values.
NCM_SF_SPHERICAL_HARMONICS_DEFAULT_ABSTOL
#define NCM_SF_SPHERICAL_HARMONICS_DEFAULT_ABSTOL (1.0e-20)
NCM_SF_SPHERICAL_HARMONICS_ARRAY_DEFAULT_ABSTOL
#define NCM_SF_SPHERICAL_HARMONICS_ARRAY_DEFAULT_ABSTOL (1.0e-40)
abs_Plm
const gdouble abs_Plm = fabs (sphaYa->Ylm[NCM_SF_SPHERICAL_HARMONICS_ARRAY_INDEX (i, 0, len)]);