s2let  2.2.0
Fast wavelets on the sphere
Enumerations | Functions | Variables
s2let_tiling.c File Reference
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include "s2let.h"
Include dependency graph for s2let_tiling.c:

Enumerations

enum  s2let_kernel_type { S2DW, NEEDLET, SPLINE }
 

Functions

void s2let_switch_wavtype (int typenum)
 
int s2let_bandlimit (int j, const s2let_parameters_t *parameters)
 
int s2let_L0 (int j, const s2let_parameters_t *parameters)
 
int s2let_j_max (const s2let_parameters_t *parameters)
 
void s2let_tiling_axisym_allocate (double **kappa, double **kappa0, const s2let_parameters_t *parameters)
 
void s2let_tiling_phi2_s2dw (double *phi2, const s2let_parameters_t *parameters)
 
void s2let_tiling_phi2_needlet (double *phi2, const s2let_parameters_t *parameters)
 
void s2let_tiling_phi2_spline (double *phi2, const s2let_parameters_t *parameters)
 
void s2let_tiling_axisym (double *kappa, double *kappa0, const s2let_parameters_t *parameters)
 
void s2let_tiling_direction_allocate (complex double **s_elm, const s2let_parameters_t *parameters)
 
void s2let_tiling_direction (complex double *s_elm, const s2let_parameters_t *parameters)
 
void s2let_tiling_wavelet_allocate (complex double **psi, double **phi, const s2let_parameters_t *parameters)
 
void s2let_tiling_wavelet (complex double *psi, double *phi, const s2let_parameters_t *parameters)
 
double s2let_tiling_axisym_check_identity (double *kappa, double *kappa0, const s2let_parameters_t *parameters)
 
double s2let_tiling_direction_check_identity (complex double *s_elm, const s2let_parameters_t *parameters)
 
double s2let_tiling_wavelet_check_identity (complex double *psi, double *phi, const s2let_parameters_t *parameters)
 

Variables

s2let_kernel_type s2let_kernel = S2DW
 

Enumeration Type Documentation

◆ s2let_kernel_type

Enumerator
S2DW 
NEEDLET 
SPLINE 

Function Documentation

◆ s2let_bandlimit()

int s2let_bandlimit ( int  j,
const s2let_parameters_t parameters 
)

Computes band-limit of a specific wavelet scale.

Parameters
[in]jWavelet scale.
[in]parametersA parameters object with (at least) the following fields: B, L, J_min
Return values
band-limit

◆ s2let_j_max()

int s2let_j_max ( const s2let_parameters_t parameters)

Computes needlet maximum level required to ensure exact reconstruction.

Parameters
[in]parametersA parameters object with (at least) the following fields: B, L
Return values
j_max

◆ s2let_L0()

int s2let_L0 ( int  j,
const s2let_parameters_t parameters 
)

Computes the minimum harmonic index supported by the given wavelet scale.

Parameters
[in]jWavelet scale.
[in]parametersA parameters object with (at least) the following fields: B
Return values
el_min

◆ s2let_switch_wavtype()

void s2let_switch_wavtype ( int  typenum)

Switch to different wavelet type.

Parameters
[in]typenumInteger: 1 for scale-discretised, 2 for needlets and 3 for spline wavelets.
Return values
none

◆ s2let_tiling_axisym()

void s2let_tiling_axisym ( double *  kappa,
double *  kappa0,
const s2let_parameters_t parameters 
)

Generates axisymmetric tiling in harmonic space.

Parameters
[out]kappaKernel functions for the wavelets.
[out]kappa0Kernel for the scaling function.
[in]parametersA parameters object with (at least) the following fields: B, L, J_min
Return values
none

◆ s2let_tiling_axisym_allocate()

void s2let_tiling_axisym_allocate ( double **  kappa,
double **  kappa0,
const s2let_parameters_t parameters 
)

Allocates axisymmetric tiling kernels in harmonic space.

