MADNESS
version 0.9
|
Go to the source code of this file.
Classes | |
struct | madness::MatrixInnerTask< T, R, NDIM > |
Namespaces | |
madness | |
Holds machinery to set up Functions/FuncImpls using various Factories and Interfaces. | |
Functions | |
template<typename T , std::size_t NDIM> | |
void | madness::compress (World &world, const std::vector< Function< T, NDIM > > &v, unsigned int blk=1, bool fence=true) |
Compress a vector of functions. More... | |
template<typename T , std::size_t NDIM> | |
void | madness::reconstruct (World &world, const std::vector< Function< T, NDIM > > &v, unsigned int blk=1, bool fence=true) |
Reconstruct a vector of functions. More... | |
template<typename T , std::size_t NDIM> | |
void | madness::nonstandard (World &world, std::vector< Function< T, NDIM > > &v, unsigned int blk=1, bool fence=true) |
Generates non-standard form of a vector of functions. More... | |
template<typename T , std::size_t NDIM> | |
void | madness::standard (World &world, std::vector< Function< T, NDIM > > &v, unsigned int blk=1, bool fence=true) |
Generates standard form of a vector of functions. More... | |
template<typename T , std::size_t NDIM> | |
void | madness::truncate (World &world, std::vector< Function< T, NDIM > > &v, double tol=0.0, unsigned int blk=1, bool fence=true) |
Truncates a vector of functions. More... | |
template<typename T , std::size_t NDIM> | |
std::vector< Function< T, NDIM > > | madness::apply (World &world, const Derivative< T, NDIM > &D, const std::vector< Function< T, NDIM > > &v, const unsigned int blk=1, const bool fence=true) |
Applies a derivative operator to a vector of functions. More... | |
template<typename T , std::size_t NDIM> | |
std::vector< Function< T, NDIM > > | madness::zero_functions (World &world, int n) |
Generates a vector of zero functions. More... | |
template<typename T , typename R , std::size_t NDIM> | |
std::vector< Function < TENSOR_RESULT_TYPE(T, R), NDIM > > | madness::transform (World &world, const std::vector< Function< T, NDIM > > &v, const Tensor< R > &c, unsigned int blki=1, unsigned int blkj=1, const bool fence=true) |
Transforms a vector of functions according to new[i] = sum[j] old[j]*c[j,i]. More... | |
template<typename L , typename R , std::size_t NDIM> | |
std::vector< Function < TENSOR_RESULT_TYPE(L, R), NDIM > > | madness::transform (World &world, const std::vector< Function< L, NDIM > > &v, const Tensor< R > &c, const double tol, const unsigned int blki=1, const bool fence) |
template<typename T , typename Q , std::size_t NDIM> | |
void | madness::scale (World &world, std::vector< Function< T, NDIM > > &v, const std::vector< Q > &factors, const unsigned int blk=1, const bool fence=true) |
Scales inplace a vector of functions by distinct values. More... | |
template<typename T , typename Q , std::size_t NDIM> | |
void | madness::scale (World &world, std::vector< Function< T, NDIM > > &v, const Q factor, const unsigned int blk=1, const bool fence=true) |
Scales inplace a vector of functions by the same. More... | |
template<typename T , std::size_t NDIM> | |
std::vector< double > | madness::norm2s (World &world, const std::vector< Function< T, NDIM > > &v, const unsigned int blk=1, const bool fence=true) |
Computes the 2-norms of a vector of functions. More... | |
template<typename T , std::size_t NDIM> | |
double | madness::norm2 (World &world, const std::vector< Function< T, NDIM > > &v) |
Computes the 2-norm of a vector of functions. More... | |
double | madness::conj (double x) |
double | madness::conj (float x) |
template<typename T , typename R , std::size_t NDIM> | |
Tensor< TENSOR_RESULT_TYPE(T, R) > | madness::matrix_inner (World &world, const std::vector< Function< T, NDIM > > &f, const std::vector< Function< R, NDIM > > &g, bool sym=false) |
Computes the matrix inner product of two function vectors - q(i,j) = inner(f[i],g[j]) More... | |
template<typename T , typename R , std::size_t NDIM> | |
Tensor< TENSOR_RESULT_TYPE(T, R) > | madness::inner (World &world, const std::vector< Function< T, NDIM > > &f, const std::vector< Function< R, NDIM > > &g) |
Computes the element-wise inner product of two function vectors - q(i) = inner(f[i],g[i]) More... | |
template<typename T , typename R , std::size_t NDIM> | |
Tensor< TENSOR_RESULT_TYPE(T, R) > | madness::inner (World &world, const Function< T, NDIM > &f, const std::vector< Function< R, NDIM > > &g) |
Computes the inner product of a function with a function vector - q(i) = inner(f,g[i]) More... | |
template<typename T , typename R , std::size_t NDIM> | |
std::vector< Function < TENSOR_RESULT_TYPE(T, R), NDIM > > | madness::mul (World &world, const Function< T, NDIM > &a, const std::vector< Function< R, NDIM > > &v, const unsigned int blk=1, const bool fence=true) |
Multiplies a function against a vector of functions — q[i] = a * v[i]. More... | |
template<typename T , typename R , std::size_t NDIM> | |
std::vector< Function < TENSOR_RESULT_TYPE(T, R), NDIM > > | madness::mul_sparse (World &world, const Function< T, NDIM > &a, const std::vector< Function< R, NDIM > > &v, const double tol, const bool fence=true, const unsigned int blk=1) |
Multiplies a function against a vector of functions using sparsity of a and v[i] — q[i] = a * v[i]. More... | |
template<typename T , std::size_t NDIM> | |
void | madness::norm_tree (World &world, const std::vector< Function< T, NDIM > > &v, bool fence=true, unsigned int blk=1) |
Makes the norm tree for all functions in a vector. More... | |
template<typename T , typename R , std::size_t NDIM> | |
std::vector< Function < TENSOR_RESULT_TYPE(T, R), NDIM > > | madness::mul (World &world, const std::vector< Function< T, NDIM > > &a, const std::vector< Function< R, NDIM > > &b, bool fence=true, unsigned int blk=1) |
Multiplies two vectors of functions q[i] = a[i] * b[i]. More... | |
template<typename T , std::size_t NDIM> | |
std::vector< Function< T, NDIM > > | madness::square (World &world, const std::vector< Function< T, NDIM > > &v, bool fence=true) |
Computes the square of a vector of functions — q[i] = v[i]**2. More... | |
template<typename T , std::size_t NDIM> | |
void | madness::set_thresh (World &world, std::vector< Function< T, NDIM > > &v, double thresh, bool fence=true) |
Sets the threshold in a vector of functions. More... | |
template<typename T , std::size_t NDIM> | |
std::vector< Function< T, NDIM > > | madness::conj (World &world, const std::vector< Function< T, NDIM > > &v, bool fence=true) |
Returns the complex conjugate of the vector of functions. More... | |
template<typename T , std::size_t NDIM> | |
std::vector< Function< T, NDIM > > | madness::copy (World &world, const std::vector< Function< T, NDIM > > &v, bool fence=true) |
Returns a deep copy of a vector of functions. More... | |
template<typename T , std::size_t NDIM> | |
std::vector< Function< T, NDIM > > | madness::copy (World &world, const Function< T, NDIM > &v, const unsigned int n, bool fence=true) |
Returns a vector of deep copies of of a function. More... | |
template<typename T , typename R , std::size_t NDIM> | |
std::vector< Function < TENSOR_RESULT_TYPE(T, R), NDIM > > | madness::add (World &world, const std::vector< Function< T, NDIM > > &a, const std::vector< Function< R, NDIM > > &b, bool fence=true, unsigned int blk=1) |
Returns new vector of functions — q[i] = a[i] + b[i]. More... | |
template<typename T , typename R , std::size_t NDIM> | |
std::vector< Function < TENSOR_RESULT_TYPE(T, R), NDIM > > | madness::add (World &world, const Function< T, NDIM > &a, const std::vector< Function< R, NDIM > > &b, bool fence=true, unsigned int blk=1) |
Returns new vector of functions — q[i] = a + b[i]. More... | |
template<typename T , typename R , std::size_t NDIM> | |
std::vector< Function < TENSOR_RESULT_TYPE(T, R), NDIM > > | madness::add (World &world, const std::vector< Function< R, NDIM > > &b, const Function< T, NDIM > &a, bool fence=true, unsigned int blk=1) |
template<typename T , typename R , std::size_t NDIM> | |
std::vector< Function < TENSOR_RESULT_TYPE(T, R), NDIM > > | madness::sub (World &world, const std::vector< Function< T, NDIM > > &a, const std::vector< Function< R, NDIM > > &b, bool fence=true, unsigned int blk=1) |
Returns new vector of functions — q[i] = a[i] - b[i]. More... | |
template<typename T , typename Q , typename R , std::size_t NDIM> | |
void | madness::gaxpy (World &world, Q alpha, std::vector< Function< T, NDIM > > &a, Q beta, const std::vector< Function< R, NDIM > > &b, unsigned int blk=1, bool fence=true) |
Generalized A*X+Y for vectors of functions -— a[i] = alpha*a[i] + beta*b[i]. More... | |
template<typename opT , typename R , std::size_t NDIM> | |
std::vector< Function < TENSOR_RESULT_TYPE(typename opT::opT, R), NDIM > > | madness::apply (World &world, const std::vector< std::shared_ptr< opT > > &op, const std::vector< Function< R, NDIM > > f, const unsigned int blk=1) |
Applies a vector of operators to a vector of functions — q[i] = apply(op[i],f[i]) More... | |
template<typename T , typename R , std::size_t NDIM> | |
std::vector< Function < TENSOR_RESULT_TYPE(T, R), NDIM > > | madness::apply (World &world, const SeparatedConvolution< T, NDIM > &op, const std::vector< Function< R, NDIM > > f, const unsigned int blk=1) |
Applies an operator to a vector of functions — q[i] = apply(op,f[i]) More... | |
template<typename T , std::size_t NDIM> | |
void | madness::normalize (World &world, std::vector< Function< T, NDIM > > &v, bool fence=true) |
Normalizes a vector of functions — v[i] = v[i].scale(1.0/v[i].norm2()) More... | |