Create a Solvent Model
Goal
Define the solvent environment for your quantum-chemical calculation using the fluent builder API. Kvantify Qrunch supports two main solvent models:
Polarizable Continuum Model (PCM): the solvent is treated as a continuous dielectric medium;
Polarizable Embedding (PE) or FraME (Fragment-based Multiscale Embedding): the solvent is represented by atom-centered distributed multipoles and polarizabilities that explicitly respond to the solute’s field.
The solvent is used as input when building a molecular configuration. For more on this, see Create a MolecularConfiguration.
Prerequisites
For PE/FraME: a potential file describing the solvent environment
Overview
Starting from the solvent creator:
import qrunch as qc
solvent = qc.solvent_creator()
and narrowing down (for details on how to use the fluent builder pattern, see Understanding and Using Kvantify Qrunch’s Fluent Builder Pattern):
.pcm(dielectric_constant=...): builds a Polarizable Continuum Model solvent.frame(potential_file=...): builds a Polarizable Embedding (FraME) solvent
To instantiate the solvent object, call .create() at the end of the builder chain.
Available solvent models
The PCM model describes the solvent as a continuous polarizable medium characterized by its macroscopic dielectric constant (ε). The solute is placed inside a cavity, and the solvent’s electrostatic response is modeled via boundary conditions on this cavity.
Typical dielectric constants:
Water ≈ 78.4
Methanol ≈ 33.0
Benzene ≈ 2.3
Example:
import qrunch as qc
solvent_pcm = (
qc.solvent_creator() # Start the solvent builder
.pcm(dielectric_constant=78.4) # Narrow to PCM with water dielectric
.with_method("IEF-PCM") # Configure PCM method (optional)
.create() # Create the solvent object
)
Available PCM methods:
"IEF-PCM": Integral Equation Formalism PCM (default and widely used);"C-PCM": Conductor-like PCM (approximation for high dielectric media);"SS(V)PE": Surface and Simulation of Volume Polarization for Electrostatics;"COSMO": Conductor-like Screening Model.
Note
BETA FEATURE — The Polarizable Embedding (PE / FraME) model is experimental and may change or be removed in future versions without notice.
The Polarizable Embedding (PE) or FraME model provides a more microscopic description of the solvent. It represents the environment as a collection of polarizable sites (atoms or fragments), each carrying distributed multipoles and polarizabilities derived from classical or quantum mechanical calculations.
The solvent responds dynamically to the solute’s charge distribution.
Example:
import qrunch as qc
solvent_frame = (
qc.solvent_creator() # Start the solvent builder
.frame(potential_file="solvent_potential.pe") # Narrow to FraME with potential file
.create() # Create the solvent object
)