Molecular dynamics#

Note

These examples can be run without asap3 installed. In that case, ASE’s Python implementation of the EMT calculator can be used instead, but it is much slower.

Goal#

In this tutorial, we will learn how to perform basic molecular dynamics (MD) simulations using ASE.

The key objectives are:

  • Understand how to set up a crystal structure (Cu atoms on an FCC lattice).

  • Initialize velocities from Maxwell–Boltzmann distribution corresponding to a chosen temperature.

  • Integrate Newton’s equations of motion using Velocity-Verlet algorithm and monitor the temperature using Langevin thermostat.

  • Monitor and analyze thermodynamic quantities (potential energy, kinetic energy, total energy, temperature).

  • Save trajectories and visualize atomic motion with ASE’s GUI.

  • Explore MD in different scenarios: - Constant energy MD (NVE ensemble) - Constant temperature MD (NVT ensemble) - Isolated nanoparticle simulations

By the end of this tutorial, you should be able to set up your own MD simulations, monitor energy conservation, and visualize system evolution.

Basic Molecular Dynamics Simulation#

We start by creating a copper crystal, assigning random velocities corresponding to Maxwell Boltzmann Distribution at 300 K, and running dynamics in the NVE ensemble (constant energy).

import matplotlib.pyplot as plt
import numpy as np

# choose one of the following implementations of EMT:
# included in ase
# from ase.calculators.emt import EMT
# faster performance
from asap3 import EMT

from ase import units
from ase.cluster.cubic import FaceCenteredCubic as ClusterFCC
from ase.io.trajectory import Trajectory
from ase.lattice.cubic import FaceCenteredCubic as LatticeFCC
from ase.md.langevin import Langevin  # for later NPT simulations
from ase.md.velocitydistribution import (
    Stationary,
    ZeroRotation,
    thermalize_momenta,
)
from ase.md.verlet import VelocityVerlet
from ase.optimize import QuasiNewton
from ase.visualize.plot import plot_atoms

# Set up initial positions of Cu atoms on Fcc crystal lattice
size = 10
atoms = LatticeFCC(
    directions=[[1, 0, 0], [0, 1, 0], [0, 0, 1]],
    symbol='Cu',
    size=(size, size, size),
    pbc=True,
)

Before setting up the MD simulation, we take a look at the initial structure:

fig, ax = plt.subplots(figsize=(5, 5))
plot_atoms(atoms, ax, rotation=('45x,45y,0z'), show_unit_cell=2, radii=0.75)
plt.tight_layout()
plt.show()
md

Now let’s run the MD simulation and monitor the kinetic and potential energy of the whole system:

# Describe the interatomic interactions with the Effective Medium Theory (EMT)
atoms.calc = EMT()

# Set the initial velocities corresponding to T=300K from Maxwell Boltzmann
# Distribution
thermalize_momenta(atoms, temperature_K=300)

# We use Velocity Verlet algorithm to integrate the Newton's equations.
timestep_fs = 5
dyn = VelocityVerlet(atoms, timestep_fs * units.fs)  # 5 fs time step.


def printenergy(a):
    """
    Function to print the thermodynamical properties i.e potential energy,
    kinetic energy and total energy
    """
    epot = a.get_potential_energy()
    ekin = a.get_kinetic_energy()
    temp = a.get_temperature()
    print(
        f'Energy per atom: Epot ={epot:6.3f}eV  Ekin = {ekin:.3f}eV '
        f'(T={temp:.3f}K) Etot = {epot + ekin:.3f}eV'
    )


# Now run the dynamics
print('running a NVE simulation of fcc Cu')
printenergy(atoms)
# init lists to for energy vs time data
time_ps, epot, ekin = [], [], []
mdind = 0
steps_per_block = 10
for i in range(20):
    dyn.run(steps_per_block)
    mdind += steps_per_block
    printenergy(atoms)
    # save the energies of the current MD step
    time_ps.append(mdind * timestep_fs / 1000.0)
    epot.append(atoms.get_potential_energy())
    ekin.append(atoms.get_kinetic_energy())

etot = np.array(epot) + np.array(ekin)

# Plot energies vs time
fig, ax = plt.subplots(figsize=(6, 4))
ax.plot(time_ps, epot, label='Potential energy')
ax.plot(time_ps, ekin, label='Kinetic energy')
ax.plot(time_ps, etot, label='Total energy')
ax.set_xlabel('Time (ps)')
ax.set_ylabel('Energy (eV)')
ax.legend(loc='best')
ax.grid(True, linewidth=0.5, alpha=0.5)
plt.tight_layout()
plt.show()
md
running a NVE simulation of fcc Cu
Energy per atom: Epot =-2.405eV  Ekin = 153.353eV (T=296.598K) Etot = 150.948eV
Energy per atom: Epot =116.204eV  Ekin = 35.520eV (T=68.700K) Etot = 151.724eV
Energy per atom: Epot =77.014eV  Ekin = 74.573eV (T=144.230K) Etot = 151.587eV
Energy per atom: Epot =69.409eV  Ekin = 82.026eV (T=158.646K) Etot = 151.435eV
Energy per atom: Epot =68.689eV  Ekin = 82.698eV (T=159.945K) Etot = 151.387eV
Energy per atom: Epot =79.256eV  Ekin = 72.293eV (T=139.822K) Etot = 151.549eV
Energy per atom: Epot =77.862eV  Ekin = 73.690eV (T=142.523K) Etot = 151.552eV
Energy per atom: Epot =71.942eV  Ekin = 79.512eV (T=153.783K) Etot = 151.454eV
Energy per atom: Epot =72.550eV  Ekin = 78.919eV (T=152.636K) Etot = 151.469eV
Energy per atom: Epot =77.702eV  Ekin = 73.835eV (T=142.803K) Etot = 151.537eV
Energy per atom: Epot =75.119eV  Ekin = 76.378eV (T=147.721K) Etot = 151.497eV
Energy per atom: Epot =73.476eV  Ekin = 78.003eV (T=150.865K) Etot = 151.480eV
Energy per atom: Epot =74.385eV  Ekin = 77.103eV (T=149.124K) Etot = 151.488eV
Energy per atom: Epot =75.897eV  Ekin = 75.601eV (T=146.219K) Etot = 151.498eV
Energy per atom: Epot =74.410eV  Ekin = 77.081eV (T=149.081K) Etot = 151.491eV
Energy per atom: Epot =73.684eV  Ekin = 77.810eV (T=150.491K) Etot = 151.493eV
Energy per atom: Epot =74.620eV  Ekin = 76.872eV (T=148.678K) Etot = 151.492eV
Energy per atom: Epot =76.301eV  Ekin = 75.187eV (T=145.419K) Etot = 151.488eV
Energy per atom: Epot =72.151eV  Ekin = 79.333eV (T=153.436K) Etot = 151.483eV
Energy per atom: Epot =74.826eV  Ekin = 76.663eV (T=148.273K) Etot = 151.489eV
Energy per atom: Epot =77.005eV  Ekin = 74.498eV (T=144.086K) Etot = 151.503eV

Note how the total energy is conserved, but the kinetic energy quickly drops to half the expected value. Why?

What you learned here:

  • How to set up a basic MD run.

  • How to monitor the energy over time.

  • That total energy is approximately conserved in NVE simulations, what is the error in total energy?

Exercise: Tune the time step from 5fs to 10fs and 50fs, what changes do you observe in total energy?

Constant temperature MD#

In many cases, you want to control temperature (NVT ensemble). This can be done using a thermostat, like – in this tutorial – Langevin thermostat. Compared to the previous example, we replace the line dyn = VelocityVerlet(...) with

dyn = Langevin(atoms, timestep=5 * units.fs, temperature_K=T,
friction=0.02)

where T is the desired temperature in Kelvin. For that we also imported the Langevin in the beginning.

The Langevin dynamics will then slowly adjust the total energy of the system so the temperature approaches the desired one.

As a slightly less boring example, let us use this to melt a chunk of copper by starting the simulation without any momentum of the atoms (no kinetic energy), and with a desired temperature above the melting point. We will also save information about the atoms in a trajectory file called moldyn3.traj.

Note

It is recommended to use the asap3 implementation of the EMT calculator here, because its performance benefits over the ase implementation.

size = 10
T = 1500  # Kelvin

# Set up a crystal
atoms = LatticeFCC(
    directions=[[1, 0, 0], [0, 1, 0], [0, 0, 1]],
    symbol='Cu',
    size=(size, size, size),
    pbc=False,
)

# Describe the interatomic interactions with the Effective Medium Theory
atoms.calc = EMT()

# We want to run MD with constant energy using the Langevin algorithm
# with a time step of 5 fs, the temperature T and the friction
# coefficient to 0.02 atomic units.
timestep_fs = 5
dyn = Langevin(
    atoms, timestep=timestep_fs * units.fs, temperature_K=T, friction=0.02
)

# We also want to save the positions of all atoms after every 100th time step.
traj = Trajectory('fccCu_NPT.traj', 'w', atoms)

# Now run the dynamics
print('running a NVT simulation of fcc Cu')
printenergy(atoms)
time_ps, temperature = [], []
mdind = 0
steps_per_block = 10
for i in range(200):
    dyn.run(steps_per_block)
    mdind += steps_per_block
    printenergy(atoms)
    # save the temperature of the current MD step
    time_ps.append(mdind * timestep_fs / 1000.0)
    temperature.append(atoms.get_temperature())

# Plot temperatures vs time
fig, ax = plt.subplots(figsize=(6, 4))
ax.plot(time_ps, temperature)
ax.set_xlabel('Time (ps)')
ax.set_ylabel('Temperature (K)')
ax.grid(True, linewidth=0.5, alpha=0.5)
plt.tight_layout()
plt.show()
md
/home/ase/.local/lib/python3.14/site-packages/ase/md/langevin.py:102: FutureWarning: The implementation of `fixcm=True` in `Langevin` does not strictly sample the correct NVT distributions. The deviations are typically small for large systems but can be more pronounced for small systems. Use `fixcm=False` together with `ase.constraints.FixCom`. `fixcm` is deprecated since ASE 3.28.0 and will be removed in a future release.
  warnings.warn(msg, FutureWarning)
