MADNESS 0.10.1
|
Generic 1D convolution using brute force (i.e., slow) adaptive quadrature for rnlp. More...
#include <convolution1d.h>
Classes | |
struct | Shmoo |
Public Member Functions | |
GenericConvolution1D () | |
GenericConvolution1D (int k, const opT &op, int maxR, double bloch_k=0.0) | |
bool | issmall (Level n, Translation lx) const final |
virtual Level | natural_level () const final |
Returns the level for projection. | |
Tensor< Q > | rnlp (Level n, Translation lx) const final |
Compute the projection of the operator onto the double order polynomials. | |
![]() | |
Convolution1D (int k, int npt, int maxR, double bloch_k=0.0, KernelRange rng={}) | |
virtual | ~Convolution1D () |
bool | get_issmall (Level n, Translation lx) const |
const Tensor< Q > & | get_rnlp (Level n, Translation lx) const |
bool | lattice_summed () const |
const ConvolutionData1D< Q > * | mod_nonstandard (const Key< 2 > &op_key) const |
Returns a pointer to the cached modified make_nonstandard form of the operator. | |
const ConvolutionData1D< Q > * | nonstandard (Level n, Translation lx) const |
Returns a pointer to the cached make_nonstandard form of the operator. | |
Q | phase (double R) const |
bool | range_restricted () const |
const Tensor< Q > & | rnlij (Level n, Translation lx, bool do_transpose=false) const |
Computes the transition matrix elements for the convolution for n,l. | |
bool | rnlp_is_zero (Level n, Translation l) const |
Private Attributes | |
long | maxl |
At natural level is l beyond which operator is zero. | |
opT | op |
Additional Inherited Members | |
![]() | |
typedef Q | opT |
The apply function uses this to infer resultT=opT*inputT. | |
![]() | |
double | bloch_k |
k in exp(i k R) Bloch phase factor folded into lattice sum | |
Tensor< double > | c |
Tensor< double > | hg |
Tensor< double > | hgT |
Tensor< double > | hgT2k |
int | k |
Wavelet order. | |
int | maxR |
Number of lattice translations for sum. | |
SimpleCache< ConvolutionData1D< Q >, 2 > | mod_ns_cache |
int | npt |
Number of quadrature points (is this used?) | |
SimpleCache< ConvolutionData1D< Q >, 1 > | ns_cache |
Tensor< double > | quad_w |
Tensor< double > | quad_x |
KernelRange | range |
if range is nonnull, kernel range limited to to range (in simulation cell units), useful for finite-range convolutions with periodic functions | |
SimpleCache< Tensor< Q >, 1 > | rnlij_cache |
SimpleCache< Tensor< Q >, 1 > | rnlp_cache |
Generic 1D convolution using brute force (i.e., slow) adaptive quadrature for rnlp.
Calls op(x) with x in simulation coordinates to evaluate the function.
|
inline |
|
inline |
|
inlinefinalvirtual |
Implements madness::Convolution1D< Q >.
References madness::GenericConvolution1D< Q, opT >::maxl, and madness::GenericConvolution1D< Q, opT >::natural_level().
|
inlinefinalvirtual |
Returns the level for projection.
Reimplemented from madness::Convolution1D< Q >.
References madness::GenericConvolution1D< Q, opT >::op.
Referenced by madness::GenericConvolution1D< Q, opT >::GenericConvolution1D(), and madness::GenericConvolution1D< Q, opT >::issmall().
|
inlinefinalvirtual |
Compute the projection of the operator onto the double order polynomials.
Implements madness::Convolution1D< Q >.
References madness::adq1(), e(), madness::Convolution1D< Q >::npt, madness::Tensor< T >::ptr(), and madness::Convolution1D< Q >::quad_x.
Referenced by main().
|
private |
At natural level is l beyond which operator is zero.
Referenced by madness::GenericConvolution1D< Q, opT >::GenericConvolution1D(), and madness::GenericConvolution1D< Q, opT >::issmall().
Referenced by madness::GenericConvolution1D< Q, opT >::natural_level().