XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
FourierFilter Class Reference

#include <fourier_filter.hpp>

Collaboration diagram for FourierFilter:
Collaboration graph
[legend]

Classes

struct  Options
 

Public Types

enum  ScrapeOffLayerMethod { ScrapeOffLayerMethod::BlendWindow =0, ScrapeOffLayerMethod::RetainSineModes, ScrapeOffLayerMethod::RetainAllModes }
 

Public Member Functions

 FourierFilter ()
 
 FourierFilter (NLReader::NamelistReader &nlr, const MagneticField< DeviceType > &magnetic_field, const Grid< DeviceType > &grid, Plasma &plasma)
 
void m_range (const Grid< DeviceType > &grid, const DomainDecomposition< DeviceType > &pol_decomp, const Options &options, const View< double *, CLayout, HostType > &x) const
 
void m_range (const Grid< DeviceType > &grid, const DomainDecomposition< DeviceType > &pol_decomp, const Options &options, const View< double **, CLayout, HostType > &x) const
 
void destroy ()
 

Private Member Functions

void get_m_min_max (const Options &options, int isurf, double qsafety, int &minm, int &maxm) const
 
void fft_execute (int isurf, const View< double *, CLayout, HostType > &x, const View< Complex *, CLayout, HostType > &spec) const
 
void m_range_one_surf (const Grid< DeviceType > &grid, int isurf, const View< double **, CLayout, HostType > &x, const Options &options) const
 
int get_n_points (int n_nodes) const
 
int get_n_frequencies (int n_points) const
 

Private Attributes

View< bool *, CLayout, HostTyperun_filter
 
int mres_q
 
int max_n_points
 
View< int *, CLayout, HostTypem_limit
 
View< bool *, CLayout, HostTypeis_periodic
 
View< int *, CLayout, HostTypennodes_on_surf
 
std::vector< FFTWrapperfft_plan
 
std::vector< View< int
*, CLayout, HostType > > 
mapping
 
std::vector< View< double
*, CLayout, HostType > > 
theta
 
std::vector< View< double
*, CLayout, HostType > > 
window
 
std::vector
< SplinePrecomputations
< HostType > > 
spline_precomputation
 
int b_sign
 
std::vector< View< double
**, CLayout, HostType > > 
x_ordered_all
 
std::vector< View< Complex
**, CLayout, HostType > > 
spec_all
 
std::vector< View< double
**, CLayout, HostType > > 
x_uniform_all
 

Member Enumeration Documentation

Enumerator
BlendWindow 
RetainSineModes 
RetainAllModes 

Constructor & Destructor Documentation

FourierFilter::FourierFilter ( )
inline
FourierFilter::FourierFilter ( NLReader::NamelistReader nlr,
const MagneticField< DeviceType > &  magnetic_field,
const Grid< DeviceType > &  grid,
Plasma plasma 
)

Here is the call graph for this function:

Member Function Documentation

void FourierFilter::destroy ( )

Here is the caller graph for this function:

void FourierFilter::fft_execute ( int  isurf,
const View< double *, CLayout, HostType > &  x,
const View< Complex *, CLayout, HostType > &  spec 
) const
private

Here is the caller graph for this function:

void FourierFilter::get_m_min_max ( const Options options,
int  isurf,
double  qsafety,
int &  minm,
int &  maxm 
) const
private

Here is the call graph for this function:

Here is the caller graph for this function:

int FourierFilter::get_n_frequencies ( int  n_points) const
private

Here is the caller graph for this function:

int FourierFilter::get_n_points ( int  n_nodes) const
private

Here is the caller graph for this function:

void FourierFilter::m_range ( const Grid< DeviceType > &  grid,
const DomainDecomposition< DeviceType > &  pol_decomp,
const Options options,
const View< double *, CLayout, HostType > &  x 
) const

Here is the caller graph for this function:

void FourierFilter::m_range ( const Grid< DeviceType > &  grid,
const DomainDecomposition< DeviceType > &  pol_decomp,
const Options options,
const View< double **, CLayout, HostType > &  x 
) const

Here is the call graph for this function:

void FourierFilter::m_range_one_surf ( const Grid< DeviceType > &  grid,
int  isurf,
const View< double **, CLayout, HostType > &  x,
const Options options 
) const
private

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

int FourierFilter::b_sign
private
std::vector<FFTWrapper> FourierFilter::fft_plan
private
View<bool*,CLayout,HostType> FourierFilter::is_periodic
private
View<int*,CLayout,HostType> FourierFilter::m_limit
private
std::vector<View<int*,CLayout,HostType> > FourierFilter::mapping
private
int FourierFilter::max_n_points
private
int FourierFilter::mres_q
private
View<int*,CLayout,HostType> FourierFilter::nnodes_on_surf
private
View<bool*,CLayout,HostType> FourierFilter::run_filter
private
std::vector<View<Complex**,CLayout,HostType> > FourierFilter::spec_all
private
std::vector<SplinePrecomputations<HostType> > FourierFilter::spline_precomputation
private
std::vector<View<double*,CLayout,HostType> > FourierFilter::theta
private
std::vector<View<double*,CLayout,HostType> > FourierFilter::window
private
std::vector<View<double**, CLayout, HostType> > FourierFilter::x_ordered_all
private
std::vector<View<double**, CLayout, HostType> > FourierFilter::x_uniform_all
private

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