running a NVT simulation of fcc Cu
Energy per atom: Epot =540.816eV  Ekin = 0.000eV (T=0.000K) Etot = 540.816eV
Energy per atom: Epot =599.364eV  Ekin = 81.345eV (T=157.329K) Etot = 680.709eV
Energy per atom: Epot =670.486eV  Ekin = 136.086eV (T=263.201K) Etot = 806.571eV
Energy per atom: Epot =722.151eV  Ekin = 202.733eV (T=392.104K) Etot = 924.884eV
Energy per atom: Epot =780.595eV  Ekin = 251.406eV (T=486.241K) Etot = 1032.001eV
Energy per atom: Epot =834.572eV  Ekin = 298.090eV (T=576.532K) Etot = 1132.662eV
Energy per atom: Epot =883.235eV  Ekin = 339.656eV (T=656.924K) Etot = 1222.891eV
Energy per atom: Epot =922.169eV  Ekin = 380.316eV (T=735.564K) Etot = 1302.485eV
Energy per atom: Epot =974.329eV  Ekin = 405.964eV (T=785.170K) Etot = 1380.294eV
Energy per atom: Epot =1011.011eV  Ekin = 437.288eV (T=845.753K) Etot = 1448.299eV
Energy per atom: Epot =1035.889eV  Ekin = 479.703eV (T=927.788K) Etot = 1515.592eV
Energy per atom: Epot =1079.404eV  Ekin = 492.057eV (T=951.680K) Etot = 1571.460eV
Energy per atom: Epot =1111.947eV  Ekin = 509.762eV (T=985.923K) Etot = 1621.709eV
Energy per atom: Epot =1139.948eV  Ekin = 528.364eV (T=1021.902K) Etot = 1668.313eV
Energy per atom: Epot =1169.434eV  Ekin = 547.530eV (T=1058.971K) Etot = 1716.964eV
Energy per atom: Epot =1199.799eV  Ekin = 560.729eV (T=1084.499K) Etot = 1760.528eV
Energy per atom: Epot =1232.213eV  Ekin = 571.424eV (T=1105.183K) Etot = 1803.637eV
Energy per atom: Epot =1255.089eV  Ekin = 584.569eV (T=1130.608K) Etot = 1839.658eV
Energy per atom: Epot =1286.756eV  Ekin = 592.847eV (T=1146.618K) Etot = 1879.603eV
Energy per atom: Epot =1299.571eV  Ekin = 606.757eV (T=1173.520K) Etot = 1906.327eV
Energy per atom: Epot =1334.159eV  Ekin = 610.301eV (T=1180.374K) Etot = 1944.460eV
Energy per atom: Epot =1349.744eV  Ekin = 626.486eV (T=1211.678K) Etot = 1976.230eV
Energy per atom: Epot =1372.724eV  Ekin = 634.244eV (T=1226.683K) Etot = 2006.968eV
Energy per atom: Epot =1398.243eV  Ekin = 632.838eV (T=1223.963K) Etot = 2031.081eV
Energy per atom: Epot =1399.467eV  Ekin = 652.133eV (T=1261.282K) Etot = 2051.600eV
Energy per atom: Epot =1436.347eV  Ekin = 638.199eV (T=1234.333K) Etot = 2074.546eV
Energy per atom: Epot =1441.877eV  Ekin = 653.494eV (T=1263.914K) Etot = 2095.371eV
Energy per atom: Epot =1446.898eV  Ekin = 680.841eV (T=1316.806K) Etot = 2127.739eV
Energy per atom: Epot =1464.726eV  Ekin = 689.127eV (T=1332.831K) Etot = 2153.853eV
Energy per atom: Epot =1475.277eV  Ekin = 690.784eV (T=1336.037K) Etot = 2166.062eV
Energy per atom: Epot =1508.973eV  Ekin = 677.228eV (T=1309.817K) Etot = 2186.200eV
Energy per atom: Epot =1516.779eV  Ekin = 687.002eV (T=1328.722K) Etot = 2203.781eV
Energy per atom: Epot =1515.882eV  Ekin = 691.679eV (T=1337.768K) Etot = 2207.562eV
Energy per atom: Epot =1536.477eV  Ekin = 690.065eV (T=1334.646K) Etot = 2226.542eV
Energy per atom: Epot =1528.294eV  Ekin = 712.147eV (T=1377.354K) Etot = 2240.441eV
Energy per atom: Epot =1554.408eV  Ekin = 705.892eV (T=1365.256K) Etot = 2260.300eV
Energy per atom: Epot =1566.485eV  Ekin = 703.570eV (T=1360.765K) Etot = 2270.054eV
Energy per atom: Epot =1590.480eV  Ekin = 697.498eV (T=1349.022K) Etot = 2287.978eV
Energy per atom: Epot =1590.253eV  Ekin = 713.021eV (T=1379.045K) Etot = 2303.274eV
Energy per atom: Epot =1609.758eV  Ekin = 715.196eV (T=1383.252K) Etot = 2324.955eV
Energy per atom: Epot =1623.141eV  Ekin = 710.276eV (T=1373.735K) Etot = 2333.416eV
Energy per atom: Epot =1627.234eV  Ekin = 718.845eV (T=1390.309K) Etot = 2346.079eV
Energy per atom: Epot =1630.553eV  Ekin = 728.722eV (T=1409.413K) Etot = 2359.276eV
Energy per atom: Epot =1654.342eV  Ekin = 719.429eV (T=1391.438K) Etot = 2373.771eV
Energy per atom: Epot =1650.286eV  Ekin = 727.365eV (T=1406.788K) Etot = 2377.651eV
Energy per atom: Epot =1669.611eV  Ekin = 719.841eV (T=1392.234K) Etot = 2389.452eV
Energy per atom: Epot =1674.378eV  Ekin = 728.033eV (T=1408.079K) Etot = 2402.411eV
Energy per atom: Epot =1683.729eV  Ekin = 726.877eV (T=1405.843K) Etot = 2410.606eV
Energy per atom: Epot =1687.417eV  Ekin = 731.520eV (T=1414.823K) Etot = 2418.937eV
Energy per atom: Epot =1704.335eV  Ekin = 724.455eV (T=1401.159K) Etot = 2428.790eV
Energy per atom: Epot =1707.440eV  Ekin = 735.633eV (T=1422.778K) Etot = 2443.073eV
Energy per atom: Epot =1711.274eV  Ekin = 741.642eV (T=1434.401K) Etot = 2452.916eV
Energy per atom: Epot =1727.882eV  Ekin = 725.568eV (T=1403.311K) Etot = 2453.450eV
Energy per atom: Epot =1721.817eV  Ekin = 737.912eV (T=1427.186K) Etot = 2459.729eV
Energy per atom: Epot =1731.103eV  Ekin = 739.161eV (T=1429.602K) Etot = 2470.264eV
Energy per atom: Epot =1745.035eV  Ekin = 738.672eV (T=1428.656K) Etot = 2483.706eV
Energy per atom: Epot =1740.951eV  Ekin = 755.662eV (T=1461.517K) Etot = 2496.613eV
Energy per atom: Epot =1755.248eV  Ekin = 746.267eV (T=1443.346K) Etot = 2501.516eV
Energy per atom: Epot =1747.387eV  Ekin = 773.844eV (T=1496.682K) Etot = 2521.232eV
Energy per atom: Epot =1780.568eV  Ekin = 738.552eV (T=1428.424K) Etot = 2519.120eV
Energy per atom: Epot =1775.749eV  Ekin = 742.304eV (T=1435.681K) Etot = 2518.054eV
Energy per atom: Epot =1786.534eV  Ekin = 733.604eV (T=1418.854K) Etot = 2520.138eV
Energy per atom: Epot =1795.688eV  Ekin = 733.624eV (T=1418.892K) Etot = 2529.311eV
Energy per atom: Epot =1812.488eV  Ekin = 721.480eV (T=1395.405K) Etot = 2533.968eV
Energy per atom: Epot =1818.402eV  Ekin = 730.146eV (T=1412.166K) Etot = 2548.548eV
Energy per atom: Epot =1811.099eV  Ekin = 743.124eV (T=1437.267K) Etot = 2554.223eV
Energy per atom: Epot =1824.117eV  Ekin = 733.342eV (T=1418.347K) Etot = 2557.459eV
Energy per atom: Epot =1817.796eV  Ekin = 739.238eV (T=1429.751K) Etot = 2557.035eV
Energy per atom: Epot =1822.693eV  Ekin = 736.599eV (T=1424.647K) Etot = 2559.293eV
Energy per atom: Epot =1823.860eV  Ekin = 736.869eV (T=1425.168K) Etot = 2560.728eV
Energy per atom: Epot =1836.389eV  Ekin = 735.855eV (T=1423.208K) Etot = 2572.244eV
Energy per atom: Epot =1841.657eV  Ekin = 736.053eV (T=1423.590K) Etot = 2577.710eV
Energy per atom: Epot =1836.424eV  Ekin = 748.966eV (T=1448.566K) Etot = 2585.390eV
Energy per atom: Epot =1850.280eV  Ekin = 747.133eV (T=1445.020K) Etot = 2597.413eV
Energy per atom: Epot =1849.025eV  Ekin = 753.621eV (T=1457.568K) Etot = 2602.646eV
Energy per atom: Epot =1848.631eV  Ekin = 751.791eV (T=1454.029K) Etot = 2600.421eV
Energy per atom: Epot =1859.477eV  Ekin = 746.120eV (T=1443.061K) Etot = 2605.597eV
Energy per atom: Epot =1866.453eV  Ekin = 742.383eV (T=1435.834K) Etot = 2608.837eV
Energy per atom: Epot =1869.244eV  Ekin = 738.378eV (T=1428.087K) Etot = 2607.622eV
Energy per atom: Epot =1874.485eV  Ekin = 741.393eV (T=1433.918K) Etot = 2615.877eV
Energy per atom: Epot =1873.496eV  Ekin = 743.096eV (T=1437.212K) Etot = 2616.591eV
Energy per atom: Epot =1879.857eV  Ekin = 732.047eV (T=1415.843K) Etot = 2611.904eV
Energy per atom: Epot =1895.129eV  Ekin = 715.184eV (T=1383.228K) Etot = 2610.313eV
Energy per atom: Epot =1873.885eV  Ekin = 752.474eV (T=1455.349K) Etot = 2626.359eV
Energy per atom: Epot =1893.692eV  Ekin = 741.305eV (T=1433.749K) Etot = 2634.998eV
Energy per atom: Epot =1901.416eV  Ekin = 744.985eV (T=1440.865K) Etot = 2646.401eV
Energy per atom: Epot =1904.942eV  Ekin = 753.385eV (T=1457.112K) Etot = 2658.327eV
Energy per atom: Epot =1915.267eV  Ekin = 752.552eV (T=1455.502K) Etot = 2667.819eV
Energy per atom: Epot =1926.640eV  Ekin = 744.907eV (T=1440.715K) Etot = 2671.547eV
Energy per atom: Epot =1918.497eV  Ekin = 751.989eV (T=1454.412K) Etot = 2670.486eV
Energy per atom: Epot =1922.723eV  Ekin = 765.695eV (T=1480.921K) Etot = 2688.419eV
Energy per atom: Epot =1942.246eV  Ekin = 753.392eV (T=1457.126K) Etot = 2695.638eV
Energy per atom: Epot =1938.608eV  Ekin = 759.007eV (T=1467.986K) Etot = 2697.615eV
Energy per atom: Epot =1936.203eV  Ekin = 758.978eV (T=1467.930K) Etot = 2695.182eV
Energy per atom: Epot =1926.658eV  Ekin = 766.736eV (T=1482.934K) Etot = 2693.394eV
Energy per atom: Epot =1940.981eV  Ekin = 743.799eV (T=1438.571K) Etot = 2684.780eV
Energy per atom: Epot =1944.570eV  Ekin = 753.294eV (T=1456.936K) Etot = 2697.865eV
Energy per atom: Epot =1958.802eV  Ekin = 746.594eV (T=1443.978K) Etot = 2705.396eV
Energy per atom: Epot =1956.888eV  Ekin = 754.262eV (T=1458.809K) Etot = 2711.150eV
Energy per atom: Epot =1953.775eV  Ekin = 752.397eV (T=1455.201K) Etot = 2706.172eV
Energy per atom: Epot =1960.494eV  Ekin = 740.788eV (T=1432.749K) Etot = 2701.283eV
Energy per atom: Epot =1957.503eV  Ekin = 754.114eV (T=1458.522K) Etot = 2711.617eV
Energy per atom: Epot =1973.493eV  Ekin = 741.862eV (T=1434.826K) Etot = 2715.355eV
Energy per atom: Epot =1980.152eV  Ekin = 740.636eV (T=1432.454K) Etot = 2720.788eV
Energy per atom: Epot =1983.489eV  Ekin = 743.886eV (T=1438.740K) Etot = 2727.375eV
Energy per atom: Epot =1964.257eV  Ekin = 756.126eV (T=1462.413K) Etot = 2720.383eV
Energy per atom: Epot =1971.786eV  Ekin = 756.282eV (T=1462.716K) Etot = 2728.068eV
Energy per atom: Epot =1976.829eV  Ekin = 757.434eV (T=1464.944K) Etot = 2734.263eV
Energy per atom: Epot =1965.937eV  Ekin = 768.347eV (T=1486.050K) Etot = 2734.285eV
Energy per atom: Epot =1972.216eV  Ekin = 758.463eV (T=1466.933K) Etot = 2730.679eV
Energy per atom: Epot =1975.072eV  Ekin = 757.597eV (T=1465.259K) Etot = 2732.670eV
Energy per atom: Epot =1979.441eV  Ekin = 752.775eV (T=1455.933K) Etot = 2732.216eV
Energy per atom: Epot =1967.858eV  Ekin = 772.310eV (T=1493.714K) Etot = 2740.168eV
Energy per atom: Epot =1982.237eV  Ekin = 768.034eV (T=1485.445K) Etot = 2750.272eV
Energy per atom: Epot =1970.567eV  Ekin = 777.264eV (T=1503.296K) Etot = 2747.830eV
Energy per atom: Epot =1989.827eV  Ekin = 758.444eV (T=1466.897K) Etot = 2748.271eV
Energy per atom: Epot =1974.142eV  Ekin = 771.384eV (T=1491.923K) Etot = 2745.525eV
Energy per atom: Epot =1982.918eV  Ekin = 763.220eV (T=1476.135K) Etot = 2746.138eV
Energy per atom: Epot =1975.611eV  Ekin = 763.344eV (T=1476.374K) Etot = 2738.955eV
Energy per atom: Epot =1984.764eV  Ekin = 749.501eV (T=1449.601K) Etot = 2734.265eV
Energy per atom: Epot =1975.326eV  Ekin = 771.300eV (T=1491.762K) Etot = 2746.626eV
Energy per atom: Epot =1981.465eV  Ekin = 764.983eV (T=1479.544K) Etot = 2746.448eV
Energy per atom: Epot =1983.519eV  Ekin = 769.219eV (T=1487.737K) Etot = 2752.738eV
Energy per atom: Epot =1972.209eV  Ekin = 770.127eV (T=1489.492K) Etot = 2742.336eV
Energy per atom: Epot =1977.896eV  Ekin = 753.976eV (T=1458.256K) Etot = 2731.872eV
Energy per atom: Epot =1979.527eV  Ekin = 753.982eV (T=1458.266K) Etot = 2733.509eV
Energy per atom: Epot =1968.923eV  Ekin = 758.402eV (T=1466.816K) Etot = 2727.325eV
Energy per atom: Epot =1984.583eV  Ekin = 749.843eV (T=1450.262K) Etot = 2734.426eV
Energy per atom: Epot =1981.864eV  Ekin = 753.639eV (T=1457.603K) Etot = 2735.503eV
Energy per atom: Epot =1976.695eV  Ekin = 766.623eV (T=1482.715K) Etot = 2743.318eV
Energy per atom: Epot =1988.801eV  Ekin = 756.857eV (T=1463.828K) Etot = 2745.658eV
Energy per atom: Epot =1998.721eV  Ekin = 755.946eV (T=1462.065K) Etot = 2754.666eV
Energy per atom: Epot =1979.654eV  Ekin = 767.705eV (T=1484.808K) Etot = 2747.359eV
Energy per atom: Epot =1990.890eV  Ekin = 753.474eV (T=1457.284K) Etot = 2744.364eV
Energy per atom: Epot =1978.355eV  Ekin = 766.769eV (T=1482.997K) Etot = 2745.124eV
Energy per atom: Epot =1984.157eV  Ekin = 761.821eV (T=1473.427K) Etot = 2745.978eV
Energy per atom: Epot =1982.260eV  Ekin = 772.489eV (T=1494.060K) Etot = 2754.749eV
Energy per atom: Epot =1985.692eV  Ekin = 772.930eV (T=1494.913K) Etot = 2758.621eV
Energy per atom: Epot =1982.097eV  Ekin = 773.402eV (T=1495.827K) Etot = 2755.499eV
Energy per atom: Epot =1980.467eV  Ekin = 773.224eV (T=1495.482K) Etot = 2753.690eV
Energy per atom: Epot =1975.359eV  Ekin = 779.064eV (T=1506.777K) Etot = 2754.422eV
Energy per atom: Epot =1985.431eV  Ekin = 767.661eV (T=1484.723K) Etot = 2753.092eV
Energy per atom: Epot =1975.071eV  Ekin = 770.312eV (T=1489.851K) Etot = 2745.383eV
Energy per atom: Epot =1976.444eV  Ekin = 777.527eV (T=1503.805K) Etot = 2753.971eV
Energy per atom: Epot =1981.605eV  Ekin = 768.952eV (T=1487.220K) Etot = 2750.557eV
Energy per atom: Epot =1980.676eV  Ekin = 773.848eV (T=1496.689K) Etot = 2754.524eV
Energy per atom: Epot =1982.566eV  Ekin = 766.160eV (T=1481.820K) Etot = 2748.726eV
Energy per atom: Epot =1988.699eV  Ekin = 765.963eV (T=1481.440K) Etot = 2754.663eV
Energy per atom: Epot =1983.792eV  Ekin = 785.554eV (T=1519.331K) Etot = 2769.346eV
Energy per atom: Epot =2001.638eV  Ekin = 778.485eV (T=1505.658K) Etot = 2780.123eV
Energy per atom: Epot =2007.509eV  Ekin = 770.064eV (T=1489.370K) Etot = 2777.572eV
Energy per atom: Epot =2009.212eV  Ekin = 765.327eV (T=1480.209K) Etot = 2774.539eV
Energy per atom: Epot =2018.089eV  Ekin = 757.103eV (T=1464.303K) Etot = 2775.192eV
Energy per atom: Epot =2018.307eV  Ekin = 755.020eV (T=1460.274K) Etot = 2773.327eV
Energy per atom: Epot =2004.564eV  Ekin = 786.847eV (T=1521.830K) Etot = 2791.410eV
Energy per atom: Epot =2026.471eV  Ekin = 764.320eV (T=1478.262K) Etot = 2790.791eV
Energy per atom: Epot =2020.656eV  Ekin = 772.301eV (T=1493.697K) Etot = 2792.957eV
Energy per atom: Epot =2029.816eV  Ekin = 771.126eV (T=1491.424K) Etot = 2800.941eV
Energy per atom: Epot =2021.628eV  Ekin = 777.656eV (T=1504.055K) Etot = 2799.284eV
Energy per atom: Epot =2022.045eV  Ekin = 777.091eV (T=1502.961K) Etot = 2799.136eV
Energy per atom: Epot =2016.072eV  Ekin = 789.756eV (T=1527.456K) Etot = 2805.828eV
Energy per atom: Epot =2026.485eV  Ekin = 768.979eV (T=1487.272K) Etot = 2795.463eV
Energy per atom: Epot =2031.515eV  Ekin = 766.911eV (T=1483.273K) Etot = 2798.426eV
Energy per atom: Epot =2022.572eV  Ekin = 776.095eV (T=1501.035K) Etot = 2798.667eV
Energy per atom: Epot =2025.844eV  Ekin = 764.552eV (T=1478.709K) Etot = 2790.395eV
Energy per atom: Epot =2020.371eV  Ekin = 764.991eV (T=1479.560K) Etot = 2785.363eV
Energy per atom: Epot =2023.373eV  Ekin = 766.580eV (T=1482.633K) Etot = 2789.954eV
Energy per atom: Epot =2027.031eV  Ekin = 764.010eV (T=1477.662K) Etot = 2791.041eV
Energy per atom: Epot =2028.986eV  Ekin = 764.142eV (T=1477.917K) Etot = 2793.128eV
Energy per atom: Epot =2034.082eV  Ekin = 759.565eV (T=1469.064K) Etot = 2793.647eV
Energy per atom: Epot =2019.328eV  Ekin = 775.277eV (T=1499.453K) Etot = 2794.605eV
Energy per atom: Epot =2022.727eV  Ekin = 772.498eV (T=1494.077K) Etot = 2795.224eV
Energy per atom: Epot =2014.615eV  Ekin = 787.177eV (T=1522.468K) Etot = 2801.791eV
Energy per atom: Epot =2014.898eV  Ekin = 794.154eV (T=1535.962K) Etot = 2809.052eV
Energy per atom: Epot =2007.532eV  Ekin = 799.612eV (T=1546.518K) Etot = 2807.144eV
Energy per atom: Epot =2017.692eV  Ekin = 786.604eV (T=1521.362K) Etot = 2804.297eV
Energy per atom: Epot =2025.384eV  Ekin = 766.283eV (T=1482.058K) Etot = 2791.668eV
Energy per atom: Epot =2027.776eV  Ekin = 764.416eV (T=1478.447K) Etot = 2792.192eV
Energy per atom: Epot =2015.130eV  Ekin = 779.256eV (T=1507.149K) Etot = 2794.386eV
Energy per atom: Epot =2015.967eV  Ekin = 779.790eV (T=1508.182K) Etot = 2795.757eV
Energy per atom: Epot =2009.683eV  Ekin = 796.779eV (T=1541.040K) Etot = 2806.461eV
Energy per atom: Epot =2018.515eV  Ekin = 783.904eV (T=1516.138K) Etot = 2802.419eV
Energy per atom: Epot =2018.502eV  Ekin = 785.124eV (T=1518.498K) Etot = 2803.626eV
Energy per atom: Epot =2024.364eV  Ekin = 784.258eV (T=1516.824K) Etot = 2808.622eV
Energy per atom: Epot =2012.202eV  Ekin = 792.970eV (T=1533.673K) Etot = 2805.173eV
Energy per atom: Epot =2011.248eV  Ekin = 786.647eV (T=1521.443K) Etot = 2797.895eV
Energy per atom: Epot =2002.501eV  Ekin = 799.858eV (T=1546.994K) Etot = 2802.358eV
Energy per atom: Epot =2011.084eV  Ekin = 797.466eV (T=1542.369K) Etot = 2808.550eV
Energy per atom: Epot =2013.263eV  Ekin = 800.834eV (T=1548.883K) Etot = 2814.097eV
Energy per atom: Epot =2017.917eV  Ekin = 796.091eV (T=1539.709K) Etot = 2814.008eV
Energy per atom: Epot =2021.341eV  Ekin = 794.003eV (T=1535.672K) Etot = 2815.344eV
Energy per atom: Epot =2027.449eV  Ekin = 784.971eV (T=1518.203K) Etot = 2812.420eV
Energy per atom: Epot =2022.234eV  Ekin = 783.256eV (T=1514.886K) Etot = 2805.490eV
Energy per atom: Epot =2027.599eV  Ekin = 781.070eV (T=1510.657K) Etot = 2808.669eV
Energy per atom: Epot =2024.760eV  Ekin = 786.258eV (T=1520.691K) Etot = 2811.018eV
Energy per atom: Epot =2024.474eV  Ekin = 778.986eV (T=1506.627K) Etot = 2803.460eV
Energy per atom: Epot =2022.515eV  Ekin = 781.067eV (T=1510.652K) Etot = 2803.583eV
Energy per atom: Epot =2030.601eV  Ekin = 761.731eV (T=1473.254K) Etot = 2792.331eV
Energy per atom: Epot =2017.498eV  Ekin = 783.169eV (T=1514.716K) Etot = 2800.666eV
Energy per atom: Epot =2023.427eV  Ekin = 771.155eV (T=1491.480K) Etot = 2794.582eV
Energy per atom: Epot =2018.618eV  Ekin = 770.756eV (T=1490.709K) Etot = 2789.374eV

