SolventComponent#
- class openfe.setup.system.SolventComponent(*, smiles: str = 'O', positive_ion: str = 'Na+', negative_ion: str = 'Cl-', neutralize: bool = True, ion_concentration: unit.Quantity = <Quantity(0.15, 'molar')>)#
Bases:
ComponentComponentrepresenting solvent molecules in a chemical system.This component represents the abstract idea of the solvent and ions present around the other components, rather than a list of specific water molecules and their coordinates. This abstract representation is later made concrete by specific MD engine methods.
- Parameters:
smiles (str, optional) – smiles of the solvent, default ‘O’ (water)
positive_ion (str) – the pair of ions which is used to neutralize (if neutralize=True) and bring the solvent to the required ionic concentration. Must be a positive and negative monoatomic ions, defaults “Na+”, “Cl-”
negative_ion (str) – the pair of ions which is used to neutralize (if neutralize=True) and bring the solvent to the required ionic concentration. Must be a positive and negative monoatomic ions, defaults “Na+”, “Cl-”
neutralize (bool, optional) – if the net charge on the chemical state is neutralized by the ions in this solvent component. Default True
ion_concentration (openff-units.unit.Quantity, optional) – ionic concentration required, default 0.15 * unit.molar this must be supplied with units, e.g. “1.5 * unit.molar”
Examples
To create a sodium chloride solution at 0.2 molar concentration:
>>> s = SolventComponent(position_ion='Na', negative_ion='Cl', ... ion_concentration=0.2 * unit.molar)
Attributes
Concentration of ions in the solvent state
The anion in the solvent state
If the solvent neutralizes the system overall
The cation in the solvent state
SMILES representation of the solvent molecules
Solvents don't have a formal charge defined so this returns None
- property ion_concentration: Quantity#
Concentration of ions in the solvent state
- property total_charge#
Solvents don’t have a formal charge defined so this returns None