11
Computer Physics Communications 185 (2014) 684–694 Contents lists available at ScienceDirect Computer Physics Communications journal homepage: www.elsevier.com/locate/cpc MDMC 2 : A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters David A. Bonhommeau a,, Marie-Pierre Gaigeot b,c a GSMA, CNRS UMR 7331, Université de Reims Champagne-Ardenne, Campus Moulin de la Housse BP 1039, 51687 Reims Cedex 2, France b LAMBE, CNRS UMR 8587, Université d’Evry Val d’Essonne, Blvd F. Mitterrand, Bât Maupertuis, 91025 Evry, France c Institut Universitaire de France, 103 Blvd St Michel, 75005 Paris, France article info Article history: Received 17 July 2013 Received in revised form 27 September 2013 Accepted 12 October 2013 Available online 23 October 2013 Keywords: Molecular dynamics simulations Mesoscopic coarse-grained models Charged clusters and droplets Electrospray ionisation Evaporation Fission abstract MDMC 2 is a parallel code for performing molecular dynamics simulations on multiply charged clusters. It is a valuable complement to MCMC 2 , a Monte Carlo program devoted to Monte Carlo simulations of multiply charged clusters in the NVT ensemble (Bonhommeau and Gaigeot, 2013). Both MCMC 2 and MDMC 2 codes employ a mesoscopic coarse-grained simplified representation of the clusters (or droplets): these clusters are composed of neutral and charged spherical particles/grains that may be polarisable. One grain can be either neutral or charged. The interaction potential is a sum of 2-body Lennard- Jones potentials (main cohesive contribution) and electrostatic terms (repulsive contribution), possibly supplemented by N-body polarisation interactions. There is no restriction imposed on the values of the particle charges and/or polarisabilities. An external field can also be applied to the whole system. The derivatives of the potential energy-surface are determined analytically which ensures an accurate integration of classical equations of motion by a velocity Verlet algorithm. Conservation rules, such as energy conservation or centre-of-mass linear momentum conservation, can be steadily checked during the simulation. The program also provides some statistical information on the run and configuration files that can be used for data post-treatment. MDMC 2 is provided with a serial conjugate gradient program, called CGMC 2 , that uses the same analytical derivatives as MDMC 2 and was found useful to probe the minima of the energy landscape explored during Monte Carlo or molecular dynamics simulations performed on multiply charged clusters. Program summary Program title: MDMC 2 Catalogue identifier: AERI_v1_0 Program summary URL: http://cpc.cs.qub.ac.uk/summaries/AERI_v1_0.html Program obtainable from: CPC Program Library, Queen’s University, Belfast, N. Ireland Licensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.html No. of lines in distributed program, including test data, etc.: 146001 No. of bytes in distributed program, including test data, etc.: 2489341 Distribution format: tar.gz Programming language: Fortran 90 with MPI extensions for parallelisation. Computer: x86 and IBM platforms. Operating system: 1. CentOS 5.6 Intel Xeon X5670 2.93 GHz, gfortran/ifort(version 13.1.0) + MPICH2. 2. CentOS 5.3 Intel Xeon E5520 2.27 GHz, gfortran/g95/pgf90 + MPICH2. This paper and its associated computer program are available via the Computer Physics Communication homepage on ScienceDirect (http://www.sciencedirect.com/ science/journal/00104655). Corresponding author. Tel.: +33 0 3 26 91 33 33; fax: +33 0 3 26 91 31 47. E-mail addresses: [email protected] (D.A. Bonhommeau), [email protected] (M.-P. Gaigeot). 0010-4655/$ – see front matter © 2013 Elsevier B.V. All rights reserved. http://dx.doi.org/10.1016/j.cpc.2013.10.015

MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

Embed Size (px)

Citation preview

Page 1: MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

Computer Physics Communications 185 (2014) 684–694

Contents lists available at ScienceDirect

Computer Physics Communications

journal homepage: www.elsevier.com/locate/cpc

MDMC2: A molecular dynamics code for investigating thefragmentation dynamics of multiply charged clusters✩

David A. Bonhommeau a,∗, Marie-Pierre Gaigeot b,ca GSMA, CNRS UMR 7331, Université de Reims Champagne-Ardenne, Campus Moulin de la Housse BP 1039, 51687 Reims Cedex 2, Franceb LAMBE, CNRS UMR 8587, Université d’Evry Val d’Essonne, Blvd F. Mitterrand, Bât Maupertuis, 91025 Evry, Francec Institut Universitaire de France, 103 Blvd St Michel, 75005 Paris, France

a r t i c l e i n f o

Article history:Received 17 July 2013Received in revised form27 September 2013Accepted 12 October 2013Available online 23 October 2013

Keywords:Molecular dynamics simulationsMesoscopic coarse-grained modelsCharged clusters and dropletsElectrospray ionisationEvaporationFission

a b s t r a c t

MDMC2 is a parallel code for performing molecular dynamics simulations on multiply charged clusters.It is a valuable complement to MCMC2, a Monte Carlo program devoted to Monte Carlo simulations ofmultiply charged clusters in the NVT ensemble (Bonhommeau and Gaigeot, 2013). Both MCMC2 andMDMC2 codes employ amesoscopic coarse-grained simplified representation of the clusters (or droplets):these clusters are composed of neutral and charged spherical particles/grains that may be polarisable.One grain can be either neutral or charged. The interaction potential is a sum of 2-body Lennard-Jones potentials (main cohesive contribution) and electrostatic terms (repulsive contribution), possiblysupplemented by N-body polarisation interactions. There is no restriction imposed on the values ofthe particle charges and/or polarisabilities. An external field can also be applied to the whole system.The derivatives of the potential energy-surface are determined analytically which ensures an accurateintegration of classical equations of motion by a velocity Verlet algorithm. Conservation rules, such asenergy conservation or centre-of-mass linear momentum conservation, can be steadily checked duringthe simulation. The program also provides some statistical information on the run and configurationfiles that can be used for data post-treatment. MDMC2 is provided with a serial conjugate gradientprogram, called CGMC2, that uses the same analytical derivatives asMDMC2 andwas founduseful to probethe minima of the energy landscape explored during Monte Carlo or molecular dynamics simulationsperformed on multiply charged clusters.

Program summary

Program title:MDMC2

Catalogue identifier: AERI_v1_0

Program summary URL: http://cpc.cs.qub.ac.uk/summaries/AERI_v1_0.html

Program obtainable from: CPC Program Library, Queen’s University, Belfast, N. Ireland

Licensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.html

No. of lines in distributed program, including test data, etc.: 146001

No. of bytes in distributed program, including test data, etc.: 2489341

Distribution format: tar.gz

Programming language: Fortran 90 with MPI extensions for parallelisation.

Computer: x86 and IBM platforms.

Operating system:

1. CentOS 5.6 Intel Xeon X5670 2.93 GHz, gfortran/ifort(version 13.1.0) + MPICH2.2. CentOS 5.3 Intel Xeon E5520 2.27 GHz, gfortran/g95/pgf90 + MPICH2.

✩ This paper and its associated computer program are available via the Computer Physics Communication homepage on ScienceDirect (http://www.sciencedirect.com/science/journal/00104655).∗ Corresponding author. Tel.: +33 0 3 26 91 33 33; fax: +33 0 3 26 91 31 47.

E-mail addresses: [email protected] (D.A. Bonhommeau), [email protected] (M.-P. Gaigeot).

0010-4655/$ – see front matter© 2013 Elsevier B.V. All rights reserved.http://dx.doi.org/10.1016/j.cpc.2013.10.015

Page 2: MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

D.A. Bonhommeau, M.-P. Gaigeot / Computer Physics Communications 185 (2014) 684–694 685

3. Red Hat Enterprise 5.3 Intel Xeon X5650 2.67 GHz, gfortran + IntelMPI.4. IBM Power 6 4.7 GHz, xlf + PESS (IBM parallel library).

Has the code been vectorised or parallelised?: Yes, parallelised using MPI extensions. Number of CPUs used:up to 9999.RAM: (per CPU core): 5–10 MB.Classification: 3, 16.13, 23.Nature of problem:We provide a general parallel code to perform the dynamics of multiply charged clusters and a serialconjugate gradient code for locallyminimising configurations obtained during the dynamics. Both of theseprograms are compatible with the input and output files of the MCMC2 code [1].Solution method:Parallel molecular dynamics simulations can be performed by the integration of classical equations ofmotion where all the derivatives are computed analytically whatever the details of the potential-energysurface. The parallelisation aims to distribute different trajectories on different CPU cores, which makesparallelisation efficiency optimal, with up to 9999 trajectories that could be run at the same time. Aconjugate gradient program is also provided to investigate the local minima corresponding to the energylandscape explored during MD or MC simulations performed with MDMC2 and MCMC2, respectively.Restrictions:The current version of the code uses Lennard-Jones interactions, as the main cohesive interactionbetween spherical particles, and electrostatic interactions (charge–charge and polarisation terms). Thesimulations are performed in theNV E ensemble. There is no container which allows the user to study thefragmentation of the clusters (if any fragmentation occurs), which is our primary goal. UnlikeMCMC2, thatincluded a large choice of histograms for interpreting simulations (such as radial and angular histograms),MDMC2 does not include these features.Unusual features:The input and output configuration files are fully compatible with the files generated by MCMC2 whichmakes MDMC2 (+CGMC2) a useful companion of MCMC2 to model structural, thermodynamic anddynamic properties ofmultiply-charged clusters. All the derivatives, even those including polarisation, arecomputed analytically in order to prevent inaccuracies due to numerical derivatives. MDMC2 is providedwith one random number generator from the LAPACK library.Running time:The running time depends on the number of molecular dynamics steps, cluster size, and type ofinteractions selected (e.g., polarisation turned on or off). For instance, a 12-trajectories MD simulationcomposed of 2×106 time steps (δt = 104) performed for A100+

100 clusters, without inclusion of polarisation,and running on 12 Intel Xeon E5520 2.27 GHz CPU cores lasts 16 min. The same kind of MD simulationperformed on the same type of processors for A309+

309 clusters lasts a bit less than 3 h. The physical memoryused by the code also increases from about 44 MB to 74 MB for the whole job.References:

[1] D. A. Bonhommeau, M.-P. Gaigeot, Comput. Phys. Commun. 184 (2013) 873–884.

© 2013 Elsevier B.V. All rights reserved.

1. Introduction

Charged clusters or droplets can be found in a number of re-search fields in physics and chemistry, from condensed matterphysics with the study of rare-gas and carbon clusters [1,2], to at-mospheric physics with the study of aerosols [3], or proteomicswith the study of electrosprayed droplets [4]. These systems canbe investigated byMonte Carlo (MC) andmolecular dynamics (MD)simulations for determining their equilibrium structures, thermo-dynamic properties (such as heat capacities), and fragmentationmechanisms when they are intrinsically unstable.

In our recent work [5], we presented a Monte Carlo programdevoted to the study of structural and thermodynamic propertiesof multiply charged clusters, called MCMC2 (acronym standing for‘‘Monte Carlo code for Multiply Charged Clusters’’), with peculiaremphasis on the added value such a code could bring to theinvestigation of charged droplets produced during electrosprayionisation (ESI) experiments combined with mass spectrometry(MS) techniques. MCMC2 follows a mesoscopic coarse-grainedapproach to investigate structural and thermodynamic propertiesof charged droplets in the NVT ensemble. In our representation, a

droplet is modelled as a cluster composed of neutral and chargedspherical particles (or grains) that may be polarisable. Consideringour prime interest is the modelling of droplets formed in ESIexperiments, a neutral particle can be seen as a coarse grainfor solvent molecules (e.g., water, methanol, acetonitrile, or anymixtures of them) as typically used in ESI to investigate proteinsand non-covalent protein complexes [6,7]. A charged particle canrepresent a biomolecule (e.g., a peptide, a protein or an amino acid),ionised water (a grain of water including one hydronium ion), or acounterion with its immediate solvation shell.

We use the following nomenclature (also applied in Ref. [5])for charged droplets with k types of positively charged particleswith individual charge +qi (qi > 0, i ∈ {1, . . . , k}) and l typesof negatively charged particles with individual charge −q′

j (q′

j >

0, j ∈ {1, . . . , l}): A(n1,...,nk)+(m1,...,ml)−N , whereN is the total number

of particles, ni is the number of positively charged particles oftype i, and mj is the number of negatively charged particles oftype j. The total cluster charge Q is thus equal to

ki=1 niqi −l

j=1 mjq′

j . Droplets with only one type of charged particles aresimply denoted An+

N for positive charges and Am−

N for negative

Page 3: MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

686 D.A. Bonhommeau, M.-P. Gaigeot / Computer Physics Communications 185 (2014) 684–694

charges. All the grains have the same size. In MCMC2 and MDMC2,the potential energy surface is a sum of 2-body Lennard-Jonespotentials (main cohesive contribution) and electrostatic termsthat may include polarisation (N-body term), with no restrictionimposed on the values of particle charges and polarisabilities. Ourprograms were developed in reduced units (i.e., dimensionlessunits) to make themmore general and applicable to a large varietyof systems.

MCMC2 was first used to study the stability of positivelycharged clusters as a function of the cluster characteristics (size,number of charged particles, and value of the reduced charge car-ried by charged particles) and temperature to more deeply under-stand the conditions under which charged particles are prone tolocate at the cluster surface and eventually evaporate [8,9]. Al-though this program provides relevant information on equilibriumstructures, heat capacities, average energies, radial and angulardistributions, or number of surface particles, the time-dependentinvestigation of the fragmentation processes requires MD simula-tions to be performed.

We have thus developed the MDMC2 code (acronym stand-ing for ‘‘Molecular Dynamics code for Multiply Charged Clusters’’)to achieve such a goal. It is a parallel molecular dynamics pro-gram based on the same potential energy-surface as MCMC2 (seeSection 2.1) and whose input configuration files are compatiblewith MCMC2 output configuration files. Therefore, MDMC2 alsofollows the coarse-grained approach to simulate the dynamicsof charged clusters and resembles, in that respect, the approachadopted by Jortner et al. to study the fragmentation dynamics offully-charged clusters [10–12], although the cohesive interactionswere modelled by Morse potentials in their work. On the contrary,the MDMC2 approach is conceptually different from microscopicall-atom representations used by the groups of Vertes [13], Kon-ermann [14,15], Consta [16,17], Gerber [18], or van der Spoel [19],that explicitly modelled the dynamics of atomic ions, peptides orproteins inside water droplets to shed some light on the propertiesof droplets produced by ESI.

MDMC2 is also distributed with CGMC2 (acronym standingfor ‘‘Conjugate Gradient for Multiply Charged Clusters’’), a localminimisation program based on the same derivatives as MDMC2

and supplied as a valuable tool for treating both MDMC2 andMCMC2 results. This program was recently used to characterisethe influence of temperature and charges on the energy landscapeexplored during Monte Carlo simulations [9].

The present paper aims to precisely describe MDMC2. Section 2recalls the definition of reduced units and the main features of thepotential-energy surface (precisely presented in Ref. [5]), and de-tails the potential energy derivatives needed for integrating clas-sical equations of motion. Section 3 gathers the instructions forcompiling and running the code, describes the available function-alities, and the content of input and output files. Section 4 presentsthe CGMC2 minimisation program. Finally, Section 5 reports someapplications of MDMC2 and CGMC2 related to the fragmentation ofelectrosprayed droplets and the exploration of energy landscapes.

2. Method

2.1. Potential-energy surface

2.1.1. General expressionThe potential-energy surface used in the present work is a sum

of pairwise Lennard-Jones interactions and electrostatic interac-tions where polarisation is included according to the point dipolesmodel of Thole [20]. This surface is expressed in reduced units (la-belled with an asterisk), namely

Distances and energies: r∗=

, U∗=

Uu

(1a)

Velocities: v∗= v

mu

(1b)

Time: t∗ = t

umσ 2

(1c)

Charge and polarisability: q∗=

q√4πϵ0σ u

,

α∗=

α

4πϵ0σ 3

(1d)

Induced dipole moment: p ∗=

p4πϵ0σ 3 u

(1e)

where ϵ0 is the vacuum permittivity, and u and σ are the Lennard-Jones pair well-depth and diameter (identical for all the sphericalparticles in the current version of the code). For the sake of simplic-ity, the asterisks will be discarded in the rest of this paper, keepingin mind that all the formulae will be expressed in reduced unitsthroughout the paper. By convention, 3-dimension vectors will belabelled with arrows (e.g., Ei is the electric field on particle i) and3N-dimension vectors will be written in bold (e.g., E is the electricfield vector for all the particles).

The potential-energy surface is written

U(r) =

Ni,j=1j>i

4

1r12ij

−1r6ij

+

12

Npoli=1

pi[αi]−1pi

+12

Ni,j=1i=j

(qi + pi∇i)(qj − pj∇i)φs(rij) (2)

where N is the total number of particles, Npol is the number ofpolarisable particles (Npol ≤ N), and φs(rij) is the Thole dampingfunction defined in Refs. [20,21]

φs(rij) =1rij

1 −

1 +

aγij

2

e−aγij

=

C0

rij(3)

with a = 2.1304 and γij =rij

(αiαj)1/6, where φs(rij) reduces to 1/rij

when the Thole damping is not taken into account (C0 = 1).The procedure for calculating the induced dipole moments pi

has been presented elsewhere [5] and will not be detailed here.However, we can notice that unlike MCMC2 that enabled the useof three methods (based on (1) LU decomposition of [R], (2) self-consistent dipole evaluation, and (3) matrix inversion of [R]) forcalculating the induced dipoles, MDMC2 always compute themby solving the system of linear equations (i.e., method (1) abovementioned)

E = [R]P (4)

where E is the 3N-dimension electric field vector, [R] is the3Npol × 3Npol polarisation matrix, and P is the 3N-dimensiondipolemoment vector.We selected thismethod because it is muchless time consuming than matrix inversion and, unlike the self-consistent method, it is deemed to be possibly optimised in thenear future by replacing the standard LAPACK LU decompositionroutine currently used by an Intel or parallel LAPACK routine.

2.1.2. Expansion of the PESThe general expression of the PES in Eq. (2) can be divided into

five terms:

U(r) = VLJ + Vqq + Vqd + Vdd + Vα (5)

where VLJ is the Lennard-Jones interaction, Vqq, Vqd, and Vdd are re-spectively the charge–charge, charge–induced dipole, and induced

Page 4: MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

D.A. Bonhommeau, M.-P. Gaigeot / Computer Physics Communications 185 (2014) 684–694 687

dipole–induced dipole interactions, and Vα is the polarisation term(based on particle polarisabilities). Their respective expressionsare:

VLJ =

i,jj>i

4

1r12ij

−1r6ij

(6a)

Vqq =12

i,ji=j

qiqjφs(rij) =12

i,ji=j

C0qiqjrij

, (6b)

Vqd =12

i,ji=j

(qjpi − qipj)∇iφs(rij)

=12

i,ji=j

C1(qjpi − qipj) · rij

r3ij, (6c)

Vdd = −12

i,ji=j

pipj∇2i φ

s(rij)

=12

i,ji=j

p Ti

1r3ij

C1I3 − 3

C2 [Aij]

r2ij

pj

=12

i,ji=j

p Ti [T Thole

ij ]pj, (6d)

Vα =12

Npoli=1

pi[αi]−1pi, (6e)

where

C0 = 1 −

1 +

aγij

2

e−aγij ,

C1 = 1 −

1 + aγij +

(aγij)2

2

e−aγij ,

C2 = C1 −(aγij)

3

6e−aγij ,

[Aij] =

(xj − xi)2 (xj − xi)(yj − yi) (xj − xi)(zj − zi)(yj − yi)(xj − xi) (yj − yi)2 (yj − yi)(zj − zi)(zj − zi)(xj − xi) (zj − zi)(yj − yi) (zj − zi)2

(7)

and I3 is the 3 × 3 identity matrix. Removing the Thole dampingfunction (see Eq. (3)) would lead to C0 = C1 = C2 = 1. We haverecalled here the main features of the potential-energy surface, formore details on dipole moments and the possible addition of anexternal electric field in the simulation, the reader is referred toour previous MCMC2 code [5].

2.2. Classical dynamics

2.2.1. GeneralitiesA typical MD simulation is composed of Ntraj independent

trajectories (no MPI communication between trajectories in thepresent version of the code) startingwith different input configura-tion files (see Section 3.3.1 for a description of input configurationfiles). These input configuration files must, at least, contain parti-cle positions and charges. Polarisabilities are only required in theinput files if polarisation interactions are taken into account (seekeyword ‘‘ENERGY’’ in Section 3.2). Velocities can be read from theinput file or randomly generated from the knowledge of a referencetemperature Tref (see Section 2.2.2).1

1 TheMCMC2 output configuration files can be used as inputs ofMDMC2 althoughthey do not contain any velocity. If the user wants to use a MC configuration as

Each individual trajectory is then a succession of two stages:an equilibration/thermalisation stage during which the systemmay be periodically thermalised (NVE simulation with velocityrescaling in order to reach the target temperature) that may bereplaced by equilibrated configurations coming from preliminaryMonte Carlo simulations from MCMC2 [5], and an accumulationstage (pure NVE simulation). The characteristics of these twostages are described below (see also the keyword ‘‘DYNAMICS’’ inSection 3.2).

2.2.2. Initial velocities and thermalisationAt the beginning of the MD simulation, initial velocities can

be obtained by scaling an initial guess of random velocities v 0i

(i ∈ [1,N], where N is the number of particles) placed into thecentre-of-mass frame [22].

vix = (v0ix − v0

x,COM)Vtherm/Vkin, (8a)

viy = (v0iy − v0

y,COM)Vtherm/Vkin, (8b)

viz = (v0iz − v0

z,COM)Vtherm/Vkin. (8c)

where the kinetic energy Vkin and the thermal energy Vtherm are de-fined as

Vkin =12

Ni=1

j={x,y,z}

(v0ij − v0

j,COM)2, (9a)

Vtherm =3N − 6

2Tref. (9b)

In the previous equations, Tref is a reference temperature (see key-word ‘‘CONFIG’’ in Section 3.2) and v 0

i (i ∈ [1,N]) is the ini-tial guess of velocities created by generating 3N random numbersξij ∈ [0, 1] (i ∈ [1,N], j ∈ {x, y, z})

v0ix = ξix − 1/2, (10a)

v0iy = ξiy − 1/2, (10b)

v0iz = ξiz − 1/2. (10c)

The cluster velocities can also be periodically rescaled duringthe equilibration phase by following the same scaling technique(see keyword ‘‘DYNAMICS’’ in Section 3.2).

2.2.3. Integration of classical equations of motionThe classical molecular dynamics of multiply charged clusters

is performed by solving the classical Hamilton equations of motionexpressed in reduced units

∂ri∂t

= vi, (11a)

∂pi∂t

= −∇iU(r), (11b)

where i ∈ [1, 3N], ri are the particle positions, vi are the particlevelocities, and pi are the particle linear momenta (in this sectiononly).Due to the scaling procedure for getting reduced units (see Sec-tion 2.1.1), and knowing that all the particles are considered tohave the same mass (mi = m), the reduced linear momentum

matches the reduced velocity for all i: p∗

i =1

√miu

pi =

miu vi = v∗

i .

input of MDMC2 it is therefore recommended to generate random initial velocitiesin MDMC2 .

Page 5: MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

688 D.A. Bonhommeau, M.-P. Gaigeot / Computer Physics Communications 185 (2014) 684–694

In the rest of the paper, the symbol pi will be exclusively dedicatedto dipole moments.The classical dynamics is performed by using a velocity verletintegrator

ri(t + dt) = ri(t) + vi(t)dt −dt2

2∇iU(r(t)), (12a)

vi(t + dt) = vi(t) −dt2

[∇iU(r(t)) + ∇iU(r(t + dt))] . (12b)

The main asset of the MDMC2 code is to supply the user witha batch of quasi-analytical2 derivatives for the potential-energysurface, including polarisation. The most general expressions ofderivatives (including polarisation and Thole damping) are givenin the following section.

2.2.4. Potential-energy derivativesWe need to calculate the derivatives of U(r) (see Eq. (2)).

Due to the large number of derivatives, we only present in therest of the text typical derivatives obtained when including Tholedamping. All the other derivatives can be deduced by removing theterms with ‘‘aγij’’ or replacing the [T Thole

] (see Eq. (6d)) matrix bythe [T ] matrix (if polarisation without Thole damping is desired),removing the terms with dipole moments (if polarisation is notdesired at all), and applying circular permutation of x, y, and zcoordinates.

We recall that from now on, symbols pi apply to dipole mo-ments.Derivatives of VLJ(r)

∂VLJ

∂xk= 24

j=k

xj − xkr2kj

2r12kj

−1r6kj

. (13)

Derivatives of Vqq(r)

∂Vqq

∂xk= qk

j=k

qjxj − xk

r3kjC1. (14)

Derivatives of Vqd(r)

∂Vqd

∂xk=

12

i,ji=j

C1

A(k)ij + B(k)

ij + C (k)ij

+D(k)ij

(qjpi − qipj) · rijr3ij

(15)

where

A(i)ij = −A(j)

ij = 3xj − xir5ij

(qjpi − qipj) · rij, (16a)

B(k)ij =

xj − xir3ij

qj

∂pix∂xk

− qi∂pjx∂xk

(k = i, k = j), (16b)

B(i)ij =

xj − xir3ij

qj

∂pix∂xk

− qi∂pjx∂xk

qjpix − qipjxr3ij

, (16c)

B(j)ij =

xj − xir3ij

qj

∂pix∂xk

− qi∂pjx∂xk

+

qjpix − qipjxr3ij

, (16d)

2 We talk about ‘quasi-analytical’ derivatives since dipole moments arecalculated numerically by LU decomposition. Thus, we do not have an analyticalexpression of dipole moments.

C (k)ij =

yj − yir3ij

qj

∂piy∂xk

− qi∂pjy∂xk

+

zj − zir3ij

qj

∂piz∂xk

− qi∂pjz∂xk

, (16e)

D(i)ij = −D(j)

ij = −xj − xir2ij

(a γij)3

2e−a u, (16f)

since A(i)ij and D(i)

ij are only non-zero if k = i or k = j.

Derivatives of Vdd(r).

∂Vdd

∂xk=

12

i,ji=j

∂ pi∂xk

[T Tholeij ]pj + pi

∂[T Tholeij ]

∂xkpj

+ pi [T Tholeij ]

∂ pj∂xk

. (17)

Derivatives of Vα(r).

∂Vα

∂xk=

Ni=1

∂ pi∂xk

[αi]−1pi (18)

where [αi]−1 is a 3 × 3 diagonal matrix with 1/αi as diagonal

elements.

2.2.5. Useful derivativesThe previous section shows that the derivatives of U(r) can

be quasi-analytically calculated provided that the dipole momentderivatives are known. This section demonstrates how suchderivatives are calculated. According to Eq. (4) we canwrite (whenincluding Thole damping)

[R]∂P∂xk

=

∂E∂xk

−∂[T Thole

]

∂xkP

(19)

since polarisabilities are assumed constant. When posing A =

[R], B =∂E∂xk

−∂[TThole]

∂xkP, and X =

∂P∂xk

, solving Eq. (19) amountsto solve the AX = B system of linear equations. This is feasi-ble since the only unknown terms in Eq. (19), namely ∂E/∂xk and∂[T Thole

]/∂xk, can be calculated analytically since analytical formu-lae for E and [T Thole

] are known.We remind that themethod basedon the resolution of a system of linear equations has been selectedto compute dipoles because the future use of Intel libraries or par-allel LAPACK libraries should largely improve its execution speed.Derivatives of E.

We restrict our discussion to the derivatives ∂ Ei∂xk

from whichall the other electric field derivatives can be easily deduced. Wedenote by ex, ey, ez the 1D Cartesian unit vectors.

∂ Ei∂xk

= −qk[T Thole

ik ]xx ex + [T Tholeik ]xy ey + [T Thole

ik ]xz ez

(k = i), (20a)

∂ Ek∂xk

=

j=k

qj[T Thole

kj ]xx ex + [T Tholekj ]xy ey + [T Thole

kj ]xz ez. (20b)

Also note that an external electric field can be added in theequations as also presented inMCMC2 [5]. However, this additionalelectric field is always constant in the present code and does notalter the derivatives.Derivatives of [T Thole

].Deriving thematrix elements of the [T Thole

]matrices (with run-ning indices denoted i and j) according to xk involves the derivation

Page 6: MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

D.A. Bonhommeau, M.-P. Gaigeot / Computer Physics Communications 185 (2014) 684–694 689

of matrix elements corresponding to three types of 3×3matrices:[T Thole

ij ] matrices with k = {i, j}, [T Tholeik ] matrices with k = i, and

[T Tholekj ]matriceswith k = j. Knowing that the [T Thole

ij ]matrices onlydepend on the positions of particles i and j (no dependence on k),and that [T Thole

kj ] = [T Tholejk ], it is finally sufficient to calculate the

derivatives of the [T Tholeik ] matrix in order to deduce the whole set

of derivatives that correspond to the complete [T Thole] matrix.

[T Tholeik ] is a real symmetric matrix composed of 9 elements.

Knowing that the Cartesian coordinates y and z play equivalentroles in the calculation of [T Thole

ik ] derivatives with respect to xk,we can finally limit our calculation to 4 out of 9 matrix elements,namely:

Matrix element 1 :∂[T Thole

ik ]yz

∂xk,

Matrix element 2 :∂[T Thole

ik ]zz

∂xk,

Matrix element 3 :∂[T Thole

ik ]xz

∂xk,

Matrix element 4 :∂[T Thole

ik ]xx

∂xk.

The 5 other matrix elements, i.e., ∂[T Tholeik ]zx/∂xk, ∂[T Thole

ik ]xy/∂xk,∂[T Thole

ik ]yy/∂xk, ∂[T Tholeik ]yx/∂xk, and ∂[T Thole

ik ]zy/∂xk, can be easilydeduced by permuting y and z in the 4 previous matrix elementsand using the symmetry of [T Thole

ik ].The explicit expressions for these derivatives are

∂[T Tholeik ]yz

∂xk=

(xk − xi)(yk − yi)(zk − zi)r7ik

×

15C1 − (5 + aγik)

(aγik)3

2e−aγik

, (21a)

∂[T Tholeik ]zz

∂xk=

xk − xir5ik

1 −

5 (zk − zi)2

r2ik

×

−3C1 +

(aγik)3

2e−aγik

(xk − xi)(zk − zi)2

r7ik

(aγik)4

2e−aγik , (21b)

∂[T Tholeik ]xz

∂xk= −

3 (zk − zi)r5ik

1 −

5 (xk − xi)2

r2ik

C1

+zk − zir5ik

(aγik)3

2e−aγik

×

1 −

(xk − xi)2

r2ik(5 + aγik)

, (21c)

∂[T Tholeik ]xx

∂xk= −

9 (xk − xi)r5ik

1 −

5 (xk − xi)2

3 r2ik

C1

+xk − xi

r5ik

(aγik)3

2e−aγik

×

3 −

(xk − xi)2

r2ik(5 + aγik)

. (21d)

These derivatives combined to the electric field derivatives enablethe resolution of the linear system of equation (19) that finallyleads to the derivatives of the induced dipole moments.

3. Code instructions

3.1. MDMC2 distribution

3.1.1. General presentationThe MDMC2 distribution is composed of four folders:

• DOC/: a folder dedicated to the storage of documents such asthe PDF file of the present paper.

• RUN/: a folder that can be used for running jobs. By default, itcontains a folder called TESTRUNS/ with 5 test cases: 1 with-out polarisation (TR1-NOPOL), 2 with polarisation but differentinput configuration files (TR2-POL and TR3-POL), 2 with polari-sation and Thole damping but different input configuration files(TR4-DAMPOL and TR5-DAMPOL).

• SRC/: a folder that contains the source code written in fortran90.

• CGMC2-v1.0/: a folder that contains the first version of CGMC2,a program to perform local minimisation of configurations ob-tained from MCMC2 and MDMC2.

3.1.2. CompilationMDMC2 has been implemented in fortran 90 with MPICH2 as

default library for MPI routines. This code has been tested onseveral platforms with several compilers and MPI libraries. A listof compatible (or at least tested) configurations is listed below:

• Platforms: x86 linux clusters (Intel Xeon processors), IBM(Power 6 processors).

• Compilers: gfortran, pgf90/pgf95, g95, xlf, ifort (version 13.1.0or later since previous versions were found to sometimesprovide spurious results).3

• MPI libraries: MPICH2, OpenMPI.

TheMakefile calls theMPI command ‘‘mpif90’’ for compiling thecode. If the default compiler linked to theMPI library is ‘‘ifort’’ (ver-sion below 13.1.0), it is highly recommended to recompile the MPIlibrary with another compiler (see the list above). The compilationof the MDMC2 code is performed by selecting or adding the user-preferred compiler in the Makefile and typing ‘‘make’’. The compi-lation produces an executable called ‘‘MDMC2-v1.0’’ (default).

3.1.3. Running test casesAfter properly compiling the code, parallel jobs can be run by

• typing ‘‘mpiexec -np 4 ./MDMC2-v1.0’’ for a 4-trajectory MDsimulation.

• submitting a job via a batch scheduling script with softwaressuch as PBS, SLURM, or LoadLeveler.

3.2. Code keywords

Activation and deactivation of MDMC2 code functionalities aswell as setting up of some parameters such as the dynamics timestep aremanaged by a setup file based on a keyword structure. Thewhole set of keywords and defaults (hardcoded) is listed below inalphabetical order.

• CONFIG FILE_NAME_ROOT root_file COMPOSITION posvel: Set-ting parameters for the initial conditions of the dynamics.root_file is the prefix used for the configuration file names.posvel allows the user to choose the type of data provided asinput. If posvel = 0 the input file should only contain positions.If posvel = 1 the input file should contain positions and veloc-ities. Default: root_file = md-config, posvel = 0.

3 This comment on ifort also stands for MCMC2 . This will be indicated in a futureversion of MCMC2 .

Page 7: MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

690 D.A. Bonhommeau, M.-P. Gaigeot / Computer Physics Communications 185 (2014) 684–694

• CONSERVATION ETOT letot detotlim JTOT ljtot djtotlim COM lr-pcom comlim: Setting parameters for defining the thresholdsabove which conservation laws are assumed to be violated.detotlim is the threshold for testing the total energy conserva-tion, djtotlim is the threshold for testing the total angular mo-mentum conservation, comlim is the threshold for testing theconservation of the centre-of-mass position and linearmomen-tum. The two first thresholds (detotlim and djtotlim) are relativeerrors, the third one (comlim) is an absolute error but matchesa relative error since the cluster is initially placed in the centre-of-mass frame. letot, ljtot, and lrpcom are Boolean numbers thatallows the activation or deactivation of the test on total energy,total angular momentum, and centre-of-mass position/linearmomentum conservation.Default: letot = .true., detotlim = 10−5, ljtot = .false., djtotlim= 10−5, lrpcom = .false., and comlim = 10−10.

• DYNAMICS TRAJNB N_traj STEP deltat EQUILIBRATION neqntherm SIMULATION ndyn nconf : Setting parameters of the dy-namics. N_traj is the number of trajectories to be run in paral-lel. deltat is the time step of the dynamics. neq is the numberof equilibration steps and ntherm is the frequency (in numberof equilibration steps) of thermalisations. ndyn is the numberof accumulation steps and nconf is the frequency (in numberof accumulation steps) of configuration printing during the dy-namics.Default: N_traj = 1, deltat = 10−4, neq = 0, ntherm = 10,ndyn = 1000, and nconf = 100.

• EFIELD USE lExt COMPONENTS Ex Ey Ez: Definition of the x, y,and z components of an external electric field if lExt = .true..Default: lExt = .false., Ex = 0, Ey = 0, Ez = 0.

• ENERGY POLARISATION polswitch: polswitch allows the user tochoose whether polarisation has to be included in the simu-lation (0 = no polarisation, 1 = polarisation without Tholedamping, 2 = polarisation with Thole damping).Default: polswitch = 0.

• EVAPORATION radius: radius allows the user to set the distancefrom the centre of mass above which the cluster is assumed toexperience evaporation. This radius is only used for checkingthe presence of evaporation in the initial configurationprovidedby the user.Default: radius = 10.

• PRINTINGS print_every: print_every is the frequency (in numberof accumulation steps) of printing for information on conserva-tion laws.Default: print_every = 100.

• SEED INITIALIZATION seed(1) seed(2) seed(3) seed(4) SCALINGnsc(1) nsc(2) nsc(3) nsc(4): Choice of the random number gen-erator seeds that initialise the LAPACK4 random number gen-erator. Four seeds must be provided as input and seed(j) (j ∈

{1, 2, 3, 4})must be positive integers below 4095 and such thatseed(4) is odd. N_traj (number of trajectories) secondary seedsare generated from these primary seeds. By default, these sec-ondary seeds are obtained by doing seedi(j) = seed(j)+i×nsc(j)for j ∈ {1, 2, 3} and seedi(4) = seed(4) + 2i × nsc(4) (since allthe seeds seedi(4) must remain odd) where i is the trajectorynumber.Defaults: seed(j) = 0 for j ∈ {1, 2, 3}, seed(4) = 1, nsc(j) = 1for j ∈ {1, 2, 3, 4} (i.e., seedi(j) = i for j ∈ {1, 2, 3} andseedi(4) = 1 + 2i).

4 LAPACK version 3.4.1, http://www.netlib.org/lapack/.

• TEMPERATURE kt: kt is the temperature used for thermalisationduring the equilibration phase.Default: kt = 0.1.

3.3. Input and output files

3.3.1. Input files• ‘‘setup’’: setup file for MDMC2 simulations based on a keyword

structure (see Section 3.2). Examples of setup files are providedin the RUN/TESTRUNS/ folder.

• ‘‘root_file-yyyy.dat’’: initial cluster configuration for trajectoryyyyy (one trajectory by CPU core). Note that the number ofparticles is determined from data present in this file.File structure (4–8 columns): positions (x, y, z), velocities(vx, vy, vz) (needed if posvel = 1), charge, polarisability (neededif polarisation is included).

3.3.2. Output files• ‘‘cluster_md-yyyy.out’’: standard output file of trajectory yyyy

with printing of some statistical data (average energies, energyfluctuations) and information on the conservation of somequantities (total energy, total angular momentum, etc.).

• ‘‘root_file-yyyy-fin.dat’’: final cluster configuration.File structure (2 columns): positions (x, y, z), charge, polaris-ability (if applicable).

• ‘‘geometry-ini-yyyy.xyz’’: initial cluster configuration for tra-jectory yyyy, file in XYZ format.

• ‘‘velocity-ini-yyyy.xyz’’: initial velocities for trajectory yyyy.If no velocity is supplied by the user this file contains thevelocities randomly generated by MDMC2 (posvel = 0), file inXYZ format.

• ‘‘geometry-eq-yyyy.xyz’’: cluster geometry after equilibrationfor trajectory yyyy, file in XYZ format.

• ‘‘velocity-eq-yyyy.xyz’’: cluster velocities after equilibration forthe yyyy trajectory, file in XYZ format.

• ‘‘geometry-movie-yyyy.xyz’’: cluster configurations along thedynamics for trajectory yyyy, file in XYZ format.

• ‘‘velocity-movie-yyyy.xyz’’: cluster velocities along the dynam-ics for trajectory yyyy, file in XYZ format.

• ‘‘geometry-dyn-yyyy.xyz’’: cluster geometry at the end of thedynamics for trajectory yyyy, file in XYZ format.

• ‘‘velocity-dyn-yyyy.xyz’’: cluster velocities at the end of thedynamics for trajectory yyyy, file in XYZ format.

Note that all the XYZ output files are copied in a folder called‘‘MOVIE/’’ that must be created before running any dynamic simu-lation.

3.3.3. Particle labelsParticles are labelled in the same way as in MCMC2 [5]. De-

pending on the nature of a particle (charged or neutral, polaris-able or non-polarisable), the code automatically assigns to it anatomic symbol from the first five rows of the periodic table (54possible atomic symbols + ‘‘D’’ for deuterium). This functionalityaims at favouring the cluster visualisation with softwares such asVMD (see XYZ files such asmovie-yyy.xyz files) [23]. By default, theneutral non-polarisable particles are assigned the atomic symbol‘‘N’’. The first type of charged non-polarisable particles is assignedthe atomic symbol ‘‘C’’. The other types of charged non-polarisableparticles (different q values) are assigned the atomic symbols ‘‘H’’,‘‘D’’, ‘‘He’’, . . . ,‘‘Ar’’ (‘‘C’’ and ‘‘N’’ are obviously not used). The differ-ent types of charged polarisable particles are assigned one of the18 atomic symbols of the 4th row of the periodic table (from ‘‘K’’to ‘‘Kr’’) depending on their charge and polarisability. The differ-ent types of neutral polarisable particles are assigned one of the

Page 8: MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

D.A. Bonhommeau, M.-P. Gaigeot / Computer Physics Communications 185 (2014) 684–694 691

18 atomic symbols of the 5th row of the periodic table (from ‘‘Rb’’to ‘‘Xe’’) depending on their polarisability. If the cluster containsmore than 18 charged non-polarisable, charged polarisable, orneutral polarisable particles the code will stop since XYZ fileswould not be properly generated although the MD simulationwould not be affected. A summary of detected classes of particleswith their automatically assigned symbols is written at the begin-ning of the standard output files.

4. The CGMC2 program

4.1. General presentation

The CGMC2 (acronym for ‘‘Conjugate Gradient for MultiplyCharged Clusters’’) program was developed as a serial tool forperforming local minimisations on configurations explored duringMCMC2 and MDMC2 simulations. In this context, CGMC2 is basedon the same derivatives as MDMC2 (see Sections 2.2.4 and 2.2.5). Itis organised in two folders:

• RUN/: a folder that can be used for running jobs. By default, itcontains a folder called TESTRUNS/ with 5 test cases: 1 with-out polarisation (TR1-NOPOL), 2 with polarisation but differ-ent input configuration files (TR2-POL and TR3-POL), 2 withpolarisation and Thole damping but different input configura-tion files (TR4-DAMPOL and TR5-DAMPOL). The ‘‘cg-config.dat’’input files used in these test runs are identical to the ‘‘md-config-0001.dat’’ input files used in MDMC2 test cases.

• SRC/: a folder that contains the source code written in fortran90.

This serial program is compiled by typing ‘‘make’’ in the SRC/folder provided that the proper compiler has been selected oradded in the Makefile. The compilation produces an executablecalled ‘‘CGMC2-v1.0’’ (default).

4.2. Running a local minimisation

Running a local minimisation with CGMC2 only requires oneinput configuration file called ‘‘cg-config.dat’’ (default), a setup file(see test cases in RUN/TESTRUNS/ for examples of setup files), andthe CGMC2-v1.0 executable. The configuration file must have thesame structure as the MCMC2 or MDMC2 input configuration files,namely three columnswith Cartesian coordinates, a fourth columnfor charges, and a last column for polarisabilities. The setup file islimited to three keywords:

• MINIMISATION itmax: Maximum number of minimisation stepsto be performed. Default: itmax = 1000.

• ENERGY POLARISATION polswitch: Choice of the potentialenergy surface (see Section 3.2).

• EFIELD lExt COMPONENTS Ex Ey Ez: External electric fieldcomponents (see Section 3.2).

CGMC2 can be run by typing ‘‘./CGMC2-v1.0 > CGMC2-v1.0.out’’.

4.3. Output files

Three files are created after executing CGMC2:

• ‘‘CGMC2-v1.0.out’’: standard output file that indicates thenumber of steps needed to reach the convergence criterion andthe energy of the final minimised configuration. This file is notcreated by default, the information is interactively listed whenno output file is specified.

• ‘‘geometry-ini.xyz’’: initial configuration in XYZ format.• ‘‘minconf.xyz’’: final minimised configuration in XYZ format.

5. Applications

We present here three applications based on MDMC2 andCGMC2 simulations. The first application focuses on the dynamicsof An+

100 charged clusters performed with our MDMC2 code, in rela-tion with electrosprayed charged droplets. The second applicationusesMDMC2 to follow the time-dependent deformation of clustersand relates it to applications in nuclear physics. The third one illus-trates the use of CGMC2 code to determine the local energyminimaexplored during classical MC simulations performed with MCMC2

on An+147. These local minima are compared to global minima ob-

tained with the GMIN program [24].

5.1. Fragmentation dynamics of charged clusters

In this part, we illustrate one use of the MDMC2 code for deter-mining the fragmentation products of charged clusters. The par-tially charged cluster A10+

100 (q = 2.5,Q = 25, Tref = 0.37) andthe fully charged cluster A100+

100 (q = 0.4,Q = 40, Tref = 0.29)are taken as examples. The individual grain charge q, total clustercharge Q , and reference temperature of the initial configurationsare indicated between parentheses for the sake of completenessand clarity. These two clusterswere selected for their propensity toeasily fragment due to their large total charge Q , presumably closeto the Rayleigh limits of these clusters. The initial configurationsused for the MD simulations are taken at liquid-state tempera-tures frompreliminaryMC simulations (2×108 equilibration stepsand 108 accumulation steps) performed with MCMC2 in a smallspherical container (radius of 4) to prevent any extensive fragmen-tation prior to the dynamical study. Note that we have noticed[8,9] that clusters composed of a larger number of charged individ-ual particles could stand a higher total charge Q before undergo-ing severe losses of particles due to fragmentation. Fully-chargedclusters should therefore have the larger Rayleigh charge limit. Thepresent MD simulations are one way to assess the Rayleigh chargelimit.

Mass spectra obtained from the fragmentation dynamics ofA10+100 and A100+

100 clusters5are plotted in Fig. 1. The spectra areaveraged over 1200 trajectories run during 2 × 106 time steps ofsize δt = 10−4 (in reduced units of time).

Charged liquid clusters with a small number of chargedparticles and a relatively high individual charge q, such as A10+

100with q = 2.5,Q = 25 and Tref = 0.37, should tend to ejectcharged individual particles due to theCoulomb repulsion betweenthem, in order to stabilise a cluster with a lower total chargeQ (see our MC calculations in Ref. [9]). Charged particles of thiscluster are indeed localised at the surface of the cluster and caneasily evaporate. The mass spectrum6 consequently exhibits onepredominant peak at fragment mass Mfrag = 1 (see Fig. 1(a)) andfragment charge Qfrag = 2.5 that characterises the evaporation ofindividual charged particles from the parent A10+

100 cluster at liquid-like temperature (T ≈ 0.37).

This is the predominant peak in the spectrum of A10+100 and we

found that 5.8 individual charged particles evaporate on averagefrom the parent A10+

100 cluster. The other fragments observed in themass spectrum have masses Mfrag ≈ 95 and total charges Qfragbetween 5 and 15, as illustrated in the inset of Fig. 1(a). In otherwords, the clusters remaining after a dynamics of 2×106 time stepsare only composed of 2–6 charged particles, on average. Theirmass

5 The program to generate mass spectra uses the output configuration files ofMDMC2 but is not provided with MDMC2 .6 In reduced units, the mass is in fact included in the reduced time, the ‘‘reduced

mass’’ is therefore considered to match the fragment number of particles.

Page 9: MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

692 D.A. Bonhommeau, M.-P. Gaigeot / Computer Physics Communications 185 (2014) 684–694

(i.e.,Mfrag ≈ 95) also demonstrates that someneutral particlesmayevaporate from the parent cluster.

For fully charged clusters, such as A100+100 with q = 0.4,Q = 40,

and an initial temperature of Tref = 0.29, individual particle evap-oration is still present but as a secondary source of particle loss(fragmentation process about 3 times less intense than for A10+

100 )since only 1.8 charged particle is lost at the end of the dynamics(see Fig. 1(b)). As depicted in the inset of Fig. 1(b), the main out-come of the dynamics corresponds to the splitting of A100+

100 clustersinto several charged fragments with masses essentially comprisedbetween30 and70. This fissionmechanismhas also been identifiedby Jortner et al. [10,12] when studying fully-charged clusters. Notethat fission processes are the cornerstone of the Charge ResidueModel (CRM) used to account for the fragmentation of electro-sprayed droplets, this model inferring that charged droplets frag-ment by successive fissions thenproducing series of small offspringdroplets [25,26]. Our simple model for coarse-grained dynamicsof charged clusters is thus able to provide information on suchfragmentation dynamics, whether this dynamics proceeds throughCoulomb explosion (case 1) or fission (case 2).

5.2. Deformations of charged clusters

Mass spectra of fragment distributions have been presentedabove at the final time of the dynamics, but they could be plottedfor any time step of the dynamics. They would then provide anoverview of the fragment distributions as a function of time butwould not provide any direct view of the fragmentation pathwaysand mechanisms. To that end, and in particular in order tocharacterise more precisely the earlier stages of the fragmentationprocess, one can look at the time-dependent evolution of thetrajectorywith visualisation softwares such as VMD [23], using theconfiguration files recorded by MDMC2. To be more quantitative,one can compute a cluster asymmetry parameter κ as sometimesused in rotational spectroscopy for the study of asymmetric topmolecules [27]. One can thus define

κ =2B − A − C

A − C. (22)

In this equation, A = I−1a , B = I−1

b , and C = I−1c where Ix (x ∈

{a, b, c}) are the three moments of inertia such as A ≥ B ≥ C . Theκ parameter can evolve from −1 (prolate symmetric top) to +1(oblate symmetric top), 0 corresponding to nearly-spherical cluster(since Eq. (22) is not defined for perfectly spherical clusters).Hence, the asymmetry parameter for A100+

100 with q = 0.4 andQ = 40 at the initial temperature Tref = 0.29 presented in Fig. 2reveals that the cluster elongates as a function of time and tends toget a prolate shape, which is in agreement with the fission processdescribed in Section 5.1. In nuclear physics, the study of nucleideformations is also a field of intense research. It is commonlyaccepted that nuclei can depart from the spherical shape to getan oblate or prolate shape that enables tighter binding betweenprotons and neutrons and very recently Gaffney et al. have evenexperimentally observed an evidence of more exotic pear-shapednuclei [28]. Our MD simulations based on a very simple model forthe interactions between coarse grains allow the investigation ofsuch properties.

5.3. Local minimisation of charged clusters

The CGMC2 code, distributed with MDMC2, can be used to min-imise geometries obtained after performingMCMC2 [5] or MDMC2

simulations. We focus here on the minimisation of MC geometries(i.e., generated by MCMC2), and especially on the clusters investi-gated in our previous work [9].

Fig. 1. Mass spectra obtained for (a) A10+100 (q = 2.5,Q = 25, Tref = 0.37) and (b)

A100+100 (q = 0.4,Q = 40, Tref = 0.29) after 2 × 106 time steps of size δt = 10−4

where we remind that Tref is the initial cluster temperature. The 3D mass spectracorresponding to large fragments are included as insets on an expanded z axis range.

Fig. 2. Time evolution of the asymmetry parameter κ of A100+100 clusters where

q = 0.4 and Q = 40 with an initial cluster temperature of Tref = 0.29.

The energy landscape explored during classical MC simulationsperformed on charged clusters depends on the number of neu-tral and charged particles, on the value of the charge carried bycharged particles, and on temperature. A practical way to get some

Page 10: MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

D.A. Bonhommeau, M.-P. Gaigeot / Computer Physics Communications 185 (2014) 684–694 693

Fig. 3. Energy distributions of local minima obtained by applying CGMC2 on 1000 An+147(q) cluster configurations (where q is the value of the charge carried by individual

charged particles) for (a) (n, q,Q ) = (14, 0.3, 4.2), (b) (n, q,Q ) = (14, 1.0, 14), (c) (n, q,Q ) = (74, 0.1, 7.4), and (d) (n, q,Q ) = (74, 0.5, 37). The energy distributions areprovided at three temperatures, a solid-state temperature (cyan bars), a temperature close to melting (black bars), and a liquid-state temperature (red bars). The orange lineindicates the global minimum energy found with GMIN [24]. (For interpretation of the references to colour in this figure legend, the reader is referred to the web version ofthis article.)

information on the energy landscape explored at different temper-atures is to locally minimise MC configurations and compare en-ergy distributions between each other or to the global minimumenergy. Energy distributions of An+

147 (n = 14 or 74) local minimaobtained with CGMC2 are presented in Fig. 3. For small charges(see Fig. 3(a) and (c)) and low temperatures (cyan bars), the widthof energy distributions is relatively narrow, centred at low en-ergy with some spikes, and the global minimum valley (or at leastits immediate surroundings) can be explored. As temperature in-creases, the cluster steadily melts, the energy distribution spreadsuntil reaching high energy regions (red bars), and the global mini-mum valley is no longer explored. For larger charges (see Fig. 3(b)and (d)), spikes on low-temperature energy distributions have dis-appeared and the global minimum surroundings are not exploredwhich characterises drastic changes in the energy landscape.

As a consequence, the study of the global minimum surround-ings of highly charged clustersmight not be essential to understandtheir thermodynamics unlike what can be found at low tempera-ture for lightly charged clusters.

Acknowledgements

Dr. Mark A. Miller and Dr. Florent Calvo are gratefully acknowl-edged for providing some routines and valuable advices duringthe development of the code. Prof. Marius Lewerenz is warmly ac-knowledged for critical reading. The IDRIS national computer cen-ter and the ROMEO computer center of Champagne-Ardenne arealso acknowledged. This work was supported by the ‘‘Génopôled’Evry’’ through a post-doctoral fellowship (DAB), by the ‘‘Centre

National de la Recherche Scientifique’’ (CNRS) through an excel-lence chair (DAB), and by a Partenariat Hubert Curien Alliance Pro-gram (MPG).

References

[1] A. Dreuw, L. Cederbaum, Chem. Rev. 102 (2002) 181–200.[2] D. Bonhommeau, N. Halberstadt, U. Buck, Int. Rev. Phys. Chem. 26 (2007)

353–390.[3] R. Zhang, A. Khalizov, L. Wang, M. Hu, W. Xu, Chem. Rev. 112 (2012)

1957–2011.[4] J.L.P. Benesch, B.T. Ruotolo, D.A. Simmons, C.V. Robinson, Chem. Rev. 107

(2007) 3544–3567.[5] D.A. Bonhommeau, M.-P. Gaigeot, Comput. Phys. Comm. 184 (2013) 873–884.[6] A.T. Iavarone, J.C. Jurchen, E.R. Williams, J. Am. Soc. Mass Spectrom. 11 (2000)

976–985.[7] M. Zhou, C.V. Robinson, Trends Biochem. Sci. 35 (2010) 522–529.[8] M.A. Miller, D.A. Bonhommeau, C.J. Heard, Y. Shin, R. Spezia, M.-P. Gaigeot, J.

Phys.: Condens. Matter 24 (2012) 284130.[9] D.A. Bonhommeau, R. Spezia, M.-P. Gaigeot, J. Chem. Phys. 136 (2012) 184503.

[10] I. Last, Y. Levy, J. Jortner, J. Chem. Phys. 123 (2005) 154301.[11] J. Jortner, I. Last, Y. Levy, Int. J. Mass Spectrom. 249–250 (2006) 184–190.[12] Y. Levy, I. Last, J. Jortner, Mol. Phys. 104 (2006) 1227–1237.[13] V. Znamenskiy, I.Marginean, A. Vertes, J. Phys. Chem. A 107 (2003) 7406–7412.[14] E. Ahadi, L. Konermann, J. Phys. Chem. B 113 (2009) 7071–7080.[15] E. Ahadi, L. Konermann, J. Am. Chem. Soc. 132 (2010) 11270–11277.[16] K. Ichiki, S. Consta, J. Phys. Chem. B 110 (2006) 19168–19175.[17] S. Consta, J. Phys. Chem. B 114 (2010) 5263–5268.[18] M.Z. Steinberg, R. Elber, F.W. McLafferty, R.B. Gerber, K. Breuker, Chem-

BioChem 9 (2008) 2417–2423.[19] E.G.Marklund, D.S.D. Larsson, D. van der Spoel, A. Patriksson, C. Caleman, Phys.

Chem. Chem. Phys. 11 (2009) 8069–8078.[20] B.T. Thole, Chem. Phys. 59 (1981) 341.[21] M. Souaille, H. Loirat, D. Borgis, M.-P. Gaigeot, Comput. Phys. Comm. 180

(2009) 276–301.

Page 11: MDMC2: A molecular dynamics code for investigating the fragmentation dynamics of multiply charged clusters

694 D.A. Bonhommeau, M.-P. Gaigeot / Computer Physics Communications 185 (2014) 684–694

[22] D. Frenkel, B. Smit, Understanding Molecular Simulation—From Algorithmsto Applications, second ed., Academic Press, UK, 2002. 84 Theobald’s Road,London WC1X 8RR.

[23] W. Humphrey, A. Dalke, K. Schulten, J. Mol. Graphics 14 (1996) 33–38.[24] D.J. Wales, J.P.K. Doye, J. Phys. Chem. A 101 (1997) 5111–5116.[25] P. Kebarle, J. Mass Spectrom. 35 (2000) 804–817.[26] P. Kebarle, M. Peschke, Anal. Chim. Acta 406 (2000) 11–35.[27] E. Bright Wilson Jr., J.C. Decius, P.C. Cross, Molecular Vibrations—The Theory

of Infrared and Raman Vibrational Spectra, Dover Publications, Mineola, N.Y.11501, 1980. 31 East 2nd Street.

[28] L.P. Gaffney, P.A. Butler, M. Scheck, A.B. Hayes, F. Wenander, M. Albers, B.Bastin, C. Bauer, A. Blazhev, S. Bönig, N. Bree, J. Cederkäll, T. Chupp, D. Cline,T.E. Cocolios, T. Davinson, H.D. Witte, J. Diriken, T. Grahn, A. Herzan, M. Huyse,D.G. Jenkins, D.T. Joss, N. Kesteloot, J. Konki, M. Kowalczyk, T. Kröll, E. Kwan,R. Lutter, K. Moschner, P. Napiorkowski, J. Pakarinen, M. Pfeiffer, D. Radeck, P.Reiter, K. Reynders, S.V. Rigby, L.M. Robledo, M. Rudigier, S. Sambi, M. Seidlitz,B. Siebeck, T. Stora, P. Thoele, P.V. Duppen, M.J. Vermeulen, M. von Schmid, D.Voulot, N. Warr, K. Wimmer, K. Wrzosek-Lipska, C.Y. Wu, M. Zielinska, Nature497 (2013) 199–204.