A Python implementation of the Polarizable continuum model (PCM) in MRChem. This is implemented using VAMPYR. This is a work in progress.
Important
python 3.11.4+ and pip 23.2.1+ required
You can install add the package to your python/pip/conda environment by cloning the repository and submodules
git clone [email protected]:Gabrielgerez/MRPyCM.git
git submodule update --remote --recursive --init
and then installing it with pip
cd MRPyCM
pip install .
The code can be used as an import library by:
import MRPycm as mpcm
or you can run the executable computeSolvent.py
as:
python computeSolvent.py <dict_str>
where dict_str
is a dictionary of input parameters as
{
'order': int, # Polynomial order.
'box': list of floats, # Simulation box size.
'prec': float, # Apply and convergence precision.
'cav_coords': list of list of floats, # Coordinate of the center of each sphere.
'radii': list of floats, # Radii of each sphere.
'sigma': float, # Width of the boundary of each sphere.
'eps_out': float, # Value of the relative permittivity of the solvent at T=298.15K.
'perm_type': str, # Formulation of the permittivity either "exponential" or "linear".
'solver_type: str, # Which solver to use, avaliable are "standard" (GPESolver), "pb" (PBSolver) and "lpb" (LPBSolver).
'I': float # Ionic strength in mol/L. Can also be interpreted as the electrolyte concentration.
'max_iter': int, # Maximum number of iterations before exiting the solver.
'kain_hist': int, # Number of iterations to keep in the history of the Kain solver.
}