Rosetta  2020.11
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | List of all members
numeric::fourier::SO3coeffs Class Reference

#include <SHT.hh>

Public Member Functions

 SO3coeffs ()
 Constructor. More...
 
void init (int B)
 Construct with a given bandwidth, # of radial shells. More...
 
int lm_index (int m, int l)
 
int transposeRowSize (int row, int m)
 
int sampLoc (int m1, int m2)
 
int coefLoc (int m1, int m2)
 
void Legendre (utility::vector0< double > &data, int coeffs_idx, int m, utility::vector0< double > &result, utility::vector0< double > &cos_pml, utility::vector0< double > &weights, utility::vector0< double > &scratch1, utility::vector0< double > &scratch2, kiss_dct_cfg dctPlan)
 
void InvLegendre (utility::vector0< double > &coeffs, int coeffs_idx, int m, utility::vector0< double > &result, utility::vector0< double > &trans_cos_pml, utility::vector0< double > &sin_values, utility::vector0< double > &scratch, kiss_dct_cfg idctPlan)
 
void genWigner_ds (int m1, int m2, utility::vector0< double > const &cosEval, utility::vector0< double > const &sinEval2, utility::vector0< double > const &cosEval2, utility::vector0< double > &result, int start_idx, utility::vector0< double > &scratch1, utility::vector0< double > &scratch2)
 
void wignerSynthesis (int m1, int m2, ObjexxFCL::FArray3D< std::complex< double > > &coeffs, int coeffs_idx, utility::vector0< double > &wignersTrans, int wigners_idx, ObjexxFCL::FArray3D< std::complex< double > > &signal, int signal_idx)
 
void wignerSynthesisSameSign (int m1, int m2, ObjexxFCL::FArray3D< std::complex< double > > &coeffs, int coeffs_idx, utility::vector0< double > &wignersTrans, int wigners_idx, ObjexxFCL::FArray3D< std::complex< double > > &signal, int signal_idx)
 
void wignerSynthesisDiffSign (int m1, int m2, ObjexxFCL::FArray3D< std::complex< double > > &coeffs, int coeffs_idx, utility::vector0< double > &wignersTrans, int wigners_idx, ObjexxFCL::FArray3D< std::complex< double > > &signal, int signal_idx, ObjexxFCL::FArray3D< std::complex< double > > &scratch)
 

Private Attributes

int bw
 

Constructor & Destructor Documentation

numeric::fourier::SO3coeffs::SO3coeffs ( )
inline

Constructor.

References bw.

Member Function Documentation

int numeric::fourier::SO3coeffs::coefLoc ( int  m1,
int  m2 
)
void numeric::fourier::SO3coeffs::genWigner_ds ( int  m1,
int  m2,
utility::vector0< double > const &  cosEval,
utility::vector0< double > const &  sinEval2,
utility::vector0< double > const &  cosEval2,
utility::vector0< double > &  result,
int  start_idx,
utility::vector0< double > &  scratch1,
utility::vector0< double > &  scratch2 
)
void numeric::fourier::SO3coeffs::init ( int  B)
inline

Construct with a given bandwidth, # of radial shells.

References bw.

Referenced by numeric::fourier::SHT::init().

void numeric::fourier::SO3coeffs::InvLegendre ( utility::vector0< double > &  coeffs,
int  coeffs_idx,
int  m,
utility::vector0< double > &  result,
utility::vector0< double > &  trans_cos_pml,
utility::vector0< double > &  sin_values,
utility::vector0< double > &  scratch,
kiss_dct_cfg  idctPlan 
)
void numeric::fourier::SO3coeffs::Legendre ( utility::vector0< double > &  data,
int  coeffs_idx,
int  m,
utility::vector0< double > &  result,
utility::vector0< double > &  cos_pml,
utility::vector0< double > &  weights,
utility::vector0< double > &  scratch1,
utility::vector0< double > &  scratch2,
kiss_dct_cfg  dctPlan 
)
int numeric::fourier::SO3coeffs::lm_index ( int  m,
int  l 
)
int numeric::fourier::SO3coeffs::sampLoc ( int  m1,
int  m2 
)

References bw.

Referenced by numeric::fourier::SHT::inverseSo3().

int numeric::fourier::SO3coeffs::transposeRowSize ( int  row,
int  m 
)

References bw.

Referenced by InvLegendre(), and numeric::fourier::SHT::setup_Pmls().

void numeric::fourier::SO3coeffs::wignerSynthesis ( int  m1,
int  m2,
ObjexxFCL::FArray3D< std::complex< double > > &  coeffs,
int  coeffs_idx,
utility::vector0< double > &  wignersTrans,
int  wigners_idx,
ObjexxFCL::FArray3D< std::complex< double > > &  signal,
int  signal_idx 
)
void numeric::fourier::SO3coeffs::wignerSynthesisDiffSign ( int  m1,
int  m2,
ObjexxFCL::FArray3D< std::complex< double > > &  coeffs,
int  coeffs_idx,
utility::vector0< double > &  wignersTrans,
int  wigners_idx,
ObjexxFCL::FArray3D< std::complex< double > > &  signal,
int  signal_idx,
ObjexxFCL::FArray3D< std::complex< double > > &  scratch 
)
void numeric::fourier::SO3coeffs::wignerSynthesisSameSign ( int  m1,
int  m2,
ObjexxFCL::FArray3D< std::complex< double > > &  coeffs,
int  coeffs_idx,
utility::vector0< double > &  wignersTrans,
int  wigners_idx,
ObjexxFCL::FArray3D< std::complex< double > > &  signal,
int  signal_idx 
)

Member Data Documentation

int numeric::fourier::SO3coeffs::bw
private

The documentation for this class was generated from the following files: