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.362eV (T=296.616K) Etot = 150.958eV
Energy per atom: Epot =115.849eV  Ekin = 35.881eV (T=69.398K) Etot = 151.730eV
Energy per atom: Epot =78.087eV  Ekin = 73.519eV (T=142.192K) Etot = 151.606eV
Energy per atom: Epot =70.223eV  Ekin = 81.230eV (T=157.106K) Etot = 151.453eV
Energy per atom: Epot =67.840eV  Ekin = 83.555eV (T=161.602K) Etot = 151.395eV
Energy per atom: Epot =79.280eV  Ekin = 72.280eV (T=139.795K) Etot = 151.560eV
Energy per atom: Epot =77.646eV  Ekin = 73.908eV (T=142.944K) Etot = 151.554eV
Energy per atom: Epot =73.210eV  Ekin = 78.255eV (T=151.352K) Etot = 151.465eV
Energy per atom: Epot =71.149eV  Ekin = 80.310eV (T=155.327K) Etot = 151.459eV
Energy per atom: Epot =77.670eV  Ekin = 73.868eV (T=142.868K) Etot = 151.538eV
Energy per atom: Epot =75.150eV  Ekin = 76.357eV (T=147.681K) Etot = 151.507eV
Energy per atom: Epot =73.576eV  Ekin = 77.912eV (T=150.688K) Etot = 151.488eV
Energy per atom: Epot =73.817eV  Ekin = 77.672eV (T=150.225K) Etot = 151.489eV
Energy per atom: Epot =77.079eV  Ekin = 74.429eV (T=143.953K) Etot = 151.508eV
Energy per atom: Epot =73.315eV  Ekin = 78.179eV (T=151.204K) Etot = 151.494eV
Energy per atom: Epot =74.768eV  Ekin = 76.744eV (T=148.429K) Etot = 151.512eV
Energy per atom: Epot =73.249eV  Ekin = 78.239eV (T=151.320K) Etot = 151.488eV
Energy per atom: Epot =76.416eV  Ekin = 75.077eV (T=145.205K) Etot = 151.493eV
Energy per atom: Epot =74.150eV  Ekin = 77.354eV (T=149.610K) Etot = 151.504eV
Energy per atom: Epot =74.037eV  Ekin = 77.457eV (T=149.808K) Etot = 151.494eV
Energy per atom: Epot =76.002eV  Ekin = 75.500eV (T=146.024K) Etot = 151.502eV

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 =601.313eV  Ekin = 80.903eV (T=156.474K) Etot = 682.216eV
Energy per atom: Epot =673.180eV  Ekin = 138.002eV (T=266.908K) Etot = 811.182eV
Energy per atom: Epot =723.820eV  Ekin = 204.248eV (T=395.033K) Etot = 928.068eV
Energy per atom: Epot =780.297eV  Ekin = 253.071eV (T=489.461K) Etot = 1033.368eV
Energy per atom: Epot =833.286eV  Ekin = 300.584eV (T=581.356K) Etot = 1133.870eV
Energy per atom: Epot =882.674eV  Ekin = 341.957eV (T=661.375K) Etot = 1224.631eV
Energy per atom: Epot =922.471eV  Ekin = 378.823eV (T=732.676K) Etot = 1301.294eV
Energy per atom: Epot =962.589eV  Ekin = 410.065eV (T=793.102K) Etot = 1372.654eV
Energy per atom: Epot =999.742eV  Ekin = 444.621eV (T=859.936K) Etot = 1444.363eV
Energy per atom: Epot =1042.642eV  Ekin = 462.139eV (T=893.818K) Etot = 1504.782eV
Energy per atom: Epot =1068.652eV  Ekin = 488.842eV (T=945.464K) Etot = 1557.494eV
Energy per atom: Epot =1103.419eV  Ekin = 504.424eV (T=975.599K) Etot = 1607.843eV
Energy per atom: Epot =1139.127eV  Ekin = 520.086eV (T=1005.892K) Etot = 1659.214eV
Energy per atom: Epot =1169.665eV  Ekin = 530.886eV (T=1026.779K) Etot = 1700.551eV
Energy per atom: Epot =1192.296eV  Ekin = 560.368eV (T=1083.801K) Etot = 1752.665eV
Energy per atom: Epot =1234.325eV  Ekin = 562.511eV (T=1087.945K) Etot = 1796.836eV
Energy per atom: Epot =1249.257eV  Ekin = 582.940eV (T=1127.457K) Etot = 1832.197eV
Energy per atom: Epot =1271.093eV  Ekin = 595.178eV (T=1151.125K) Etot = 1866.270eV
Energy per atom: Epot =1304.707eV  Ekin = 591.434eV (T=1143.884K) Etot = 1896.140eV
Energy per atom: Epot =1320.261eV  Ekin = 618.800eV (T=1196.813K) Etot = 1939.061eV
Energy per atom: Epot =1346.257eV  Ekin = 624.442eV (T=1207.726K) Etot = 1970.699eV
Energy per atom: Epot =1371.708eV  Ekin = 626.891eV (T=1212.461K) Etot = 1998.599eV
Energy per atom: Epot =1381.777eV  Ekin = 629.854eV (T=1218.192K) Etot = 2011.630eV
Energy per atom: Epot =1396.013eV  Ekin = 646.161eV (T=1249.732K) Etot = 2042.174eV
Energy per atom: Epot =1420.197eV  Ekin = 645.208eV (T=1247.888K) Etot = 2065.405eV
Energy per atom: Epot =1431.222eV  Ekin = 651.982eV (T=1260.990K) Etot = 2083.204eV
Energy per atom: Epot =1443.730eV  Ekin = 666.263eV (T=1288.610K) Etot = 2109.993eV
Energy per atom: Epot =1449.670eV  Ekin = 678.501eV (T=1312.281K) Etot = 2128.171eV
Energy per atom: Epot =1473.054eV  Ekin = 675.540eV (T=1306.553K) Etot = 2148.594eV
Energy per atom: Epot =1492.218eV  Ekin = 673.347eV (T=1302.312K) Etot = 2165.566eV
Energy per atom: Epot =1504.295eV  Ekin = 682.624eV (T=1320.254K) Etot = 2186.918eV
Energy per atom: Epot =1519.295eV  Ekin = 680.629eV (T=1316.395K) Etot = 2199.923eV
Energy per atom: Epot =1535.698eV  Ekin = 683.007eV (T=1320.996K) Etot = 2218.705eV
Energy per atom: Epot =1554.676eV  Ekin = 687.562eV (T=1329.804K) Etot = 2242.238eV
Energy per atom: Epot =1562.601eV  Ekin = 697.034eV (T=1348.124K) Etot = 2259.634eV
Energy per atom: Epot =1574.090eV  Ekin = 688.650eV (T=1331.910K) Etot = 2262.741eV
Energy per atom: Epot =1584.882eV  Ekin = 692.328eV (T=1339.023K) Etot = 2277.210eV
Energy per atom: Epot =1594.114eV  Ekin = 696.612eV (T=1347.308K) Etot = 2290.726eV
Energy per atom: Epot =1604.672eV  Ekin = 708.155eV (T=1369.632K) Etot = 2312.826eV
Energy per atom: Epot =1617.123eV  Ekin = 705.444eV (T=1364.390K) Etot = 2322.567eV
Energy per atom: Epot =1616.587eV  Ekin = 723.073eV (T=1398.486K) Etot = 2339.659eV
Energy per atom: Epot =1630.638eV  Ekin = 714.524eV (T=1381.951K) Etot = 2345.162eV
Energy per atom: Epot =1650.527eV  Ekin = 705.520eV (T=1364.538K) Etot = 2356.047eV
Energy per atom: Epot =1646.387eV  Ekin = 722.901eV (T=1398.153K) Etot = 2369.288eV
Energy per atom: Epot =1665.683eV  Ekin = 716.111eV (T=1385.021K) Etot = 2381.794eV
Energy per atom: Epot =1680.949eV  Ekin = 717.445eV (T=1387.600K) Etot = 2398.394eV
Energy per atom: Epot =1690.298eV  Ekin = 717.928eV (T=1388.535K) Etot = 2408.225eV
Energy per atom: Epot =1703.781eV  Ekin = 714.752eV (T=1382.393K) Etot = 2418.533eV
Energy per atom: Epot =1713.428eV  Ekin = 713.663eV (T=1380.287K) Etot = 2427.092eV
Energy per atom: Epot =1702.965eV  Ekin = 733.966eV (T=1419.554K) Etot = 2436.931eV
Energy per atom: Epot =1716.988eV  Ekin = 724.119eV (T=1400.509K) Etot = 2441.107eV
Energy per atom: Epot =1724.916eV  Ekin = 730.216eV (T=1412.302K) Etot = 2455.132eV
Energy per atom: Epot =1731.595eV  Ekin = 739.742eV (T=1430.725K) Etot = 2471.337eV
Energy per atom: Epot =1743.109eV  Ekin = 740.941eV (T=1433.045K) Etot = 2484.050eV
Energy per atom: Epot =1749.062eV  Ekin = 734.784eV (T=1421.136K) Etot = 2483.846eV
Energy per atom: Epot =1767.938eV  Ekin = 727.625eV (T=1407.291K) Etot = 2495.564eV
Energy per atom: Epot =1776.507eV  Ekin = 727.406eV (T=1406.867K) Etot = 2503.913eV
Energy per atom: Epot =1781.040eV  Ekin = 734.302eV (T=1420.204K) Etot = 2515.342eV
Energy per atom: Epot =1792.455eV  Ekin = 725.926eV (T=1404.004K) Etot = 2518.381eV
Energy per atom: Epot =1793.148eV  Ekin = 732.139eV (T=1416.021K) Etot = 2525.287eV
Energy per atom: Epot =1803.650eV  Ekin = 720.113eV (T=1392.762K) Etot = 2523.764eV
Energy per atom: Epot =1795.429eV  Ekin = 730.220eV (T=1412.310K) Etot = 2525.649eV
Energy per atom: Epot =1806.373eV  Ekin = 740.701eV (T=1432.581K) Etot = 2547.075eV
Energy per atom: Epot =1805.898eV  Ekin = 740.359eV (T=1431.919K) Etot = 2546.257eV
Energy per atom: Epot =1802.325eV  Ekin = 751.615eV (T=1453.690K) Etot = 2553.940eV
Energy per atom: Epot =1832.686eV  Ekin = 728.434eV (T=1408.855K) Etot = 2561.120eV
Energy per atom: Epot =1833.941eV  Ekin = 731.846eV (T=1415.454K) Etot = 2565.787eV
Energy per atom: Epot =1839.436eV  Ekin = 744.542eV (T=1440.008K) Etot = 2583.978eV
Energy per atom: Epot =1850.910eV  Ekin = 744.143eV (T=1439.238K) Etot = 2595.053eV
Energy per atom: Epot =1858.073eV  Ekin = 752.611eV (T=1455.616K) Etot = 2610.685eV
Energy per atom: Epot =1856.725eV  Ekin = 758.776eV (T=1467.538K) Etot = 2615.501eV
Energy per atom: Epot =1861.407eV  Ekin = 750.125eV (T=1450.807K) Etot = 2611.532eV
Energy per atom: Epot =1863.361eV  Ekin = 754.159eV (T=1458.610K) Etot = 2617.521eV
Energy per atom: Epot =1867.077eV  Ekin = 752.806eV (T=1455.993K) Etot = 2619.883eV
Energy per atom: Epot =1874.754eV  Ekin = 753.022eV (T=1456.409K) Etot = 2627.776eV
Energy per atom: Epot =1867.761eV  Ekin = 766.316eV (T=1482.122K) Etot = 2634.077eV
Energy per atom: Epot =1886.274eV  Ekin = 748.984eV (T=1448.599K) Etot = 2635.257eV
Energy per atom: Epot =1886.248eV  Ekin = 753.493eV (T=1457.320K) Etot = 2639.741eV
Energy per atom: Epot =1887.232eV  Ekin = 756.443eV (T=1463.027K) Etot = 2643.676eV
Energy per atom: Epot =1892.091eV  Ekin = 750.869eV (T=1452.246K) Etot = 2642.960eV
Energy per atom: Epot =1898.906eV  Ekin = 754.381eV (T=1459.038K) Etot = 2653.287eV
Energy per atom: Epot =1903.143eV  Ekin = 747.943eV (T=1446.587K) Etot = 2651.086eV
Energy per atom: Epot =1887.738eV  Ekin = 763.120eV (T=1475.940K) Etot = 2650.858eV
Energy per atom: Epot =1917.822eV  Ekin = 743.877eV (T=1438.723K) Etot = 2661.699eV
Energy per atom: Epot =1915.856eV  Ekin = 750.430eV (T=1451.397K) Etot = 2666.285eV
Energy per atom: Epot =1919.376eV  Ekin = 759.873eV (T=1469.660K) Etot = 2679.248eV
Energy per atom: Epot =1930.095eV  Ekin = 751.133eV (T=1452.756K) Etot = 2681.228eV
Energy per atom: Epot =1920.143eV  Ekin = 768.546eV (T=1486.434K) Etot = 2688.688eV
Energy per atom: Epot =1938.168eV  Ekin = 753.219eV (T=1456.791K) Etot = 2691.387eV
Energy per atom: Epot =1924.277eV  Ekin = 768.902eV (T=1487.123K) Etot = 2693.179eV
Energy per atom: Epot =1937.144eV  Ekin = 757.971eV (T=1465.983K) Etot = 2695.115eV
Energy per atom: Epot =1950.283eV  Ekin = 744.926eV (T=1440.752K) Etot = 2695.209eV
Energy per atom: Epot =1945.102eV  Ekin = 754.821eV (T=1459.890K) Etot = 2699.923eV
Energy per atom: Epot =1941.390eV  Ekin = 755.608eV (T=1461.411K) Etot = 2696.998eV
Energy per atom: Epot =1940.157eV  Ekin = 759.664eV (T=1469.257K) Etot = 2699.821eV
Energy per atom: Epot =1938.347eV  Ekin = 769.920eV (T=1489.093K) Etot = 2708.267eV
Energy per atom: Epot =1945.837eV  Ekin = 767.794eV (T=1484.981K) Etot = 2713.632eV
Energy per atom: Epot =1958.717eV  Ekin = 755.602eV (T=1461.400K) Etot = 2714.320eV
Energy per atom: Epot =1969.949eV  Ekin = 741.815eV (T=1434.734K) Etot = 2711.764eV
Energy per atom: Epot =1955.140eV  Ekin = 768.792eV (T=1486.910K) Etot = 2723.932eV
Energy per atom: Epot =1962.692eV  Ekin = 760.239eV (T=1470.369K) Etot = 2722.932eV
Energy per atom: Epot =1969.360eV  Ekin = 763.593eV (T=1476.856K) Etot = 2732.953eV
Energy per atom: Epot =1963.243eV  Ekin = 774.124eV (T=1497.223K) Etot = 2737.367eV
Energy per atom: Epot =1968.318eV  Ekin = 769.555eV (T=1488.386K) Etot = 2737.872eV
Energy per atom: Epot =1964.816eV  Ekin = 762.013eV (T=1473.799K) Etot = 2726.828eV
Energy per atom: Epot =1960.433eV  Ekin = 773.120eV (T=1495.281K) Etot = 2733.553eV
Energy per atom: Epot =1975.827eV  Ekin = 767.804eV (T=1485.000K) Etot = 2743.632eV
Energy per atom: Epot =1971.077eV  Ekin = 759.597eV (T=1469.127K) Etot = 2730.675eV
Energy per atom: Epot =1969.817eV  Ekin = 769.433eV (T=1488.151K) Etot = 2739.250eV
Energy per atom: Epot =1971.699eV  Ekin = 779.674eV (T=1507.958K) Etot = 2751.373eV
Energy per atom: Epot =1962.733eV  Ekin = 789.905eV (T=1527.746K) Etot = 2752.639eV
Energy per atom: Epot =1980.016eV  Ekin = 774.596eV (T=1498.135K) Etot = 2754.612eV
Energy per atom: Epot =1974.571eV  Ekin = 768.382eV (T=1486.119K) Etot = 2742.954eV
Energy per atom: Epot =1980.215eV  Ekin = 774.749eV (T=1498.432K) Etot = 2754.964eV
Energy per atom: Epot =1976.459eV  Ekin = 772.716eV (T=1494.499K) Etot = 2749.175eV
Energy per atom: Epot =1981.994eV  Ekin = 774.869eV (T=1498.663K) Etot = 2756.863eV
Energy per atom: Epot =1989.003eV  Ekin = 768.632eV (T=1486.602K) Etot = 2757.636eV
Energy per atom: Epot =1986.754eV  Ekin = 774.167eV (T=1497.307K) Etot = 2760.921eV
Energy per atom: Epot =1998.450eV  Ekin = 764.414eV (T=1478.443K) Etot = 2762.864eV
Energy per atom: Epot =2007.669eV  Ekin = 750.586eV (T=1451.699K) Etot = 2758.255eV
Energy per atom: Epot =2000.579eV  Ekin = 761.626eV (T=1473.051K) Etot = 2762.205eV
Energy per atom: Epot =2012.579eV  Ekin = 752.092eV (T=1454.612K) Etot = 2764.671eV
Energy per atom: Epot =2000.468eV  Ekin = 765.100eV (T=1479.769K) Etot = 2765.568eV
Energy per atom: Epot =1993.156eV  Ekin = 783.395eV (T=1515.154K) Etot = 2776.551eV
Energy per atom: Epot =2002.187eV  Ekin = 777.622eV (T=1503.988K) Etot = 2779.809eV
Energy per atom: Epot =2005.801eV  Ekin = 771.426eV (T=1492.006K) Etot = 2777.228eV
Energy per atom: Epot =2002.921eV  Ekin = 768.824eV (T=1486.973K) Etot = 2771.745eV
Energy per atom: Epot =1997.655eV  Ekin = 772.651eV (T=1494.374K) Etot = 2770.306eV
Energy per atom: Epot =1999.362eV  Ekin = 768.380eV (T=1486.113K) Etot = 2767.742eV
Energy per atom: Epot =1999.649eV  Ekin = 772.131eV (T=1493.368K) Etot = 2771.780eV
Energy per atom: Epot =1995.262eV  Ekin = 772.738eV (T=1494.542K) Etot = 2767.999eV
Energy per atom: Epot =2016.890eV  Ekin = 745.244eV (T=1441.367K) Etot = 2762.134eV
Energy per atom: Epot =2001.868eV  Ekin = 772.770eV (T=1494.605K) Etot = 2774.639eV
Energy per atom: Epot =1992.534eV  Ekin = 787.333eV (T=1522.771K) Etot = 2779.867eV
Energy per atom: Epot =1993.298eV  Ekin = 788.530eV (T=1525.087K) Etot = 2781.828eV
Energy per atom: Epot =2004.189eV  Ekin = 778.225eV (T=1505.156K) Etot = 2782.414eV
Energy per atom: Epot =2002.868eV  Ekin = 783.564eV (T=1515.480K) Etot = 2786.431eV
Energy per atom: Epot =1997.375eV  Ekin = 790.221eV (T=1528.357K) Etot = 2787.597eV
Energy per atom: Epot =2004.698eV  Ekin = 780.324eV (T=1509.215K) Etot = 2785.022eV
Energy per atom: Epot =1998.101eV  Ekin = 786.681eV (T=1521.510K) Etot = 2784.782eV
Energy per atom: Epot =2000.168eV  Ekin = 781.747eV (T=1511.968K) Etot = 2781.915eV
Energy per atom: Epot =2001.060eV  Ekin = 782.440eV (T=1513.306K) Etot = 2783.499eV
Energy per atom: Epot =2015.028eV  Ekin = 774.662eV (T=1498.263K) Etot = 2789.689eV
Energy per atom: Epot =2010.182eV  Ekin = 776.768eV (T=1502.336K) Etot = 2786.949eV
Energy per atom: Epot =2001.501eV  Ekin = 780.469eV (T=1509.495K) Etot = 2781.970eV
Energy per atom: Epot =1988.512eV  Ekin = 796.303eV (T=1540.119K) Etot = 2784.815eV
Energy per atom: Epot =1989.933eV  Ekin = 800.752eV (T=1548.725K) Etot = 2790.685eV
Energy per atom: Epot =1984.431eV  Ekin = 793.616eV (T=1534.923K) Etot = 2778.047eV
Energy per atom: Epot =2000.232eV  Ekin = 771.941eV (T=1493.000K) Etot = 2772.173eV
Energy per atom: Epot =1995.693eV  Ekin = 773.031eV (T=1495.110K) Etot = 2768.724eV
Energy per atom: Epot =2000.283eV  Ekin = 769.364eV (T=1488.017K) Etot = 2769.647eV
Energy per atom: Epot =1994.120eV  Ekin = 781.773eV (T=1512.016K) Etot = 2775.893eV
Energy per atom: Epot =2002.691eV  Ekin = 764.033eV (T=1477.706K) Etot = 2766.724eV
Energy per atom: Epot =1990.239eV  Ekin = 773.015eV (T=1495.078K) Etot = 2763.255eV
Energy per atom: Epot =1989.872eV  Ekin = 774.422eV (T=1497.800K) Etot = 2764.294eV
Energy per atom: Epot =2002.349eV  Ekin = 765.092eV (T=1479.755K) Etot = 2767.441eV
Energy per atom: Epot =1999.071eV  Ekin = 770.270eV (T=1489.768K) Etot = 2769.341eV
Energy per atom: Epot =1997.487eV  Ekin = 772.115eV (T=1493.337K) Etot = 2769.602eV
Energy per atom: Epot =2019.624eV  Ekin = 758.484eV (T=1466.974K) Etot = 2778.108eV
Energy per atom: Epot =2007.252eV  Ekin = 768.143eV (T=1485.655K) Etot = 2775.395eV
Energy per atom: Epot =2004.427eV  Ekin = 765.080eV (T=1479.731K) Etot = 2769.507eV
Energy per atom: Epot =2008.073eV  Ekin = 759.862eV (T=1469.640K) Etot = 2767.936eV
Energy per atom: Epot =2005.350eV  Ekin = 759.977eV (T=1469.861K) Etot = 2765.327eV
Energy per atom: Epot =2005.957eV  Ekin = 760.470eV (T=1470.815K) Etot = 2766.428eV
Energy per atom: Epot =2006.723eV  Ekin = 763.522eV (T=1476.719K) Etot = 2770.246eV
Energy per atom: Epot =2019.543eV  Ekin = 760.498eV (T=1470.870K) Etot = 2780.041eV
Energy per atom: Epot =2019.533eV  Ekin = 760.235eV (T=1470.361K) Etot = 2779.768eV
Energy per atom: Epot =2011.575eV  Ekin = 765.951eV (T=1481.415K) Etot = 2777.525eV
Energy per atom: Epot =2010.777eV  Ekin = 757.418eV (T=1464.912K) Etot = 2768.195eV
Energy per atom: Epot =2001.952eV  Ekin = 767.041eV (T=1483.525K) Etot = 2768.994eV
Energy per atom: Epot =1990.911eV  Ekin = 781.437eV (T=1511.367K) Etot = 2772.348eV
Energy per atom: Epot =2004.602eV  Ekin = 768.893eV (T=1487.105K) Etot = 2773.494eV
Energy per atom: Epot =2012.453eV  Ekin = 773.123eV (T=1495.288K) Etot = 2785.576eV
Energy per atom: Epot =2016.322eV  Ekin = 782.145eV (T=1512.736K) Etot = 2798.467eV
Energy per atom: Epot =2014.175eV  Ekin = 789.418eV (T=1526.804K) Etot = 2803.593eV
Energy per atom: Epot =2019.252eV  Ekin = 785.952eV (T=1520.100K) Etot = 2805.204eV
Energy per atom: Epot =2020.269eV  Ekin = 793.950eV (T=1535.568K) Etot = 2814.218eV
Energy per atom: Epot =2016.996eV  Ekin = 789.208eV (T=1526.396K) Etot = 2806.203eV
Energy per atom: Epot =2014.267eV  Ekin = 786.966eV (T=1522.060K) Etot = 2801.233eV
Energy per atom: Epot =2023.022eV  Ekin = 776.933eV (T=1502.656K) Etot = 2799.955eV
Energy per atom: Epot =2019.761eV  Ekin = 777.862eV (T=1504.452K) Etot = 2797.622eV
Energy per atom: Epot =2021.234eV  Ekin = 766.670eV (T=1482.807K) Etot = 2787.904eV
Energy per atom: Epot =2022.410eV  Ekin = 775.971eV (T=1500.795K) Etot = 2798.381eV
Energy per atom: Epot =2012.776eV  Ekin = 786.928eV (T=1521.988K) Etot = 2799.704eV
Energy per atom: Epot =2024.805eV  Ekin = 769.311eV (T=1487.915K) Etot = 2794.116eV
Energy per atom: Epot =2011.492eV  Ekin = 775.182eV (T=1499.269K) Etot = 2786.674eV
Energy per atom: Epot =2035.621eV  Ekin = 754.565eV (T=1459.395K) Etot = 2790.186eV
Energy per atom: Epot =2024.389eV  Ekin = 777.488eV (T=1503.729K) Etot = 2801.876eV
Energy per atom: Epot =2026.692eV  Ekin = 774.324eV (T=1497.610K) Etot = 2801.016eV
Energy per atom: Epot =2014.741eV  Ekin = 785.140eV (T=1518.529K) Etot = 2799.881eV
Energy per atom: Epot =2031.875eV  Ekin = 774.728eV (T=1498.391K) Etot = 2806.602eV
Energy per atom: Epot =2022.010eV  Ekin = 777.510eV (T=1503.772K) Etot = 2799.521eV
Energy per atom: Epot =2028.387eV  Ekin = 760.585eV (T=1471.038K) Etot = 2788.973eV
Energy per atom: Epot =2021.096eV  Ekin = 769.428eV (T=1488.141K) Etot = 2790.524eV
Energy per atom: Epot =2026.905eV  Ekin = 764.418eV (T=1478.451K) Etot = 2791.323eV
Energy per atom: Epot =2015.046eV  Ekin = 775.825eV (T=1500.514K) Etot = 2790.871eV
Energy per atom: Epot =2033.977eV  Ekin = 751.482eV (T=1453.432K) Etot = 2785.459eV
Energy per atom: Epot =2022.417eV  Ekin = 766.423eV (T=1482.328K) Etot = 2788.840eV
Energy per atom: Epot =2021.215eV  Ekin = 771.106eV (T=1491.386K) Etot = 2792.321eV
Energy per atom: Epot =2014.750eV  Ekin = 771.376eV (T=1491.908K) Etot = 2786.126eV

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] 14:25:19       43.457006       1.0818
BFGSLineSearch:    1[  1] 14:25:19       42.347659       0.2273
BFGSLineSearch:    2[  2] 14:25:19       42.108454       0.1349
BFGSLineSearch:    3[  3] 14:25:19       41.964817       0.1138
BFGSLineSearch:    4[  4] 14:25:19       41.924933       0.0683
BFGSLineSearch:    5[  5] 14:25:19       41.915346       0.0225
BFGSLineSearch:    6[  6] 14:25:19       41.914920       0.0059
BFGSLineSearch:    7[  7] 14:25:19       41.914872       0.0023
BFGSLineSearch:    8[  9] 14:25:19       41.914855       0.0023
BFGSLineSearch:    9[ 10] 14:25:19       41.914851       0.0010
running a NVE simulation of a Cu nanoparticle
Energy per atom: Epot =41.915eV  Ekin = 13.966eV (T=1161.806K) Etot = 55.881eV
Energy per atom: Epot =49.592eV  Ekin = 6.328eV (T=526.392K) Etot = 55.920eV
Energy per atom: Epot =50.919eV  Ekin = 5.022eV (T=417.767K) Etot = 55.941eV
Energy per atom: Epot =50.803eV  Ekin = 5.134eV (T=427.098K) Etot = 55.937eV
Energy per atom: Epot =49.477eV  Ekin = 6.451eV (T=536.664K) Etot = 55.929eV
Energy per atom: Epot =49.544eV  Ekin = 6.390eV (T=531.603K) Etot = 55.934eV
Energy per atom: Epot =48.659eV  Ekin = 7.268eV (T=604.607K) Etot = 55.927eV
Energy per atom: Epot =48.675eV  Ekin = 7.251eV (T=603.206K) Etot = 55.926eV
Energy per atom: Epot =49.107eV  Ekin = 6.824eV (T=567.667K) Etot = 55.931eV
Energy per atom: Epot =49.874eV  Ekin = 6.060eV (T=504.146K) Etot = 55.934eV
Energy per atom: Epot =49.612eV  Ekin = 6.318eV (T=525.548K) Etot = 55.930eV
Energy per atom: Epot =49.795eV  Ekin = 6.137eV (T=510.511K) Etot = 55.932eV
Energy per atom: Epot =49.511eV  Ekin = 6.424eV (T=534.416K) Etot = 55.935eV
Energy per atom: Epot =48.588eV  Ekin = 7.338eV (T=610.418K) Etot = 55.926eV
Energy per atom: Epot =48.374eV  Ekin = 7.551eV (T=628.167K) Etot = 55.925eV
Energy per atom: Epot =49.074eV  Ekin = 6.858eV (T=570.457K) Etot = 55.932eV
Energy per atom: Epot =49.790eV  Ekin = 6.142eV (T=510.948K) Etot = 55.932eV
Energy per atom: Epot =49.645eV  Ekin = 6.286eV (T=522.896K) Etot = 55.931eV
Energy per atom: Epot =49.867eV  Ekin = 6.067eV (T=504.700K) Etot = 55.934eV
Energy per atom: Epot =49.372eV  Ekin = 6.560eV (T=545.730K) Etot = 55.932eV
Energy per atom: Epot =48.822eV  Ekin = 7.110eV (T=591.457K) Etot = 55.932eV
Energy per atom: Epot =48.951eV  Ekin = 6.980eV (T=580.610K) Etot = 55.931eV
Energy per atom: Epot =49.533eV  Ekin = 6.397eV (T=532.142K) Etot = 55.929eV
Energy per atom: Epot =49.282eV  Ekin = 6.644eV (T=552.691K) Etot = 55.926eV
Energy per atom: Epot =49.130eV  Ekin = 6.799eV (T=565.570K) Etot = 55.928eV
Energy per atom: Epot =49.632eV  Ekin = 6.300eV (T=524.085K) Etot = 55.932eV
Energy per atom: Epot =48.998eV  Ekin = 6.932eV (T=576.615K) Etot = 55.930eV
Energy per atom: Epot =49.352eV  Ekin = 6.577eV (T=547.119K) Etot = 55.929eV
Energy per atom: Epot =49.457eV  Ekin = 6.471eV (T=538.303K) Etot = 55.928eV
Energy per atom: Epot =49.266eV  Ekin = 6.666eV (T=554.528K) Etot = 55.932eV
Energy per atom: Epot =48.728eV  Ekin = 7.205eV (T=599.363K) Etot = 55.933eV
Energy per atom: Epot =49.325eV  Ekin = 6.606eV (T=549.539K) Etot = 55.931eV
Energy per atom: Epot =49.979eV  Ekin = 5.952eV (T=495.101K) Etot = 55.931eV
Energy per atom: Epot =48.956eV  Ekin = 6.970eV (T=579.825K) Etot = 55.926eV
Energy per atom: Epot =49.174eV  Ekin = 6.750eV (T=561.526K) Etot = 55.924eV
Energy per atom: Epot =49.002eV  Ekin = 6.924eV (T=576.007K) Etot = 55.927eV
Energy per atom: Epot =49.188eV  Ekin = 6.739eV (T=560.571K) Etot = 55.926eV
Energy per atom: Epot =49.256eV  Ekin = 6.672eV (T=554.995K) Etot = 55.927eV
Energy per atom: Epot =48.800eV  Ekin = 7.132eV (T=593.292K) Etot = 55.932eV
Energy per atom: Epot =49.121eV  Ekin = 6.811eV (T=566.590K) Etot = 55.932eV
Energy per atom: Epot =49.629eV  Ekin = 6.302eV (T=524.250K) Etot = 55.931eV
Energy per atom: Epot =49.480eV  Ekin = 6.452eV (T=536.702K) Etot = 55.932eV
Energy per atom: Epot =49.491eV  Ekin = 6.443eV (T=535.938K) Etot = 55.934eV
Energy per atom: Epot =49.135eV  Ekin = 6.793eV (T=565.078K) Etot = 55.928eV
Energy per atom: Epot =49.168eV  Ekin = 6.760eV (T=562.330K) Etot = 55.928eV
Energy per atom: Epot =49.910eV  Ekin = 6.021eV (T=500.851K) Etot = 55.931eV
Energy per atom: Epot =49.374eV  Ekin = 6.555eV (T=545.280K) Etot = 55.929eV
Energy per atom: Epot =48.838eV  Ekin = 7.090eV (T=589.761K) Etot = 55.928eV
Energy per atom: Epot =49.827eV  Ekin = 6.108eV (T=508.139K) Etot = 55.935eV
Energy per atom: Epot =48.582eV  Ekin = 7.344eV (T=610.952K) Etot = 55.926eV
Energy per atom: Epot =50.067eV  Ekin = 5.868eV (T=488.177K) Etot = 55.936eV
Energy per atom: Epot =49.177eV  Ekin = 6.754eV (T=561.849K) Etot = 55.931eV
Energy per atom: Epot =49.514eV  Ekin = 6.416eV (T=533.720K) Etot = 55.930eV
Energy per atom: Epot =49.112eV  Ekin = 6.819eV (T=567.277K) Etot = 55.932eV
Energy per atom: Epot =49.207eV  Ekin = 6.721eV (T=559.132K) Etot = 55.928eV
Energy per atom: Epot =48.940eV  Ekin = 6.986eV (T=581.146K) Etot = 55.926eV
Energy per atom: Epot =50.095eV  Ekin = 5.842eV (T=485.975K) Etot = 55.937eV
Energy per atom: Epot =48.855eV  Ekin = 7.073eV (T=588.377K) Etot = 55.928eV
Energy per atom: Epot =49.275eV  Ekin = 6.656eV (T=553.651K) Etot = 55.930eV
Energy per atom: Epot =50.335eV  Ekin = 5.603eV (T=466.071K) Etot = 55.937eV
Energy per atom: Epot =48.960eV  Ekin = 6.968eV (T=579.644K) Etot = 55.928eV
Energy per atom: Epot =48.928eV  Ekin = 7.000eV (T=582.281K) Etot = 55.927eV
Energy per atom: Epot =49.803eV  Ekin = 6.130eV (T=509.944K) Etot = 55.933eV
Energy per atom: Epot =49.041eV  Ekin = 6.892eV (T=573.291K) Etot = 55.933eV
Energy per atom: Epot =48.645eV  Ekin = 7.281eV (T=605.699K) Etot = 55.926eV
Energy per atom: Epot =49.651eV  Ekin = 6.283eV (T=522.680K) Etot = 55.934eV
Energy per atom: Epot =48.856eV  Ekin = 7.073eV (T=588.400K) Etot = 55.929eV
Energy per atom: Epot =48.920eV  Ekin = 7.007eV (T=582.877K) Etot = 55.927eV
Energy per atom: Epot =49.340eV  Ekin = 6.591eV (T=548.249K) Etot = 55.930eV
Energy per atom: Epot =48.957eV  Ekin = 6.976eV (T=580.275K) Etot = 55.932eV
Energy per atom: Epot =49.265eV  Ekin = 6.670eV (T=554.861K) Etot = 55.935eV
Energy per atom: Epot =49.926eV  Ekin = 6.013eV (T=500.181K) Etot = 55.939eV
Energy per atom: Epot =49.324eV  Ekin = 6.607eV (T=549.640K) Etot = 55.931eV
Energy per atom: Epot =49.109eV  Ekin = 6.817eV (T=567.051K) Etot = 55.925eV
Energy per atom: Epot =48.889eV  Ekin = 7.035eV (T=585.188K) Etot = 55.924eV
Energy per atom: Epot =49.584eV  Ekin = 6.349eV (T=528.152K) Etot = 55.933eV
Energy per atom: Epot =49.541eV  Ekin = 6.390eV (T=531.594K) Etot = 55.931eV
Energy per atom: Epot =48.753eV  Ekin = 7.175eV (T=596.865K) Etot = 55.928eV
Energy per atom: Epot =49.194eV  Ekin = 6.735eV (T=560.289K) Etot = 55.929eV
Energy per atom: Epot =49.324eV  Ekin = 6.608eV (T=549.717K) Etot = 55.932eV
Energy per atom: Epot =48.350eV  Ekin = 7.578eV (T=630.346K) Etot = 55.927eV
Energy per atom: Epot =49.486eV  Ekin = 6.445eV (T=536.098K) Etot = 55.931eV
Energy per atom: Epot =49.637eV  Ekin = 6.292eV (T=523.448K) Etot = 55.929eV
Energy per atom: Epot =49.004eV  Ekin = 6.926eV (T=576.133K) Etot = 55.930eV
Energy per atom: Epot =49.938eV  Ekin = 5.995eV (T=498.663K) Etot = 55.932eV
Energy per atom: Epot =48.972eV  Ekin = 6.957eV (T=578.705K) Etot = 55.929eV
Energy per atom: Epot =49.677eV  Ekin = 6.259eV (T=520.660K) Etot = 55.935eV
Energy per atom: Epot =50.171eV  Ekin = 5.765eV (T=479.571K) Etot = 55.936eV
Energy per atom: Epot =48.897eV  Ekin = 7.029eV (T=584.734K) Etot = 55.926eV
Energy per atom: Epot =48.838eV  Ekin = 7.089eV (T=589.697K) Etot = 55.926eV
Energy per atom: Epot =48.196eV  Ekin = 7.730eV (T=643.058K) Etot = 55.927eV
Energy per atom: Epot =49.043eV  Ekin = 6.884eV (T=572.675K) Etot = 55.928eV
Energy per atom: Epot =48.874eV  Ekin = 7.058eV (T=587.133K) Etot = 55.932eV
Energy per atom: Epot =49.401eV  Ekin = 6.532eV (T=543.343K) Etot = 55.933eV
Energy per atom: Epot =50.259eV  Ekin = 5.675eV (T=472.062K) Etot = 55.934eV
Energy per atom: Epot =48.942eV  Ekin = 6.986eV (T=581.143K) Etot = 55.928eV
Energy per atom: Epot =48.975eV  Ekin = 6.954eV (T=578.450K) Etot = 55.928eV
Energy per atom: Epot =48.992eV  Ekin = 6.937eV (T=577.092K) Etot = 55.929eV
Energy per atom: Epot =49.181eV  Ekin = 6.751eV (T=561.576K) Etot = 55.932eV
Energy per atom: Epot =48.504eV  Ekin = 7.425eV (T=617.659K) Etot = 55.929eV
Energy per atom: Epot =49.496eV  Ekin = 6.436eV (T=535.421K) Etot = 55.932eV
Energy per atom: Epot =48.495eV  Ekin = 7.429eV (T=618.031K) Etot = 55.924eV
Energy per atom: Epot =49.466eV  Ekin = 6.467eV (T=538.004K) Etot = 55.933eV
Energy per atom: Epot =49.756eV  Ekin = 6.179eV (T=514.049K) Etot = 55.936eV
Energy per atom: Epot =48.911eV  Ekin = 7.018eV (T=583.800K) Etot = 55.929eV
Energy per atom: Epot =48.717eV  Ekin = 7.210eV (T=599.742K) Etot = 55.926eV
Energy per atom: Epot =49.018eV  Ekin = 6.912eV (T=574.992K) Etot = 55.930eV
Energy per atom: Epot =48.993eV  Ekin = 6.934eV (T=576.824K) Etot = 55.927eV
Energy per atom: Epot =48.912eV  Ekin = 7.019eV (T=583.853K) Etot = 55.930eV
Energy per atom: Epot =48.603eV  Ekin = 7.322eV (T=609.051K) Etot = 55.924eV
Energy per atom: Epot =49.204eV  Ekin = 6.724eV (T=559.328K) Etot = 55.928eV
Energy per atom: Epot =49.541eV  Ekin = 6.390eV (T=531.586K) Etot = 55.931eV
Energy per atom: Epot =49.635eV  Ekin = 6.295eV (T=523.647K) Etot = 55.930eV
Energy per atom: Epot =49.750eV  Ekin = 6.180eV (T=514.124K) Etot = 55.931eV
Energy per atom: Epot =49.176eV  Ekin = 6.751eV (T=561.598K) Etot = 55.927eV
Energy per atom: Epot =48.243eV  Ekin = 7.680eV (T=638.864K) Etot = 55.923eV
Energy per atom: Epot =49.417eV  Ekin = 6.512eV (T=541.691K) Etot = 55.929eV
Energy per atom: Epot =48.841eV  Ekin = 7.088eV (T=589.606K) Etot = 55.929eV
Energy per atom: Epot =49.342eV  Ekin = 6.589eV (T=548.103K) Etot = 55.931eV
Energy per atom: Epot =49.034eV  Ekin = 6.890eV (T=573.162K) Etot = 55.924eV
Energy per atom: Epot =48.405eV  Ekin = 7.517eV (T=625.337K) Etot = 55.922eV
Energy per atom: Epot =48.383eV  Ekin = 7.544eV (T=627.588K) Etot = 55.928eV
Energy per atom: Epot =49.918eV  Ekin = 6.017eV (T=500.545K) Etot = 55.935eV
Energy per atom: Epot =49.382eV  Ekin = 6.547eV (T=544.625K) Etot = 55.929eV
Energy per atom: Epot =49.419eV  Ekin = 6.512eV (T=541.748K) Etot = 55.932eV
Energy per atom: Epot =48.887eV  Ekin = 7.043eV (T=585.873K) Etot = 55.930eV
Energy per atom: Epot =48.530eV  Ekin = 7.396eV (T=615.268K) Etot = 55.927eV
Energy per atom: Epot =48.797eV  Ekin = 7.129eV (T=593.007K) Etot = 55.926eV
Energy per atom: Epot =48.937eV  Ekin = 6.988eV (T=581.347K) Etot = 55.926eV
Energy per atom: Epot =48.937eV  Ekin = 6.997eV (T=582.026K) Etot = 55.934eV
Energy per atom: Epot =49.324eV  Ekin = 6.609eV (T=549.814K) Etot = 55.934eV
Energy per atom: Epot =49.778eV  Ekin = 6.153eV (T=511.860K) Etot = 55.931eV
Energy per atom: Epot =48.901eV  Ekin = 7.021eV (T=584.064K) Etot = 55.922eV
Energy per atom: Epot =48.923eV  Ekin = 7.002eV (T=582.454K) Etot = 55.924eV
Energy per atom: Epot =48.556eV  Ekin = 7.374eV (T=613.451K) Etot = 55.930eV
Energy per atom: Epot =48.410eV  Ekin = 7.520eV (T=625.598K) Etot = 55.930eV
Energy per atom: Epot =49.324eV  Ekin = 6.613eV (T=550.088K) Etot = 55.937eV
Energy per atom: Epot =49.386eV  Ekin = 6.546eV (T=544.504K) Etot = 55.931eV
Energy per atom: Epot =48.916eV  Ekin = 7.010eV (T=583.171K) Etot = 55.926eV
Energy per atom: Epot =48.384eV  Ekin = 7.543eV (T=627.495K) Etot = 55.927eV
Energy per atom: Epot =49.318eV  Ekin = 6.615eV (T=550.250K) Etot = 55.932eV
Energy per atom: Epot =49.672eV  Ekin = 6.262eV (T=520.905K) Etot = 55.934eV
Energy per atom: Epot =48.959eV  Ekin = 6.978eV (T=580.436K) Etot = 55.937eV
Energy per atom: Epot =48.936eV  Ekin = 6.998eV (T=582.177K) Etot = 55.934eV
Energy per atom: Epot =48.915eV  Ekin = 7.010eV (T=583.172K) Etot = 55.925eV
Energy per atom: Epot =48.957eV  Ekin = 6.969eV (T=579.718K) Etot = 55.926eV
Energy per atom: Epot =48.975eV  Ekin = 6.958eV (T=578.808K) Etot = 55.933eV
Energy per atom: Epot =49.584eV  Ekin = 6.352eV (T=528.433K) Etot = 55.936eV
Energy per atom: Epot =48.591eV  Ekin = 7.338eV (T=610.404K) Etot = 55.929eV
Energy per atom: Epot =48.719eV  Ekin = 7.206eV (T=599.479K) Etot = 55.926eV
Energy per atom: Epot =48.920eV  Ekin = 7.006eV (T=582.790K) Etot = 55.926eV
Energy per atom: Epot =49.696eV  Ekin = 6.235eV (T=518.678K) Etot = 55.932eV
Energy per atom: Epot =48.811eV  Ekin = 7.117eV (T=592.058K) Etot = 55.928eV
Energy per atom: Epot =48.495eV  Ekin = 7.433eV (T=618.300K) Etot = 55.928eV
Energy per atom: Epot =49.447eV  Ekin = 6.486eV (T=539.535K) Etot = 55.933eV
Energy per atom: Epot =48.562eV  Ekin = 7.368eV (T=612.932K) Etot = 55.930eV
Energy per atom: Epot =48.991eV  Ekin = 6.942eV (T=577.477K) Etot = 55.933eV
Energy per atom: Epot =49.006eV  Ekin = 6.924eV (T=575.982K) Etot = 55.930eV
Energy per atom: Epot =49.094eV  Ekin = 6.839eV (T=568.919K) Etot = 55.933eV
Energy per atom: Epot =49.332eV  Ekin = 6.600eV (T=549.000K) Etot = 55.931eV
Energy per atom: Epot =49.392eV  Ekin = 6.537eV (T=543.808K) Etot = 55.930eV
Energy per atom: Epot =48.422eV  Ekin = 7.503eV (T=624.127K) Etot = 55.924eV
Energy per atom: Epot =48.633eV  Ekin = 7.293eV (T=606.688K) Etot = 55.926eV
Energy per atom: Epot =49.589eV  Ekin = 6.345eV (T=527.854K) Etot = 55.934eV
Energy per atom: Epot =48.693eV  Ekin = 7.240eV (T=602.235K) Etot = 55.932eV
Energy per atom: Epot =49.195eV  Ekin = 6.739eV (T=560.612K) Etot = 55.934eV
Energy per atom: Epot =49.658eV  Ekin = 6.275eV (T=521.963K) Etot = 55.932eV
Energy per atom: Epot =49.103eV  Ekin = 6.828eV (T=568.038K) Etot = 55.931eV
Energy per atom: Epot =47.844eV  Ekin = 8.078eV (T=671.984K) Etot = 55.922eV
Energy per atom: Epot =49.129eV  Ekin = 6.802eV (T=565.839K) Etot = 55.931eV
Energy per atom: Epot =49.578eV  Ekin = 6.353eV (T=528.514K) Etot = 55.931eV
Energy per atom: Epot =49.073eV  Ekin = 6.859eV (T=570.543K) Etot = 55.931eV
Energy per atom: Epot =49.569eV  Ekin = 6.366eV (T=529.553K) Etot = 55.934eV
Energy per atom: Epot =48.297eV  Ekin = 7.630eV (T=634.713K) Etot = 55.927eV
Energy per atom: Epot =48.717eV  Ekin = 7.210eV (T=599.804K) Etot = 55.928eV
Energy per atom: Epot =49.292eV  Ekin = 6.641eV (T=552.440K) Etot = 55.933eV
Energy per atom: Epot =49.275eV  Ekin = 6.658eV (T=553.847K) Etot = 55.933eV
Energy per atom: Epot =49.613eV  Ekin = 6.320eV (T=525.726K) Etot = 55.932eV
Energy per atom: Epot =48.819eV  Ekin = 7.107eV (T=591.240K) Etot = 55.926eV
Energy per atom: Epot =49.622eV  Ekin = 6.312eV (T=525.090K) Etot = 55.934eV
Energy per atom: Epot =48.917eV  Ekin = 7.016eV (T=583.664K) Etot = 55.933eV
Energy per atom: Epot =49.050eV  Ekin = 6.884eV (T=572.615K) Etot = 55.934eV
Energy per atom: Epot =48.567eV  Ekin = 7.358eV (T=612.077K) Etot = 55.925eV
Energy per atom: Epot =48.643eV  Ekin = 7.282eV (T=605.761K) Etot = 55.925eV
Energy per atom: Epot =49.863eV  Ekin = 6.072eV (T=505.081K) Etot = 55.935eV
Energy per atom: Epot =49.506eV  Ekin = 6.425eV (T=534.510K) Etot = 55.931eV
Energy per atom: Epot =49.243eV  Ekin = 6.688eV (T=556.381K) Etot = 55.932eV
Energy per atom: Epot =49.311eV  Ekin = 6.621eV (T=550.745K) Etot = 55.932eV
Energy per atom: Epot =49.505eV  Ekin = 6.429eV (T=534.771K) Etot = 55.933eV
Energy per atom: Epot =48.768eV  Ekin = 7.160eV (T=595.616K) Etot = 55.928eV
Energy per atom: Epot =49.334eV  Ekin = 6.594eV (T=548.556K) Etot = 55.928eV
Energy per atom: Epot =49.875eV  Ekin = 6.056eV (T=503.752K) Etot = 55.931eV
Energy per atom: Epot =49.415eV  Ekin = 6.519eV (T=542.254K) Etot = 55.933eV
Energy per atom: Epot =49.105eV  Ekin = 6.825eV (T=567.718K) Etot = 55.930eV
Energy per atom: Epot =48.796eV  Ekin = 7.131eV (T=593.243K) Etot = 55.928eV
Energy per atom: Epot =48.869eV  Ekin = 7.058eV (T=587.104K) Etot = 55.927eV
Energy per atom: Epot =49.721eV  Ekin = 6.211eV (T=516.647K) Etot = 55.931eV
Energy per atom: Epot =48.726eV  Ekin = 7.204eV (T=599.238K) Etot = 55.929eV
Energy per atom: Epot =49.130eV  Ekin = 6.802eV (T=565.852K) Etot = 55.932eV
Energy per atom: Epot =48.883eV  Ekin = 7.043eV (T=585.924K) Etot = 55.927eV
Energy per atom: Epot =49.285eV  Ekin = 6.646eV (T=552.872K) Etot = 55.931eV

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 -0.008953559301233394 eV
Cumul. energy transfered to the thermostat -0.006126863083529362 eV
Cumul. energy transfered to the thermostat -0.005371139964495733 eV
Cumul. energy transfered to the thermostat -0.005026192362313463 eV
Cumul. energy transfered to the thermostat -0.008285884945346603 eV
Cumul. energy transfered to the thermostat -0.013457261452826134 eV
Cumul. energy transfered to the thermostat -0.006687179824090993 eV
Cumul. energy transfered to the thermostat -0.009039799948684032 eV
Cumul. energy transfered to the thermostat -0.007929361081444881 eV
Cumul. energy transfered to the thermostat -0.00997343265357102 eV
Cumul. energy transfered to the thermostat -0.01225360815529107 eV
Cumul. energy transfered to the thermostat -0.014929977099677352 eV
Cumul. energy transfered to the thermostat -0.010142135825957797 eV
Cumul. energy transfered to the thermostat -0.011157221880542757 eV
Cumul. energy transfered to the thermostat -0.007152988903413149 eV
Cumul. energy transfered to the thermostat -0.01575796996513775 eV
Cumul. energy transfered to the thermostat -0.01710754006701755 eV
Cumul. energy transfered to the thermostat -0.014535562441814682 eV
Cumul. energy transfered to the thermostat -0.016375471858268625 eV
Cumul. energy transfered to the thermostat -0.019532806679723614 eV
Cumul. energy transfered to the thermostat -0.024636663137897065 eV
Cumul. energy transfered to the thermostat -0.02527061044827494 eV
Cumul. energy transfered to the thermostat -0.023774938742593732 eV
Cumul. energy transfered to the thermostat -0.029569049004662562 eV
Cumul. energy transfered to the thermostat -0.024609695948290482 eV
Cumul. energy transfered to the thermostat -0.028739646289019545 eV
Cumul. energy transfered to the thermostat -0.028819524303909966 eV
Cumul. energy transfered to the thermostat -0.031990197139474805 eV
Cumul. energy transfered to the thermostat -0.02775041524420618 eV
Cumul. energy transfered to the thermostat -0.02784257520812817 eV
Cumul. energy transfered to the thermostat -0.0287919068252251 eV
Cumul. energy transfered to the thermostat -0.025621324936892707 eV
Cumul. energy transfered to the thermostat -0.027288007405609934 eV
Cumul. energy transfered to the thermostat -0.027967412465727183 eV
Cumul. energy transfered to the thermostat -0.02482352741438626 eV
Cumul. energy transfered to the thermostat -0.020772211678436004 eV
Cumul. energy transfered to the thermostat -0.016806912514979427 eV
Cumul. energy transfered to the thermostat -0.01730202316153955 eV
Cumul. energy transfered to the thermostat -0.021022223490065845 eV
Cumul. energy transfered to the thermostat -0.0183375630874454 eV
Cumul. energy transfered to the thermostat -0.019136448361417015 eV
Cumul. energy transfered to the thermostat -0.023145175754216152 eV
Cumul. energy transfered to the thermostat -0.020318610384486294 eV
Cumul. energy transfered to the thermostat -0.018485264918292995 eV
Cumul. energy transfered to the thermostat -0.018006498990983524 eV
Cumul. energy transfered to the thermostat -0.016105376750867328 eV
Cumul. energy transfered to the thermostat -0.02189538716137897 eV
Cumul. energy transfered to the thermostat -0.019116933121060012 eV
Cumul. energy transfered to the thermostat -0.016598553161794757 eV
Cumul. energy transfered to the thermostat -0.01831810766922743 eV
Cumul. energy transfered to the thermostat -0.015637910806867012 eV
Cumul. energy transfered to the thermostat -0.008788137295793579 eV
Cumul. energy transfered to the thermostat -0.010464133216901783 eV
Cumul. energy transfered to the thermostat -0.014280009263178024 eV
Cumul. energy transfered to the thermostat -0.009289237415282012 eV
Cumul. energy transfered to the thermostat -0.010575787705929873 eV
Cumul. energy transfered to the thermostat -0.006831381848830446 eV
Cumul. energy transfered to the thermostat -0.001785051140412032 eV
Cumul. energy transfered to the thermostat 0.0057134383740246155 eV
Cumul. energy transfered to the thermostat 0.006066734577995886 eV
Cumul. energy transfered to the thermostat 0.013683416505171308 eV
Cumul. energy transfered to the thermostat 0.014045742979631707 eV
Cumul. energy transfered to the thermostat 0.013293278471524865 eV
Cumul. energy transfered to the thermostat 0.01201563719927655 eV
Cumul. energy transfered to the thermostat 0.01642008678100832 eV
Cumul. energy transfered to the thermostat 0.020888114131456467 eV
Cumul. energy transfered to the thermostat 0.02362168827713683 eV
Cumul. energy transfered to the thermostat 0.024847194970814727 eV
Cumul. energy transfered to the thermostat 0.028491442942415124 eV
Cumul. energy transfered to the thermostat 0.02831296314108407 eV
Cumul. energy transfered to the thermostat 0.026488438032122644 eV
Cumul. energy transfered to the thermostat 0.03365526689548408 eV
Cumul. energy transfered to the thermostat 0.029542317805994745 eV
Cumul. energy transfered to the thermostat 0.027468524357425018 eV
Cumul. energy transfered to the thermostat 0.026866999041017352 eV
Cumul. energy transfered to the thermostat 0.027382755063528042 eV
Cumul. energy transfered to the thermostat 0.02665252423749901 eV
Cumul. energy transfered to the thermostat 0.0257703472672358 eV
Cumul. energy transfered to the thermostat 0.020677463999263873 eV
Cumul. energy transfered to the thermostat 0.02626767830259721 eV
Cumul. energy transfered to the thermostat 0.024321916935695624 eV
Cumul. energy transfered to the thermostat 0.02508389850358596 eV
Cumul. energy transfered to the thermostat 0.0219332897635195 eV
Cumul. energy transfered to the thermostat 0.020327568910277375 eV
Cumul. energy transfered to the thermostat 0.02267004066009025 eV
Cumul. energy transfered to the thermostat 0.018318475774168678 eV
Cumul. energy transfered to the thermostat 0.021612169795185134 eV
Cumul. energy transfered to the thermostat 0.027435024302533986 eV
Cumul. energy transfered to the thermostat 0.027661848921755758 eV
Cumul. energy transfered to the thermostat 0.02528419877446264 eV
Cumul. energy transfered to the thermostat 0.02479676010386527 eV
Cumul. energy transfered to the thermostat 0.027487376069964438 eV
Cumul. energy transfered to the thermostat 0.028272468061637974 eV
Cumul. energy transfered to the thermostat 0.02777150452081578 eV
Cumul. energy transfered to the thermostat 0.028998299378319232 eV
Cumul. energy transfered to the thermostat 0.03286720941260693 eV
Cumul. energy transfered to the thermostat 0.03187692971528721 eV
Cumul. energy transfered to the thermostat 0.030980407037523014 eV
Cumul. energy transfered to the thermostat 0.035709186073896164 eV
Cumul. energy transfered to the thermostat 0.04429914543895594 eV

Gallery generated by Sphinx-Gallery