#include <mcpdft.h>
Public Member Functions | |
MCPDFT () | |
constructor More... | |
MCPDFT (std::string test_case) | |
~MCPDFT () | |
destructor More... | |
void | common_init (std::string test_case) |
initialize the class member variables More... | |
void | build_opdm () |
Build the 1-particle density matrices (OPDMs) More... | |
void | build_tpdm () |
Build the alpha-beta block of 2-particle density matrix (TPDM) More... | |
void | build_rho () |
Build density functions and their gradients on the grid points. More... | |
void | build_density_functions () |
Build spin and total density functions rhoa(r), rhob(r) and rho(r) More... | |
void | build_density_gradients () |
Build density gradients rhoa_x(r), rhoa_y(r) ... on the grid points. More... | |
void | build_pi (const arma::mat &D2ab) |
Build on-top pair-density pi(r,r) and its gradinets pi_x(r,r) ... on the grids. More... | |
void | build_ontop_pair_density (const arma::mat &D2ab) |
Build on-top pair-density pi(r,r) on the grids. More... | |
void | build_ontop_pair_density_gradients (const arma::mat &D2ab) |
Build on-top pair-density gradinets pi_x(r,r), pi_y(r,r) ... on the grids. More... | |
void | build_R () |
Build R(r) factor. More... | |
void | translate () |
Translate the one-electron densities and their gradients. More... | |
void | translate_density () |
Translate the one-electron density functions. More... | |
void | translate_density_gradients () |
Translate the density gradients. More... | |
void | fully_translate () |
Fully translate the one-electron densities. More... | |
void | fully_translate_density () |
Fully translate the one-electron density functions. More... | |
void | fully_translate_density_gradients () |
Fully translate the density gradients. More... | |
bool | is_gga () const |
size_t | get_npts () const |
int | get_nbfs () const |
arma::vec | get_w () const |
arma::vec | get_x () const |
arma::vec | get_y () const |
arma::vec | get_z () const |
arma::mat | get_phi () const |
arma::mat | get_phi_x () const |
arma::mat | get_phi_y () const |
arma::mat | get_phi_z () const |
double | get_eref () const |
double | get_eclass () const |
arma::mat | get_cmat () const |
arma::mat | get_D1a () const |
arma::mat | get_D1b () const |
arma::mat | get_D2ab () const |
arma::vec | get_rhoa () const |
arma::vec | get_rhoa_x () const |
arma::vec | get_rhoa_y () const |
arma::vec | get_rhoa_z () const |
arma::vec | get_rhob () const |
arma::vec | get_rhob_x () const |
arma::vec | get_rhob_y () const |
arma::vec | get_rhob_z () const |
arma::vec | get_rho () const |
arma::vec | get_tr_rhoa () const |
arma::vec | get_tr_rhoa_x () const |
arma::vec | get_tr_rhoa_y () const |
arma::vec | get_tr_rhoa_z () const |
arma::vec | get_tr_rhob () const |
arma::vec | get_tr_rhob_x () const |
arma::vec | get_tr_rhob_y () const |
arma::vec | get_tr_rhob_z () const |
arma::vec | get_tr_rho () const |
arma::vec | get_pi () const |
arma::vec | get_R () const |
arma::vec | get_sigma_aa () const |
arma::vec | get_sigma_ab () const |
arma::vec | get_sigma_bb () const |
arma::vec | get_tr_sigma_aa () const |
arma::vec | get_tr_sigma_ab () const |
arma::vec | get_tr_sigma_bb () const |
void | set_npts (const size_t npts) |
void | set_nbfs (const int nbfs) |
void | set_w (const arma::vec &w) |
void | set_x (const arma::vec &x) |
void | set_y (const arma::vec &y) |
void | set_z (const arma::vec &z) |
void | set_phi (const arma::mat &phi) |
void | set_phi_x (const arma::mat &phi_x) |
void | set_phi_y (const arma::mat &phi_y) |
void | set_phi_z (const arma::mat &phi_z) |
void | set_eref (const double eref) |
void | set_eclass (const double eclass) |
void | set_cmat (const arma::mat &cmat) |
void | set_D1a (const arma::mat &D1a) |
void | set_D1b (const arma::mat &D1b) |
void | set_D2ab (const arma::mat &D2ab) |
void | set_rhoa (const arma::vec &rhoa) |
void | set_rhoa_x (const arma::vec &rhoa_x) |
void | set_rhoa_y (const arma::vec &rhoa_y) |
void | set_rhoa_z (const arma::vec &rhoa_z) |
void | set_rhob (const arma::vec &rhob) |
void | set_rhob_x (const arma::vec &rhob_x) |
void | set_rhob_y (const arma::vec &rhob_y) |
void | set_rhob_z (const arma::vec &rhob_z) |
void | set_rho (const arma::vec &rho) |
void | set_tr_rhoa (const arma::vec &tr_rhoa) |
void | set_tr_rhoa_x (const arma::vec &tr_rhoa_x) |
void | set_tr_rhoa_y (const arma::vec &tr_rhoa_y) |
void | set_tr_rhoa_z (const arma::vec &tr_rhoa_z) |
void | set_tr_rhob (const arma::vec &tr_rhob) |
void | set_tr_rhob_x (const arma::vec &tr_rhob_x) |
void | set_tr_rhob_y (const arma::vec &tr_rhob_y) |
void | set_tr_rhob_z (const arma::vec &tr_rhob_z) |
void | set_tr_rho (const arma::vec &tr_rho) |
void | set_pi (const arma::vec &pi) |
void | set_pi_x (const arma::vec &pi_x) |
void | set_pi_y (const arma::vec &pi_y) |
void | set_pi_z (const arma::vec &pi_z) |
void | set_R (const arma::vec &R) |
void | set_sigma_aa (const arma::vec &sigma_aa) |
void | set_sigma_ab (const arma::vec &sigma_ab) |
void | set_sigma_bb (const arma::vec &sigma_bb) |
void | set_tr_sigma_aa (const arma::vec &tr_sigma_aa) |
void | set_tr_sigma_ab (const arma::vec &tr_sigma_ab) |
void | set_tr_sigma_bb (const arma::vec &tr_sigma_bb) |
void | print_banner () const |
Protected Member Functions | |
void | read_grids_from_file (std::string test_case) |
void | read_orbitals_from_file (std::string test_case) |
void | read_gradients_from_file (std::string test_case) |
void | read_energies_from_file (std::string test_case) |
void | read_opdm_from_file (std::string test_case) |
void | read_cmat_from_file (std::string test_case) |
Private Attributes | |
bool | is_gga_ |
A boolean variable to show if a chose functional is GGA or not. More... | |
arma::mat | D1a_ |
1-electron reduced-density matrix of alpha spin More... | |
arma::mat | D1b_ |
1-electron reduced-density matrix of beta spin More... | |
arma::mat | D2ab_ |
2-electron reduced-density matrix of alpha-beta spin More... | |
size_t | npts_ |
number of grid points More... | |
size_t | nbfs_ |
number of basis functions More... | |
arma::vec | w_ |
vector of weights for quadrature grid points More... | |
arma::vec | x_ |
vector of x-coordinates for quadrature grid points More... | |
arma::vec | y_ |
vector of y-coordinates for quadrature grid points More... | |
arma::vec | z_ |
vector of z-coordinates for quadrature grid points More... | |
arma::mat | grids_ |
matrix of grids([w],[x],[y],[z]) columns [x], [y], ... More... | |
arma::mat | phi_ |
matrix of orbital values calculated on the grid points phi(npts, nbfs) More... | |
arma::mat | phi_x_ |
matrix of orbital x-derivative values calculated on the grid points phi(npts, nbfs) More... | |
arma::mat | phi_y_ |
matrix of orbital y-derivative values calculated on the grid points phi(npts, nbfs) More... | |
arma::mat | phi_z_ |
matrix of orbital z-derivative values calculated on the grid points phi(npts, nbfs) More... | |
double | eref_ |
the reference electronic energy (read from file) More... | |
double | eclass_ |
the classical electronic energy (read from file) More... | |
arma::mat | cmat_ |
AO->MO transformation matrix C (read from file) More... | |
arma::vec | rho_a_ |
alpha density vector rho_a(r) More... | |
arma::vec | rho_a_x_ |
x-derivative of the alpha density vector rho_a(r) More... | |
arma::vec | rho_a_y_ |
y-derivative of the alpha density vector rho_a(r) More... | |
arma::vec | rho_a_z_ |
z-derivative of the alpha density vector rho_a(r) More... | |
arma::vec | rho_b_ |
beta density vector rho_b(r) More... | |
arma::vec | rho_b_x_ |
The x-derivative of the beta density vector rho_b(r) More... | |
arma::vec | rho_b_y_ |
The y-derivative of the beta density vector rho_b(r) More... | |
arma::vec | rho_b_z_ |
The z-derivative of the beta density vector rho_b(r) More... | |
arma::vec | rho_ |
total density vector rho_(r) More... | |
arma::vec | tr_rho_a_ |
The (fully-)translated alpha density vector tr_rho_a(r) More... | |
arma::vec | tr_rho_a_x_ |
The x-derivative of the (fully-)translated alpha density vector tr_rho_a(r) More... | |
arma::vec | tr_rho_a_y_ |
The y-derivative of the (fully-)translated alpha density vector tr_rho_a(r) More... | |
arma::vec | tr_rho_a_z_ |
The z-derivative of the (fully-)translated alpha density vector tr_rho_a(r) More... | |
arma::vec | tr_rho_b_ |
The (fully-)translated beta density vector tr_rho_b(r) More... | |
arma::vec | tr_rho_b_x_ |
The x-derivative of the (fully-)translated beta density vector tr_rho_b(r) More... | |
arma::vec | tr_rho_b_y_ |
The y-derivative of the (fully-)translated beta density vector tr_rho_b(r) More... | |
arma::vec | tr_rho_b_z_ |
The z-derivative of the (fully-)translated beta density vector tr_rho_b(r) More... | |
arma::vec | tr_rho_ |
The (fully-)translated total density vector tr_rho_(r) More... | |
arma::vec | pi_ |
The on-top pair-density vector pi_(r) More... | |
arma::vec | pi_x_ |
The x-derivative of the on-top pair-density vector pi_(r) More... | |
arma::vec | pi_y_ |
The y-derivative of the on-top pair-density vector pi_(r) More... | |
arma::vec | pi_z_ |
The z-derivative of the on-top pair-density vector pi_(r) More... | |
arma::vec | R_ |
The R(r) factor. More... | |
arma::vec | sigma_aa_ |
The sigma alpha-alpha vector sigma_aa(r) More... | |
arma::vec | sigma_ab_ |
The sigma alpha-beta vector sigma_ab(r) More... | |
arma::vec | sigma_bb_ |
The sigma beta-beta vector sigma_bb(r) More... | |
arma::vec | tr_sigma_aa_ |
The (fully-)translated sigma alpha-alpha vector tr_sigma_aa(r) More... | |
arma::vec | tr_sigma_ab_ |
The (fully-)translated sigma alpha-beta vector tr_sigma_ab(r) More... | |
arma::vec | tr_sigma_bb_ |
The (fully-)translated sigma beta-beta vector tr_sigma_bb(r) More... | |
mcpdft::MCPDFT::MCPDFT | ( | ) |
constructor
mcpdft::MCPDFT::MCPDFT | ( | std::string | test_case | ) |
mcpdft::MCPDFT::~MCPDFT | ( | ) |
destructor
void mcpdft::MCPDFT::build_density_functions | ( | ) |
Build spin and total density functions rhoa(r), rhob(r) and rho(r)
void mcpdft::MCPDFT::build_density_gradients | ( | ) |
Build density gradients rhoa_x(r), rhoa_y(r) ... on the grid points.
void mcpdft::MCPDFT::build_ontop_pair_density | ( | const arma::mat & | D2ab | ) |
Build on-top pair-density pi(r,r) on the grids.
void mcpdft::MCPDFT::build_ontop_pair_density_gradients | ( | const arma::mat & | D2ab | ) |
Build on-top pair-density gradinets pi_x(r,r), pi_y(r,r) ... on the grids.
void mcpdft::MCPDFT::build_opdm | ( | ) |
Build the 1-particle density matrices (OPDMs)
void mcpdft::MCPDFT::build_pi | ( | const arma::mat & | D2ab | ) |
Build on-top pair-density pi(r,r) and its gradinets pi_x(r,r) ... on the grids.
void mcpdft::MCPDFT::build_R | ( | ) |
Build R(r) factor.
void mcpdft::MCPDFT::build_rho | ( | ) |
Build density functions and their gradients on the grid points.
void mcpdft::MCPDFT::build_tpdm | ( | ) |
Build the alpha-beta block of 2-particle density matrix (TPDM)
void mcpdft::MCPDFT::common_init | ( | std::string | test_case | ) |
initialize the class member variables
void mcpdft::MCPDFT::fully_translate | ( | ) |
Fully translate the one-electron densities.
void mcpdft::MCPDFT::fully_translate_density | ( | ) |
Fully translate the one-electron density functions.
void mcpdft::MCPDFT::fully_translate_density_gradients | ( | ) |
Fully translate the density gradients.
arma::mat mcpdft::MCPDFT::get_cmat | ( | ) | const |
arma::mat mcpdft::MCPDFT::get_D1a | ( | ) | const |
arma::mat mcpdft::MCPDFT::get_D1b | ( | ) | const |
arma::mat mcpdft::MCPDFT::get_D2ab | ( | ) | const |
double mcpdft::MCPDFT::get_eclass | ( | ) | const |
double mcpdft::MCPDFT::get_eref | ( | ) | const |
int mcpdft::MCPDFT::get_nbfs | ( | ) | const |
size_t mcpdft::MCPDFT::get_npts | ( | ) | const |
arma::mat mcpdft::MCPDFT::get_phi | ( | ) | const |
arma::mat mcpdft::MCPDFT::get_phi_x | ( | ) | const |
arma::mat mcpdft::MCPDFT::get_phi_y | ( | ) | const |
arma::mat mcpdft::MCPDFT::get_phi_z | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_pi | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_R | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_rho | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_rhoa | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_rhoa_x | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_rhoa_y | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_rhoa_z | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_rhob | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_rhob_x | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_rhob_y | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_rhob_z | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_sigma_aa | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_sigma_ab | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_sigma_bb | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_rho | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_rhoa | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_rhoa_x | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_rhoa_y | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_rhoa_z | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_rhob | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_rhob_x | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_rhob_y | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_rhob_z | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_sigma_aa | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_sigma_ab | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_tr_sigma_bb | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_w | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_x | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_y | ( | ) | const |
arma::vec mcpdft::MCPDFT::get_z | ( | ) | const |
bool mcpdft::MCPDFT::is_gga | ( | ) | const |
void mcpdft::MCPDFT::print_banner | ( | ) | const |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
void mcpdft::MCPDFT::set_cmat | ( | const arma::mat & | cmat | ) |
void mcpdft::MCPDFT::set_D1a | ( | const arma::mat & | D1a | ) |
void mcpdft::MCPDFT::set_D1b | ( | const arma::mat & | D1b | ) |
void mcpdft::MCPDFT::set_D2ab | ( | const arma::mat & | D2ab | ) |
void mcpdft::MCPDFT::set_eclass | ( | const double | eclass | ) |
void mcpdft::MCPDFT::set_eref | ( | const double | eref | ) |
void mcpdft::MCPDFT::set_nbfs | ( | const int | nbfs | ) |
void mcpdft::MCPDFT::set_npts | ( | const size_t | npts | ) |
void mcpdft::MCPDFT::set_phi | ( | const arma::mat & | phi | ) |
void mcpdft::MCPDFT::set_phi_x | ( | const arma::mat & | phi_x | ) |
void mcpdft::MCPDFT::set_phi_y | ( | const arma::mat & | phi_y | ) |
void mcpdft::MCPDFT::set_phi_z | ( | const arma::mat & | phi_z | ) |
void mcpdft::MCPDFT::set_pi | ( | const arma::vec & | pi | ) |
void mcpdft::MCPDFT::set_pi_x | ( | const arma::vec & | pi_x | ) |
void mcpdft::MCPDFT::set_pi_y | ( | const arma::vec & | pi_y | ) |
void mcpdft::MCPDFT::set_pi_z | ( | const arma::vec & | pi_z | ) |
void mcpdft::MCPDFT::set_R | ( | const arma::vec & | R | ) |
void mcpdft::MCPDFT::set_rho | ( | const arma::vec & | rho | ) |
void mcpdft::MCPDFT::set_rhoa | ( | const arma::vec & | rhoa | ) |
void mcpdft::MCPDFT::set_rhoa_x | ( | const arma::vec & | rhoa_x | ) |
void mcpdft::MCPDFT::set_rhoa_y | ( | const arma::vec & | rhoa_y | ) |
void mcpdft::MCPDFT::set_rhoa_z | ( | const arma::vec & | rhoa_z | ) |
void mcpdft::MCPDFT::set_rhob | ( | const arma::vec & | rhob | ) |
void mcpdft::MCPDFT::set_rhob_x | ( | const arma::vec & | rhob_x | ) |
void mcpdft::MCPDFT::set_rhob_y | ( | const arma::vec & | rhob_y | ) |
void mcpdft::MCPDFT::set_rhob_z | ( | const arma::vec & | rhob_z | ) |
void mcpdft::MCPDFT::set_sigma_aa | ( | const arma::vec & | sigma_aa | ) |
void mcpdft::MCPDFT::set_sigma_ab | ( | const arma::vec & | sigma_ab | ) |
void mcpdft::MCPDFT::set_sigma_bb | ( | const arma::vec & | sigma_bb | ) |
void mcpdft::MCPDFT::set_tr_rho | ( | const arma::vec & | tr_rho | ) |
void mcpdft::MCPDFT::set_tr_rhoa | ( | const arma::vec & | tr_rhoa | ) |
void mcpdft::MCPDFT::set_tr_rhoa_x | ( | const arma::vec & | tr_rhoa_x | ) |
void mcpdft::MCPDFT::set_tr_rhoa_y | ( | const arma::vec & | tr_rhoa_y | ) |
void mcpdft::MCPDFT::set_tr_rhoa_z | ( | const arma::vec & | tr_rhoa_z | ) |
void mcpdft::MCPDFT::set_tr_rhob | ( | const arma::vec & | tr_rhob | ) |
void mcpdft::MCPDFT::set_tr_rhob_x | ( | const arma::vec & | tr_rhob_x | ) |
void mcpdft::MCPDFT::set_tr_rhob_y | ( | const arma::vec & | tr_rhob_y | ) |
void mcpdft::MCPDFT::set_tr_rhob_z | ( | const arma::vec & | tr_rhob_z | ) |
void mcpdft::MCPDFT::set_tr_sigma_aa | ( | const arma::vec & | tr_sigma_aa | ) |
void mcpdft::MCPDFT::set_tr_sigma_ab | ( | const arma::vec & | tr_sigma_ab | ) |
void mcpdft::MCPDFT::set_tr_sigma_bb | ( | const arma::vec & | tr_sigma_bb | ) |
void mcpdft::MCPDFT::set_w | ( | const arma::vec & | w | ) |
void mcpdft::MCPDFT::set_x | ( | const arma::vec & | x | ) |
void mcpdft::MCPDFT::set_y | ( | const arma::vec & | y | ) |
void mcpdft::MCPDFT::set_z | ( | const arma::vec & | z | ) |
void mcpdft::MCPDFT::translate | ( | ) |
Translate the one-electron densities and their gradients.
void mcpdft::MCPDFT::translate_density | ( | ) |
Translate the one-electron density functions.
void mcpdft::MCPDFT::translate_density_gradients | ( | ) |
Translate the density gradients.
|
private |
AO->MO transformation matrix C (read from file)
|
private |
1-electron reduced-density matrix of alpha spin
|
private |
1-electron reduced-density matrix of beta spin
|
private |
2-electron reduced-density matrix of alpha-beta spin
|
private |
the classical electronic energy (read from file)
|
private |
the reference electronic energy (read from file)
|
private |
matrix of grids([w],[x],[y],[z]) columns [x], [y], ...
|
private |
A boolean variable to show if a chose functional is GGA or not.
|
private |
number of basis functions
|
private |
number of grid points
|
private |
matrix of orbital values calculated on the grid points phi(npts, nbfs)
|
private |
matrix of orbital x-derivative values calculated on the grid points phi(npts, nbfs)
|
private |
matrix of orbital y-derivative values calculated on the grid points phi(npts, nbfs)
|
private |
matrix of orbital z-derivative values calculated on the grid points phi(npts, nbfs)
|
private |
The on-top pair-density vector pi_(r)
|
private |
The x-derivative of the on-top pair-density vector pi_(r)
|
private |
The y-derivative of the on-top pair-density vector pi_(r)
|
private |
The z-derivative of the on-top pair-density vector pi_(r)
|
private |
The R(r) factor.
|
private |
total density vector rho_(r)
|
private |
alpha density vector rho_a(r)
|
private |
x-derivative of the alpha density vector rho_a(r)
|
private |
y-derivative of the alpha density vector rho_a(r)
|
private |
z-derivative of the alpha density vector rho_a(r)
|
private |
beta density vector rho_b(r)
|
private |
The x-derivative of the beta density vector rho_b(r)
|
private |
The y-derivative of the beta density vector rho_b(r)
|
private |
The z-derivative of the beta density vector rho_b(r)
|
private |
The sigma alpha-alpha vector sigma_aa(r)
|
private |
The sigma alpha-beta vector sigma_ab(r)
|
private |
The sigma beta-beta vector sigma_bb(r)
|
private |
The (fully-)translated total density vector tr_rho_(r)
|
private |
The (fully-)translated alpha density vector tr_rho_a(r)
|
private |
The x-derivative of the (fully-)translated alpha density vector tr_rho_a(r)
|
private |
The y-derivative of the (fully-)translated alpha density vector tr_rho_a(r)
|
private |
The z-derivative of the (fully-)translated alpha density vector tr_rho_a(r)
|
private |
The (fully-)translated beta density vector tr_rho_b(r)
|
private |
The x-derivative of the (fully-)translated beta density vector tr_rho_b(r)
|
private |
The y-derivative of the (fully-)translated beta density vector tr_rho_b(r)
|
private |
The z-derivative of the (fully-)translated beta density vector tr_rho_b(r)
|
private |
The (fully-)translated sigma alpha-alpha vector tr_sigma_aa(r)
|
private |
The (fully-)translated sigma alpha-beta vector tr_sigma_ab(r)
|
private |
The (fully-)translated sigma beta-beta vector tr_sigma_bb(r)
|
private |
vector of weights for quadrature grid points
|
private |
vector of x-coordinates for quadrature grid points
|
private |
vector of y-coordinates for quadrature grid points
|
private |
vector of z-coordinates for quadrature grid points