Clipper
Public Member Functions
clipper::FFTmap_sparse_p1_xh Class Reference

FFTmap_sparse_p1_xh: low level sparse P1 map used for calculating FFTs. More...

#include <fftmap_sparse.h>

Inheritance diagram for clipper::FFTmap_sparse_p1_xh:
clipper::FFTmap_sparse_p1_base clipper::FFTmap_base

List of all members.

Public Member Functions

 FFTmap_sparse_p1_xh ()
 Null constuctor.
 FFTmap_sparse_p1_xh (const Grid_sampling &grid_sam, const FFTtype type=Default)
 Constructor: takes grid.
void init (const Grid_sampling &grid_sam, const FFTtype type=Default)
 initialiser: takes grid
const Grid_samplinggrid_real () const
 get real grid sampling
const Gridgrid_reci () const
 get reciprocal grid
ffttype & real_data (const Coord_grid &uvw)
 set real space data ( uvw must be in grid_real() )
void require_hkl (const HKL &hkl)
 express need for reciprocal space data by hkl
const std::complex< ffttype > get_hkl (const HKL &hkl) const
 get reciprocal space data by hkl
void require_cplx_data (const Coord_grid &hkl)
 express need for reciprocal space data (internal use)
const std::complex< ffttype > & cplx_data (const Coord_grid &hkl) const
 get reciprocal space data (internal use)
void fft_x_to_h (const ftype &scale)
 Transform to real space.

Detailed Description

FFTmap_sparse_p1_xh: low level sparse P1 map used for calculating FFTs.

This version computes sparse real...Hermititan FFTs.

By specifying what parts of the map are needed in advance, it is possible to perform highly optimised FFTs, including some of the benefits of symmetry.


Constructor & Destructor Documentation

clipper::FFTmap_sparse_p1_xh::FFTmap_sparse_p1_xh ( )

Null constuctor.

For later initialisation: see init()

clipper::FFTmap_sparse_p1_xh::FFTmap_sparse_p1_xh ( const Grid_sampling grid_sam,
const FFTtype  type = Default 
)

Constructor: takes grid.

Construct an FFTmap_sparse_p1_xh for a given grid.

Parameters:
grid_samThe grid sampling of the unit cell.
typeCan be FFTmap_sparse_base::Measure, ::Estimate. Measure performs slow precalculation (first time only) to get faster FFT.

References init().


Member Function Documentation

void clipper::FFTmap_sparse_p1_xh::init ( const Grid_sampling grid_sam,
const FFTtype  type = Default 
)

initialiser: takes grid

Initialise an FFTmap_sparse_p1_base for a grid.

Parameters:
grid_samThe grid sampling of the unit cell.
typeCan be FFTmap_sparse_base::Measure, ::Estimate. Measure performs slow precalculation (first time only) to get faster FFT.

Reimplemented from clipper::FFTmap_sparse_p1_base.

Referenced by FFTmap_sparse_p1_xh().

ffttype & clipper::FFTmap_sparse_p1_xh::real_data ( const Coord_grid uvw) [inline]
void clipper::FFTmap_sparse_p1_xh::require_hkl ( const HKL hkl)
const std::complex< ffttype > clipper::FFTmap_sparse_p1_xh::get_hkl ( const HKL hkl) const
void clipper::FFTmap_sparse_p1_xh::require_cplx_data ( const Coord_grid hkl) [inline]

express need for reciprocal space data (internal use)

The given Coord_grid will be required in the final reflections. ( uvw must be in grid_reci() )

Parameters:
uvwThe coordinate to require.

References clipper::FFTmap_sparse_p1_base::map_kl(), clipper::Coord_grid::v(), and clipper::Coord_grid::w().

const std::complex< ffttype > & clipper::FFTmap_sparse_p1_xh::cplx_data ( const Coord_grid hkl) const [inline]

get reciprocal space data (internal use)

( hkl must be in grid_reci(), and have been requested )

Parameters:
uvwThe coordinate to get.
Returns:
The complex value at that coordinate.

References clipper::FFTmap_sparse_p1_base::row_kl, clipper::Coord_grid::u(), clipper::Coord_grid::v(), and clipper::Coord_grid::w().

void clipper::FFTmap_sparse_p1_xh::fft_x_to_h ( const ftype scale)

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