25#include <boost/algorithm/string.hpp>
26#include <boost/format.hpp>
43 throw std::runtime_error(file +
44 " contains no polarizability; run xtpdft with "
45 "dftpackage.xtpdft.polarizability=true");
52 const std::string job_name = options.
get(
"temporary_file").
as<std::string>();
118 std::vector<std::string> cleanup_info =
120 for (
const std::string& substring : cleanup_info) {
121 if (substring ==
"log") {
123 remove(file_name.c_str());
144 }
catch (std::runtime_error& error) {
Electronic ground-state via Density-Functional Theory.
void setWarmStart(bool warm_start)
void setExternalcharges(std::vector< std::unique_ptr< StaticSite > > *externalsites)
bool EvaluateTruncatedActiveRegion(Orbitals &trunc_orb)
void setEwaldgrid(const Vxc_Grid &ewaldgrid)
void setSCFToleranceFloor(double energy, double error)
void setLogger(Logger *pLog)
Attach the logger used for SCF progress and diagnostics.
bool EvaluateActiveRegion(Orbitals &orb)
void Initialize(tools::Property &options)
Read DFT, grid, and SCF settings from the user options tree.
void setEwaldNuclearEnergy(double energy)
bool Evaluate(Orbitals &orb)
void setSetupCache(DFTSetupCache *cache)
Container for molecular orbitals and derived one-particle data.
bool hasPolarizability() const
double getDFTTotalEnergy() const
Return the stored total DFT energy.
Eigen::Matrix3d getPolarizability() const
void ReadFromCpt(const std::string &filename)
Read the orbital container from a checkpoint file on disk.
std::string log_file_name_
bool has_ewald_nuclear_energy_
double ewald_nuclear_energy_
std::vector< std::unique_ptr< StaticSite > > externalsites_
std::string mo_file_name_
bool ParseLogFile(Orbitals &orbitals) final
Eigen::Matrix3d GetPolarizability() const final
void ParseSpecificOptions(const tools::Property &options) final
std::string getPackageName() const final
bool WriteInputFile(const Orbitals &orbitals) final
writes a coordinate file WITHOUT taking into account PBCs
std::shared_ptr< DFTSetupCache > setup_cache_
bool ParseMOsFile(Orbitals &orbitals) final
bool RunActiveDFT() final
#define XTP_LOG(level, log)
Charge transport classes.
Provides a means for comparing floating point numbers.