MADNESS 0.10.1
|
Given a molecule and nonrelativistic ground state orbitals, solve the Dirac-Hartree-Fock equations. More...
#include <DF.h>
Static Public Member Functions | |
static void | help () |
static void | print_parameters () |
Private Attributes | |
bool | closed_shell |
DFParameters | DFparams |
Tensor< double > | energies |
InitParameters | Init_params |
std::vector< Fcwf > | occupieds |
std::vector< double > | sss |
double | total_energy |
std::vector< double > | ttt |
Given a molecule and nonrelativistic ground state orbitals, solve the Dirac-Hartree-Fock equations.
DF::DF | ( | World & | world, |
std::shared_ptr< std::istream > | input | ||
) |
References madness::DFParameters::archive, madness::WorldGopInterface::broadcast_serializable(), closed_shell, madness::InitParameters::closed_shell, DFparams, end_timer(), energies, madness::InitParameters::energies, madness::WorldGopInterface::fence(), madness::World::gop, Init_params, madness::InitParameters::Init_total_energy, madness::DFParameters::k, madness::DFParameters::Krestricted, MADNESS_EXCEPTION, madness::nonlinear_vector_solver(), madness::InitParameters::num_occupied, madness::DFParameters::nwchem, occupieds, madness::InitParameters::orbitals, madness::InitParameters::order, madness::print(), print_molecule(), madness::DFParameters::print_params(), madness::InitParameters::print_params(), madness::project(), madness::World::rank(), madness::DFParameters::read(), madness::InitParameters::read(), madness::InitParameters::readnw(), madness::DFParameters::restart, madness::FunctionDefaults< NDIM >::set_k(), madness::FunctionDefaults< NDIM >::set_thresh(), madness::FunctionDefaults< NDIM >::set_truncate_mode(), start_timer(), madness::DFParameters::thresh, and total_energy.
void DF::DF_load_balance | ( | World & | world, |
real_function_3d & | Vnuc | ||
) |
References madness::LoadBalanceDeux< NDIM >::add_tree(), end_timer(), Init_params, madness::LoadBalanceDeux< NDIM >::load_balance(), madness::nonlinear_vector_solver(), madness::InitParameters::num_occupied, occupieds, madness::print(), madness::World::rank(), madness::FunctionDefaults< NDIM >::redistribute(), and start_timer().
Referenced by solve_occupied().
void DF::diagonalize | ( | World & | world, |
real_function_3d & | myV, | ||
real_convolution_3d & | op, | ||
std::vector< Fcwf > & | Kpsis | ||
) |
References madness::_(), std::abs(), madness::apply(), apply_T(), closed_shell, madness::conj(), madness::conj_transpose(), madness::copy(), DFparams, end_timer(), energies, Init_params, madness::inner(), madness::DFParameters::Krestricted, m, madness::matrix_inner(), madness::nonlinear_vector_solver(), np, madness::InitParameters::num_occupied, occupieds, op(), P, potential(), madness::print(), q(), madness::World::rank(), madness::Tensor< T >::scale(), sigma, squaremod(), start_timer(), madness::svd(), madness::sygv(), madness::DFParameters::thresh, madness::transform(), and madness::transpose().
Referenced by iterate().
References madness::cpu_time(), madness::nonlinear_vector_solver(), pop(), sss, ttt, and madness::wall_time().
Referenced by DF(), DF_load_balance(), diagonalize(), exchange(), iterate(), saveDF(), solve(), and solve_occupied().
void DF::exchange | ( | World & | world, |
real_convolution_3d & | op, | ||
std::vector< Fcwf > & | Kpsis | ||
) |
References madness::apply(), closed_shell, madness::compress(), madness::conj(), DFparams, end_timer(), madness::gaxpy(), Init_params, madness::DFParameters::Krestricted, madness::mul(), madness::nonlinear_vector_solver(), madness::InitParameters::num_occupied, occupieds, op(), madness::print(), madness::World::rank(), start_timer(), sum, and madness::truncate().
Referenced by iterate(), and solve_occupied().
References madness::cpu_time(), madness::nonlinear_vector_solver(), sss, ttt, and madness::wall_time().
References madness::print(), and madness::print_header2().
Referenced by main().
bool DF::iterate | ( | World & | world, |
real_function_3d & | V, | ||
real_convolution_3d & | op, | ||
real_function_3d & | JandV, | ||
std::vector< Fcwf > & | Kpsis, | ||
XNonlinearSolver< std::vector< Fcwf >, std::complex< double >, Fcwf_vector_allocator > & | kainsolver, | ||
double & | tolerance, | ||
int & | iteration_number, | ||
double & | nuclear_repulsion_energy | ||
) |
References madness::apply(), apply_BSH_new(), closed_shell, DFparams, diagonalize(), end_timer(), energies, exchange(), get_times(), Init_params, madness::inner(), madness::DFParameters::kain, madness::DFParameters::Krestricted, madness::DFParameters::maxrotn, madness::mul(), myr(), madness::nonlinear_vector_solver(), madness::norm2(), madness::InitParameters::num_occupied, occupieds, op(), orthogonalize_inplace(), madness::print(), madness::World::rank(), madness::real(), rele(), madness::DFParameters::small, squaremod(), start_timer(), madness::DFParameters::thresh, total_energy, madness::truncate(), and V().
Referenced by solve_occupied().
void DF::make_component_logplots | ( | World & | world, |
const char * | filename1, | ||
const char * | filename2, | ||
int | npt, | ||
int | startpnt, | ||
int | endpnt | ||
) |
References madness::WorldGopInterface::fence(), madness::World::gop, h(), Init_params, MADNESS_EXCEPTION, madness::nonlinear_vector_solver(), madness::InitParameters::num_occupied, occupieds, madness::plot_line_print_value(), madness::World::rank(), squaremod_large(), and squaremod_small().
Referenced by solve().
void DF::make_fermi_potential | ( | World & | world, |
real_convolution_3d & | op, | ||
real_function_3d & | potential | ||
) |
Referenced by solve_occupied().
void DF::make_fermi_potential | ( | World & | world, |
real_convolution_3d & | op, | ||
real_function_3d & | potential, | ||
double & | nuclear_repulsion_energy | ||
) |
References madness::apply(), madness::DFParameters::bohr_rad, DFparams, dist(), madness::Molecule::get_all_coords_vec(), madness::Molecule::get_atomic_number(), Init_params, m, madness::InitParameters::molecule, madness::nonlinear_vector_solver(), op(), potential(), madness::print(), and madness::World::rank().
void DF::make_gaussian_potential | ( | World & | world, |
real_function_3d & | potential | ||
) |
References madness::DFParameters::bohr_rad, DFparams, Init_params, madness::InitParameters::molecule, madness::nonlinear_vector_solver(), potential(), madness::print(), and madness::World::rank().
Referenced by solve_occupied().
void DF::make_gaussian_potential | ( | World & | world, |
real_function_3d & | potential, | ||
double & | nuclear_repulsion_energy | ||
) |
References std::abs(), madness::matrix_inner(), occupieds, Q(), madness::Q2(), and madness::transform().
Referenced by iterate().
References v.
Referenced by end_timer().
References madness::print().
Referenced by main().
References apply_T(), energy, madness::inner(), madness::nonlinear_vector_solver(), and psi().
Referenced by iterate().
References closed_shell, DFparams, end_timer(), energies, get_times(), Init_params, madness::DFParameters::Krestricted, madness::InitParameters::L, madness::InitParameters::molecule, madness::nonlinear_vector_solver(), madness::InitParameters::num_occupied, occupieds, madness::InitParameters::order, madness::print(), madness::World::rank(), madness::DFParameters::savefile, start_timer(), and total_energy.
Referenced by solve_occupied().
References madness::apply(), closed_shell, madness::CoulombOperator(), DF_load_balance(), DFparams, madness::DFParameters::do_save, end_timer(), exchange(), Init_params, iterate(), madness::DFParameters::Krestricted, madness::DFParameters::lb_iter, make_fermi_potential(), make_gaussian_potential(), madness::DFParameters::max_iter, madness::DFParameters::maxsub, madness::DFParameters::min_iter, madness::nonlinear_vector_solver(), madness::DFParameters::nucleus, madness::InitParameters::num_occupied, occupieds, op(), madness::print(), madness::World::rank(), saveDF(), madness::DFParameters::small, squaremod(), start_timer(), and madness::DFParameters::thresh.
Referenced by solve().
References madness::cpu_time(), madness::WorldGopInterface::fence(), madness::World::gop, sss, ttt, and madness::wall_time().
Referenced by DF(), DF_load_balance(), diagonalize(), exchange(), iterate(), saveDF(), solve(), and solve_occupied().
|
private |
Referenced by DF(), diagonalize(), exchange(), iterate(), saveDF(), and solve_occupied().
|
private |
Referenced by DF(), diagonalize(), exchange(), iterate(), make_fermi_potential(), make_gaussian_potential(), make_gaussian_potential(), saveDF(), solve(), and solve_occupied().
|
private |
Referenced by DF(), DF_load_balance(), diagonalize(), exchange(), iterate(), make_component_lineplots(), make_component_logplots(), make_density_lineplots(), make_fermi_potential(), make_gaussian_potential(), make_gaussian_potential(), print_molecule(), print_sizes(), saveDF(), and solve_occupied().
|
private |
|
private |
Referenced by end_timer(), get_times(), and start_timer().
|
private |
Referenced by end_timer(), get_times(), and start_timer().