Parameters
[out]kappaKernel functions for the wavelets.
[out]kappa0Kernel for the scaling function.
[in]parametersA parameters object with (at least) the following fields: B, L
Return values
none

◆ s2let_tiling_axisym_check_identity()

double s2let_tiling_axisym_check_identity ( double *  kappa,
double *  kappa0,
const s2let_parameters_t parameters 
)

Checks exactness of the harmonic tiling kernels by checking the admissibility condition.

Parameters
[in]kappaKernel functions for the wavelets.
[in]kappa0Kernel for the scaling function.
[in]parametersA parameters object with (at least) the following fields: B, L, J_min
Return values
Achievedaccuracy (should be lower than e-14).

◆ s2let_tiling_direction()

void s2let_tiling_direction ( complex double *  s_elm,
const s2let_parameters_t parameters 
)

Generates the harmonic coefficients for the directionality component of the tiling functions. This implementation is based on equation (11) in the wavelet computation paper.

Parameters
[out]s_elmHarmonic coefficienets of directionality components.
[in]parametersA parameters object with (at least) the following fields: L, N spin

◆ s2let_tiling_direction_allocate()

void s2let_tiling_direction_allocate ( complex double **  s_elm,
const s2let_parameters_t parameters 
)

Allocates space for directionality components in harmonic space.

Parameters
[out]s_elmPointer to allocated space for harmonic coefficients of directionality components.
[in]parametersA parameters object with (at least) the following fields: L, N
Return values
none

◆ s2let_tiling_direction_check_identity()

double s2let_tiling_direction_check_identity ( complex double *  s_elm,
const s2let_parameters_t parameters 
)

Checks exactness of the directionality components by checking the admissibility condition.

Parameters
[in]s_elmHarmonic coefficients of directionality components.
[in]parametersA parameters object with (at least) the following fields: L, N
Return values
Achievedaccuracy (should be lower than e-14).

◆ s2let_tiling_phi2_needlet()

void s2let_tiling_phi2_needlet ( double *  phi2,
const s2let_parameters_t parameters 
)

◆ s2let_tiling_phi2_s2dw()

void s2let_tiling_phi2_s2dw ( double *  phi2,
const s2let_parameters_t parameters 
)

◆ s2let_tiling_phi2_spline()

void s2let_tiling_phi2_spline ( double *  phi2,
const s2let_parameters_t parameters 
)

◆ s2let_tiling_wavelet()

void s2let_tiling_wavelet ( complex double *  psi,
double *  phi,
const s2let_parameters_t parameters 
)

Generates the harmonic coefficients for the directional tiling wavelets. This implementation is based on equation (7) in the wavelet computation paper.

Parameters
[out]psiHarmonic coefficienets of directional wavelets.
[out]phiHarmonic coefficienets of scaling function.
[in]parametersA parameters object with (at least) the following fields: B, L, J_min N spin original_spin

◆ s2let_tiling_wavelet_allocate()

void s2let_tiling_wavelet_allocate ( complex double **  psi,
double **  phi,
const s2let_parameters_t parameters 
)

Allocates space for directional wavelets in harmonic space.

Parameters
[out]psiPointer to allocated space for harmonic coefficients of directional wavelets.
[out]phiPointer to allocated space for harmonic coefficients of scaling function.
[in]parametersA parameters object with (at least) the following fields: B L, N
Return values
none

◆ s2let_tiling_wavelet_check_identity()

double s2let_tiling_wavelet_check_identity ( complex double *  psi,
double *  phi,
const s2let_parameters_t parameters 
)

Checks exactness of the directional wavelets by checking the admissibility condition.

Parameters
[in]psiHarmonic coefficients of directional wavelets.
[in]phiHarmonic coefficients of scaling function.
[in]parametersA parameters object with (at least) the following fields: B, L, J_min N spin
Return values
Achievedaccuracy (should be lower than e-14).

Variable Documentation

◆ s2let_kernel

s2let_kernel_type s2let_kernel = S2DW