SMD-style continuum solvation model used by the HF/DFT pipeline.
More...
#include <solvation_correction.h>
SMD-style continuum solvation model used by the HF/DFT pipeline.
Phase 2: this class is now a thin adapter over occ::scrf::ReactionFieldEngine. The public API is preserved so callers (drivers, SolvationCorrectedProcedure<Proc>, the cg solvation pipeline) do not need to change; the engine pre-factors the COSMO A matrix once and re-uses it across SCF iterations.
◆ ContinuumSolvationModel()
| occ::solvent::ContinuumSolvationModel::ContinuumSolvationModel |
( |
const std::vector< occ::core::Atom > & |
, |
|
|
const std::string & |
solvent = "water", |
|
|
double |
charge = 0.0, |
|
|
bool |
draco = false |
|
) |
| |
◆ apparent_surface_charge()
| const Vec & occ::solvent::ContinuumSolvationModel::apparent_surface_charge |
( |
| ) |
|
◆ charge()
| double occ::solvent::ContinuumSolvationModel::charge |
( |
| ) |
const |
|
inline |
◆ engine()
Access the underlying SCRF engine — exposes the pre-factored A matrix, surfaces, and direct ASC/V_atom accessors.
Phase 2 onwards.
◆ name()
| std::string occ::solvent::ContinuumSolvationModel::name |
( |
| ) |
const |
|
inline |
◆ nuclear_charges()
| const Vec & occ::solvent::ContinuumSolvationModel::nuclear_charges |
( |
| ) |
const |
|
inline |
◆ nuclear_positions()
| const Mat3N & occ::solvent::ContinuumSolvationModel::nuclear_positions |
( |
| ) |
const |
|
inline |
◆ num_surface_points()
| size_t occ::solvent::ContinuumSolvationModel::num_surface_points |
( |
| ) |
const |
|
inline |
◆ set_charge()
| void occ::solvent::ContinuumSolvationModel::set_charge |
( |
double |
charge | ) |
|
|
inline |
◆ set_solvent()
| void occ::solvent::ContinuumSolvationModel::set_solvent |
( |
const std::string & |
| ) |
|
◆ set_surface_potential()
| void occ::solvent::ContinuumSolvationModel::set_surface_potential |
( |
const Vec & |
| ) |
|
◆ smd_cds_energy()
| double occ::solvent::ContinuumSolvationModel::smd_cds_energy |
( |
| ) |
const |
|
inline |
◆ solvation_surfaces()
Per-element decomposition of the latest SCF in the unified occ::scrf::SolvationSurfaces shape (the same one consumed by cg).
The coulomb branch energies are ½ σ_i · φ_total_i per element, which is algebraically identical to nuc_i + elec_i + pol_i from the per- element decomposition above. Verify: nuc_i + elec_i + pol_i = σ_i·φ_nuc_i + σ_i·φ_elec_i − ½ σ_i·φ_total_i = σ_i·φ_total_i − ½ σ_i·φ_total_i = ½ σ_i·φ_total_i.
◆ solvent()
| const std::string & occ::solvent::ContinuumSolvationModel::solvent |
( |
| ) |
const |
|
inline |
◆ surface_areas_cds()
| const Vec & occ::solvent::ContinuumSolvationModel::surface_areas_cds |
( |
| ) |
const |
|
inline |
◆ surface_areas_coulomb()
| const Vec & occ::solvent::ContinuumSolvationModel::surface_areas_coulomb |
( |
| ) |
const |
|
inline |
◆ surface_cds_energy_elements()
| Vec occ::solvent::ContinuumSolvationModel::surface_cds_energy_elements |
( |
| ) |
const |
|
inline |
◆ surface_charge()
| double occ::solvent::ContinuumSolvationModel::surface_charge |
( |
| ) |
const |
|
inline |
◆ surface_polarization_energy()
| double occ::solvent::ContinuumSolvationModel::surface_polarization_energy |
( |
| ) |
|
◆ surface_polarization_energy_elements()
| Vec occ::solvent::ContinuumSolvationModel::surface_polarization_energy_elements |
( |
| ) |
const |
◆ surface_positions_cds()
| const Mat3N & occ::solvent::ContinuumSolvationModel::surface_positions_cds |
( |
| ) |
const |
|
inline |
◆ surface_positions_coulomb()
| const Mat3N & occ::solvent::ContinuumSolvationModel::surface_positions_coulomb |
( |
| ) |
const |
|
inline |
◆ write_surface_file()
| void occ::solvent::ContinuumSolvationModel::write_surface_file |
( |
const std::string & |
filename | ) |
|
The documentation for this class was generated from the following file: