|
MADNESS
version 0.9
|
1D convolution with (derivative) Gaussian; coeff and expnt given in simulation coordinates [0,1] More...
#include <convolution1d.h>


Public Member Functions | |
| GaussianConvolution1D (int k, Q coeff, double expnt, int m, bool periodic, double arg=0.0) | |
| virtual | ~GaussianConvolution1D () |
| virtual Level | natural_level () const |
| Returns the level for projection. More... | |
| Tensor< Q > | rnlp (Level n, Translation lx) const |
| Compute the projection of the operator onto the double order polynomials. More... | |
| bool | issmall (Level n, Translation lx) const |
| Returns true if the block is expected to be small. More... | |
Public Member Functions inherited from madness::Convolution1D< Q > | |
| virtual | ~Convolution1D () |
| Convolution1D (int k, int npt, int maxR, double arg=0.0) | |
| bool | get_issmall (Level n, Translation lx) const |
| Returns true if the block of rnlp is expected to be small including periodicity. More... | |
| const Tensor< Q > & | rnlij (Level n, Translation lx, bool do_transpose=false) const |
| Computes the transition matrix elements for the convolution for n,l. More... | |
| const ConvolutionData1D< Q > * | mod_nonstandard (const Key< 2 > &op_key) const |
| Returns a pointer to the cached modified nonstandard form of the operator. More... | |
| const ConvolutionData1D< Q > * | nonstandard (Level n, Translation lx) const |
| Returns a pointer to the cached nonstandard form of the operator. More... | |
| Q | phase (double R) const |
| Q | phase (double_complex R) const |
| const Tensor< Q > & | get_rnlp (Level n, Translation lx) const |
Public Attributes | |
| const Q | coeff |
| Coefficient. More... | |
| const double | expnt |
| Exponent. More... | |
| const Level | natlev |
| Level to evaluate. More... | |
| const int | m |
| Order of derivative (0, 1, or 2 only) More... | |
Public Attributes inherited from madness::Convolution1D< Q > | |
| int | k |
| Wavelet order. More... | |
| int | npt |
| Number of quadrature points (is this used?) More... | |
| int | maxR |
| Number of lattice translations for sum. More... | |
| Tensor< double > | quad_x |
| Tensor< double > | quad_w |
| Tensor< double > | c |
| Tensor< double > | hgT |
| Tensor< double > | hg |
| Tensor< double > | hgT2k |
| double | arg |
| SimpleCache< Tensor< Q >, 1 > | rnlp_cache |
| SimpleCache< Tensor< Q >, 1 > | rnlij_cache |
| SimpleCache< ConvolutionData1D < Q >, 1 > | ns_cache |
| SimpleCache< ConvolutionData1D < Q >, 2 > | mod_ns_cache |
Additional Inherited Members | |
Public Types inherited from madness::Convolution1D< Q > | |
| typedef Q | opT |
| The apply function uses this to infer resultT=opT*inputT. More... | |
1D convolution with (derivative) Gaussian; coeff and expnt given in simulation coordinates [0,1]
Note that the derivative is computed in simulation coordinates so you must be careful to scale the coefficients correctly.
|
inlineexplicit |
|
inlinevirtual |
|
inlinevirtual |
Returns true if the block is expected to be small.
Implements madness::Convolution1D< Q >.
References beta.
|
inlinevirtual |
Returns the level for projection.
Reimplemented from madness::Convolution1D< Q >.
References madness::GaussianConvolution1D< Q >::natlev.
|
inlinevirtual |
Compute the projection of the operator onto the double order polynomials.
The returned reference is to a cached tensor ... if you want to modify it, take a copy first.
Return in v[p] p=0..2*k-1
The kernel is coeff*exp(-expnt*z^2)*z^m (with m>0). This is equivalent to
where
Implements madness::Convolution1D< Q >.
References beta, mpfr::exp(), madness::GaussianConvolution1D< Q >::expnt, madness::Convolution1D< Q >::k, madness::legendre_scaling_functions(), mpfr::log(), madness::Convolution1D< Q >::npt, madness::Convolution1D< Q >::quad_w, madness::Convolution1D< Q >::quad_x, and sqrt().
| const Q madness::GaussianConvolution1D< Q >::coeff |
Coefficient.
| const double madness::GaussianConvolution1D< Q >::expnt |
Exponent.
Referenced by madness::GaussianConvolution1D< Q >::rnlp().
| const int madness::GaussianConvolution1D< Q >::m |
Order of derivative (0, 1, or 2 only)
| const Level madness::GaussianConvolution1D< Q >::natlev |
Level to evaluate.
Referenced by madness::GaussianConvolution1D< Q >::natural_level().
1.8.8