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:

  1. Polarizable Continuum Model (PCM): the solvent is treated as a continuous dielectric medium;

  2. 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
)

See also