Explicit Solvent#

Warning

Explicit solvation is experimental and not implemented apart from autode.Molecule.explicitly_solvate

class autode.solvent.explicit_solvent.ExplicitSolvent(solvent: Species, num: int, solute: Species | None = None, **kwargs)#

Explicit solvation

__eq__(other: Any) bool#

Equality between two explicit solvent environments

__init__(solvent: Species, num: int, solute: Species | None = None, **kwargs)#

Explicit solvent. Initial construction attempts to generate a reasonable distribution around the (unmodified) solute. Only supports unicomponent uncharged solvents.

Parameters:

num (int) – Number of solvent molecules to add

Keyword Arguments:
  • solute (autode.species.species.Species | None) – Solute which this solvent surrounds. If None then no translation to the explicit solvent molecules will be applied

  • aliases (list(str)) – List of aliases of this solvent

property is_implicit: bool#

Is this solvent implicit?

Returns:

False

Return type:

(bool)

property n_solvent_molecules: int#

Number of solvent molecules comprising this explicit solvent cluster

Returns:

n

Return type:

(int)

randomise_around(solute: Species) None#

Randomise the positions of the solvent molecules around the solute, for example using a methane solute and water solvent:

                H2O
         H20
  H2o            H2O
                         H2O
H2O      CH4      H2O

      H2O      H2O

where the solvent molecules are roughly packed in shells around the solute.

Parameters:

solute (autode.species.species.Species)

solvent_atom_idxs(i: int) ndarray#

Atom indexes of an particular solvent molecule

Returns:

Atom indexes

Return type:

(np.ndarray)