After running the simulation, you can study the result with the command

ase gui fccCu_NPT.traj

Try plotting the kinetic energy. Like in the temperature vs time plot you will not see a well-defined melting point due to finite size effects (including surface melting), but you will probably see an almost flat region where the inside of the system melts. The outermost layers melt at a lower temperature.

Note

The Langevin dynamics will by default keep the position and momentum of the center of mass unperturbed. This is another improvement over just setting momenta corresponding to a temperature, as we did before.

Isolated particle MD#

When simulating isolated particles with MD, it is sometimes preferable to set random momenta corresponding to a specific temperature and let the system evolve freely. With a relatively high temperature, there is however a risk that the collection of atoms will drift out of the simulation box because the randomized momenta gave the center of mass a small but non-zero velocity too.

Let us see what happens when we propagate a nanoparticle:

size = 4
atoms = ClusterFCC(
    'Cu',
    surfaces=[[1, 0, 0], [1, 1, 0], [1, 1, 1]],
    layers=(size, size, size),
    vacuum=4,
)
# asap3 requires a non-zero cell even if pbc are not applied
atoms.cell = [40] * 3
atoms.set_pbc(False)  # isolated cluster (explicit, for clarity)

# Describe the interatomic interactions with the Effective Medium Theory
atoms.calc = EMT()

