43 class ElectronicStructureAppParams;
55 template <
typename T,
int NDIM>
67 virtual bool is_od() {
return false;}
72 virtual bool is_rd() {
return true;}
87 template <
typename T,
int NDIM>
100 virtual bool is_od() {
return false;}
133 template <
typename T,
int NDIM>
146 virtual bool is_od() {
return false;}
184 template <
typename T,
int NDIM>
197 virtual bool is_od() {
return false;}
212 template <
typename T,
int NDIM>
220 double thresh,
bool periodic);
231 virtual bool is_od() {
return false;}
259 template <
typename T,
int NDIM>
281 void solve(
int maxits);
290 bool spinpol,
bool periodic =
false);
296 bool spinpol,
const double thresh,
bool periodic,
bool ispotential);
302 bool periodic =
false);
312 return _solver->matrix_element(phii, phij);
319 _solver->print_matrix_elements(phii, phij);
326 const int& iter,
bool periodic =
false);
344 const std::vector<double>&
eigs()
351 const std::vector<funcT>&
phis()
This header should include pretty much everything needed for the parallel runtime.
Function< T, NDIM > funcT
Definition: dft.h:91
DFTCoulombOp(World &world, double coeff, double thresh)
Definition: dft.cc:84
funcT _Vc
Definition: dft.h:123
virtual funcT op_r(const funcT &rho, const funcT &psi)
Density-dependent portion of operator.
Definition: dft.cc:153
SeparatedConvolution< T, NDIM > * _cop
Definition: dft.h:118
virtual void prepare_op(Function< double, NDIM > rho)
Definition: dft.cc:119
bool _spinpol
Definition: dft.h:127
virtual bool is_od()
Is there an orbitally-dependent term?
Definition: dft.h:100
virtual bool is_rd()
Is there a density-dependent term?
Definition: dft.h:105
Function< T, NDIM > funcT
Definition: dft.h:137
SeparatedConvolution< T, NDIM > * _cop
Definition: dft.h:164
virtual void prepare_op(Function< double, NDIM > rho)
Definition: dft.cc:127
DFTCoulombPeriodicOp(World &world, funcT rhon, double coeff, double thresh)
Definition: dft.cc:101
bool _spinpol
Definition: dft.h:173
funcT _rhon
Definition: dft.h:177
virtual bool is_rd()
Is there a density-dependent term?
Definition: dft.h:151
virtual funcT op_r(const funcT &rho, const funcT &psi)
Density-dependent portion of operator.
Definition: dft.cc:162
funcT _Vc
Definition: dft.h:169
virtual bool is_od()
Is there an orbitally-dependent term?
Definition: dft.h:146
funcT _rhon
Definition: dft.h:249
Function< T, NDIM > funcT
Definition: dft.h:216
virtual funcT op_r(const funcT &rho, const funcT &psi)
Density-dependent portion of operator.
Definition: dft.cc:135
~DFTNuclearChargeDensityOp()
Definition: dft.h:224
DFTNuclearChargeDensityOp(World &world, funcT rhon, double coeff, double thresh, bool periodic)
Definition: dft.cc:46
void prepare_op(Function< double, NDIM > rho)
Definition: dft.h:240
funcT _Vnuc
Definition: dft.h:253
virtual bool is_od()
Is there an orbitally-dependent term?
Definition: dft.h:231
virtual bool is_rd()
Is there a density-dependent term?
Definition: dft.h:236
Function< T, NDIM > funcT
Definition: dft.h:59
virtual funcT op_r(const funcT &rho, const funcT &psi)
Density-dependent portion of operator.
Definition: dft.cc:144
virtual bool is_rd()
Is there a density-dependent term?
Definition: dft.h:72
funcT _V
Definition: dft.h:81
virtual bool is_od()
Is there an orbitally-dependent term?
Definition: dft.h:67
DFTNuclearPotentialOp(World &world, funcT V, double coeff, double thresh)
Definition: dft.cc:73
static double calculate_tot_coulomb_energy(const World &world, const Function< double, NDIM > &rho, bool spinpol, const double thresh, bool periodic=false)
Definition: dft.cc:325
double get_eig(int indx)
Definition: dft.h:330
static double calculate_tot_ke_sp(const std::vector< funcT > &phis, bool spinpol, bool periodic=false)
Definition: dft.cc:276
EigSolverOp< T, NDIM > * _xcfunc
Definition: dft.h:378
Function< double, NDIM > _vnucrhon
Definition: dft.h:372
Vector< double, NDIM > kvecT
Definition: dft.h:264
void print_matrix_elements(const funcT &phii, const funcT &phij)
Definition: dft.h:317
static double calculate_tot_pe_sp(const World &world, const Function< double, NDIM > &rho, const Function< double, NDIM > &vnucrhon, bool spinpol, const double thresh, bool periodic, bool ispotential)
Definition: dft.cc:294
funcT get_phi(int indx)
Definition: dft.h:337
static double calculate_tot_xc_energy(const Function< double, NDIM > &rho)
Definition: dft.cc:352
EigSolver< T, NDIM > * _solver
Definition: dft.h:361
const std::vector< double > & eigs()
Definition: dft.h:344
World & _world
Definition: dft.h:365
virtual ~DFT()
Definition: dft.cc:245
virtual void iterateOutput(const std::vector< funcT > &phis, const std::vector< double > &eigs, const Function< double, NDIM > &rho, const int &iter, bool periodic=false)
Definition: dft.cc:363
ElectronicStructureParams _params
Definition: dft.h:382
T matrix_element(const funcT &phii, const funcT &phij)
Definition: dft.h:310
const std::vector< funcT > & phis()
Definition: dft.h:351
Function< T, NDIM > funcT
Definition: dft.h:263
static double calculate_ke_sp(funcT psi, bool periodic=false)
Definition: dft.cc:261
World & world()
Definition: dft.h:386
void solve(int maxits)
Definition: dft.cc:253
Definition: eigsolver.h:99
double thresh()
Definition: eigsolver.h:193
double coeff()
Definition: eigsolver.h:177
Definition: eigsolver.h:226
A multiresolution adaptive numerical function.
Definition: mra.h:122
Definition: eigsolver.h:52
A parallel world class.
Definition: world.h:132
virtual funcT op_r(const funcT &rho, const funcT &psi)
Density-dependent portion of operator.
Definition: dft.cc:181
XCFunctionalLDA(World &world, double coeff, double thresh)
Definition: dft.cc:171
virtual bool is_rd()
Is there a density-dependent term?
Definition: dft.h:202
virtual bool is_od()
Is there an orbitally-dependent term?
Definition: dft.h:197
Function< T, NDIM > funcT
Definition: dft.h:188
auto T(World &world, response_space &f) -> response_space
Definition: global_functions.cc:34
double psi(const Vector< double, 3 > &r)
Definition: hatom_energy.cc:78
Main include file for MADNESS and defines Function interface.
File holds all helper structures necessary for the CC_Operator and CC2 class.
Definition: DFParameters.h:10
static const double thresh
Definition: rk.cc:45
Definition: electronicstructureparams.h:46
static double V(const coordT &r)
Definition: tdse.cc:288