In this walkthrough we will look at a system of molten NaCl to see how MDSuite can be used for the analysis of real systems
For this specific tutorial we will use our designate data server zinchub to load the data. This is the only import other than mdsuite required for any analysis.
from zinchub import DataHub
import mdsuite as mds
With the following two lines we download the data from zinchub.
NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0")
NaCl.get_file(path=".")
Now we can start an MDSuite project and add some data to it. Creating a project is as simple as calling the Project class with the name.
project = mds.Project("NaCl_Example")
Now we can add an experiment to the project. In this case, we pass the downloaded data directly to this experiment rather than add it at a later stage.
project.add_experiment(
name="NaCl_example_data",
timestep=0.002,
temperature=1400.0,
units="metal",
simulation_data="NaCl_gk_i_q.lammpstraj",
)
Now we can start looking at the system and learning from it. Let's start with a radial distribution function to see the structure.
project.run.RadialDistributionFunction(number_of_configurations=100, plot=True)
This looks nice, but let's kick it up a notch and look at bond distributions with the angular distribution functions.
project.run.EinsteinDiffusionCoefficients()
project.run.EinsteinDiffusionCoefficients(species=["Na"], data_range=50)
project.run.AngularDistributionFunction(number_of_configurations=50, plot=True, cutoff=3.6)
Finally, let's take a look at the Green-Kubo diffusion coefficients and ionic conductivity.
project.run.GreenKuboDiffusionCoefficients(
data_range=102, plot=True, correlation_time=10
)
project.run.GreenKuboIonicConductivity(
data_range=300, plot=True, correlation_time=1
)