Ssht  1.3.3
Fast and exact spin spherical harmonic transforms
Functions
ssht_sampling.h File Reference
#include <math.h>
#include "ssht_types.h"
Include dependency graph for ssht_sampling.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

ssht_complex_double ssht_sampling_weight_mw (int p)
 
double ssht_sampling_weight_dh (double theta_t, int L)
 
void ssht_sampling_gl_thetas_weights (double *thetas, double *weights, int L)
 
double ssht_sampling_mw_t2theta (int t, int L)
 
double ssht_sampling_mw_p2phi (int p, int L)
 
int ssht_sampling_mw_n (int L)
 
int ssht_sampling_mw_ntheta (int L)
 
int ssht_sampling_mw_nphi (int L)
 
double ssht_sampling_mw_ss_t2theta (int t, int L)
 
double ssht_sampling_mw_ss_p2phi (int p, int L)
 
int ssht_sampling_mw_ss_n (int L)
 
int ssht_sampling_mw_ss_ntheta (int L)
 
int ssht_sampling_mw_ss_nphi (int L)
 
double ssht_sampling_dh_t2theta (int t, int L)
 
double ssht_sampling_dh_p2phi (int p, int L)
 
int ssht_sampling_dh_n (int L)
 
int ssht_sampling_dh_ntheta (int L)
 
int ssht_sampling_dh_nphi (int L)
 
double ssht_sampling_gl_p2phi (int p, int L)
 
int ssht_sampling_gl_n (int L)
 
int ssht_sampling_gl_ntheta (int L)
 
int ssht_sampling_gl_nphi (int L)
 

Function Documentation

◆ ssht_sampling_dh_n()

int ssht_sampling_dh_n ( int  L)

Compute total number of samples for Driscoll and Healy sampling.

Parameters
[in]LHarmonic band-limit.
Return values
nNumber of samples.
Author
Jason McEwen

◆ ssht_sampling_dh_nphi()

int ssht_sampling_dh_nphi ( int  L)

Compute number of phi samples for Driscoll and Healy sampling.

Parameters
[in]LHarmonic band-limit.
Return values
nphiNumber of phi samples.
Author
Jason McEwen

◆ ssht_sampling_dh_ntheta()

int ssht_sampling_dh_ntheta ( int  L)

Compute number of theta samples for Driscoll and Healy sampling.

Parameters
[in]LHarmonic band-limit.
Return values
nthetaNumber of theta samples.
Author
Jason McEwen

◆ ssht_sampling_dh_p2phi()

double ssht_sampling_dh_p2phi ( int  p,
int  L 
)

Convert phi index to angle for Driscoll and Healy sampling.

Note
  • p ranges from [0 .. 2*L-2] => 2*L-1 points in [0,2*pi).
Parameters
[in]pPhi index.
[in]LHarmonic band-limit.
Return values
phiPhi angle.
Author
Jason McEwen

◆ ssht_sampling_dh_t2theta()

double ssht_sampling_dh_t2theta ( int  t,
int  L 
)

Convert theta index to angle for Driscoll and Healy sampling.

Note
  • t ranges from [0 .. 2*L-1] => 2*L points in (0,pi).
Parameters
[in]tTheta index.
[in]LHarmonic band-limit.
Return values
thetaTheta angle.
Author
Jason McEwen

◆ ssht_sampling_gl_n()

int ssht_sampling_gl_n ( int  L)

Compute total number of samples for Gauss-Legendre sampling.

Parameters
[in]LHarmonic band-limit.
Return values
nNumber of samples.
Author
Jason McEwen

◆ ssht_sampling_gl_nphi()

int ssht_sampling_gl_nphi ( int  L)

Compute number of phi samples for Gauss-Legendre sampling.

Parameters
[in]LHarmonic band-limit.
Return values
nphiNumber of phi samples.
Author
Jason McEwen

◆ ssht_sampling_gl_ntheta()

int ssht_sampling_gl_ntheta ( int  L)

Compute number of theta samples for Gauss-Legendre sampling.

Parameters
[in]LHarmonic band-limit.
Return values
nthetaNumber of theta samples.
Author
Jason McEwen

◆ ssht_sampling_gl_p2phi()

double ssht_sampling_gl_p2phi ( int  p,
int  L 
)

Convert phi index to angle for Gauss-Legendre sampling.

Note
  • p ranges from [0 .. 2*L-2] => 2*L-1 points in [0,2*pi).
Parameters
[in]pPhi index.
[in]LHarmonic band-limit.
Return values
phiPhi angle.
Author
Jason McEwen

◆ ssht_sampling_gl_thetas_weights()

void ssht_sampling_gl_thetas_weights ( double *  thetas,
double *  weights,
int  L 
)

