occ
Loading...
Searching...
No Matches
occ::scrf::Options Struct Reference

Construction options for ReactionFieldEngine. More...

#include <reaction_field.h>

Public Types

enum class  Backend { CPCM }
 Electrostatic kernel. More...
 
enum class  Radii { CosmoVdW , SmdIntrinsicCoulomb , Custom }
 Atomic-radii set used to build the ES cavity. More...
 

Public Attributes

Backend backend {Backend::CPCM}
 
Radii radii {Radii::CosmoVdW}
 
std::string solvent {"water"}
 Solvent name; looked up via occ::solvent::get_dielectric (and, when include_cds or Radii::SmdIntrinsicCoulomb, get_smd_parameters).
 
double dielectric_override {-1.0}
 Override the dielectric directly.
 
double f_eps_x {0.0}
 COSMO/CPCM convention parameter in f(ε) = (ε − 1)/(ε + x).
 
double probe_radius_angs {0.4}
 Solvent probe radius (Å) handed to the cavity builder.
 
double smoothing_width_bohr {0.1}
 Smoothing width (Bohr) for the cavity weight.
 
bool include_cds {false}
 Build a second cavity for the SMD cavitation-dispersion-solvent term and pre-compute its per-element energy contributions.
 
Vec custom_es_radii_bohr
 Custom ES-cavity radii (Bohr, length = N_atoms).
 
bool draco_scaling {false}
 
bool include_sigma_profile {false}
 

Detailed Description

Construction options for ReactionFieldEngine.

One struct covers both CPCM-X-style (vdW radii, no CDS) and SMD-style (intrinsic Coulomb radii + CDS) configurations; concrete preset factories live below.

Member Enumeration Documentation

◆ Backend

enum class occ::scrf::Options::Backend
strong

Electrostatic kernel.

Only CPCM is wired today; the slots are placeholders for future ALPB/GBSA Born-radii backends sharing the same engine API.

Enumerator
CPCM 

◆ Radii

enum class occ::scrf::Options::Radii
strong

Atomic-radii set used to build the ES cavity.

• CosmoVdW : solvent::cosmo::solvation_radii(Z) (CPCM-X). • SmdIntrinsicCoulomb : solvent::smd::intrinsic_coulomb_radii(Z) (SMD). • Custom : caller supplies custom_es_radii_bohr (e.g. DRACO-scaled charge-dependent radii).

Enumerator
CosmoVdW 
SmdIntrinsicCoulomb 
Custom 

Member Data Documentation

◆ backend

Backend occ::scrf::Options::backend {Backend::CPCM}

◆ custom_es_radii_bohr

Vec occ::scrf::Options::custom_es_radii_bohr

Custom ES-cavity radii (Bohr, length = N_atoms).

Consumed when radii == Radii::Custom; ignored otherwise. Lets callers (DRACO, regression scripts) bypass the built-in radii tables.

◆ dielectric_override

double occ::scrf::Options::dielectric_override {-1.0}

Override the dielectric directly.

Any value > 0 takes precedence over the solvent-name lookup. Useful for sweeps / regression tests.

◆ draco_scaling

bool occ::scrf::Options::draco_scaling {false}

◆ f_eps_x

double occ::scrf::Options::f_eps_x {0.0}

COSMO/CPCM convention parameter in f(ε) = (ε − 1)/(ε + x).

x = 0 is the CPCM ideal-conductor convention (used by tblite); x = 0.5 is the classical Klamt COSMO.

◆ include_cds

bool occ::scrf::Options::include_cds {false}

Build a second cavity for the SMD cavitation-dispersion-solvent term and pre-compute its per-element energy contributions.

Only meaningful when a full SMD parameter set is available for solvent.

◆ include_sigma_profile

bool occ::scrf::Options::include_sigma_profile {false}

◆ probe_radius_angs

double occ::scrf::Options::probe_radius_angs {0.4}

Solvent probe radius (Å) handed to the cavity builder.

◆ radii

Radii occ::scrf::Options::radii {Radii::CosmoVdW}

◆ smoothing_width_bohr

double occ::scrf::Options::smoothing_width_bohr {0.1}

Smoothing width (Bohr) for the cavity weight.

0.0 falls back to the legacy boolean mask and disables the smooth-cavity diagonal gradient term. 0.1 Bohr is the validated default (see CpcmXOptions notes).

◆ solvent

std::string occ::scrf::Options::solvent {"water"}

Solvent name; looked up via occ::solvent::get_dielectric (and, when include_cds or Radii::SmdIntrinsicCoulomb, get_smd_parameters).


The documentation for this struct was generated from the following file: