![]() |
s2let
2.2.0
Fast wavelets on the sphere
|
#include <complex.h>
#include <math.h>
#include <ssht/ssht.h>
#include <stdlib.h>
#include "s2let.h"
Functions | |
void | s2let_transform_axisym_allocate_mw_f_wav (complex double **f_wav, complex double **f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_allocate_mw_f_wav_multires (complex double **f_wav, complex double **f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_allocate_mw_f_wav_real (double **f_wav, double **f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_allocate_mw_f_wav_multires_real (double **f_wav, double **f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_analysis_mw (complex double *f_wav, complex double *f_scal, const complex double *f, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_analysis_adjoint_mw (complex double *f, const complex double *f_wav, const complex double *f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_synthesis_mw (complex double *f, const complex double *f_wav, const complex double *f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_synthesis_adjoint_mw (complex double *f_wav, complex double *f_scal, const complex double *f, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_analysis_mw_multires (complex double *f_wav, complex double *f_scal, const complex double *f, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_analysis_adjoint_mw_multires (complex double *f, const complex double *f_wav, const complex double *f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_synthesis_mw_multires (complex double *f, const complex double *f_wav, const complex double *f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_synthesis_adjoint_mw_multires (complex double *f_wav, complex double *f_scal, const complex double *f, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_analysis_mw_real (double *f_wav, double *f_scal, const double *f, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_analysis_adjoint_mw_real (double *f, const double *f_wav, const double *f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_synthesis_mw_real (double *f, const double *f_wav, const double *f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_synthesis_adjoint_mw_real (double *f_wav, double *f_scal, const double *f, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_analysis_mw_multires_real (double *f_wav, double *f_scal, const double *f, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_analysis_adjoint_mw_multires_real (double *f, const double *f_wav, const double *f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_synthesis_mw_multires_real (double *f, const double *f_wav, const double *f_scal, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_synthesis_adjoint_mw_multires_real (double *f_wav, double *f_scal, const double *f, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_hardthreshold_real (double *g_wav, const double *threshold, const s2let_parameters_t *parameters) |
void | s2let_transform_axisym_wav_hardthreshold_multires_real (double *g_wav, const double *threshold, const s2let_parameters_t *parameters) |
void s2let_transform_axisym_allocate_mw_f_wav | ( | complex double ** | f_wav, |
complex double ** | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Allocates arrays for final wavelets and scaling functions in pixel space (MW sampling).
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_allocate_mw_f_wav_multires | ( | complex double ** | f_wav, |
complex double ** | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Allocates arrays for wavelets and scaling functions in pixel space (MW sampling).
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_allocate_mw_f_wav_multires_real | ( | double ** | f_wav, |
double ** | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Allocates arrays for multiresolution wavelets and scaling functions in pixel space (MW sampling).
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_allocate_mw_f_wav_real | ( | double ** | f_wav, |
double ** | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Allocates arrays for final wavelets and scaling functions in pixel space (MW sampling).
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_analysis_adjoint_mw | ( | complex double * | f, |
const complex double * | f_wav, | ||
const complex double * | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Perform wavelet transform adjoint in real space (from scratch, gives wavelet maps). Sampling scheme : MW sampling. Spherical wavelets : analysis adjoint in real space, MW sampling.
[out] | f | Input function (MW sampling) |
[in] | f_wav | Array of wavelets maps, MW sampling. |
[in] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_analysis_adjoint_mw_multires | ( | complex double * | f, |
const complex double * | f_wav, | ||
const complex double * | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Spherical wavelets : multiresolution analysis adjoint in real space, MW sampling. Perform multiresolution wavelet transform adjoint in real space (from scratch, gives wavelet maps). Sampling scheme : MW sampling.
[out] | f | Input function (MW sampling) |
[in] | f_wav | Array of wavelets maps, MW sampling. |
[in] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_analysis_adjoint_mw_multires_real | ( | double * | f, |
const double * | f_wav, | ||
const double * | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Spherical wavelets : multiresolution analysis adjoint in real space, MW sampling. Perform wavelet transform adjoint in real space (from scratch, gives wavelet maps). Input function is real. Sampling scheme : MW sampling.
[out] | f | Input function (MW sampling) |
[in] | f_wav | Array of wavelets maps, MW sampling. |
[in] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_analysis_adjoint_mw_real | ( | double * | f, |
const double * | f_wav, | ||
const double * | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Perform wavelet transform adjoint in real space (from scratch, gives wavelet maps). Input function is real. Sampling scheme : MW sampling. Spherical wavelets : analysis adjoint in real space, MW sampling.
[out] | f | Input function (MW sampling) |
[in] | f_wav | Array of wavelets maps, MW sampling. |
[in] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_analysis_mw | ( | complex double * | f_wav, |
complex double * | f_scal, | ||
const complex double * | f, | ||
const s2let_parameters_t * | parameters | ||
) |
Spherical wavelets : full resolution analysis in real space, MW sampling. Perform wavelet transform in real space (from scratch, gives wavelet maps). Sampling scheme : MW sampling.
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling.. |
[in] | f | Input function (MW sampling) |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_analysis_mw_multires | ( | complex double * | f_wav, |
complex double * | f_scal, | ||
const complex double * | f, | ||
const s2let_parameters_t * | parameters | ||
) |
Spherical wavelets : multiresolution analysis in real space, MW sampling. Perform multiresolution wavelet transform in real space (from scratch, gives wavelet maps). Sampling scheme : MW sampling.
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling. |
[in] | f | Input function (MW sampling) |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_analysis_mw_multires_real | ( | double * | f_wav, |
double * | f_scal, | ||
const double * | f, | ||
const s2let_parameters_t * | parameters | ||
) |
Spherical wavelets : multiresolution analysis in real space, MW sampling. Perform multiresolution wavelet transform in real space (from scratch, gives wavelet maps). Input function is real. Sampling scheme : MW sampling.
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling. |
[in] | f | Input function (MW sampling) |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_analysis_mw_real | ( | double * | f_wav, |
double * | f_scal, | ||
const double * | f, | ||
const s2let_parameters_t * | parameters | ||
) |
Perform wavelet transform in real space (from scratch, gives wavelet maps). Input function is real. Sampling scheme : MW sampling. Spherical wavelets : analysis in real space, MW sampling.
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling. |
[in] | f | Input function (MW sampling) |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_hardthreshold_multires_real | ( | double * | g_wav, |
const double * | threshold, | ||
const s2let_parameters_t * | parameters | ||
) |
Threshold real wavelets in real space, MW sampling, multiresolution.
[in,out] | g_wav | Array of wavelets maps, MW sampling. |
[in] | threshold | A threshold rule, i.e. a number for every scale j. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_hardthreshold_real | ( | double * | g_wav, |
const double * | threshold, | ||
const s2let_parameters_t * | parameters | ||
) |
Threshold real wavelets in real space, MW sampling, full resolution.
[in,out] | g_wav | Array of wavelets maps, MW sampling. |
[in] | threshold | A threshold rule, i.e. a number for every scale j. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_synthesis_adjoint_mw | ( | complex double * | f_wav, |
complex double * | f_scal, | ||
const complex double * | f, | ||
const s2let_parameters_t * | parameters | ||
) |
Spherical wavelets : full resolution synthesis in real space adjoint, MW sampling. Perform wavelet synthesis adjoint in real space (from scratch, gives wavelet maps). Sampling scheme : MW sampling.
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling.. |
[in] | f | Input function (MW sampling) |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_synthesis_adjoint_mw_multires | ( | complex double * | f_wav, |
complex double * | f_scal, | ||
const complex double * | f, | ||
const s2let_parameters_t * | parameters | ||
) |
Spherical wavelets : multiresolution synthesis adjoint in real space, MW sampling. Perform multiresolution wavelet inverse transform adjoint in real space (from scratch, gives wavelet maps). Sampling scheme : MW sampling.
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling. |
[in] | f | Input function (MW sampling) |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_synthesis_adjoint_mw_multires_real | ( | double * | f_wav, |
double * | f_scal, | ||
const double * | f, | ||
const s2let_parameters_t * | parameters | ||
) |
Spherical wavelets : multiresolution synthesis adjoint in real space, MW sampling. Perform multiresolution wavelet inverse transform adjoint in real space (from scratch, gives wavelet maps). Input function is real. Sampling scheme : MW sampling.
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling. |
[in] | f | Input function (MW sampling) |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_synthesis_adjoint_mw_real | ( | double * | f_wav, |
double * | f_scal, | ||
const double * | f, | ||
const s2let_parameters_t * | parameters | ||
) |
Perform wavelet inverse transform adjoint in real space (from scratch, gives wavelet maps). Input function is real. Sampling scheme : MW sampling. Spherical wavelets : analysis in real space, MW sampling.
[out] | f_wav | Array of wavelets maps, MW sampling. |
[out] | f_scal | Scaling function map, MW sampling. |
[in] | f | Input function (MW sampling) |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_synthesis_mw | ( | complex double * | f, |
const complex double * | f_wav, | ||
const complex double * | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Perform wavelet transform in real space (from scratch, gives wavelet maps). Sampling scheme : MW sampling. Spherical wavelets : synthesis in real space, MW sampling.
[out] | f | Input function (MW sampling) |
[in] | f_wav | Array of wavelets maps, MW sampling. |
[in] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_synthesis_mw_multires | ( | complex double * | f, |
const complex double * | f_wav, | ||
const complex double * | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Spherical wavelets : multiresolution synthesis in real space, MW sampling. Perform multiresolution wavelet transform in real space (from scratch, gives wavelet maps). Sampling scheme : MW sampling.
[out] | f | Input function (MW sampling) |
[in] | f_wav | Array of wavelets maps, MW sampling. |
[in] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_synthesis_mw_multires_real | ( | double * | f, |
const double * | f_wav, | ||
const double * | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Spherical wavelets : multiresolution synthesis in real space, MW sampling. Perform wavelet transform in real space (from scratch, gives wavelet maps). Input function is real. Sampling scheme : MW sampling.
[out] | f | Input function (MW sampling) |
[in] | f_wav | Array of wavelets maps, MW sampling. |
[in] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |
void s2let_transform_axisym_wav_synthesis_mw_real | ( | double * | f, |
const double * | f_wav, | ||
const double * | f_scal, | ||
const s2let_parameters_t * | parameters | ||
) |
Perform wavelet transform in real space (from scratch, gives wavelet maps). Input function is real. Sampling scheme : MW sampling. Spherical wavelets : synthesis in real space, MW sampling.
[out] | f | Input function (MW sampling) |
[in] | f_wav | Array of wavelets maps, MW sampling. |
[in] | f_scal | Scaling function map, MW sampling. |
[in] | B | Wavelet parameter. |
[in] | L | Angular harmonic band-limit. |
[in] | J_min | First wavelet scale to be used. |
none |