Compute Gauss-Legendre theta positions (roots of Legendre polynomials) and corresponding weights.

Parameters
[out]thetasL theta positions (memory must already be allocated to store the L theta positions).
[out]weightsCorresponding weights (memory must already be allocated to store the L weights corresponding to each theta position).
[in]LHarmonic band-limit.
Return values
none
Author
Jason McEwen

◆ ssht_sampling_mw_n()

int ssht_sampling_mw_n ( int  L)

Compute total number of samples for McEwen and Wiaux sampling.

/note Computes number of samples on sphere, not over extended domain.

Parameters
[in]LHarmonic band-limit.
Return values
nNumber of samples.
Author
Jason McEwen

◆ ssht_sampling_mw_nphi()

int ssht_sampling_mw_nphi ( int  L)

Compute number of phi samples for McEwen and Wiaux sampling.

Parameters
[in]LHarmonic band-limit.
Return values
nphiNumber of phi samples.
Author
Jason McEwen

◆ ssht_sampling_mw_ntheta()

int ssht_sampling_mw_ntheta ( int  L)

Compute number of theta samples for McEwen and Wiaux sampling.

/note Computes number of samples in (0,pi], not over extended domain.

Parameters
[in]LHarmonic band-limit.
Return values
nthetaNumber of theta samples.
Author
Jason McEwen

◆ ssht_sampling_mw_p2phi()

double ssht_sampling_mw_p2phi ( int  p,
int  L 
)

Convert phi index to angle for McEwen and Wiaux sampling.

Note
  • p ranges from [0 .. 2*L-2] => 2*L-1 points in [0,2*pi).
Parameters
[in]pPhi index.
[in]LHarmonic band-limit.
Return values
phiPhi angle.
Author
Jason McEwen

◆ ssht_sampling_mw_ss_n()

int ssht_sampling_mw_ss_n ( int  L)

Compute total number of samples for McEwen and Wiaux symmetric sampling.

/note Computes number of samples on sphere, not over extended domain.

Parameters
[in]LHarmonic band-limit.
Return values
nNumber of samples.
Author
Jason McEwen

◆ ssht_sampling_mw_ss_nphi()

int ssht_sampling_mw_ss_nphi ( int  L)

Compute number of phi samples for McEwen and Wiaux symmetric sampling.

Parameters
[in]LHarmonic band-limit.
Return values
nphiNumber of phi samples.
Author
Jason McEwen

◆ ssht_sampling_mw_ss_ntheta()

int ssht_sampling_mw_ss_ntheta ( int  L)

Compute number of theta samples for McEwen and Wiaux symmetric sampling.

/note Computes number of samples in [0,pi], not over extended domain.

Parameters
[in]LHarmonic band-limit.
Return values
nthetaNumber of theta samples.
Author
Jason McEwen

◆ ssht_sampling_mw_ss_p2phi()

double ssht_sampling_mw_ss_p2phi ( int  p,
int  L 
)

Convert phi index to angle for McEwen and Wiaux symmetric sampling.

Note
  • p ranges from [0 .. 2*L-1] => 2*L points in [0,2*pi).
Parameters
[in]pPhi index.
[in]LHarmonic band-limit.
Return values
phiPhi angle.
Author
Jason McEwen

◆ ssht_sampling_mw_ss_t2theta()

double ssht_sampling_mw_ss_t2theta ( int  t,
int  L 
)

Convert theta index to angle for McEwen and Wiaux symmetric sampling.

Note
  • t ranges from [0 .. 2*L-1] => 2*L points in (0,2*pi).
Parameters
[in]tTheta index.
[in]LHarmonic band-limit.
Return values
thetaTheta angle.
Author
Jason McEwen

◆ ssht_sampling_mw_t2theta()

double ssht_sampling_mw_t2theta ( int  t,
int  L 
)

Convert theta index to angle for McEwen and Wiaux sampling.

Note
  • t ranges from [0 .. 2*L-2] => 2*L-1 points in (0,2*pi).
Parameters
[in]tTheta index.
[in]LHarmonic band-limit.
Return values
thetaTheta angle.
Author
Jason McEwen

◆ ssht_sampling_weight_dh()

double ssht_sampling_weight_dh ( double  theta_t,
int  L 
)

Compute Driscoll and Healy weights.

Parameters
[in]theta_tTheta value to compute weight for.
[in]LHarmonic band-limit. return w Weight value computed.
Author
Jason McEwen

◆ ssht_sampling_weight_mw()

ssht_complex_double ssht_sampling_weight_mw ( int  p)

Compute weights for toroidal extension.

Parameters
[in]pInteger index to compute weight for.
[out]wCorresponding weight.
Return values
Weightvalue computed.
Author
Jason McEwen