MADNESS  0.10.1
Classes | Typedefs | Functions | Variables
testcosine.cc File Reference
#include <madness/mra/mra.h>
#include <madness/tensor/solvers.h>
Include dependency graph for testcosine.cc:

Classes

class  CosPotentialFunctor
 
class  ExpFunctor< Q >
 
class  ExpFunctor3d< Q >
 
class  PWFunctor
 

Typedefs

typedef SeparatedConvolution< double_complex, 3 > coperatorT
 
typedef SeparatedConvolution< double, 3 > operatorT
 
typedef std::shared_ptr< operatorTpoperatorT
 

Functions

complex_function_3d apply_periodic_bsh (World &world, const complex_function_3d &f, const double &kx, const double &ky, const double &kz, const double &energy, const double &L)
 
vector_complex_function_3d apply_potential (const real_function_3d &potential, const vector_complex_function_3d &psi)
 
std::vector< coord_3dget_coeffs_pw (double maxKlen)
 
static const double_complex I (0, 1)
 
int main (int argc, char **argv)
 
vector_complex_function_3d make_basis (World &world, double maxKlen)
 
tensor_complex make_kinetic_matrix (World &world, const vector_complex_function_3d &v)
 
real_tensor make_pw_matrix (const std::vector< coord_3d > &gvecs)
 
void orthogonalize (World &world, vector_complex_function_3d &psi)
 
vector_complex_function_3d update (World &world, const vector_complex_function_3d &psi, vector_complex_function_3d &vpsi, const tensor_real &e, int iter)
 

Variables

static const double alpha = 2.5
 
static const double kwavelet = 4
 
static const double kx =0.5*twopi/L
 
static const double ky =0.5*twopi/L
 
static const double kz =0.5*twopi/L
 
static const double L = 5.0
 
static const double pi = constants::pi
 
static const double thresh = 1e-2
 
static const int truncate_mode = 0
 
static const double twopi = 2.0*constants::pi
 

Typedef Documentation

◆ coperatorT

◆ operatorT

typedef SeparatedConvolution<double,3> operatorT

◆ poperatorT

typedef std::shared_ptr<operatorT> poperatorT

Function Documentation

◆ apply_periodic_bsh()

complex_function_3d apply_periodic_bsh ( World world,
const complex_function_3d f,
const double &  kx,
const double &  ky,
const double &  kz,
const double &  energy,
const double &  L 
)

◆ apply_potential()

vector_complex_function_3d apply_potential ( const real_function_3d potential,
const vector_complex_function_3d psi 
)

References potential(), and psi().

Referenced by main().

◆ get_coeffs_pw()

std::vector<coord_3d> get_coeffs_pw ( double  maxKlen)

References a, b, L, and pi.

◆ I()

static const double_complex I ( ,
 
)
static

◆ main()

int main ( int  argc,
char **  argv 
)

◆ make_basis()

vector_complex_function_3d make_basis ( World world,
double  maxKlen 
)

References I(), L, madness::normalize(), pi, and twopi.

Referenced by main().

◆ make_kinetic_matrix()

tensor_complex make_kinetic_matrix ( World world,
const vector_complex_function_3d v 
)

References madness::apply(), f1, f2, f3, I(), kx, ky, kz, madness::matrix_inner(), and v.

Referenced by main().

◆ make_pw_matrix()

real_tensor make_pw_matrix ( const std::vector< coord_3d > &  gvecs)

◆ orthogonalize()

void orthogonalize ( World world,
vector_complex_function_3d psi 
)

◆ update()

vector_complex_function_3d update ( World world,
const vector_complex_function_3d psi,
vector_complex_function_3d vpsi,
const tensor_real e,
int  iter 
)

Variable Documentation

◆ alpha

const double alpha = 2.5
static

◆ kwavelet

const double kwavelet = 4
static

◆ kx

const double kx =0.5*twopi/L
static

◆ ky

const double ky =0.5*twopi/L
static

◆ kz

const double kz =0.5*twopi/L
static

◆ L

const double L = 5.0
static

◆ pi

const double pi = constants::pi
static

◆ thresh

const double thresh = 1e-2
static

Referenced by main().

◆ truncate_mode

const int truncate_mode = 0
static

◆ twopi

const double twopi = 2.0*constants::pi
static

Referenced by make_basis().