#include "so3_types.h"
Go to the source code of this file.
Functions | |
complex double | so3_sampling_weight (const so3_parameters_t *parameters, int p) |
int | so3_sampling_f_size (const so3_parameters_t *parameters) |
int | so3_sampling_n (const so3_parameters_t *parameters) |
int | so3_sampling_nalpha (const so3_parameters_t *parameters) |
int | so3_sampling_nbeta (const so3_parameters_t *parameters) |
int | so3_sampling_ngamma (const so3_parameters_t *parameters) |
double | so3_sampling_a2alpha (int a, const so3_parameters_t *parameters) |
double | so3_sampling_b2beta (int b, const so3_parameters_t *parameters) |
double | so3_sampling_g2gamma (int g, const so3_parameters_t *parameters) |
int | so3_sampling_flmn_size (const so3_parameters_t *parameters) |
void | so3_sampling_elmn2ind (int *ind, int el, int m, int n, const so3_parameters_t *parameters) |
void | so3_sampling_ind2elmn (int *el, int *m, int *n, int ind, const so3_parameters_t *parameters) |
void | so3_sampling_elmn2ind_real (int *ind, int el, int m, int n, const so3_parameters_t *parameters) |
void | so3_sampling_ind2elmn_real (int *el, int *m, int *n, int ind, const so3_parameters_t *parameters) |
double so3_sampling_a2alpha | ( | int | a, | |
const so3_parameters_t * | parameters | |||
) |
Convert alpha index to angle for a given sampling scheme.
[in] | a | Alpha index. |
[in] | parameters | A parameters object with (at least) the following fields: L, sampling_scheme |
alpha | Alpha angle. |
Definition at line 222 of file so3_sampling.c.
References so3_parameters_t::L, so3_parameters_t::sampling_scheme, SO3_ERROR_GENERIC, SO3_PI, SO3_SAMPLING_MW, and SO3_SAMPLING_MW_SS.
double so3_sampling_b2beta | ( | int | b, | |
const so3_parameters_t * | parameters | |||
) |
Convert beta index to angle for a given sampling scheme.
[in] | b | Beta index. |
[in] | parameters | A parameters object with (at least) the following fields: L, sampling_scheme |
beta | Beta angle. |
Definition at line 254 of file so3_sampling.c.
References so3_parameters_t::L, so3_parameters_t::sampling_scheme, SO3_ERROR_GENERIC, SO3_PI, SO3_SAMPLING_MW, and SO3_SAMPLING_MW_SS.
void so3_sampling_elmn2ind | ( | int * | ind, | |
int | el, | |||
int | m, | |||
int | n, | |||
const so3_parameters_t * | parameters | |||
) | [inline] |
Convert (el,m,n) harmonic indices to 1D index used to access flmn array.
[out] | ind | 1D index to access flmn array. |
[in] | el | Harmonic index. |
[in] | m | Azimuthal harmonic index. |
[in] | n | Orientational harmonic index. |
[in] | parameters | A parameters object with (at least) the following fields: L, N, storage, n_order The reality flag is ignored. Use so3_sampling_elmn2ind_real instead. |
none |
Definition at line 367 of file so3_sampling.c.
References so3_parameters_t::L, so3_parameters_t::N, so3_parameters_t::n_order, SO3_ERROR_GENERIC, SO3_N_ORDER_NEGATIVE_FIRST, SO3_N_ORDER_ZERO_FIRST, SO3_STORAGE_COMPACT, SO3_STORAGE_PADDED, and so3_parameters_t::storage.
Referenced by so3_core_forward_direct(), so3_core_forward_via_ssht(), so3_core_inverse_direct(), so3_core_inverse_via_ssht(), so3_sampling_elmn2ind_real(), so3_sampling_ind2elmn_real(), and so3_test_gen_flmn_complex().
void so3_sampling_elmn2ind_real | ( | int * | ind, | |
int | el, | |||
int | m, | |||
int | n, | |||
const so3_parameters_t * | parameters | |||
) | [inline] |
Convert (el,m,n) harmonic indices to 1D index used to access flmn array for a real signal.
[out] | ind | 1D index to access flmn array. |
[in] | el | Harmonic index |
[in] | m | Azimuthal harmonic index. |
[in] | n | Orientational harmonic index. |
[in] | parameters | A parameters object with (at least) the following fields: L, N, storage The reality flag is ignored. Use so3_sampling_elmn2ind instead. |
none |
Definition at line 569 of file so3_sampling.c.
References so3_parameters_t::n_order, SO3_ERROR_GENERIC, SO3_N_ORDER_NEGATIVE_FIRST, so3_sampling_elmn2ind(), SO3_STORAGE_COMPACT, SO3_STORAGE_PADDED, and so3_parameters_t::storage.
Referenced by so3_core_forward_direct_real(), so3_core_forward_via_ssht_real(), so3_core_inverse_direct_real(), so3_core_inverse_via_ssht_real(), and so3_test_gen_flmn_real().
int so3_sampling_f_size | ( | const so3_parameters_t * | parameters | ) |
Compute size of the signal buffer f to be passed to the forward and returned from the inverse transform function for a given sampling scheme.
[in] | parameters | A parameters object with (at least) the following fields: L, N, sampling_scheme |
n | Number of samples stored in the signal buffers. |
Definition at line 78 of file so3_sampling.c.
References so3_parameters_t::L, so3_parameters_t::N, so3_sampling_nalpha(), so3_sampling_nbeta(), and so3_sampling_ngamma().
int so3_sampling_flmn_size | ( | const so3_parameters_t * | parameters | ) | [inline] |
Get storage size of flmn array for different storage methods.
[in] | parameters | A parameters object with (at least) the following fields: L, N, storage, reality |
Number | of coefficients to be stored. |
Definition at line 314 of file so3_sampling.c.
References so3_parameters_t::L, so3_parameters_t::N, so3_parameters_t::reality, SO3_ERROR_GENERIC, SO3_STORAGE_COMPACT, SO3_STORAGE_PADDED, and so3_parameters_t::storage.
Referenced by main().
double so3_sampling_g2gamma | ( | int | g, | |
const so3_parameters_t * | parameters | |||
) |
Convert gamma index to angle for a given sampling scheme.
[in] | g | Gamma index. |
[in] | parameters | A parameters object with (at least) the following fields: N, sampling_scheme |
gamma | Gamma angle. |
Definition at line 286 of file so3_sampling.c.
References so3_parameters_t::N, SO3_PI, and so3_parameters_t::steerable.
void so3_sampling_ind2elmn | ( | int * | el, | |
int * | m, | |||
int * | n, | |||
int | ind, | |||
const so3_parameters_t * | parameters | |||
) | [inline] |
Convert 1D index used to access flmn array to (el,m,n) harmonic indices.
[out] | el | Harmonic index. |
[out] | m | Azimuthal harmonic index. |
[out] | n | Orientational harmonic index. |
[in] | ind | 1D index to access flm array. |
[in] | parameters | A parameters object with (at least) the following fields: L, N, storage The reality flag is ignored. Use so3_sampling_ind2elmn_real instead. |
none |
Definition at line 453 of file so3_sampling.c.
References so3_parameters_t::L, so3_parameters_t::N, so3_parameters_t::n_order, SO3_ERROR_GENERIC, SO3_N_ORDER_NEGATIVE_FIRST, SO3_N_ORDER_ZERO_FIRST, SO3_STORAGE_COMPACT, SO3_STORAGE_PADDED, and so3_parameters_t::storage.
Referenced by so3_sampling_ind2elmn_real().
void so3_sampling_ind2elmn_real | ( | int * | el, | |
int * | m, | |||
int * | n, | |||
int | ind, | |||
const so3_parameters_t * | parameters | |||
) | [inline] |
Convert 1D index used to access flmn array to (el,m,n) harmonic indices for a real signal.
[out] | el | Harmonic index. |
[out] | m | Azimuthal harmonic index. |
[out] | n | Orientational harmonic index. |
[in] | ind | 1D index to access flm array. |
[in] | parameters | A parameters object with (at least) the following fields: L, N, storage The reality flag is ignored. Use so3_sampling_ind2elmn instead. |
none |
Definition at line 624 of file so3_sampling.c.
References so3_parameters_t::n_order, SO3_ERROR_GENERIC, SO3_N_ORDER_NEGATIVE_FIRST, so3_sampling_elmn2ind(), so3_sampling_ind2elmn(), SO3_STORAGE_COMPACT, SO3_STORAGE_PADDED, and so3_parameters_t::storage.
int so3_sampling_n | ( | const so3_parameters_t * | parameters | ) |
Compute total number of samples for a given sampling scheme.
[in] | parameters | A parameters object with (at least) the following fields: L, N, sampling_scheme |
n | Number of samples. |
Definition at line 110 of file so3_sampling.c.
References so3_parameters_t::L, so3_parameters_t::N, so3_parameters_t::sampling_scheme, SO3_ERROR_GENERIC, SO3_SAMPLING_MW, SO3_SAMPLING_MW_SS, and so3_sampling_ngamma().
int so3_sampling_nalpha | ( | const so3_parameters_t * | ) |
Compute number of alpha samples for a given sampling scheme.
[in] | parameters | A parameters object with (at least) the following fields: L, sampling_scheme |
nalpha | Number of alpha samples. |
Definition at line 140 of file so3_sampling.c.
References so3_parameters_t::L, so3_parameters_t::sampling_scheme, SO3_ERROR_GENERIC, SO3_SAMPLING_MW, and SO3_SAMPLING_MW_SS.
Referenced by so3_sampling_f_size().
int so3_sampling_nbeta | ( | const so3_parameters_t * | ) |
Compute number of beta samples for a given sampling scheme.
[in] | parameters | A parameters object with (at least) the following fields: L, sampling_scheme |
nbeta | Number of beta samples. |
Definition at line 171 of file so3_sampling.c.
References so3_parameters_t::L, so3_parameters_t::sampling_scheme, SO3_ERROR_GENERIC, SO3_SAMPLING_MW, and SO3_SAMPLING_MW_SS.
Referenced by so3_sampling_f_size().
int so3_sampling_ngamma | ( | const so3_parameters_t * | ) |
Compute number of gamma samples for a given sampling scheme.
[in] | parameters | A parameters object with (at least) the following fields: B, sampling_scheme |
ngamma | Number of gamma samples. |
Definition at line 195 of file so3_sampling.c.
References so3_parameters_t::N, and so3_parameters_t::steerable.
Referenced by so3_sampling_f_size(), and so3_sampling_n().
complex double so3_sampling_weight | ( | const so3_parameters_t * | parameters, | |
int | p | |||
) |
Compute conjugate weights for toroidal extension.
[in] | parameters | A parameters object with (at least) sampling_scheme |
[in] | p | Integer index to compute weight for. |
Corresponding | conjugate weight. |
Definition at line 30 of file so3_sampling.c.
References so3_parameters_t::sampling_scheme, SO3_ERROR_GENERIC, SO3_SAMPLING_MW, and SO3_SAMPLING_MW_SS.
Referenced by so3_core_forward_direct(), and so3_core_forward_direct_real().