# Quick relaxation of the cluster
qn = QuasiNewton(atoms)
qn.run(fmax=0.001, steps=10)

# Set the momenta corresponding to T=1200 K
thermalize_momenta(atoms, temperature_K=1200)
Stationary(atoms)  # zero linear momentum
ZeroRotation(atoms)  # zero angular momentum

# Run MD using the Velocity Verlet algorithm and save trajectory
dyn = VelocityVerlet(atoms, 5 * units.fs, trajectory='nanoparticleCu_NVE.traj')

print('running a NVE simulation of a Cu nanoparticle')
printenergy(atoms)
steps_per_block = 10
for i in range(200):
    dyn.run(steps_per_block)
    printenergy(atoms)
                Step[ FC]     Time          Energy          fmax
BFGSLineSearch:    0[  0] 15:27:13       43.457006       1.0818
BFGSLineSearch:    1[  1] 15:27:13       42.347659       0.2273
BFGSLineSearch:    2[  2] 15:27:13       42.108454       0.1349
BFGSLineSearch:    3[  3] 15:27:13       41.964817       0.1138
BFGSLineSearch:    4[  4] 15:27:13       41.924933       0.0683
BFGSLineSearch:    5[  5] 15:27:13       41.915346       0.0225
BFGSLineSearch:    6[  6] 15:27:13       41.914920       0.0059
BFGSLineSearch:    7[  7] 15:27:13       41.914872       0.0023
BFGSLineSearch:    8[  9] 15:27:13       41.914855       0.0023
BFGSLineSearch:    9[ 10] 15:27:13       41.914851       0.0010
running a NVE simulation of a Cu nanoparticle
Energy per atom: Epot =41.915eV  Ekin = 14.793eV (T=1230.543K) Etot = 56.707eV
Energy per atom: Epot =50.221eV  Ekin = 6.523eV (T=542.649K) Etot = 56.744eV
Energy per atom: Epot =50.543eV  Ekin = 6.215eV (T=517.020K) Etot = 56.759eV
Energy per atom: Epot =50.514eV  Ekin = 6.239eV (T=519.004K) Etot = 56.753eV
Energy per atom: Epot =51.247eV  Ekin = 5.512eV (T=458.541K) Etot = 56.759eV
Energy per atom: Epot =50.469eV  Ekin = 6.289eV (T=523.180K) Etot = 56.758eV
Energy per atom: Epot =49.524eV  Ekin = 7.223eV (T=600.836K) Etot = 56.747eV
Energy per atom: Epot =48.780eV  Ekin = 7.960eV (T=662.176K) Etot = 56.740eV
Energy per atom: Epot =48.853eV  Ekin = 7.895eV (T=656.738K) Etot = 56.748eV
Energy per atom: Epot =49.849eV  Ekin = 6.910eV (T=574.840K) Etot = 56.759eV
Energy per atom: Epot =50.113eV  Ekin = 6.642eV (T=552.563K) Etot = 56.755eV
Energy per atom: Epot =50.471eV  Ekin = 6.282eV (T=522.542K) Etot = 56.753eV
Energy per atom: Epot =49.440eV  Ekin = 7.310eV (T=608.085K) Etot = 56.750eV
Energy per atom: Epot =49.647eV  Ekin = 7.106eV (T=591.117K) Etot = 56.753eV
Energy per atom: Epot =49.063eV  Ekin = 7.683eV (T=639.082K) Etot = 56.746eV
Energy per atom: Epot =50.174eV  Ekin = 6.573eV (T=546.807K) Etot = 56.747eV
Energy per atom: Epot =50.407eV  Ekin = 6.348eV (T=528.047K) Etot = 56.755eV
Energy per atom: Epot =50.056eV  Ekin = 6.699eV (T=557.269K) Etot = 56.755eV
Energy per atom: Epot =50.028eV  Ekin = 6.729eV (T=559.770K) Etot = 56.757eV
Energy per atom: Epot =49.702eV  Ekin = 7.053eV (T=586.692K) Etot = 56.755eV
Energy per atom: Epot =50.297eV  Ekin = 6.457eV (T=537.101K) Etot = 56.754eV
Energy per atom: Epot =49.884eV  Ekin = 6.869eV (T=571.423K) Etot = 56.753eV
Energy per atom: Epot =50.429eV  Ekin = 6.324eV (T=526.093K) Etot = 56.754eV
Energy per atom: Epot =50.130eV  Ekin = 6.624eV (T=551.050K) Etot = 56.754eV
Energy per atom: Epot =49.417eV  Ekin = 7.336eV (T=610.282K) Etot = 56.754eV
Energy per atom: Epot =49.558eV  Ekin = 7.199eV (T=598.870K) Etot = 56.758eV
Energy per atom: Epot =50.250eV  Ekin = 6.510eV (T=541.548K) Etot = 56.761eV
Energy per atom: Epot =49.420eV  Ekin = 7.333eV (T=610.042K) Etot = 56.754eV
Energy per atom: Epot =50.284eV  Ekin = 6.472eV (T=538.398K) Etot = 56.756eV
Energy per atom: Epot =50.452eV  Ekin = 6.304eV (T=524.430K) Etot = 56.756eV
Energy per atom: Epot =50.748eV  Ekin = 6.009eV (T=499.855K) Etot = 56.757eV
Energy per atom: Epot =49.583eV  Ekin = 7.166eV (T=596.135K) Etot = 56.750eV
Energy per atom: Epot =49.018eV  Ekin = 7.729eV (T=642.909K) Etot = 56.746eV
Energy per atom: Epot =49.665eV  Ekin = 7.089eV (T=589.683K) Etot = 56.754eV
Energy per atom: Epot =50.043eV  Ekin = 6.711eV (T=558.288K) Etot = 56.754eV
Energy per atom: Epot =49.742eV  Ekin = 7.010eV (T=583.148K) Etot = 56.752eV
Energy per atom: Epot =49.881eV  Ekin = 6.874eV (T=571.852K) Etot = 56.756eV
Energy per atom: Epot =50.346eV  Ekin = 6.409eV (T=533.123K) Etot = 56.755eV
Energy per atom: Epot =49.428eV  Ekin = 7.321eV (T=608.990K) Etot = 56.749eV
Energy per atom: Epot =49.768eV  Ekin = 6.986eV (T=581.170K) Etot = 56.754eV
Energy per atom: Epot =49.716eV  Ekin = 7.041eV (T=585.689K) Etot = 56.756eV
Energy per atom: Epot =49.436eV  Ekin = 7.317eV (T=608.714K) Etot = 56.754eV
Energy per atom: Epot =50.338eV  Ekin = 6.421eV (T=534.142K) Etot = 56.759eV
Energy per atom: Epot =49.621eV  Ekin = 7.133eV (T=593.354K) Etot = 56.754eV
Energy per atom: Epot =49.416eV  Ekin = 7.333eV (T=610.016K) Etot = 56.749eV
Energy per atom: Epot =49.843eV  Ekin = 6.912eV (T=575.004K) Etot = 56.756eV
Energy per atom: Epot =49.310eV  Ekin = 7.441eV (T=618.956K) Etot = 56.751eV
Energy per atom: Epot =50.244eV  Ekin = 6.515eV (T=541.989K) Etot = 56.759eV
Energy per atom: Epot =49.682eV  Ekin = 7.070eV (T=588.120K) Etot = 56.752eV
Energy per atom: Epot =49.980eV  Ekin = 6.768eV (T=562.979K) Etot = 56.748eV
Energy per atom: Epot =50.441eV  Ekin = 6.313eV (T=525.128K) Etot = 56.754eV
Energy per atom: Epot =50.077eV  Ekin = 6.672eV (T=554.994K) Etot = 56.749eV
Energy per atom: Epot =49.384eV  Ekin = 7.362eV (T=612.457K) Etot = 56.747eV
Energy per atom: Epot =49.869eV  Ekin = 6.889eV (T=573.106K) Etot = 56.758eV
Energy per atom: Epot =49.760eV  Ekin = 6.996eV (T=581.989K) Etot = 56.756eV
Energy per atom: Epot =49.774eV  Ekin = 6.982eV (T=580.785K) Etot = 56.756eV
Energy per atom: Epot =49.963eV  Ekin = 6.797eV (T=565.416K) Etot = 56.760eV
Energy per atom: Epot =49.252eV  Ekin = 7.501eV (T=623.943K) Etot = 56.752eV
Energy per atom: Epot =49.567eV  Ekin = 7.182eV (T=597.483K) Etot = 56.750eV
Energy per atom: Epot =48.826eV  Ekin = 7.922eV (T=658.980K) Etot = 56.748eV
Energy per atom: Epot =50.028eV  Ekin = 6.725eV (T=559.405K) Etot = 56.753eV
Energy per atom: Epot =49.011eV  Ekin = 7.736eV (T=643.543K) Etot = 56.747eV
Energy per atom: Epot =49.516eV  Ekin = 7.234eV (T=601.800K) Etot = 56.751eV
Energy per atom: Epot =49.444eV  Ekin = 7.311eV (T=608.159K) Etot = 56.755eV
Energy per atom: Epot =50.204eV  Ekin = 6.551eV (T=544.938K) Etot = 56.754eV
Energy per atom: Epot =50.039eV  Ekin = 6.717eV (T=558.788K) Etot = 56.756eV
Energy per atom: Epot =50.535eV  Ekin = 6.225eV (T=517.857K) Etot = 56.760eV
Energy per atom: Epot =49.820eV  Ekin = 6.929eV (T=576.431K) Etot = 56.750eV
Energy per atom: Epot =49.418eV  Ekin = 7.334eV (T=610.116K) Etot = 56.752eV
Energy per atom: Epot =49.790eV  Ekin = 6.965eV (T=579.423K) Etot = 56.755eV
Energy per atom: Epot =49.400eV  Ekin = 7.352eV (T=611.570K) Etot = 56.751eV
Energy per atom: Epot =49.173eV  Ekin = 7.576eV (T=630.259K) Etot = 56.749eV
Energy per atom: Epot =49.785eV  Ekin = 6.963eV (T=579.248K) Etot = 56.749eV
Energy per atom: Epot =50.062eV  Ekin = 6.689eV (T=556.418K) Etot = 56.751eV
Energy per atom: Epot =49.885eV  Ekin = 6.865eV (T=571.059K) Etot = 56.749eV
Energy per atom: Epot =48.702eV  Ekin = 8.040eV (T=668.858K) Etot = 56.743eV
Energy per atom: Epot =49.518eV  Ekin = 7.230eV (T=601.450K) Etot = 56.748eV
Energy per atom: Epot =48.953eV  Ekin = 7.798eV (T=648.692K) Etot = 56.751eV
Energy per atom: Epot =49.991eV  Ekin = 6.766eV (T=562.836K) Etot = 56.757eV
Energy per atom: Epot =49.548eV  Ekin = 7.202eV (T=599.115K) Etot = 56.750eV
Energy per atom: Epot =49.782eV  Ekin = 6.970eV (T=579.838K) Etot = 56.753eV
Energy per atom: Epot =48.981eV  Ekin = 7.766eV (T=645.988K) Etot = 56.747eV
Energy per atom: Epot =49.615eV  Ekin = 7.132eV (T=593.286K) Etot = 56.747eV
Energy per atom: Epot =49.781eV  Ekin = 6.967eV (T=579.568K) Etot = 56.748eV
Energy per atom: Epot =49.632eV  Ekin = 7.121eV (T=592.369K) Etot = 56.753eV
Energy per atom: Epot =48.758eV  Ekin = 7.992eV (T=664.839K) Etot = 56.750eV
Energy per atom: Epot =49.425eV  Ekin = 7.323eV (T=609.140K) Etot = 56.748eV
Energy per atom: Epot =50.249eV  Ekin = 6.504eV (T=541.070K) Etot = 56.754eV
Energy per atom: Epot =49.455eV  Ekin = 7.296eV (T=606.922K) Etot = 56.751eV
Energy per atom: Epot =50.323eV  Ekin = 6.430eV (T=534.922K) Etot = 56.753eV
Energy per atom: Epot =50.494eV  Ekin = 6.263eV (T=520.994K) Etot = 56.757eV
Energy per atom: Epot =49.737eV  Ekin = 7.016eV (T=583.597K) Etot = 56.753eV
Energy per atom: Epot =49.112eV  Ekin = 7.641eV (T=635.662K) Etot = 56.753eV
Energy per atom: Epot =49.056eV  Ekin = 7.697eV (T=640.271K) Etot = 56.753eV
Energy per atom: Epot =50.062eV  Ekin = 6.694eV (T=556.877K) Etot = 56.756eV
Energy per atom: Epot =50.210eV  Ekin = 6.544eV (T=544.411K) Etot = 56.754eV
Energy per atom: Epot =49.255eV  Ekin = 7.498eV (T=623.761K) Etot = 56.753eV
Energy per atom: Epot =49.954eV  Ekin = 6.801eV (T=565.756K) Etot = 56.755eV
Energy per atom: Epot =49.852eV  Ekin = 6.898eV (T=573.808K) Etot = 56.750eV
Energy per atom: Epot =50.255eV  Ekin = 6.502eV (T=540.881K) Etot = 56.757eV
Energy per atom: Epot =49.436eV  Ekin = 7.317eV (T=608.708K) Etot = 56.753eV
Energy per atom: Epot =49.448eV  Ekin = 7.307eV (T=607.808K) Etot = 56.755eV
Energy per atom: Epot =49.952eV  Ekin = 6.802eV (T=565.805K) Etot = 56.754eV
Energy per atom: Epot =49.157eV  Ekin = 7.592eV (T=631.531K) Etot = 56.749eV
Energy per atom: Epot =49.464eV  Ekin = 7.283eV (T=605.870K) Etot = 56.747eV
Energy per atom: Epot =50.081eV  Ekin = 6.670eV (T=554.861K) Etot = 56.751eV
Energy per atom: Epot =49.751eV  Ekin = 7.002eV (T=582.490K) Etot = 56.753eV
Energy per atom: Epot =49.973eV  Ekin = 6.780eV (T=564.039K) Etot = 56.753eV
Energy per atom: Epot =49.474eV  Ekin = 7.280eV (T=605.632K) Etot = 56.754eV
Energy per atom: Epot =49.076eV  Ekin = 7.677eV (T=638.634K) Etot = 56.753eV
Energy per atom: Epot =49.562eV  Ekin = 7.195eV (T=598.544K) Etot = 56.757eV
Energy per atom: Epot =49.697eV  Ekin = 7.058eV (T=587.103K) Etot = 56.755eV
Energy per atom: Epot =49.811eV  Ekin = 6.942eV (T=577.521K) Etot = 56.754eV
Energy per atom: Epot =49.909eV  Ekin = 6.849eV (T=569.756K) Etot = 56.758eV
Energy per atom: Epot =49.773eV  Ekin = 6.983eV (T=580.872K) Etot = 56.756eV
Energy per atom: Epot =49.915eV  Ekin = 6.839eV (T=568.937K) Etot = 56.755eV
Energy per atom: Epot =49.680eV  Ekin = 7.074eV (T=588.459K) Etot = 56.753eV
Energy per atom: Epot =49.019eV  Ekin = 7.727eV (T=642.814K) Etot = 56.747eV
Energy per atom: Epot =49.118eV  Ekin = 7.634eV (T=635.007K) Etot = 56.752eV
Energy per atom: Epot =49.463eV  Ekin = 7.291eV (T=606.504K) Etot = 56.753eV
Energy per atom: Epot =49.247eV  Ekin = 7.500eV (T=623.908K) Etot = 56.748eV
Energy per atom: Epot =49.064eV  Ekin = 7.687eV (T=639.453K) Etot = 56.751eV
Energy per atom: Epot =50.225eV  Ekin = 6.531eV (T=543.292K) Etot = 56.756eV
Energy per atom: Epot =50.412eV  Ekin = 6.341eV (T=527.485K) Etot = 56.753eV
Energy per atom: Epot =50.096eV  Ekin = 6.659eV (T=553.954K) Etot = 56.755eV
Energy per atom: Epot =48.991eV  Ekin = 7.758eV (T=645.356K) Etot = 56.749eV
Energy per atom: Epot =49.082eV  Ekin = 7.663eV (T=637.444K) Etot = 56.745eV
Energy per atom: Epot =49.669eV  Ekin = 7.080eV (T=588.937K) Etot = 56.748eV
Energy per atom: Epot =49.436eV  Ekin = 7.316eV (T=608.604K) Etot = 56.752eV
Energy per atom: Epot =49.900eV  Ekin = 6.851eV (T=569.870K) Etot = 56.751eV
Energy per atom: Epot =49.158eV  Ekin = 7.588eV (T=631.185K) Etot = 56.746eV
Energy per atom: Epot =49.740eV  Ekin = 7.012eV (T=583.264K) Etot = 56.752eV
Energy per atom: Epot =49.114eV  Ekin = 7.637eV (T=635.264K) Etot = 56.750eV
Energy per atom: Epot =48.866eV  Ekin = 7.883eV (T=655.750K) Etot = 56.749eV
Energy per atom: Epot =49.430eV  Ekin = 7.323eV (T=609.138K) Etot = 56.753eV
Energy per atom: Epot =49.724eV  Ekin = 7.029eV (T=584.723K) Etot = 56.753eV
Energy per atom: Epot =49.530eV  Ekin = 7.221eV (T=600.661K) Etot = 56.750eV
Energy per atom: Epot =49.577eV  Ekin = 7.177eV (T=597.039K) Etot = 56.754eV
Energy per atom: Epot =49.819eV  Ekin = 6.935eV (T=576.863K) Etot = 56.754eV
Energy per atom: Epot =48.887eV  Ekin = 7.862eV (T=654.038K) Etot = 56.749eV
Energy per atom: Epot =48.319eV  Ekin = 8.427eV (T=701.025K) Etot = 56.746eV
Energy per atom: Epot =48.898eV  Ekin = 7.853eV (T=653.243K) Etot = 56.751eV
Energy per atom: Epot =49.696eV  Ekin = 7.056eV (T=586.974K) Etot = 56.753eV
Energy per atom: Epot =49.702eV  Ekin = 7.049eV (T=586.341K) Etot = 56.751eV
Energy per atom: Epot =49.409eV  Ekin = 7.342eV (T=610.773K) Etot = 56.751eV
Energy per atom: Epot =49.956eV  Ekin = 6.800eV (T=565.697K) Etot = 56.756eV
Energy per atom: Epot =49.277eV  Ekin = 7.468eV (T=621.259K) Etot = 56.745eV
Energy per atom: Epot =49.139eV  Ekin = 7.601eV (T=632.305K) Etot = 56.740eV
Energy per atom: Epot =49.325eV  Ekin = 7.422eV (T=617.398K) Etot = 56.746eV
Energy per atom: Epot =49.839eV  Ekin = 6.908eV (T=574.685K) Etot = 56.747eV
Energy per atom: Epot =49.453eV  Ekin = 7.297eV (T=607.014K) Etot = 56.750eV
Energy per atom: Epot =49.597eV  Ekin = 7.156eV (T=595.255K) Etot = 56.752eV
Energy per atom: Epot =48.696eV  Ekin = 8.054eV (T=669.955K) Etot = 56.750eV
Energy per atom: Epot =49.232eV  Ekin = 7.523eV (T=625.802K) Etot = 56.754eV
Energy per atom: Epot =49.414eV  Ekin = 7.337eV (T=610.359K) Etot = 56.752eV
Energy per atom: Epot =49.896eV  Ekin = 6.857eV (T=570.436K) Etot = 56.753eV
Energy per atom: Epot =49.540eV  Ekin = 7.213eV (T=600.066K) Etot = 56.753eV
Energy per atom: Epot =49.469eV  Ekin = 7.281eV (T=605.680K) Etot = 56.750eV
Energy per atom: Epot =48.985eV  Ekin = 7.762eV (T=645.677K) Etot = 56.747eV
Energy per atom: Epot =50.376eV  Ekin = 6.378eV (T=530.535K) Etot = 56.754eV
Energy per atom: Epot =49.012eV  Ekin = 7.733eV (T=643.273K) Etot = 56.745eV
Energy per atom: Epot =49.660eV  Ekin = 7.091eV (T=589.847K) Etot = 56.750eV
Energy per atom: Epot =49.303eV  Ekin = 7.446eV (T=619.381K) Etot = 56.748eV
Energy per atom: Epot =49.326eV  Ekin = 7.430eV (T=618.083K) Etot = 56.756eV
Energy per atom: Epot =48.853eV  Ekin = 7.904eV (T=657.469K) Etot = 56.757eV
Energy per atom: Epot =50.053eV  Ekin = 6.699eV (T=557.277K) Etot = 56.752eV
Energy per atom: Epot =49.671eV  Ekin = 7.077eV (T=588.703K) Etot = 56.747eV
Energy per atom: Epot =50.185eV  Ekin = 6.568eV (T=546.384K) Etot = 56.753eV
Energy per atom: Epot =49.689eV  Ekin = 7.066eV (T=587.814K) Etot = 56.755eV
Energy per atom: Epot =50.027eV  Ekin = 6.732eV (T=559.980K) Etot = 56.759eV
Energy per atom: Epot =49.388eV  Ekin = 7.365eV (T=612.635K) Etot = 56.752eV
Energy per atom: Epot =50.111eV  Ekin = 6.645eV (T=552.754K) Etot = 56.756eV
Energy per atom: Epot =49.875eV  Ekin = 6.877eV (T=572.046K) Etot = 56.751eV
Energy per atom: Epot =48.771eV  Ekin = 7.977eV (T=663.549K) Etot = 56.748eV
Energy per atom: Epot =50.097eV  Ekin = 6.658eV (T=553.873K) Etot = 56.755eV
Energy per atom: Epot =49.874eV  Ekin = 6.880eV (T=572.321K) Etot = 56.753eV
Energy per atom: Epot =49.693eV  Ekin = 7.057eV (T=587.069K) Etot = 56.750eV
Energy per atom: Epot =49.921eV  Ekin = 6.830eV (T=568.139K) Etot = 56.751eV
Energy per atom: Epot =49.920eV  Ekin = 6.839eV (T=568.893K) Etot = 56.759eV
Energy per atom: Epot =50.032eV  Ekin = 6.721eV (T=559.066K) Etot = 56.753eV
Energy per atom: Epot =50.376eV  Ekin = 6.379eV (T=530.673K) Etot = 56.755eV
Energy per atom: Epot =48.900eV  Ekin = 7.850eV (T=653.047K) Etot = 56.750eV
Energy per atom: Epot =49.177eV  Ekin = 7.576eV (T=630.188K) Etot = 56.753eV
Energy per atom: Epot =49.036eV  Ekin = 7.714eV (T=641.690K) Etot = 56.750eV
Energy per atom: Epot =49.176eV  Ekin = 7.574eV (T=630.022K) Etot = 56.749eV
Energy per atom: Epot =50.415eV  Ekin = 6.346eV (T=527.938K) Etot = 56.761eV
Energy per atom: Epot =49.185eV  Ekin = 7.566eV (T=629.386K) Etot = 56.751eV
Energy per atom: Epot =49.466eV  Ekin = 7.282eV (T=605.783K) Etot = 56.748eV
Energy per atom: Epot =49.583eV  Ekin = 7.172eV (T=596.578K) Etot = 56.755eV
Energy per atom: Epot =49.625eV  Ekin = 7.131eV (T=593.218K) Etot = 56.756eV
Energy per atom: Epot =49.423eV  Ekin = 7.324eV (T=609.297K) Etot = 56.748eV
Energy per atom: Epot =49.721eV  Ekin = 7.027eV (T=584.573K) Etot = 56.749eV
Energy per atom: Epot =49.673eV  Ekin = 7.084eV (T=589.262K) Etot = 56.757eV
Energy per atom: Epot =48.958eV  Ekin = 7.792eV (T=648.172K) Etot = 56.750eV
Energy per atom: Epot =48.931eV  Ekin = 7.819eV (T=650.411K) Etot = 56.750eV
Energy per atom: Epot =49.979eV  Ekin = 6.769eV (T=563.109K) Etot = 56.748eV
Energy per atom: Epot =49.692eV  Ekin = 7.058eV (T=587.143K) Etot = 56.750eV
Energy per atom: Epot =49.347eV  Ekin = 7.403eV (T=615.855K) Etot = 56.751eV
Energy per atom: Epot =49.588eV  Ekin = 7.167eV (T=596.227K) Etot = 56.755eV
Energy per atom: Epot =48.810eV  Ekin = 7.937eV (T=660.292K) Etot = 56.748eV
Energy per atom: Epot =49.876eV  Ekin = 6.881eV (T=572.401K) Etot = 56.757eV

