ms2: A molecular simulation tool for thermodynamic properties, release
G´abor Rutkaia, Andreas K¨ostera, Gabriela Guevara-Carriona, Tatjana Janzena, Michael
Schappalsb, Colin W. Glassc, Martin Bernreutherc, Amer Wafaic, Simon Stephanb, Maximilian
Kohnsb, Steﬀen Reiserb, Stephan Deubleinb, Martin Horschb, Hans Hasseb, Jadran Vrabeca,∗
aLehrstuhl f¨ur Thermodynamik und Energietechnik, Universit¨at Paderborn, 33098 Paderborn, Germany
bLehrstuhl f¨ur Thermodynamik, Universit¨at Kaiserslautern, 67653 Kaiserslautern, Germany
cH¨ochstleistungsrechenzentrum Universit¨at Stuttgart (HLRS), 70550 Stuttgart, Germany
A new version release (3.0) of the molecular simulation tool ms2 [Deublein et al., Comput. Phys.
Commun. 182 (2011) 2350 and Glass et al., Comput. Phys. Commun. 185 (2014) 3302] is pre-
sented. Version 3.0 of ms2 features two additional ensembles, i.e. microcanonical (
), various Helmholtz energy derivatives in the
modynamic integration as a method for calculating the chemical potential, the osmotic pressure
for calculating the activity of solvents, the six Maxwell-Stefan diﬀusion coeﬃcients of quaternary
mixtures, statistics for sampling hydrogen bonds, smooth-particle mesh Ewald summation as well
as the ability to carry out molecular dynamics runs for an arbitrary number of state points in a
single program execution.
Keywords: molecular simulation, molecular dynamics, Monte Carlo
New version program summary
Program Title: ms2
Operating system: Unix/Linux
Licensing provisions: Special license supplied by the authors
Programming language: Fortran95
Has the code been vectorized or parallelized:
yes (Message Passing Interface (MPI) protocol and OpenMP)
Corresponding author: Jadran Vrabec, Warburger Str. 100, 33098 Paderborn, Germany, Tel.: +49-5251/60-2420,
Preprint submitted to Computer Physics Communications July 28, 2017
Distribution format: zip
Classiﬁcation: 7.7, 7.9, 12
Catalogue identiﬁers of previous versions: AEJF v1 0 and AEJF v2 0
A detailed description of the parameter setup for thermodynamic integration and
hydrogen bonding is given in the supplementary material. Furthermore, all molecular force ﬁeld models
developed by our group are provided
Journal reference of previous versions:
Deublein et al., Comput. Phys. Commun. 182 (2011) 2350 and
Glass et al., Comput. Phys. Commun. 185 (2014) 3302
Does the new version supersede the previous version?: Yes
Reasons for the new version:
Introduction of new features as well as enhancement of computational eﬃciency
Summary of revisions:
Two new ensembles (
), new properties (Helmholtz energy derivatives,
chemical potential via thermodynamic integration, activity coeﬃcients via osmotic pressure, Maxwell-Stefan
diﬀusion coeﬃcients of quaternary mixtures), new functionalities (detection and statistics of hydrogen
bonding, smooth-particle mesh Ewald summation, ability to carry out molecular dynamics runs for an
arbitrary number of state points in a single program execution)
Nature of problem:
Calculation of application oriented thermodynamic properties: vapor-liquid equilibria
of pure ﬂuids and multi-component mixtures, thermal, caloric and entropic data as well as transport
properties and data on microscopic structure
Molecular dynamics, Monte Carlo, various ensembles, Grand Equilibrium method, Green-
Kubo formalism, Lustig formalism, OPAS method, smooth-particle mesh Ewald summation
Typical running time:
Typically from a couple of hours up to days, depending on the speciﬁc scenario
(system size, calculated properties, number of CPU cores used)
Typical problems addressed by
2 are solved by simulating systems containing 1000 to
5000 molecules that are modelled as rigid bodies
Documentation: Documentation is available at http://www.ms-2.de
Due to the continuous increase in computing power, the range of possible applications of
molecular modeling and simulation has become broader over time, proceeding from qualitative
basic research in soft matter physics to quantitative applications in chemical engineering. Reaching
agreement with the available experimental data and predicting properties where experimental data
are rare or absent, molecular methods transform engineering data science [
]. This progress
is driven by massively-parallel high performance computing with scalable codes [
] and by the
concurrent execution of large numbers of simulations [
] or of simulations which can be decomposed
into a large number of concurrent tasks [5–7].
2 (molecular simulation 2) was designed to compute thermodynamic properties
of pure ﬂuids and mixtures by Monte Carlo (MC) and molecular dynamics (MD) simulation. Licences
are available without cost for all purposes which concern academic research and teaching [
previous two major releases of
] facilitate the simulation of vapor-liquid equilibria (VLE)
by Grand Equilibrium simulation and the computation of many thermodynamic bulk properties,
including linear transport coeﬃcients, for molecular models consisting of Lennard-Jones interaction
sites, point charges and point multipoles. It has been shown that such models can reach a high
accuracy for a wide variety of thermodynamic properties for many molecular ﬂuids [
to an increasing popularity of molecular methods in the engineering sciences [17–21].
Similar molecular simulation programs, which address multiple academic communities, include
], DL POLY [
], ESPResSo [
], GIBBS [
], GROMACS [
], IMD [
1 mardyn [
], NAMD [
], TINKER [
] and Towhee [
]. In comparison with these codes,
the aim of
2 is to focus on applications of molecular modeling and simulation in ﬂuid process
engineering, both industrial and academic. Hence, a high accuracy, short response times and the
suitability for coupling with equations of state [
] and rigorous model optimization approaches
] have been priorities in developing both the code base as well as the toolset which is provided
jointly with it. In contrast to other molecular simulation programs,
2 excels in its variety of
properties that are all sampled on the ﬂy. The present work discusses the third major release of
ms2 and its most important innovations, which are presented in detail in the following sections.
2. Microcanonical and isobaric-isoenthalpic ensembles
An ensemble is the set of all theoretically possible microscopic conﬁgurations on the molecular
level under speciﬁc macroscopic constrains. The microcanonical (
) ensemble is the set of
all conﬁgurations that fulﬁll the condition of having the same number of particles
, whereas the isobaric-isoenthalpic (
) ensemble represents a system at constant
number of particles
. Molecular dynamics (MD) mimics the time
evolution of a mechanical system by numerically solving Newton’s equations of motion for all
considered molecules. Because of the nature of this solution, the progress of time is discredized and
the method yields microscopic conﬁgurations at discrete and consecutive time steps. The Monte
Carlo (MC) method is the application of statistical mechanics to describe molecular systems. With
this approach, microscopic conﬁgurations are generated by random numbers that are potentially
accepted such that only relevant and physically meaningful conﬁgurations are sampled [
Table 1: Comparison of the ensembles implemented in ms2 for methyl ﬂuoride [
] in terms of temperature
and potential energy
. Numbers in parentheses denote statistical uncertainties in the last digit that
were estimated with the block averaging method of Flyvbjerg and Petersen .
T ρ p u
K mol/l MPa J/mol
NVT 300 1 2.090(2) -1048(3)
NpT 300 1.0015(7) 2.090 -1051(3)
NVE 300.0(1) 1 2.088(1) -1048(3)
NpH 300.0(1) 1.0003(2) 2.090 -1048(2)
NVT 300 1 2.0880(2) -1051.6(2)
NpT 300 1.0019(2) 2.0880 -1053.6(3)
NVE 299.99(1) 1 2.0882(2) -1051.3(2)
NpH 300.06(2) 1.0010(1) 2.0880 -1051.7(2)
generation and acceptance of these conﬁgurations is governed by speciﬁc probabilities that are
ensemble-dependent and described in the literature for essentially every relevant ensemble. For MC
ensembles were implemented in
2 release 3.0 according to Refs.
]. For MD simulations, the pressure is kept constant using Andersen’s barostat [
] in case of
ensemble. Because the solution of Newton’s equations of motion is approximate, the total
energy of the system
, which consists of a kinetic
(exclusively molecular momentum
dependent) and potential
(exclusively molecular position dependent) energy contribution, is not
rigorously conserved in a standard MD run mainly for numerical reasons. Therefore, the translational
and rotational momentum of every molecule is rescaled such that the total kinetic energy
, where the total energy
is speciﬁed and the potential energy
is calculated from the
current microscopic conﬁguration. For a
ensemble run, the solution is analogous: Momenta
are rescaled such that the current kinetic energy
are dependent on the current microscopic conﬁguration. This extends the
ensembles available in
2 to ﬁve:
is the chemical
For veriﬁcation purposes, Table 1 contains numerical results for methyl ﬂuoride modeled by a
dipolar two-center Lennard–Jones potential [
= 300 K and
= 1 mol/l. Figure 1 shows the
running averages of the calculated properties in Table 1 at the same state point.
3. Helmholtz energy derivatives in the microcanonical ensemble
The generalized calculation of the Helmholtz energy derivatives
nm = (1/T )nρm∂n+mfr(T, ρ)/(RT )
with molar residual Helmholtz energy
and molar gas constant
was introduced in
2 also for the
ensemble up to the order
= 3 and
= 2. The total
)* 4567 -8 )+ 9:9.6
( '((((( ;(((((
Figure 1: Comparison of the ensembles implemented in ms2 for methyl ﬂuoride [
] in terms of running averages for
temperature T, density ρ, pressure pand potential energy u.
Table 2: Comparison of the residual Helmholtz energy derivatives
of methyl ﬂuoride [
= 300 K and
= 1 mol/l. Numbers in brackets denote statistical uncertainties in the last digit that were estimated with the
block averaging method of Flyvbjerg and Petersen [
]. Superscripts (1) and (2) indicate the two diﬀerent entropy
NVT -0.420(1) -0.1620(6) -0.54(4) -0.40(2) 0.03(3)
NVE1-0.418(1) -0.1622(4) -0.55(3) -0.37(1) 0.05(3)
NVE2-0.418(1) -0.1621(4) -0.55(3) -0.37(1) 0.05(3)
NVT -0.42158(8) -0.16290(8) -0.562(2) -0.391(2) 0.011(6)
NVE1-0.42149(5) -0.16280(8) -0.560(2) -0.385(3) 0.024(6)
NVE2-0.42133(5) -0.16274(8) -0.560(2) -0.385(3) 0.024(6)
reduced Helmholtz energy
) can be additively separated into an ideal
) and a residual
). The ideal contribution by deﬁnition corresponds to the value of
no intermolecular interactions are at work [
) consists of an exclusively temperature and
an exclusively density dependent part. The latter is the trivial term
), whereas the former
is non-trivial. A formalism that allows for the calculation of all residual Helmholtz derivatives on
the ﬂy from a single simulation run per state point was published by Lustig [
] and was already
introduced for the
ensemble in the preceding program version.
2 release 3.0 now yields
these derivatives also for the
ensemble. However, in contrast to
simulations, there are
two numerical results for each calculated derivative
due to the two possible entropy deﬁnitions
in statistical mechanics [
]. In any case, these two diﬀerent sets of results must be identical
in the thermodynamic limit (
). In practice, they already agree within their statistical
uncertainty for a simulation based on around a thousand molecules. For veriﬁcation purposes,
Table 2 contains numerical results for methyl ﬂuoride [
]. A detailed description of the calculation
of these derivatives can be found in Ref. [
]. Their conversion into common thermodynamic
properties is provided in the supplementary material of release 2.0 of ms2  and in Ref. .
4. Thermodynamic integration
The previously described method of Lustig does not allow for the direct sampling of the
chemical potential and other entropic properties like
. Such an eﬀort requires techniques
based on free energy calculation, such as particle insertion and/or thermodynamic integration [
Widom’s particle insertion method [
] is a conceptually straightforward approach to calculate
the chemical potential at low computational cost, both for pure substances and mixtures. The
total chemical potential
can be separated into an ideal (o) and a residual (r)
contribution in the same way as the Helmholtz energy is decomposed, cf. section 2:
T, ρ, xi
T, ρ, xi
is the number of molecules of species
is an arbitrary reference density. The expression
) is often referred to
as the conﬁgurational chemical potential
. Widom’s method requires the frequent insertion
of an additional (
+ 1) test particle into the simulation volume at a random position with
a random orientation. At constant temperature and constant pressure or volume, the potential
of this test particle, i.e. the interaction energy with all other ”real”
the conﬁgurational chemical potential according to
i(T) = −kBTln hVexp (−Ui/kBT)i
is Boltzmann’s constant. The test particle is removed immediately after the calculation of
its potential energy
, thus it does not inﬂuence the real molecules in the system in any way. In
contrast to the usual convention, the brackets
have a dual meaning here: They stand for either
ensemble averages as well as an integral over all possible positions and orientations
of the test particles added to the system. The density of the system has a signiﬁcant inﬂuence
on the accuracy of this method. For state points with a very high density, test particles almost
always overlap with real molecules, which leads to a potential energy
and thus to a vanish-
ing contribution to Eq. (2), resulting in poor statistics and often even to complete failure of sampling.
Thermodynamic integration is one solution to overcome the limitations of Widom’s particle
insertion method. The idea behind calculating the chemical potential by thermodynamic integration
is to avoid insertion of test particles in a challenging system
, but rather perform it in system
for which this can be done without sampling problems. Because the chemical potential is a state
property, its diﬀerence
can be calculated along any path between states
is represented by the scalar parameter
. It can be shown [
] that the relation between
µA,i −µB,i is
µA,i −µB,i =ZA(λmax )
∂λ dλ. (3)
in this equation denote
ensemble averages and
is the potential
energy of particle
that must be a part of the system in the same way as the other molecules
are. The only diﬀerence between particle
and all other molecules is that its interaction energy
) is scaled between states
. As long as
can be calculated
analytically and sampled during simulation, the actual way of scaling
can be chosen
is a state property. The integration with respect to
is carried out numerically.
is practically zero or at least can successfully be calculated by Widom’s particle
insertion method for state
yields the conﬁgurational contribution to the
total chemical potential. The non-linear scaling
adaptive sampling technique [
] was implemented for MC simulations with
parameters. This adaptive technique allows for the sampling of the entire range of
a single MC run with an arbitrary resolution for numerical integration. In addition to the standard
ensemble MC moves, the simulation includes changes of
controlled by a proper
MC acceptance criterion, ensuring visits at each discrete
value in the range
MD simulations, changes of
are also carried out on the ﬂy in a single simulation, but without
any acceptance criterion. A common problem related to the thermodynamic integration is the so
called ”end-point catastrophe”, i.e. the occurence of singularities at
= 0 or 1 [
]. Such eﬀects
9 &99999 :99999
Figure 2: Comparison of the residual chemical potential
of methyl ﬂuoride [
] at two diﬀerent state points
calculated by ms2 using either Widom’s particle insertion or thermodynamic integration (TI).
can be circumvented by the variable and non-linear scaling described above, where the exponent
are input parameters. Furthermore, sampling at
1 is improved by scaling the
ﬂuctuating particle dynamically back and forth during simulation. A detailed description of the
parameter setup is given in the supplementary material. Figure 2 shows the running averages for
the residual chemical potential of methyl ﬂuoride at two diﬀerent state points calculated by either
Widom’s particle insertion or thermodynamic integration. For high temperatures and low densities,
the agreement between Widom’s particle insertion and thermodynamic integration is satisfactory.
Widom fails, however, for dense and strongly interacting ﬂuids.
5. OPAS Method
The OPAS (osmotic pressure for the activity of the solvent) method was implemented in ms2.
It is an alternative to e.g. Widom’s particle insertion [
] or thermodynamic integration [
for calculating the chemical potential of the liquid phase by MD simulations. It is particularly
well-suited for studying the solvent activity of electrolyte solutions, but can in principle also be used
for mixtures of molecular species. Details and a thorough assessment of the method are presented
in Ref. , the method is only brieﬂy outlined in the following.
The basic idea is a direct simulation of the osmotic equilibrium between a pure solvent phase and
a solution phase by introducing semi-permeable membranes into the simulation volume. These are
realized by an external force ﬁeld that acts only on the solute molecules to keep them in the solution
phase. By sampling the total net membrane force per membrane area, the pressure diﬀerence
between the two phases, i.e. the osmotic pressure Π, is sampled. Assuming an incompressible
solvent, the solvent activity asis related to this osmotic pressure by
is the molar volume of the pure solvent at the temperature
, which is straightforwardly
available from separate, standard molecular simulation runs. If an electrolyte solution is considered,
the activity coeﬃcient of the salt can be obtained by performing OPAS simulations at various salt
molalities and applying the Gibbs-Duhem equation to the results for the solvent activity.
Fig. 3 shows molecular simulation results for the water activity in aqueous NaCl solutions at
= 298.15 K and
= 1 bar. Therein, results obtained by diﬀerent groups, employing diﬀerent
computational approaches, are presented. Throughout, the molecular models by Joung and Cheatham
] for Na
ions together with the SPC/E water model were used. It can be seen that all
simulation results, including those obtained with OPAS simulations carried out with ms2, are in
0 1 2 3 4 56
mNaCl /mol kg−1
Figure 3: Water activity over the salt molality for aqueous NaCl solutions at
= 298.15 K and
= 1 bar. The red
open circles are simulation results obtained with the OPAS method as implemented in ms2 [
]. The colored lines
represent correlations to simulation results by diﬀerent groups: Free energy calculations by Benavides et al. [
(violet densely-dotted line), gradual insertion of ion pairs by Mester and Panagiotopoulos  (blue dashed-dotted
line) and osmotic ensemble Monte Carlo simulations by Mouˇcka et al. [
] (green dotted line). All simulation
results were obtained using the SPC/E + Joung-Cheatham [
] model combination. The black solid line shows the
correlation to experimental data by Hamer and Wu .
6. Quaternary Maxwell-Stefan diﬀusion coeﬃcients
2 employs the Green-Kubo formalism based on the net velocity correlation function to obtain
n×nphenomenological coeﬃcients 
in a mixture of
is the total number of molecules,
is the number of
molecules of species
) denotes the center of mass velocity vector of the
-th molecule of
. Note that the phenomenological coeﬃcients given in Eq.
are constrained by
MiLij = 0 ,(6)
where Miis the molar mass of component i.
Starting from the phenomenological coeﬃcients
, the elements of a (
∆can be deﬁned as 
∆ij = (1 −xi)Lij
so that its inverse matrix
is related to the Maxwell-Stefan diﬀusion coeﬃcients
the case of a quaternary mixture, the six Maxwell-Stefan diﬀusion coeﬃcients are then given by [
B11 + (x2/x1)B12 + (x3/x1)B13
B22 + (x1/x2)B21 + (x3/x2)B23
B33 + (x1/x3)B31 + (x2/x3)B32
MD simulation runs for Lennard-Jones ﬂuids were performed in order to test the validity of
the quaternary Maxwell-Stefan diﬀusion coeﬃcients implementation in
2. For this purpose,
a quaternary Lennard-Jones pseudo-mixture was created by giving diﬀerent labels to identical
molecules, dividing them into four mole fractions (
= 0.3 and
= 0.4 mol
). A system containing 800 molecules was simulated in the dense liquid state and the resulting
Maxwell-Stefan diﬀusion coeﬃcients were compared with the corresponding self-diﬀusion coeﬃcient
that all have to be identical in the present case.
Fig. 4 shows the development of the calculated values of the six Maxwell-Stefan diﬀusion
coeﬃcients with the number of sampled time origins. As can be seen, the resulting values become
independent after around 10
time origins and then oscillate around their mean value. The higher
statistical uncertainties of
are due to the small number of species 1 molecules compared
with the number of molecules of the other species.
Figure 4: Maxwell-Stefan diﬀusion coeﬃcients
and self-diﬀusion coeﬃcient
as a function of time origins of a
quaternary pseudo-mixture (
= 0.728 and
7. Hydrogen bonding
There is no deﬁnitive characterization of a hydrogen bond between two molecules [
Rather, the hydrogen (H) bond ‘is a structural motif and involves at least three atoms’ [
International Union of Pure and Applied Chemistry (IUPAC) deﬁnes the hydrogen bond as ‘an
attractive interaction between a hydrogen atom from a molecule or molecular fragment X–H in
which X is more electronegative than H, and an atom or a group of atoms in the same or a diﬀerent
molecule, in which there is evidence of bond formation’ .
], geometric [
] and topological [
] hydrogen bonding criteria have been proposed
in the literature. Geometric criteria, which are not overly complex, are often based on the following
•The interaction between two hydrogen bonded sites is highly directional and short ranged.
A donor interacts at most with a single acceptor, an acceptor may interact with multiple
Accordingly, a class of geometric criteria for the evaluation of hydrogen bonding networks in ﬂuids
was implemented in ms2. Thereby, the triangle between three charge sites, being part of two
diﬀerent molecules, is evaluated to determine whether two sites constitute a hydrogen bond or not.
A molecule acts as a donor to another molecule, i.e. the acceptor, if the following conditions hold
[63–66], cf. Fig. 5:
The distance between the donor and the acceptor is smaller than a threshold distance, i.e.
`AD or `DA.
The distance between the acceptor sites of the acceptor and donor molecules is smaller than
a threshold distance, i.e. `AA.
•The angle between the acceptor-donor axis and the acceptor-acceptor axis is smaller than a
threshold angle, i.e. ϕDAA or ϕAAD.
are parameters of the implemented class of hydrogen
bonding criteria. For methanol, e.g. Haughney et al. [
. Such geometric criteria have been applied to a variety of ﬂuids, in
particular to water [
], methanol-water mixtures [
] or ethanol [
]. Hydrogen bonds
in sorbate-sorbent interactions can be treated analogously [
]. E.g., for hydrogen ﬂuoride, a simpler
distance-based criterion can be used [
], which is also covered by the present implementation.
Hydrogen bonding statistics are calculated by
2 on the ﬂy during a standard simulation run which
avoids post-precessing and evaluation of trajectory ﬁles. A detailed description of the parameter
setup is given in the supplementary material.
Acceptor Site of Acceptor Molecule
Donor Site of Acceptor Molecule
Acceptor Site of Donor Molecule
Donor Site of Donor Molecule
Figure 5: Hydrogen bonding criteria implemented in the present release version of ms2.
To test the capabilities of the hydrogen bonding statistics implemented in
2, a MD simulation
run of the ternary mixture water (w) + methanol (m) + ethanol (e) (
= 0.34 mol mol
= 298.15 K and
= 0.1 MPa was carried out with 4000 molecules. All
species of this mixture can form hydrogen bonds with each other because all three molecules contain
hydroxyl groups. Thus the hydrogen atoms may act as donors and the oxygen atoms as acceptors
to form hydrogen bonds. Throughout, between like and unlike molecules, the geometric criteria of
Haughney et al. [
] were used. The results are listed in Table 3. The hydrogen bonding statistics
2 not only indicates the amount of monomers (no bond), dimers (one bond), trimers (two
bonds) and tetramers (three bonds), but also provides information about which molecule species
are mutually bonded.
8. Electrostatic long range corrections
The applicability of
2 was extended to electrically charged molecules or ions. The long ranged
intermolecular interactions are considered by two well established approaches, Ewald summation
and smooth-particle mesh Ewald summation (SPME). Both are well known [
] and are thus
introduced here only brieﬂy.
Table 3: Hydrogen bonding statistics of the ternary mixture water (w) + methanol (m) + ethanol (e) (
xm= 0.33, xe= 0.34 mol mol−1) at T= 298.15 K and p= 0.1 MPa in relative terms.
water methanol ethanol
monomer 0.1% 0.9% 1.1%
dimer 1.2% 10.6% 11.5%
bonded to (w) 0.8% 3.5% 4.1%
(m) 0.2% 3.3% 3.6%
(e) 0.2% 3.8% 3.8%
trimer 7.8% 47.7% 42.6%
bonded to (w)(w) 2.8% 2.8% 2.8%
(w)(m) 1.9% 10.5% 8.9%
(w)(e) 2.0% 12.3% 10.2%
(m)(m) 0.3% 5.0% 4.9%
(m)(e) 0.4% 11.0% 10.3%
(e)(e) 0.4% 6.1% 5.5%
tetramer 25.8% 35.9% 36.8%
bonded to (w)(w)(w) 3.9% 15.6% 12.7%
(w)(w)(m) 4.9% 7.6% 7.8%
(w)(w)(e) 5.1% 7.7% 7.6%
(w)(m)(m) 2.7% 0.7% 1.3%
(w)(m)(e) 3.8% 1.7% 2.8%
(w)(e)(e) 2.8% 0.9% 1.5%
(m)(m)(m) 0.6% 0.2% 0.4%
(m)(m)(e) 0.7% 0.6% 1.1%
(m)(e)(e) 0.6% 0.7% 1.2%
(e)(e)(e) 0.7% 0.2% 0.4%
four or more bonds 65.1% 4.9% 8.0%
In Ewald summation, the overall Coulombic potential acting in the simulation volume is
determined by a sum of two terms, i.e. the short range Coulombic contribution
and the long
range Coulombic contribution uc,long
uc=uc,short +uc,long . (15)
The separation into these terms is achieved by the introduction of a ﬁctive charge density
function ρscreen(r), which acts in the entire simulation volume.
Following the Ewald summation approach, for any conﬁguration of molecules in the simulation
volume, each point charge of magnitude
in the simulation volume is superimposed with one
countercharge of magnitude
. Due to the presence of this superimposed charge, the interaction
potential decays to zero within a distance that is reasonably short for molecular simulation and
can, hence, be explicitly considered by the short range contribution of the Ewald summation.
The second term in Eq.
determines the contribution that was subtracted due to the
introduction of the ﬁctive charge density function. This term cannot be determined explicitly by an
evaluation of pairwise interactions, since the Coulombic potential at
2, i.e. the largest
distance accessible in the molecular simulation volume
, is still a substantial part of the potential
energy of the system. In Ewald summation, this contribution is determined in Fourier space from
the negative charge distribution function
) depends on the molecular
, a Fourier transformation is performed for every conﬁgurational change in the simulation
The SPME is widely considered as an improved Ewald summation method. In this approach,
the concept of splitting the long range charge-charge interactions is fully employed. The diﬀerence
between both methods lies only in the calculation of the long range contributions. In the SPME
approach, the electrostatic ﬁeld of ions in the simulation volume is described by a spline function
with a given functional form. For this given spline equation, the Fourier transformation is known
and has, hence, not to be determined in each simulation step. This accelerates the calculation of
the long range contribution and reduces simulation eﬀort and time. The accuracy of the SPME
results is assumed to be equivalent to the Ewald approach. In
2 release 3.0, the SPME method
was implemented in its original form, wherein the splines are evaluated for all particles at a time,
making it speciﬁcally useful for MD simulations.
To validate the present implementation of the SPME method, otherwise identical MD simulations
with either full Ewald summation or the SPME method were carried out. For both methods, the
Debye length was set to
= 5.6. In case of SPME, a grid with 35 points and a spline order of 6
were used. The simulations were equilibrated for 0
time steps, before sampling was carried
out over 2
time steps of 1.2 fs. The electrostatic cutoﬀ was the same as the Lennard-Jones
cutoﬀ of 15
A. The studied systems were pure SPC/E water [
] (1000 molecules) and an aqueous
solution of NaCl in water (980 SPC/E molecules and 10 Na
ions each [
= 300 K.
For a comparison of the density, simulations were carried out in the
ensemble at a pressure of
0.1 MPa. For a comparison of internal energy, simulations were carried out in the
a density of 55.44 mol l
. The results can be found in Table 4, which shows that both simulation
approaches are in mutual agreement for both studied systems. Furthermore, SPME was found to
be about 15-30% faster than full Ewald summation in the form as it is implemented in ms2.
Table 4: Comparison of simulation results obtained with Ewald summation and SPME, indicating the reduction of
total computation time when using SPME instead of Ewald summation.
NpT ensemble NV T ensemble
ρ/ mol l−1u/ kJ mol−1
System Ewald SPME Speedup Ewald SPME Speedup
SPC/E water 55.44(2) 55.41(2) 22% -46.67(3) -46.72(3) 19%
NaCl solution 55.74(2) 55.73(2) 29% -53.70(3) -53.75(3) 16%
For the vectorization of loops it is essential how accessed data are distributed in physical
memory. Deducing this information automatically from the code can be very diﬃcult for the
compiler, especially if there is indirection. In
2, many arrays are accessed via array pointers
and the order of the underlying data is therefore obfuscated. The most relevant information
is whether or not data are contiguous in physical memory. To provide this information to the
compiler directly, array pointers can be given the attribute ”contiguous”. The Fortran standard
states: ”The contiguous attribute speciﬁes that [...] an array pointer can only be pointer associated
with a contiguous target.” This means that the array elements of a contiguous array pointer are
not separated by any other data, potentially enabling a higher degree of vectorization. In
release 3.0, array pointers associated with contiguous targets were given the contiguous attribute.
The sequential performance gains and the resulting parallel performance gains achieved with this
optimization depend on the speciﬁc simulation scenario, but are on average very signiﬁcant. For
MC and MD simulations, a suite of simulations was executed to evaluate the performance gains.
The suite covered the
ensembles, thermodynamic integration, Widom test particle
insertion, diﬀerent thermostats, diﬀerent pure ﬂuids and mixtures. A total of 71 simulation runs
was performed. For MC simulations, the observed average reduction of runtime was more than 7%
and for MD simulations more than 20%.
10. Parallel ensemble calculations
2 was already parallelized in its initial version for distributed memory architectures using the
message passing interface (MPI) [
]. A typical MD simulation with
= 1000 to 4000 particles
usually scales up to 48 cores. The present release 3.0 adds an additional level of parallelization for MD
simulations. Diﬀerent ensembles are independent of each other in the sense that sampling diﬀerent
state points can be done concurrently. To achieve this, the processing elements (PE) were split in
disjunct groups and each group computes the ensembles assigned to it. In principle, this allows for
the sampling of an arbitrary number of state points in the whole relevant ﬂuid region with a single
simulation execution. The vast amount of data generated can then, e.g. be used for the development
of an equation of state. To enable this feature, the mpiEnsembleGroups option was introduced in
the input ﬁle. The default (if not set or set to 0) is to use a single ensemble group. A value of 1 will
enable the new feature and automatically set the number of ensemble groups to the minimum of
the number of ensembles and the number of PE, i.e. mpiEnsembleGroups=min(ensembles, PE).
Otherwise, this option will set the number of ensemble groups according to the speciﬁed integer
value. The “coloring”, i.e. the assignment of the PE to the ensemble groups, is done in continguous
blocks. This is advantageous, e.g. compared to a round robin fashion, if the processes have to be
pinned to NUMA domains.
Another change applies to the restart capability of
2. A checkpoint now consists of one restart
(*.rst) ﬁle for each ensemble group that can be restarted with the ms2 -r (or --restart) option.
To illustrate the new feature, a MD program execution for three ensembles with 24 processes is
exemplarily discussed: Without the mpiEnsembleGroups option (or with mpiEnsembleGroups=0)
all 24 PE will in parallel calculate the ﬁrst time step of the ﬁrst ensemble, then the ﬁrst time step
of the second ensemble and ﬁnally the ﬁrst time step of the third one, before the second time step
is handled accordingly. Setting mpiEnsembleGroups=1 is equivalent to mpiEnsembleGroups=3 in
this example and three groups of eight PE each will calculate one ensemble in parallel concurrently.
The user may also directly speciﬁy the number of groups, but has to be aware that in this example
with mpiEnsembleGroups=2 one group will have to process two ensembles, while the other one
only processes a single one.
2 creates a MPI communicator for each of the ensemble groups with the MPI Comm Split
command, cf. Figure 6. Another MPI communicator contains the root processes of all groups
(Communicator R including subcommunicators rank 0 processes) to ease collective communication
on a higher level among the groups.
Figure 6: MPI ranks for 24 PE in 3 MPI groups, indicating communicator hierarchy of ms2.
Even if the computation of diﬀerent ensembles is embarrassingly parallel, an interaction between
the diﬀerent ensemble groups through communicators remains, e.g. when the program receives a
signal to write a checkpoint and terminate. This signal may be received from an arbitrary single PE
(or non-isochronic from multiple PE). In the preceding releases of
2, where ensembles were calcu-
lated consecutively with the single global communicator MPI COMM WORLD, a MPI Allreduce
spreads this information among all processes after every MD time step. This is still the case within
the ensemble groups. A collective communication of all PE beyond ensemble group boundaries for
every MD time step would implicitly synchronize all ensemble computations. However, this is not
satisfactory because computationally less intensive ensembles would be forced to wait for slower
ones to conclude their time step. The present implementation uses non-blocking communication
between the ensemble group roots through Communicator R to avoid this problem.
Figure 7: Communication to distribute status information within a MD time step avoiding barriers. Thick solid
arrows indicate communication among PE (grey arrows for alternative possible receiving points). Dotted lines
between the PE indicate collective communication implicating a barrier. For mutually exclusive commands, the
second one is only executed if the ﬁrst one was not triggered.
Before any MD time step iterations start, the root process executes a MPI Irecv call to receive a
potential terminate message, whereas all other processes execute a MPI Ibcast to obtain a potential
terminate message from the root, cf. Figure 7. During program execution, any process may trigger
termination by sending a message to the root, which will then broadcast the information to notify all
other processes. If no termination occurs during the iterations, the root will send a message to itself
and broadcast a non-termination message to all other processes to satisfy the outstanding receive
and broadcast (avoiding MPI Cancel). To take care of several processes sending a termination
message, a summation reduction determines the sum of all respective messages for the root process
to receive all of them. This technique can also be used hierarchically, replacing the MPI Allreduce
call within each subcommunicator. After termination, every ensemble group writes its own restart
The authors gratefully acknowledge ﬁnancial support by BMBF under the grant “01IH13005A
SkaSim: Skalierbare HPC-Software f¨ur molekulare Simulationen in der chemischen Industrie”,
support by the Koselleck Program under the grant HA1993/15-1 and computational support by the
High Performance Computing Center Stuttgart (HLRS) under the grant MMHBF2. Furthermore,
we gratefully acknowledge the Paderborn Center for Parallel Computing (PC
) for the generous
allocation of computer time on the OCuLUS cluster. The present research was conducted under
the auspices of the Boltzmann-Zuse Society of Computational Molecular Engineering (BZS). H.H.
and M.K. acknowledge support of this work by DFG under a Reinhart Koselleck grant.
P. Ungerer, C. Nieto-Draghi, B. Rousseau, G. Ahunbay, V. Lachet, J. Mol. Liq. 134 (2007)
 J. C. Palmer, P. G. Debenedetti, AIChE J. 61 (2015) 370–383.
A. Heinecke, W. Eckhardt, M. Horsch, H.-J. Bungartz, Supercomputing for Molecular Dynamics
Simulations, Springer Verlag, Heidelberg, 2015.
A. K¨oster, T. Jiang, G. Rutkai, C. W. Glass, J. Vrabec, Fluid Phase Equilib. 425 (2016) 84–92.
C. Valeriani, R. J. Allen, M. J. Morelli, D. Frenkel, P. R. ten Wolde, J. Chem. Phys. 127 (2007)
 D. R. Glowacki, E. Paci, D. V. Shalashilin, J. Chem. Theory Comput. 7 (2011) 1244–1252.
 S. L. Meadley, F. A. Escobedo, J. Chem. Phys. 137 (2012) 074109.
 URL http://www.ms-2.de/.
S. Deublein, B. Eckl, J. Stoll, S. V. Lishchuk, G. Guevara-Carrion, C. W. Glass, T. Merker,
M. Bernreuther, H. Hasse, J. Vrabec, Comput. Phys. Commun. 182 (2011) 2350–2367.
C. W. Glass, S. Reiser, G. Rutkai, S. Deublein, A. K¨oster, G. Guevara-Carrion, A. Wafai,
M. Horsch, M. Bernreuther, T. Windmann, H. Hasse, J. Vrabec, Comput. Phys. Commun. 185
 C. Nieto-Draghi, P. Bonnaud, P. Ungerer, J. Phys. Chem. C 111 (2007) 15942–15951.
E. El Ahmar, B. Creton, A. Valtz, C. Coquelet, V. Lachet, D. Richon, P. Ungerer, Fluid Phase
Equilib. 304 (2011) 21–34.
 Y.-L. Huang, M. Heilig, H. Hasse, J. Vrabec, AIChE J. 57 (2011) 1043–1060.
 M. H. Ketko, G. Kamath, J. J. Potoﬀ, J. Phys. Chem. B 115 (2011) 4949–4954.
 S. Reiser, M. Horsch, H. Hasse, J. Chem. Eng. Data 60 (2015) 1614–1628.
S. Werth, K. St¨obener, P. Klein, K.-H. K¨ufer, M. Horsch, H. Hasse, Chem. Eng. Sci. 121 (2015)
R. Srivastava, H. Docherty, J. K. Singh, P. T. Cummings, J. Phys. Chem. C 115 (2011)
L. Lu, S. Wang, E. A. M¨uller, W. Cao, Y. Zhu, X. Lu, G. Jackson, Fluid Phase Equilib. 362
 A. Sharma, S. Namsani, J. K. Singh, Mol. Sim. 41 (2015) 414–422.
J. L. Kern, T. J. Flynn, Z. Wang, W. H. Thompson, B. B. Laird, Fluid Phase Equilib. 411
J. Muscatello, F. Jaeger, O. K. Matar, E. A. M¨uller, Appl. Mater. Interf. 8 (2016) 12330–12336.
B. R. Brooks, C. L. Brooks, A. D. Mackerell, L. Nilsson, R. J. Petrella, B. Roux, Y. Won,
G. Archontis, C. Bartels, S. Boresch, A. Caﬂisch, L. Caves, Q. Cui, A. R. Dinner, M. Feig,
S. Fischer, J. Gao, M. Hodoscek, W. Im, K. Kuczera, T. Lazaridis, J. Ma, V. Ovchinnikov,
E. Paci, R. W. Pastor, C. B. Post, J. Z. Pu, M. Schaefer, B. Tidor, R. M. Venable, H. L.
Woodcock, X. Wu, W. Yang, D. M. York, M. Karplus, J. Comp. Chem. 30 (2009) 1545–1614.
 I. T. Todorov, W. Smith, K. Trachenko, M. T. Dove, J. Mater. Chem. 16 (2006) 1911–1918.
 H.-J. Limbach, A. Arnold, B. A. Mann, C. Holm, Comp. Phys. Comm. 174 (2006) 704–727.
M. Lagache, P. Ungerer, A. Boutin, A. Fuchs, Phys. Chem. Chem. Phys. 3 (2001) 4333–4339.
M. J. Abraham, T. Murtola, R. Schulz, S. P´all, J. C. Smith, B. Hess, E. Lindahl, SoftwareX 1
 J. Roth, F. G¨ahler, H.-R. Trebin, Int. J. Mod. Phys. C 11 (2000) 317–322.
 S. Plimpton, J. Comp. Phys. 117 (1995) 1–19.
C. Niethammer, S. Becker, M. Bernreuther, M. Buchholz, W. Eckhardt, A. Heinecke, S. Werth,
H.-J. Bungartz, C. W. Glass, H. Hasse, J. Vrabec, M. Horsch, J. Chem. Theory Comput. 10
J. C. Phillips, R. Braun, W. Wang, J. Gumbart, E. Tajkhorshid, E. Villa, C. Chipot, R. D.
Skeel, L. Kale, K. Schulten, J. Comp. Chem. 26 (2005) 1781–1802.
 P. Ren, J. W. Ponder, J. Phys. Chem. B 107 (2003) 5933–5947.
 M. G. Martin, Mol. Sim. 39 (2013) 1212–1222.
M. Thol, G. Rutkai, A. K¨oster, R. Lustig, R. Span, J. Vrabec, J. Phys. Chem. Ref. Data 45
M. H¨ulsmann, T. K¨oddermann, J. Vrabec, D. Reith, Comput. Phys. Commun. 181 (2010)
 M. H¨ulsmann, J. Vrabec, A. Maaß, D. Reith, Comput. Phys. Commun. 181 (2010) 887–905.
K. St¨obener, P. Klein, S. Reiser, M. Horsch, K.-H. K¨ufer, H. Hasse, Fluid Phase Equilib. 373
D. Frenkel, B. Smit, Understanding Molecular Simulation: From Algorithms to Applications,
Academic Press, Elsevier, San Diego, 2002.
 R. Lustig, J. Chem. Phys. 109 (1998) 8816–8828.
 T. Krist´of, G. Rutkai, L. Mer´enyi, J. Liszi, Mol. Phys. 103 (2005) 537–545.
 H. C. Andersen, J. Chem. Phys. 72 (1980) 2384–2393.
 J. Stoll, J. Vrabec, H. Hasse, J. Chem. Phys. 119 (2003) 11396–11407.
 H. Flyvbjerg, H. G. Petersen, J. Chem. Phys. 91 (1989) 461–466.
R. Span, Multiparameter Equations of State: An Accurate Source of Thermodynamic Property
Data, Springer Verlag, Berlin, 2000.
 R. Lustig, Mol. Sim. 37 (2011) 457–465.
 R. Lustig, Mol. Phys. 110 (2012) 3041–3052.
 B. Widom, J. Chem. Phys. 39 (1963) 2808–2812.
 T. Krist´of, G. Rutkai, Chem. Phys. Lett. 445 (2007) 74–78.
 M. Mezei, D. L. Beveridge, Ann. N. Y. Acad. Sci. 482 (1986) 1–23.
 S. H. Fleischman, D. A. Zichi, J. Chem. Phys. 88 (1991) 2617–2622.
 T. Steinbrecher, D. L. Mobley, D. A. Case, J. Chem. Phys 127 (2007) 214108.
 F. Mouˇcka, I. Nezbeda, W. R. Smith, J. Chem. Phys. 139 (2013) 124505.
 Z. Mester, A. Z. Panagiotopoulos, J. Chem. Phys. 142 (2015) 044507.
 F. Mouˇcka, I. Nezbeda, W. R. Smith, J. Chem. Theory Comput. 11 (2015) 1756–1764.
 M. Kohns, S. Reiser, M. Horsch, H. Hasse, J. Chem. Phys. 144 (2016) 084112.
 I. S. Joung, T. E. Cheatham, J. Phys. Chem. B 112 (2008) 9020–9041.
 A. L. Benavides, J. L. Aragones, C. Vega, J. Chem. Phys. 144 (2016) 124504.
 W. J. Hamer, Y. Wu, J. Phys. Chem. Ref. Data 1 (1972) 1047–1100.
 R. Krishna, J. M. van Baten, Ind. Eng. Chem. Res. 44 (2005) 6939–6947.
 F. H. Stillinger, Science 209 (1980) 451–457.
 R. H. Henchman, S. J. Irudayam, J. Phys. Chem. B 114 (2010) 16792–16810.
E. Arunan, G. R. Desiraju, R. A. Klein, J. Sadlej, S. Scheiner, I. Alkorta, D. C. Clary, R. H.
Crabtree, J. J. Dannenberg, P. Hobza, H. G. Kjaergaard, A. C. Legon, B. Mennucci, D. J.
Nesbitt, Pure Appl. Chem. 83 (2011) 1637–1641.
 J. Thar, B. Kirchner, J. Phys. Chem. A 110 (2006) 4229–4237.
 M. Haughney, M. Ferrario, I. R. McDonald, J. Phys. Chem. 91 (1987) 4934–4940.
 S. Reiser, N. McCann, M. Horsch, H. Hasse, J. Supercrit. Fluids 68 (2012) 94–103.
 A. Luzar, D. Chandler, J. Chem. Phys. 98 (1993) 8160–8173.
 S. Chowdhuri, A. Chandra, J. Phys. Chem. B 110 (2006) 9674–9680.
 A. Luzar, D. Chandler, Nature 379 (1996) 55–57.
 J. R. Choudhuri, A. Chandra, J. Chem. Phys. 141 (2014) 134703.
G. Guevara-Carrion, C. Nieto-Draghi, J. Vrabec, H. Hasse, J. Phys. Chem. B 112 (2008)
 L. Saiz, J. A. Padr´o, E. Gu`ardia, J. Phys. Chem. B 101 (1997) 78–86.
 W. Xu, J. Yang, Y. Hu, J. Phys. Chem. B 113 (2009) 4781–4789.
 D. Bhandary, S. Khan, J. K. Singh, J. Phys. Chem. C 118 (2014) 6809–6819.
M. Kreitmeir, H. Bertagnolli, J. J. Mortensen, M. Parrinello, J. Chem. Phys. 118 (2003)
 H. J. C. Berendsen, J. R. Grigera, T. P. Straatsma, J. Phys. Chem. 91 (1987) 6269–6271.
 S. Reiser, S. Deublein, J. Vrabec, H. Hasse, J. Chem. Phys. 140 (2014) 044504.
SUPPLEMENTARY INFORMATION: Hydrogen bonding
The user has to specify the geometric relations in the
ﬁle according to the simulated components
as follows: First, the keyword
NHBondCriteria = ’#h-bonds’
has to be set to the integer value
according to the number of diﬀerent H bonds that shall be investigated during the simulation.
This keyword has to appear under the components section in the
also sets the
number of lines that ms2 expects in the
ﬁle, each to have a complete set of nine parameters
that declare a certain H bond. These nine parameters are:
AccComp, AccAccSite, AccDonSite, DonComp, DonAccSite, DonDonSite, DistCrit1, DistCrit2 and
AngleCrit. The ﬁrst six parameters declare which charge – charge interactions of which component
are to be considered by ms2. The acceptor and donor sites listed in the
ﬁle have to be point
charges listed in the
ﬁle. AccComp and DonComp are the component numbers of the components
that are supposed to be the acceptor and donor of the H bond, respectively. Both have to be integer
values according to the order of the components listed in the
ﬁle. The four charge sites that
participate in the H bond have to be set by the user as AccAccSite, AccDonSite, DonAccSite and
DonDonSite. They have to be integer values according to the order of the charge sites listed in the
ﬁle. AccAccSite and AccDonSite are the acceptor and donor charge sites in the component that
is acting as the acceptor molecule in the H bond while DonAccSite and DonDonSite are the acceptor
and donor charge-sites in the donor molecule. As mentioned, only three charge sites are needed for the
criterion, thus either the AccDonSite or the DonDonSite has to be set to
by the user as can be seen
in table 1. This is equivalent of deﬁning either `DA and ϕDAA or `AD and ϕAAD.
The last three numeric parameters in table 1 are the actual geometric length
as described in [Haughney et al., J, Chem. Phys., 91(1987) 4934–4940]. ms 2
always expects these values to be speciﬁed in
Angstrom and degree, respectively, independent of the
settings of the Units keyword in the *.par ﬁle before.
DistCrit1: |`AA|= 1st Distance criterion in ˚
DistCrit2: |`DA|or |`AD |= 2nd Distance criterion in ˚
AngleCrit: ϕDAA or ϕAAD = Angle criterion in ◦
Table 1 gives two examples for a complete parameter set to be speciﬁed in a
Table 1: Example of Parameter sets for H bonding criterion.
AccComp AccAccSite AccDonSite DonComp DonAccSite DonDonSite DistCrit1 DistCrit2 AngleCrit
1 2 0 1 2 3 3.5 2.6 30
1 2 3 1 2 0 3.5 2.6 30
simulation, ms2 lists the analysis of the H bonding in the
ﬁle. Following the Haughney-criterion,
ms2 calculates and itemizes the number
of molecules with
3 or more hydrogen bonds. In
ﬁle these numbers are listed according to the component combination. E.g. the
N3 ( 1, 2,
column lists the number of molecules which correspond to component 1 and are bonded twice
with component 2 and once with component 3. As usual for the
ﬁle, these values are running
SUPPLEMENTARY MATERIAL to
ms2: A molecular simulation tool for thermodynamic properties, release 3.0
|`AA| ≥ |rAccAccSite −rDonAccSite |(1)
|`DA| ≥ |rAccDonSite −rDonAccSite |(2)
|`AD| ≥ |rAccAccSite −rDonDonSite |(3)
SUPPLEMENTARY INFORMATION: Themodynamic Integration
There are four parameters (
) involved with
the present approach that the user has to specify after the entry
ChemPotMethod = ThermoInt
: The lower boundary of the interval
1 (default value is 0.2 if not speciﬁed).
: The number of discrete
–bins in the interval
1 used for the numerical
integration (default value is 100 if not speciﬁed). The resolution is (1
During the simulation the current bin is determined by (
for the current
: Deﬁnes the change of
during simulation. The new
is the current
random number between zero and ±LambdaStepMax (default value is 0.1 if not speciﬁed).
: The exponent
for the non-linear scaling
does not have to be an integer and its default value is 4.0 if not speciﬁed).
One should keep in mind when choosing these parameters that thermodynamic integration always
involves larger statistical uncertainties than the equivalent pure Widom’s particle insertion scenario for
a state point for which the latter works perfectly. In other words: The larger the contribution of the
numerical integration part as compared to the Widom contribution at
is, the higher the statistical
uncertainty of the calculated chemical potential gets. This means that setting
very low or the
very high (e.g. 12) might not be optimal in many systems. Moreover, high exponent
for MD simulations are not advised because the scaling with
values (where the absolute
) is close that of the non-scaled state) may result in new
) energies (thus forces) that
non-negligibly interfere with the dynamics of the system when
is changed during the simulation. For
MD simulations, a value smaller then 1.0 for dis possibly a better choice for many systems.
1 Potential Models in the
1 Potential Models in the ms2-distribution
Filename CAS number Name Publication Model Type
Ar.pm 7440-37-1 Argon [Vrabec et al. 2001] 1 L.J. Center
Ba2+.pm 22541-12-4 Barium ion (2+) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
Be2+.pm 22537-20-8 Beryllium ion (2+) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
Br-_I.pm 24959-67-9 Bromine ion (1-) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
Br-_II.pm 24959-67-9 Bromine ion (1-) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
Br2.pm 7726-95-6 Bromine [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
C2Br2F4.pm 124-73-2 1,2-Dibromotetraﬂuoroethane [Stoll et al. 2003] 2 L.J. Centers & 1 Quadrupole
C2Cl4.pm 127-18-4 Tetrachloroethylene [Stoll 2004] 2 L.J. Centers & 1 Quadrupole
C2ClF3.pm 79-38-9 Chlorotriﬂuoroethene [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2F4.pm 116-14-3 Tetraﬂuoroethylene [Stoll 2004] 2 L.J. Centers & 1 Quadrupole
C2F6.pm 76-16-4 Perﬂuoroethane [Stoll 2004] 2 L.J. Centers & 1 Quadrupole
C2H2.pm 74-86-2 Acetylene [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
C2H2Cl3F.pm 27154-33-2 Ethane, trichloroﬂuoro- [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2H2Cl4_I.pm 630-20-6 1,1,1,2-Tetrachloroethane [Stoll 2004] 2 L.J. Centers & 1 Dipole
C2H2Cl4_II.pm 630-20-6 1,1,1,2-Tetrachloroethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2H2F2.pm 75-38-7 1,1-Diﬂuoroethene [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2H3Cl.pm 75-01-4 Vinyl chloride [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2H3Cl3_a.pm 71-55-6 Methylchloroform [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2H3Cl3_b.pm 79-00-5 1,1,2-Trichloroethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2H3F.pm 75-02-5 Vinyl ﬂuoride [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2H3N.pm 75-05-8 Acetonitrile [Eckl et al. 2008c] 3 L.J. Centers & 1 Dipole & 1 Quadrupole
C2H3N_m6.pm 75-05-8 Acetonitrile [Deublein et al. 2013] 3 L.J. Centers & 1 Dipole
C2H3N_m8.pm 75-05-8 Acetonitrile [Deublein et al. 2013] 3 L.J. Centers & 1 Dipole
C2H4.pm 74-85-1 Ethylene [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
C2H4Br2.pm 106-93-4 Ethylene dibromide [Stoll et al. 2003] 2 L.J. Centers & 1 Quadrupole
C2H4Br3.pm 557-91-5 1,1-Dibromoethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2H4Cl2.pm 75-34-3 1,1-Dichloroethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2H4O_I.pm 75-21-8 Ethylene oxide [Eckl et al. 2008b] 3 L.J. Centers & 1 Dipole
C2H5Br.pm 74-96-4 Ethyl bromide [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2H5F.pm 353-36-6 Fluoroethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
C2H6_I.pm 74-84-0 Ethane [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
C2H6_II.pm 74-84-0 Ethane [Stoll 2004] 2 L.J. Centers & 1 Quadrupole
C2H6O.pm 64-17-5 Ethanol [Schnabel et al. 2005] 3 L.J. Centers & 3 Charges
C2H6O2.pm 107-21-1 Ethylene glycol [Huang et al. 2012] 4 L.J. Centers & 6 Charges
C2H6S_I.pm 75-18-3 Dimethyl sulﬁde [Eckl et al. 2008c] 3 L.J. Centers & 1 Dipole & 2 Quadrupoles
C2H8N2.pm 57-14-7 1,1-Dimethylhydrazine [Elts et al. 2012] 4 L.J. Centers & 3 Charges
C2HCl3.pm 79-01-6 Trichloroethylene [Stoll et al. 2003] 2 L.J. Centers & 1 Quadrupole
Continued on next page
1 Potential Models in the ms2-distribution
Filename CAS number Name Publication Model Type
C2N2.pm 460-19-5 Cyanogen [Miroshnichenko et al. 2013] 4 L.J. Centers & 1 Quadrupole
C3H4.pm 463-49-0 Propadiene [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
C3H6_a.pm 115-07-1 Propylene [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
C3H6_b.pm 75-19-4 Cyclopropane [Munoz-Munoz et al. 2015] 3 L.J. Centers
C4F10.pm 355-25-9 Perﬂuorobutane [Köster et al. 2012] 14 L.J. Centers & 14 Charges
C4H10.pm 75-28-5 Isobutane [Eckl et al. 2008c] 4 L.J. Centers & 1 Dipole & 1 Quadrupole
C4H4S_I.pm 110-02-1 Thiophene [Eckl et al. 2008c] 5 L.J. Centers & 1 Dipole & 1 Quadrupole
C4H8.pm 287-23-0 Cyclobutane [Munoz-Munoz et al. 2015] 4 L.J. Centers
C5H10_dfg.pm 287-92-3 Cyclopentane [Munoz-Munoz et al. 2015] 5 L.J. Centers
C5H10_diﬀ.pm 287-92-3 Cyclopentane [Munoz-Munoz et al. 2015] 5 L.J. Centers
C6H10O.pm 108-94-1 Cyclohexanone [Merker et al. 2012] 7 L.J. Centers & 1 Dipole
C6H12_dfg.pm 110-82-7 Cyclohexane [Munoz-Munoz et al. 2015] 6 L.J. Centers
C6H12_diﬀ.pm 110-82-7 Cyclohexane [Munoz-Munoz et al. 2015] 6 L.J. Centers
C6H12_I.pm 110-82-7 Cyclohexane [Eckl et al. 2008c] 6 L.J. Centers & 1 Quadrupole
C6H12_II.pm 110-82-7 Cyclohexane [Merker et al. 2012] 6 L.J. Centers
C6H12O_II.pm 108-93-0 Cyclohexanol [Merker et al. 2009] 7 L.J. Centers & 3 Charges 1 Quadrupole
C6H4Cl2.pm 95-50-1 ortho-Dichlorobenzene [Huang et al. 2011] 8 L.J. Centers & 1 Dipole & 4 Quadrupoles
C6H5Cl.pm 108-90-7 Chlorobenzene [Huang et al. 2011] 7 L.J. Centers & 1 Dipole & 5 Quadrupoles
C6H6_I.pm 71-43-2 Benzene [Guevara-Carrion et al. 2016] 6 L.J. Centers & 6 Quadrupoles
C6H6_II.pm 71-43-2 Benzene [Huang et al. 2011] 6 L.J. Centers & 6 Quadrupoles
C7H8_I.pm 108-88-3 Toluene [Guevara-Carrion et al. 2016] 7 L.J. Centers & 6 Quadrupoles
C7H8_II.pm 108-88-3 Toluene [Huang et al. 2011] 7 L.J. Centers & 1 Dipole & 5 Quadrupoles
Ca2+.pm 17787-72-3 Calcium ion (2+) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
CBr2F2.pm 75-61-6 Dibromodiﬂuoromethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CBrCl3.pm 75-62-7 Bromotrichloromethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CBrClF2.pm 353-59-3 Bromochlorodiﬂuoromethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CC2HBrClF3.pm 151-67-7 Halothane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CCl2O.pm 75-44-5 Phosgene [Huang et al. 2011] 4 L.J. Centers & 1 Dipole & 1 Quadrupole
CCl4_I.pm 56-23-5 Carbon tetrachloride [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
CCl4_II.pm 56-23-5 Carbon tetrachloride [Guevara-Carrion et al. 2016] 5 L.J. Centers & 5 Charges
CClN.pm 506-77-4 Cyanogen chloride [Miroshnichenko et al. 2013] 3 L.J. Centers & 1 Quadrupole & 1 Dipole
CF2CFBr.pm 598-73-2 Bromotriﬂuoroethylene [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CF4_II.pm 75-73-0 Tetraﬂuoromethane [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
CH2Br2_D.pm 74-95-3 Dibromomethane [Stoll et al. 2003] 1 L.J. Center & 1 Dipole
CH2Br2_Q.pm 74-95-3 Dibromomethane [Stoll et al. 2003] 2 L.J. Centers & 1 Quadrupole
CH2BrCl.pm 74-97-5 Bromochloromethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CH2Cl2.pm 75-09-2 Methylene chloride [Stoll et al. 2003] 1 L.J. Center & 1 Dipole
Continued on next page
1 Potential Models in the ms2-distribution
Filename CAS number Name Publication Model Type
CH2I2.pm 75-11-6 Methylene iodide [Stoll et al. 2003] 1 L.J. Center & 1 Dipole
CH2O.pm 50-00-0 Formaldehyde [Eckl et al. 2008c] 2 L.J. Centers & 1 Dipole
CH2O2.pm 64-18-6 Formic acid [Schnabel et al. 2007b] 3 L.J. Centers & 4 Charges
CH3Br.pm 74-83-9 Methyl bromide [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CH3Cl.pm 74-87-3 Methyl chloride [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CH3I.pm 74-88-4 Methyl iodide [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CH3NO2.pm 75-52-5 Nitromethane [Eckl et al. 2008c] 4 L.J. Centers & 1 Dipole & 1 Quadrupole
CH3OCH3.pm 115-10-6 Dimethyl ether [Eckl et al. 2008c] 3 L.J. Centers & 1 Dipole
CH4.pm 74-82-8 Methane [Vrabec et al. 2001] 1 L.J. Center
CH4O_I.pm 67-56-1 Methyl alcohol [Schnabel et al. 2007a] 2 L.J. Centers & 3 Charges
CH5N.pm 74-89-5 Methylamine [Schnabel et al. 2008] 2 L.J. Centers & 2 Charges
CH6N2.pm 60-34-4 Methylhydrazine [Elts et al. 2012] 3 L.J. Centers & 3 Charges
CHBr3.pm 75-25-2 Bromoform [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CHCCH3_I.pm 74-99-7 1-Propyne [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
CHCCH3_II.pm 74-99-7 1-Propyne [Stoll 2004] 2 L.J. Centers & 1 Quadrupole
CHCl2F.pm 75-43-4 Dichloroﬂuoromethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CHCl3.pm 67-66-3 Chloroform [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CHN.pm 74-90-8 Hydrogen cyanide [Eckl et al. 2008c] 2 L.J. Centers & 1 Dipole & 1 Quadrupole
Cl-_I.pm 16887-00-6 Chlorine ion (1-) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
Cl-_II.pm 16887-00-6 Chlorine ion (1-) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
Cl2.pm 7782-50-5 Chlorine [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
CO_D.pm 630-08-0 Carbon monoxide [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
CO_Q.pm 630-08-0 Carbon monoxide [Stoll 2004] 2 L.J. Centers & 1 Quadrupole
CO2_I.pm 124-38-9 Carbon dioxide [Merker et al. 2010] 3 L.J. Centers & 1 Quattropole
CO2_II.pm 124-38-9 Carbon dioxide [Stoll 2004] 2 L.J. Centers & 1 Quadrupole
Cs+.pm 18459-37-5 Cesium ion (1+) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
CS2.pm 75-15-0 Carbon disulﬁde [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
F-_I.pm 16984-48-8 Fluorine ion (1-) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
F-_II.pm 16984-48-8 Fluorine ion (1-) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
F2.pm 7782-41-4 Fluorine [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
NH3_II.pm 7664-41-7 Ammonia [Eckl et al. 2008a] 1 L.J. Center & 4 Charges
H4N2.pm 302-01-2 Hydrazine [Elts et al. 2012] 2 L.J. Centers & 6 Charges
HCl.pm 7647-01-0 Hydrochloric acid [Huang et al. 2011] 1 L.J. Center & 2 Charges
I-_I.pm 20461-54-5 Iodide ion (1-) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
I-_II.pm 20461-54-5 Iodide ion (1-) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
I2.pm 7553-56-2 Iodine [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
K+.pm 24203-36-9 Potassium ion (1+) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
Continued on next page
1 Potential Models in the ms2-distribution
Filename CAS number Name Publication Model Type
Kr.pm 7439-90-9 Krypton [Vrabec et al. 2001] 1 L.J. Center
Li+.pm 17341-24-1 Lithium ion (1+) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
Mg2+.pm 22537-22-0 Magnesium ion (2+) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
N2.pm 7727-37-9 Nitrogen [Stoll 2004] 2 L.J. Centers & 1 Quadrupole
Na+_I.pm 17341-25-2 Sodium ion (1+) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
Ne.pm 7440-01-9 Neon [Vrabec et al. 2001] 1 L.J. Center
O2.pm 7782-44-7 Oxygen [Stoll 2004] 2 L.J. Centers & 1 Quadrupole
R11_CFCl3.pm 75-69-4 Trichloromonoﬂuoromethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R1122_CHCl=CF2.pm 359-10-4 2-Chloro-1,1-diﬂuoroethylene [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R112a_CCl3-CF2Cl.pm 76-11-9 1,1,1,2-Tetrachloro-2,2-diﬂuoroethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R113_CFCl2-CF2Cl.pm 76-13-1 1,1,2-trichloro-1,2,2-triﬂuoro-Ethane [Stoll et al. 2003] 2 L.J. Centers & 1 Quadrupole
R114_CF2Cl-CF2Cl.pm 76-14-2 1,2-dichloro-1,1,2,2-tetraﬂuoro-Ethane [Stoll et al. 2003] 2 L.J. Centers & 1 Quadrupole
R115_CF3-CF2Cl.pm 76-15-3 Pentaﬂuoroethyl chloride [Stoll et al. 2003] 2 L.J. Centers & 1 Quadrupole
R12_CF2Cl2.pm 75-71-8 Dichlorodiﬂuoromethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R123_CHCl2-CF3.pm 306-83-2 2,2-dichloro-1,1,1-triﬂuoro-Ethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R124_CHFCl-CF3.pm 2837-89-0 2-chloro-1,1,1,2-tetraﬂuoro-Ethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R125_CHF2-CF3.pm 354-33-6 pentaﬂuoro-Ethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R13_CF3Cl.pm 75-72-9 Chlorotriﬂuoromethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R134_CHF2-CHF2.pm 359-35-3 1,1,2,2-tetraﬂuoro-Ethane [Stoll et al. 2003] 2 L.J. Centers & 1 Quadrupole
R134a_CH2F-CF3.pm 811-97-2 Norﬂurane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R13B1_CBrF3.pm 75-63-8 Bromotriﬂuoromethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R141b_CH3-CFCl2.pm 1717-00-6 1,1-Dichloro-1-ﬂuoroethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R142b_CH3-CF2Cl.pm 75-68-3 1-chloro-1,1-diﬂuoro-Ethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R143a_CH3-CF3.pm 420-46-2 1,1,1-triﬂuoro-Ethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R152a_CH3-CHF2.pm 75-37-6 1,1-diﬂuoro-Ethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R22_CHF2Cl.pm 75-45-6 Diﬂuorochloromethane [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R227ea_C3HF7.pm 431-89-0 1,1,1,2,3,3,3-heptaﬂuoro-Propane [Eckl et al. 2007] 10 L.J. Centers & 1 Dipole 1 Quadrupole
R23_CHF3.pm 75-46-7 Fluoroform [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
R32_CH2F2.pm 75-10-5 Diﬂuoromethane [Stoll et al. 2003] 1 L.J. Center & 1 Dipole
R41_CH3F.pm 593-53-3 Methyl ﬂuoride [Stoll et al. 2003] 2 L.J. Centers & 1 Dipole
Rb+.pm 22537-38-8 Rubidium ion (1+) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
SF6.pm 2551-62-4 Sulfur hexaﬂuoride [Vrabec et al. 2001] 2 L.J. Centers & 1 Quadrupole
SO2.pm 7446-09-5 Sulfur dioxide [Eckl et al. 2008c] 3 L.J. Centers & 1 Dipole & 1 Quadrupole
Sr.pm 22537-39-9 Strontium ion (2+) [Deublein et al. 2012] 1 L.J. Center & 1 Charge
Xe.pm 7440-63-3 Xenon [Vrabec et al. 2001] 1 L.J. Center
Deublein, S., J. Vrabec, and H. Hasse (2012). “A set of molecular models for alkali and halide ions in
aqueous solution”. In: The Journal of Chemical Physics (cit. on pp. 2, 4, 5).
Deublein, S., S. Reiser, J. Vrabec, and H. Hasse (2012). “A Set of Molecular Models for Alkaline-
Earth Cations in Aqueous Solution”. In: Journal of Physical Chemistry B 116.18, p. 5448. doi:
10.1021/jp3013514 (cit. on pp. 2–5).
Deublein, S., P. Metzler, J. Vrabec, and H. Hasse (2013). “Automated development of force ﬁelds for
the calculation of thermodynamic properties acetonitrile as a case study” . In: Molecular Simulation
39.2, p. 109. doi:10.1080/08927022.2012.705434 (cit. on p. 2).
Eckl, B., Y. Huang, and H. Vrabec J.and Hasse (2007). “Vapor pressure of R227ea + ethanol at 343.13K
by molecular simulation”. In: Fluid Phase Equilibria 260, 177–182. doi:
(cit. on p. 5).
Eckl, B., J. Vrabec, and H. Hasse (2008a). “An optimised molecular model for ammonia”. In: Molecular
Physics: An International Journal at the Interface Between Chemistry and Physics 106.8, p. 1039. doi:
10.1080/00268970802112137 (cit. on p. 4).
Eckl, B., J. Vrabec, and H. Hasse (2008b). “On the application of force ﬁelds for predicting a wide
variety of properties: Ethylene oxide as an example”. In: Fluid Phase Equilibria 274.1. doi:
fluid.2008.02.002 (cit. on p. 2).
Eckl, B., J. Vrabec, and H. Hasse (2008c). “Set of Molecular Models Based on Quantum Mechanical
Ab Initio Calculations and Thermodynamic Data”. In: The Journal of Physical Chemistry B (cit. on
Elts, E., T. Windmann, D. Staak, and J. Vrabec (2012). “Fluid phase behavior from molecular simulation
Hydrazine, Monomethylhydrazine, Dimethylhydrazine and binary mixtures containing these compounds” .
In: Fluid Phase Equilibria 322. doi:10.1016/j.fluid.2012.03.008 (cit. on pp. 2, 4).
Guevara-Carrion, G., T. Janzen, Y. Munoz-Munoz, and J. Vrabec (2016). “Mutual diﬀusion of binary
liquid mixtures containing methanol, ethanol, acetone, benzene, cyclohexane, toluene, and carbon
tetrachloride”. In: The Journal of Chemical Physics 144. doi:
10.1063 / 1 .4943395
//dx.doi.org/10.1063/1.4943395 (cit. on p. 3).
Huang, Y., M. Heilig, J. Vrabec, and H. Hasse (2011). “Vapor-Liquid Equilibria of Hydrogen Chloride,
Phosgene, Benzene, Chlorobenzene, Ortho-Dichlorobenzene and Toluene by Molecular Simulation”. In:
AIChE Journal 57.4, p. 1043. doi:10.1002/aic.12329 (cit. on pp. 3, 4).
Huang Y. aHuang, Y. T., M. Heilig, H. Hasse, and J. Vrabec (2012). “Molecular Modeling and Simulation
of Vapor–Liquid Equilibria of Ethylene Oxide, Ethylene Glycol, and Water as Well as their Binary
Mixtures”. In: Ind. Eng. Chem. Res. 51.21. doi:10.1021/ie300248z (cit. on p. 2).
Köster, A., P. Nandi, T. Windmann, D. Ramjugernath, and J. Vrabec (2012). “Vapor–liquid equilibria
of ethylene (C2H4) + decaﬂuorobutane (C4F10) at 268–298 K from experiment, molecular simulation
and the Peng–Robinson equation of state”. In: Fluid Phase Equilibria 336. doi:
2012.08.023 (cit. on p. 3).
Merker, T., J. Vrabec, and H. Hasse (2012). “Molecular simulation study on the solubility of carbon
dioxide in mixtures of cyclohexane + cyclohexanone”. In: Fluid Phase Equilibria 315, p. 77. doi:
10.1016/j.fluid.2011.11.003 (cit. on p. 3).
Merker, T., G. Guevara-Carrion, J. Vrabec, and H. Hasse (2009). HIGH PERFORMANCE COMPUTING
IN SCIENCE AND ENGINEERING ’08. Ed. by W. E. Nagel, D. B. Kroner, and M. M. Resch. Springer.
doi:10.1007/978-3-540-88303-6_37 (cit. on p. 3).
Merker, T., C. Engin, J. Vrabec, and H. Hasse (2010). “ Molecular model for carbon dioxide optimized to
vapor-liquid equilibria”. In: The Journal of Chemical Physics 132, p. 234512. doi:
(cit. on p. 4).
Miroshnichenko, S., T. Grützner, D. Staak, and J. Vrabec (2013). “Molecular simulation of the va-
por–liquid phase behavior of cyanides and their binary mixtures”. In: Fluid Phase Equilibria 354. doi:
10.1016/j.fluid.2013.06.039 (cit. on p. 3).
Munoz-Munoz, Y.M., G. Guevara-Carrion, M. Llano-Restrepo, and J. Vrabec (2015). “Lennard-Jones
force ﬁeld parameters for cyclic alkanes from cyclopropane to cyclohexane”. In: Fluid Phase Equilibria
404, p. 150. doi:10.1016/j.fluid.2015.06.033 (cit. on p. 3).
Schnabel, T., J. Vrabec, and H. Hasse (2005). “Henry’s law constants of methane, nitrogen, oxygen and
carbon dioxide in ethanol from 273 to 498 K: Prediction from molecular simulation”. In: Fluid Phase
Equilibria 233, pp. 134–143. doi:10.1016/j.fluid.2005.04.016 (cit. on p. 2).
Schnabel, T., J. Vrabec, and H. Hasse (2008). “Molecular simulation study of hydrogen bonding mixtures
and new molecular models for mono- and dimethylamine”. In: Fluid Phase Equilibria 263, 144–159.
doi:10.1016/j.fluid.2007.10.003 (cit. on p. 4).
Schnabel, T., A. Srivastava, J. Vrabec, and H. Hasse (2007a). “Hydrogen Bonding of Methanol in
Supercritical CO2: Comparison between 1H NMR Spectroscopic Data and Molecular Simulation Results”.
In: J.Phys.Chem. B 111.33, p. 9871. doi:10.1021/jp0720338 (cit. on p. 4).
Schnabel, T., M. Cortada, J. S. Vrabec JVrabec, and H. Hasse (2007b). “Molecular model for formic
acid adjusted to vapor–liquid equilibria”. In: Chemical Physics Letters 435.4, p. 268. doi:
cplett.2006.12.091 (cit. on p. 4).
Stoll, J. (2004). “Molecular Models for the Prediction of Thermophysical Properties of Pure Fluids and
Mixtures”. PhD thesis. Universität Stuttgart (cit. on pp. 2, 4, 5).
Stoll, J., J. Vrabec, and H. Hasse (2003). “A set of molecular models for carbon monoxide and halogenated
hydrocarbons”. In: The Journal of Chemical Physics 119, p. 11396. doi:
Vrabec, J., J. Stoll, and H. Hasse (2001). “A Set of Molecular Models for Symmetric Quadrupolar
Fluids”. In: The Journal of Physical Chemistry B 105.48, p. 12126. doi:
How to compile and run ms2 - Version 3.0
1 Citation information & license 1
2 Support, development & maintenance 2
3 Installation 2
3.1 Downloadingthesourcecode .............................................. 2
3.2 Building ms2 .......................................................... 2
3.2.1 Building ms2onLinuxplatforms ...................................... 2
3.2.2 BuildingonWindows............................................... 5
4 Running ms2 5
4.1 Inputstructure......................................................... 5
4.1.1 Parameter( )ﬁle ............................................... 6
4.1.2 Potentialmodel( )ﬁle............................................ 7
4.2 Outputstructure........................................................ 9
5 Keywords for input ﬁles 10
5.1 Keywords for ∗ﬁles................................................... 10
5.2 Keywords for ∗ﬁles.................................................... 12
1 Citation information & license
ms2 is a noncommercial software, which was published in Computer Physics Communications. The
most current manuscript as the preceding ones along with their Supplementary Materials can be down-
loaded from the ms2 home page (http://www.ms-2.de). It is free of charge for scientiﬁc research and can
be obtained after registration. Users need to acknowledge the use of ms2 by citing the following publica-
S. Deublein, B. Eckl, J. Stoll, S. Lishchuk, G. Guevara-Carrion, C.W. Glass, T. Merker, M. Bernreuther,
H. Hasse, J. Vrabec
Computer Physics Communication 182 (2011) 2350
The NonCommercial 3.0 (CC by-NC 3.0) licence applies for ms2. The full licence is available under (cre-
ative commons. You may not use the material for commercial purposes. You must give appropriate credit,
provide a link to the license, and indicate if changes were made. You may do so in any reasonable man-
ner, but not in any way that suggests the licensor endorses you or your use. You are free to share a copy
and redistribute the material in any medium or format and adapt, transform, and build upon the mate-
2 Support, development & maintenance
Supply the version and compiling details with a support request.
The newest version of the ms2 molecular simulation package is available at the ms2 homepage:
The source code of ms2 can be downloaded there as a tarball.
The following email address is the general contact point:
ms2 users are encouraged to report bugs to the aforementioned email address.
3.1 Downloading the source code
The ms2 distribution is available on the webpage: http://www.ms-2.de/download. Users must either be a
natural person or an academic institution represented by a natural person. The ms2 distribution consists
of four major parts: the source code, java tools for pre- and postprocessing, force ﬁeld models from the
Boltzmann-Zuse Society of Computational Molecular Engineering database as input ﬁles for ms2 and some
example input ﬁles for the calculation of different properties. The installation and use of the ms2 program is
explained in section 4 and 5.
3.2 Building ms 2
ms2 was tested on Linux and Windows platforms, a short explanation how to install ms2 on these two sys-
tems is given in the following.
3.2.1 Building ms 2 on Linux platforms
The compilation can be carried out using the provided “Makeﬁle” found in the “src” directory (e.g. with
GNU make) and the compiler-related -ﬁles in the -subdirectory. The “Makeﬁle” and the
“ ”-ﬁle should be adopted to the local system requirements as described below. Alternatively (or addi-
tionally) variables can be set through the make command line options as compiler ﬂags. An overview of all
options can be found in Table 1.
When compiling ms2, a variety of settings can be speciﬁed according to the users needs and optimize the per-
formance. The following strings are recognizedin the makeﬁle: , , , , , ,
, and . After settings these variable according to the users hardware and computational need,
typing in the command line from the “src” directory compiles ms2 and creates and executable in the
Settings in the
First of all a compiler has to be chosen. Through the deﬁnition of the variable, the corresponding
ﬁle with sufﬁx “.mk” in the “makeﬁles” subdirectory will be included during the execution of . These
ﬁles contain speciﬁc settings for compilers and/or systems that ms2 is suitable for.
The version is manly used by developers. Default is .
• FORTRAN compiler:
The entry found in the given Makeﬁle corresponds to “makeﬁles/GNU.mk”, which contains
settings for the widely used GNU compiler. There are other predeﬁned settings available, like “INTEL”
for the INTEL compiler. The default value is , since that compiler is freeware.
• Parallelisation protocol:
These parameters have to be set to invoke the implemented parallelisation schemes.
The make command produces one executable ﬁle of ms2. To optimise the execution speed of the program
for each application, the user should set the feature compiler ﬂags , , and according
the simulation dependencies – especially if the user wants to run large numbers of simulations with one exe-
cutable. We suggestonly to set a if you want to use this certain feature,otherwise
they will slow down yoursimulation speed.
• Transport properties:
To produce an executable that samples transport properties (e.g. diffusion and conductivity)
has to be set. A value of means, that the routines for calculation of transport properties are not
compiled. The default value is , since the program execution for the sampling of default properties
is faster in that case.
• Hydrogen-bonding evaluation:
If you want to have a look atthe hydrogen bonds in your system, turn this on (set variable ). It enables
you to specify a geometric criterion for hydrogen bonds in your input ﬁles. ms2 evaluates then the
pursuant hydrogen bonding statistics. A value of means, that the routines for the calculation of
hydrogen bonds are not to be compiled. The default value is , since the program execution for the
sampling of the default properties is faster in that case.
• Osmotic pressure:
This ﬂag enables the osmotic pressure method. The value enables the pressure proﬁle calculation
along the density proﬁle and osmotic pressure results. A value of means, that the routines for use of
the osmotic pressure method are not to be compiled. The default value is .
• Single precision:
To speed up your simulation you can choose single precision (set value ) instead of the default
double precision (set value ). Users are advised to use with care.
• Name of the executable ﬁle:
The user can set the value to adapt the name of the executable ﬁle, that is produced by the make com-
mand. According to the values of , , , , and the executable
will have an addition in its name respectively.
Variable Description Values Description
Compiler presets GNU compiler
see makeﬁles subdirectory
see above for production simulations
for code developing
Features to be accessible
Single Precision off
Osmotic pressure off
H-Bonding statistics off
Name of executable String can be set by user
Table 1: Makeﬁle deﬁnitions
Compiler related ﬁles
For each supported compiler, the subdirectory in contains one ﬁle, e g. .
The ﬁrst three lines deﬁne the used FORTRAN90 comilers. In rare system depending cases, the optimi-
sation degree (the integer after the -O for the has to be decreased to 2 or 1). It is
suggested to use the slightly faster -compiler instead of the in case you are using the
make command line options
Instead of changing the Makeﬁle, the deﬁnitions can also be set directly in the command line, that will
overwrite the settings in the Makeﬁle. For example:
Depending on compiler and preprocessor variables set in the Makeﬁle, the following com-
piler ﬂags are used in the compilation/build process:
CPPFlags: -DARCH=2 –DFORTRAN=90 (replaces compiler ﬂags for ARCH and FORTRAN)
Releaseﬂags: -O3 -vec/qopt-report=3/5
Debugﬂags: -O0 -vec/qopt-report=0 -g
GNU: -ffree-line-length-none -mtune=generic
INTEL: -fpp –r8
If the user is unsure whatcompiler ﬂags to set, itis suggested to leave the Makeﬁle blank.
3.2.2 Building on Windows
ms2 can also be executed on Windows systems. The source code has to be downloaded and compiled in a
similar way as for Linux platforms. It is suggested to use a Linux-like shell, for example cygwin. It provides a
terminal window that runs a handsome Linux shell and comes with the GNU gfortran compiler
. This is very
useful, since ms2 is a command line-based program, whose utilization is in our experience best in combina-
tion with the standard Linux commands, such as , , , etc.. Additionally, the preparation of
input ﬁles and analysis of the output ﬁles of ms2 can be done by shell scripts. The installation of ms2 in cyg-
win follows the installation instructions on Linux platforms discussed above. Of course, ms2 can also be com-
piled using standard Windows tools.
4 Running ms2
ms2 was designed to be an easily applicable simulation program. Therefore, the input ﬁles are restricted to
one ﬁle for the deﬁnition of the simulation scenario and one ﬁle for each of the molecular species that are
used in the simulation. The output ﬁles contain structured information on the simulation. All calculated
thermodynamic properties are summarized in one output ﬁle, which is straightforwardly readable and self-
explaining. For a more detailed evaluation ofthe simulation, the instantaneous and running averages of the
most important thermodynamic properties are written to other ﬁles. In total,the current status of the simula-
tion and many more details are written to six ﬁles and can be accessed during execution. The structure ofthe
input ﬁles as well as the output ﬁles is shown in Figure 1.
4.1 Input structure
ms2 expects two input ﬁles: the
ﬁle speciﬁes the simulation parameters and
the ﬁle the molecular potential model. The
ﬁle is the main ﬁle steering the actual simulation. It
contains all input variables for the simulation process, such as simulation type, ensemble, number of equili-
bration and production steps, time step length etc. Also the potential models needto be declared here. Each
ﬁle speciﬁes exactly one chemical substance. To calculate mixtures, several
ﬁles have to be speciﬁed
Each line in both input ﬁle types sets one parameter, is empty or contains a comment. The comment symbol
# and everything after it up to the end of the line is ignored by ms2 in the same way as empty lines are. It is
1During the installation of cygwin, all the FORTRAN depending packages have to be tagged.
Figure 1: File structure needed and generated by ms2.
suggested to use only blanks instead of tabs, since the latter may cause trouble using input ﬁles generated on
A line setting a parameter in either
ﬁle always consists of a keyword , the symbol and
the parameter value YYY, e. g.
Leading spaces, trailing spaces and spaces surrounding =symbol are ignored. Parameter values can be
strings in some cases or numeric values. Parameter names and values that ms2 expects for the parameter
ﬁle and potential model ﬁles are described in sections 5. All parameters must be present in the input ﬁles
in the certain order. The program reads the input ﬁle sequentially. Unidentiﬁed parameters are ignored.
Missing or misplaced parameters lead to the termination of the program with the corresponding error mes-
4.1.1 Parameter ( ) ﬁle
Below is an exemplary
ﬁle for a MD simulation of pure oxygen in the
N V T
organised in three sections: the ﬁrst section sets the general simulation parameters, such as timestep, MD
or MC, unit systems etc. (lines 3 to 20 in the oxygen example), the second section sets the thermodynamic
quantities to deﬁne the ensemble, such as temperature, density, number of components etc. (lines 21 to
26). The third section contains the potential models that shall be simulated and indicate their mole fraction
(lines 28 to 31). The value for the keyword needs to be set according to the name of the potential
model ﬁle that shall be used, including the tailing
ﬁle ends with the cutoff radius that shall
be applied throughout the simulation.
This example runs a MD simulation of pure oxygen at a constant temperature of 40 K with an equilibration of
100 000 timesteps and a production period of 1000 000 timesteps. The simulation contains 1372 molecules
and uses a cutoff distance of 15 Å.
Table 2 in section 5 lists all input parameters and options to be speciﬁed in the
ﬁle. Creating a
is facilitated by the ms2 feature program ms2par.
4.1.2 Potential model ( ) ﬁle
ﬁle contains the molecular model, also called force ﬁeld,for a given substance. It contains the relative
positions and parameters of all interaction sites. The potential model ﬁle for methanol is shown below.
Methanol was modeled by two Lennard-Jones sites and three point charges .
All positions and distances in the
ﬁle are given in Å, the Lennard-Jones interaction parameters
are given in Å and K, respectively, while the mass is given in atomic units (u =1
magnitudes of the charges are speciﬁed in electronic charges (e=1
C), while dipole moments
and quadrupole moments are given in Debye (
Cm) and Buckingham (
), respectively. The orientations of the dipole and quadrupole are represented by spherical coordi-
nates, where the azimuthal angle
speciﬁes the angle to the positive
axis and the polar angle
angle to the positive
axis. Both angles are speciﬁed in degrees. Molecular models can be orientated arbitrar-
ily in the
ﬁle. All site positions are automatically transformed into a principal axes coordinate system at
the beginning of each simulation run by ms2. The normalized site positions are written to a
for each component.
All input parameters and options to be speciﬁed in the
ﬁle are given in Table 3. A
ﬁle has a speciﬁc
structure, which is described in the following. The parameter gives the number of different po-
tential types (not the number of sites). Different potential types are 12-6 Lennard-Jones sites, point charges,
point dipoles and point quadrupoles. Then the descriptions for each potential type follow sequentially. Each
of them contains the number of sites of the corresponding type ,followed by the deﬁnition of each in-
dividual site. Each site requires
coordinates and the mass in addition to its interaction parameters,
depending on the site type. Lennard-Jones sites require one size and one energy parameter, point charges
only the magnitude of the charge,while point dipoles and point quadrupoles require magnitude andorienta-
tion. At the end of a
ﬁle, the parameter is speciﬁed. Parameters , and
are read if the moments of inertia are to be speciﬁed manually, set according to the
4.2 Output structure
ms2 yields different output ﬁles depending on the speciﬁcations made in the
•∗ﬁle - stores a complete summary of all execution steps taken by ms2.
ﬁle - contains the results of the simulation in an aggregated form. The data are written to ﬁle
in reduced quantities as well as in SI units, along with the statistical uncertainties of the calculated
properties. The ∗ﬁle is created during simulation and updated every speciﬁed number of time
steps or loops.
ﬁle - contains the calculated properties of the simulation for a speciﬁed time step or loop
interval. The ﬁle is in tabular form, where the data are given in reduced units. The ﬁle is subsequently
updated according to the user speciﬁcation, which is set in the ∗ﬁle.
ﬁle - contains the block averages of the calculated properties. The ﬁle is in tabular form, where
the data are given in reduced units. The ﬁle is updated according to the user speciﬁcation, which is
set in the ∗ﬁle.
ﬁle - is the restart ﬁle of the simulation. It contains all molecular positions, velocities, orien-
tations, forces, torques and block averages for the thermodynamic properties. It is written once at
the end of a simulation or immediately after having received a termination signal of the operating
ﬁle allows for a stepwise execution of the simulation, necessary e.g. in case of an
early interruption of the simulation, time limits on a queuing system or unexpected halts.
ﬁle - is the trajectory visualization ﬁle. It contains the positions and orientations of all molecules
in an aggregated ASCII format. The conﬁgurations are written to ﬁle after a user-speciﬁed interval of
time steps or loops. The
ﬁle is readable by the visualization tool ms2molecules, which is also
part of the simulation package.
ﬁle - stores the normalized coordinates of a potential model after a principal axes transforma-
ﬁle - stores the ﬁnal value of the correlation functions and theirintegrals. The number of output
lines is equal to divided by . These parameters have to be deﬁned in
ﬁle - contains the averaged radial distribution functions between different sites over the cutoff
ﬁle - stores the potential energy states of the ﬂuctuating test particle for the chemical potential
calculation with thermodynamic integration.
5 Keywords for input ﬁles
Tables 2 and 3 give an overview over the keywords that can be speciﬁed in the
ﬁles and the expected values. A short explanation of the keywords
and recommended values are also given.
5.1 Keywords for ∗ﬁles
keyword value explanation recommended value
limiting wall time for the simulation given in minutes
time limit for sending the termination signal before reaching the wall time given in minutes
physical properties in the *.par ﬁle are given in SI units
physical properties in the *.par ﬁle are given in
reduced units with respect to the reference values of length σre f ,
energy εre f and mass mre f
reference length σre f in Å
reference energy εre f /kBin K
reference mass mre f in atomic units u =1.6605 ×10−27 kg 100.0
molecular dynamics simulation
gear predictor-corrector integrator (MD only)
Leapfrog integrator (MD only)
TimeStep time step of one MD step in fs (MD only) ∼1
acceptance rate for MC moves (MC only)
GE Grand equilibrium method (pseudo-µV T )
MC relaxation loops for pre-equilibration
number of equilibration time steps (MD) or loops (MC) in the N V T ensemble
number of equilibration time steps (MD) or loops (MC) in the N p T ensemble (optional)
Continued on next page
keyword value explanation recommended value
number of production time steps (MD) or loops (MC)
size of block averages in time steps or loops
frequency of writing the *.res ﬁle in time steps or loops
frequency of saving trajectories in the *.vim ﬁle
center of mass cut-off
number of ensembles in the simulation 1
number of ensemble groups 1
yes calculation of correlation functions enabled
no calculation of correlation functions disabled
piston mass for simulations at constant pressure
total number of molecules
number of shells for the calculation of RDF 300
yes enable pressure calculation in the NpT ensemble (MC only)
no disable pressure calculation in the NpT ensemble (MC only)
yes One common equlilibration (for parallelized MC run only)
no Separate equlilibration for each subtask (for parallelized MC run only)
number of components
simulation result density
statistical uncertainty of density
simulation result residual enthalpy
statistical uncertainty of residual enthalpy
simulation result isothermal compressibility
statistical uncertainty of isothermal compressibility
simulation result (d h /d p )T
statistical uncertainty of (d h /d p )T
number of components
length of the correlation functions in time steps
time steps separating subsequent correlation functions
output frequency of the full correlation functions into the *.rtr ﬁle
Continued on next page
keyword value explanation recommended value
output frequency of transport properties into the *.res ﬁle
potential model *.pm ﬁle of a component
molar fraction of a component
no calculation of the chemical potential for this component
calculation of the chemical potential for this component using Widoms’s test molecule method
calculation of the chemical potential for this component using thermodynamic integration
number of test molecules for Widom’s test molecule method
for gradual insertion: use user deﬁned initial values for the weight Guess
factors with optimization of these factors during simulation
for gradual insertion: values for the weight factors without adjustment during simulation
binary size interaction parameter η– combination rule
binary energy interaction parameter ξ– combination rule
number of hydrogen bonding criteria
cut-off radius for center of mass cut-off
cut-off radius for LJ interactions (site-site cut-off)
cut-off radius for dipole-dipole interactions (site-site cut-off)
cut-off radius for dipole-quadrupole interactions (site-site cut-off)
CutoffQQ cut-off radius for quadrupole-quadrupole interactions (site-site cut-off )
reaction ﬁeld parameter
Table 2: Parameters and options speciﬁed in the ∗ﬁle.
5.2 Keywords for ∗ﬁles
keyword value explanation recommended value
int number of site types to appear in ∗ﬁle
type of interaction site must be speciﬁed
Continued on next page
keyword value explanation recommended value
int number of sites for the corresponding interaction site type must be speciﬁed
double spatial coordinate of a site in Å must be speciﬁed for each site
double spatial coordinate of a site in Å must be speciﬁed for each site
double spatial coordinate of a site in Å must be speciﬁed for each site
double angle θbetween the dipole or quadrupole and the positive zaxis in degree must be speciﬁed for dipole or quadrupole site
double angle φbetween the dipole or quadrupole and the positive xaxis in degree must be speciﬁed for dipole or quadrupole site
double Lennard-Jones radius σin Å must be speciﬁed for Lennard-Jones site
double Lennard-Jones energy "/kBin K must be speciﬁed for Lennard-Jones site
double magnitude of point charge site must be speciﬁed for charge site
double dipole moment for dipole site must be speciﬁed for dipolar site
double quadrupole moment for quadrupole site must be speciﬁed for quadrupolar site
double mass in atomic units must be speciﬁed for each site
double shielding radius in Å for MC steps can be speciﬁed to get better convergence in MC run
number of rotation axes of the molecule
double mass of molecule in atomic units optional
double component of inertia moment in atomic mass unit multiplied by Å2if is 2 or 3
double component of inertia moment in atomic mass unit multiplied by Å2if is 2 or 3
double component of inertia moment in atomic mass unit multiplied by Å2if is 3
Table 3: Parameters and options speciﬁed in a ∗ﬁle.