ComplexMixtures.jl: Investigating the structure of solutions of complex-shaped molecules

ComplexMixtures is a package to study the solute and solvent interactions of mixtures of molecules of complex shape. Conventional radial distribution functions are not appropriate to represent the structure of a solvent around a solute with many atoms, and a variable, non-spherical shape.

Typical solutes of complex shape are proteins, nucleic acids, and polymers in general. Smaller molecules like lipids, carbohydrates, etc, are also complex enough such that representing the structure of the solution of those molecules with distribution functions is not trivial.

Minimum-Distance Distribution Functions (MDDFs) are a very general and practical way to represent solute-solvent interactions for molecules with arbitrarily complex sizes and geometries. Briefly, instead of computing the density distribution function of a particular atom or the center-of-mass of the molecules, one computes the distribution function of the minimum-distance between any solute and solvent atoms. This provides a size and shape-independent distribution which is very natural to interpret in terms of molecular interactions.

Additionally, the MDDFs can be decomposed into contributions of each type of atom (or groups of atoms) of the solute and solvent molecules, such that the profiles of the distributions can be interpreted in terms of the chemical nature of the species involved in the interactions at each distance.

Finally, as with radial distribution functions, MDDFs can be used to compute Kirkwood-Buff integrals to connect the accumulation or depletion of the solvents components to thermodynamic properties, like protein structural stability, solubility, and others.

The package is compatible with most common simulations trajectories, as Gromacs, NAMD.

The figure represents the solvation of each residue of a protein by ethanol, in a ethanol/water mixture


Contact person (name and email address):

How the work has been tested/reviewed: This package has been extensively tested in many applications, which are described in the corresponding published paper. [link]

I would like to inform that version 1.0.0 of the ComplexMixtures.jl package is now available, including a simple Python interface such that everybody can integrate it easily with his/her preferred workflow and plotting packages.

1 Like