After running the simulation, use Graphical user interface (GUI) to compare the resulting trajectory with how it looks if you comment out either the line that says Stationary(atoms), ZeroRotation(atoms) or both:

ase gui nanoparticleCu_NVE.traj

Try playing the movie with a high frame rate and set frame skipping to a low number. Can you spot the subtle difference?

# Other thermostats are available in ASE,
# the Canonical Sampling Velocity Rescaling (CVSR)
# is one of them. Below you can find example of how to use it.
# An important thing to know is that the atoms object should have
# non-zero velocities before instanciating the dynamics object
from ase.build.bulk import bulk
from ase.md.bussi import Bussi
from ase.md.velocitydistribution import Stationary, thermalize_momenta
from ase.units import fs

cu_fcc = bulk('Cu', 'fcc') * (2, 2, 2)
cu_fcc.calc = EMT()

# CSVR thermostat requires initial velocity.
thermalize_momenta(cu_fcc, temperature_K=300)
Stationary(cu_fcc)

bussi_dyn = Bussi(cu_fcc, 1.0 * fs, temperature_K=300, taut=50)

# It is possible to run the dynamics interactively,
# performing custom actions between steps.
for step in bussi_dyn.irun(100):
    print(
        f'Cumul. energy transfered to the thermostat'
        f' {bussi_dyn.transferred_energy} eV'
    )
Cumul. energy transfered to the thermostat 0.0 eV
Cumul. energy transfered to the thermostat 8.635830509572757e-05 eV
Cumul. energy transfered to the thermostat 0.0027294747833648434 eV
Cumul. energy transfered to the thermostat 0.006095630128623896 eV
Cumul. energy transfered to the thermostat 0.0007046729193007162 eV
Cumul. energy transfered to the thermostat -0.004344508120561809 eV
Cumul. energy transfered to the thermostat -0.009740922145729945 eV
Cumul. energy transfered to the thermostat -0.004494582106036558 eV
Cumul. energy transfered to the thermostat -0.0030092782085454958 eV
Cumul. energy transfered to the thermostat -0.019519543260882455 eV
Cumul. energy transfered to the thermostat -0.022733868220525272 eV
Cumul. energy transfered to the thermostat -0.024097190698645004 eV
Cumul. energy transfered to the thermostat -0.024485820158265635 eV
Cumul. energy transfered to the thermostat -0.022375567472586233 eV
Cumul. energy transfered to the thermostat -0.02744536741334704 eV
Cumul. energy transfered to the thermostat -0.021352291397733827 eV
Cumul. energy transfered to the thermostat -0.0309498203133037 eV
Cumul. energy transfered to the thermostat -0.02689701835568772 eV
Cumul. energy transfered to the thermostat -0.03193535010363514 eV
Cumul. energy transfered to the thermostat -0.023361454962302228 eV
Cumul. energy transfered to the thermostat -0.015567385461226508 eV
Cumul. energy transfered to the thermostat -0.021772933175565615 eV
Cumul. energy transfered to the thermostat -0.02223803152497635 eV
Cumul. energy transfered to the thermostat -0.01998926056056633 eV
Cumul. energy transfered to the thermostat -0.02335403599608875 eV
Cumul. energy transfered to the thermostat -0.01845911384337607 eV
Cumul. energy transfered to the thermostat -0.02006603883876655 eV
Cumul. energy transfered to the thermostat -0.021878539335193486 eV
Cumul. energy transfered to the thermostat -0.02185516907043519 eV
Cumul. energy transfered to the thermostat -0.019316600473435204 eV
Cumul. energy transfered to the thermostat -0.01990411117666437 eV
Cumul. energy transfered to the thermostat -0.018092262193117367 eV
Cumul. energy transfered to the thermostat -0.013962325315462676 eV
Cumul. energy transfered to the thermostat -0.013172019253278771 eV
Cumul. energy transfered to the thermostat -0.011292267167688295 eV
Cumul. energy transfered to the thermostat -0.012629016651066468 eV
Cumul. energy transfered to the thermostat -0.017301711209041143 eV
Cumul. energy transfered to the thermostat -0.009355180299263096 eV
Cumul. energy transfered to the thermostat -0.011394485532852596 eV
Cumul. energy transfered to the thermostat -0.004733466411641418 eV
Cumul. energy transfered to the thermostat -0.0015624771780935512 eV
Cumul. energy transfered to the thermostat 3.300952869491778e-05 eV
Cumul. energy transfered to the thermostat 0.0012809721943264562 eV
Cumul. energy transfered to the thermostat -0.0019495663659510906 eV
Cumul. energy transfered to the thermostat -0.005265595711276262 eV
Cumul. energy transfered to the thermostat -0.011587388595003778 eV
Cumul. energy transfered to the thermostat -0.012324175507694666 eV
Cumul. energy transfered to the thermostat -0.013453914115891684 eV
Cumul. energy transfered to the thermostat -0.011469694378418806 eV
Cumul. energy transfered to the thermostat -0.01341933508454319 eV
Cumul. energy transfered to the thermostat -0.010207253043049062 eV
Cumul. energy transfered to the thermostat -0.010252361942998701 eV
Cumul. energy transfered to the thermostat -0.00893955974947871 eV
Cumul. energy transfered to the thermostat -0.008116339985059532 eV
Cumul. energy transfered to the thermostat -0.011670305588805989 eV
Cumul. energy transfered to the thermostat -0.008251716629822763 eV
Cumul. energy transfered to the thermostat -0.011179044745066273 eV
Cumul. energy transfered to the thermostat -0.011337756058512163 eV
Cumul. energy transfered to the thermostat -0.012526617197330177 eV
Cumul. energy transfered to the thermostat -0.01894675474849198 eV
Cumul. energy transfered to the thermostat -0.017369919857570307 eV
Cumul. energy transfered to the thermostat -0.013101445887499423 eV
Cumul. energy transfered to the thermostat -0.014358861744269237 eV
Cumul. energy transfered to the thermostat -0.01205172920498726 eV
Cumul. energy transfered to the thermostat -0.015241871895975773 eV
Cumul. energy transfered to the thermostat -0.009129081938891111 eV
Cumul. energy transfered to the thermostat -0.01264084218843324 eV
Cumul. energy transfered to the thermostat -0.0068967688350426845 eV
Cumul. energy transfered to the thermostat -0.006805226290101097 eV
Cumul. energy transfered to the thermostat -0.01282070576907961 eV
Cumul. energy transfered to the thermostat -0.01312408785455784 eV
Cumul. energy transfered to the thermostat -0.009878276642376988 eV
Cumul. energy transfered to the thermostat -0.011289406529322716 eV
Cumul. energy transfered to the thermostat -0.013479283931996665 eV
Cumul. energy transfered to the thermostat -0.01672873108144667 eV
Cumul. energy transfered to the thermostat -0.020560096150457514 eV
Cumul. energy transfered to the thermostat -0.009445994738584079 eV
Cumul. energy transfered to the thermostat -0.007072698152523756 eV
Cumul. energy transfered to the thermostat -0.005486390865734474 eV
Cumul. energy transfered to the thermostat 0.00022638830170161432 eV
Cumul. energy transfered to the thermostat -0.00015976139780120616 eV
Cumul. energy transfered to the thermostat 0.0007331529531993146 eV
Cumul. energy transfered to the thermostat 0.0025104056109075098 eV
Cumul. energy transfered to the thermostat 0.002853941557639691 eV
Cumul. energy transfered to the thermostat -0.004723086802325777 eV
Cumul. energy transfered to the thermostat -0.0062267115054559655 eV
Cumul. energy transfered to the thermostat -0.005659138020839039 eV
Cumul. energy transfered to the thermostat -0.005896400585954714 eV
Cumul. energy transfered to the thermostat -0.008876316334211766 eV
Cumul. energy transfered to the thermostat -0.010660535028915686 eV
Cumul. energy transfered to the thermostat -0.01217907363064859 eV
Cumul. energy transfered to the thermostat -0.007508594593222534 eV
Cumul. energy transfered to the thermostat -0.0103376055307573 eV
Cumul. energy transfered to the thermostat -0.008900140819248361 eV
Cumul. energy transfered to the thermostat -0.003195198717252141 eV
Cumul. energy transfered to the thermostat -0.01019750859965028 eV
Cumul. energy transfered to the thermostat -0.0076044314573916905 eV
Cumul. energy transfered to the thermostat -0.008344498274379305 eV
Cumul. energy transfered to the thermostat -0.014668637028749269 eV
Cumul. energy transfered to the thermostat -0.013841470372702691 eV
Cumul. energy transfered to the thermostat -0.009865785022967172 eV

Gallery generated by Sphinx-Gallery