Skip to main content

Release PyPI

Pipeline Status Coverage Status

DOI

aiida-dlpoly

An AiiDA plugin for the DL_POLY molecular/particle dynamics software.

Installation

This plugin is available through PyPI and should be installed using pip or an equivalent python package manager.

pip install aiida-dlpoly

Requirements

To use this plugin a configured AiiDA profile and computer instance are required, see the AiiDA documentation for instructions on how to install and configure AiiDA and AiiDA code setup for how to configure AiiDA to link to external software.

Setup

To configure the DL_POLY plugin, an AiiDA code instance needs to be configured for the DL_POLY executable. The following is an example of a basic YAML configuration file:

label: dlpoly
description: DL_POLY 
computer: localhost 
filepath_executable: /absolute/path/to/DLPOLY.Z
default_calc_job_plugin: dlpoly
use_double_quotes: false 
with_mpi: true 
prepend_text: '' 
append_text: '' 

Write this to a file named dlpoly_config.yml ensuring the value for computer matches the label of your configured computer instance and the filepath_executable entry is the absolute path to a compiled DL_POLY executable. The code can then be configured by running:

verdi code create core.code.installed --config dlpoly_config.yml -n 

If successful this will have created a code with the label dlpoly which can then be used to run DL_POLY jobs within the AiiDA workflow.

Examples

An example script for running an simple molecular dynamics simulation with existing CONTROL, FIELD and CONFIG input files is given below.

from aiida.engine import run
from aiida.orm import SinglefileData, load_code
from aiida import load_profile

load_profile("username") # Replace with your own AiiDA username

builder = load_code("dlpoly").get_builder()
builder.control = SinglefileData(file="/absolute/path/to/CONTROL") # Change these to the absolute paths to input files
builder.field = SinglefileData(file="/absolute/path/to/FIELD")
builder.configuration = SinglefileData(file="/absolute/path/to/CONFIG")

results, node = run.get_node(builder)

By default the calculation will produce three output nodes, a SinglefileData node containing the generated OUTPUT file from DL_POLY, an ArrayData node containing the calculated statistics from the simulation and another SinglefileData node containing the DL_POLY formatted REVCON file. Additionally the following optional output nodes are supported by the aiida-dlpoly plugin:

  • Trajectory history (TrajectoryData)
  • Radial distribution function (SinglefileData)

These will be generated if the relevant input keys are present in the DL_POLY CONTROL file. Further information on AiiDA data types and how to interact with them can be found in the AiiDA documentation.

The aiida-dlpoly plugin additionally allows alternative input methods for the CONTROL and CONFIG inputs, which can both be optionally specified as a Dict or StructureData node respectively. The plugin itself will then handle the relevant file formatting for to be compatible with DL_POLY. An example showing these alternative inputs methods is shown below, it assumes an AiiDA StructureData node already exists in the user's database.

from aiida.engine import run
from aiida.orm import Dict, load_node, SinglefileData, load_code
from aiida import load_profile

load_profile("username") # Replace with your own AiiDA username

builder = load_code("dlpoly").get_builder()
builder.field = SinglefileData(file="/absolute/path/to/FIELD") # Change these to the absolute paths to input file
builder.configuration = load_node(pk=10) # Replace with the pk of the StructureData node or create a new StructureData node
builder.control = Dict({
    "title": "DL_POLY example MD simulation",
    "temperature": (295.0, "K"),
    "coul_method": "OFF",
    "print_frequency": (100, "steps"),
    "stats_frequency": (10, "steps"),
    "padding": (0.2, "ang"),
    "cutoff": (7.5, "ang"),
    "ensemble": "nve",
    "time_run": (2000, "steps"),
    "time_equilibration": (1000, "steps"),
    "time_job": (3000.0, "s"),
    "time_close": (100.0, "s"),
    "timestep": (0.001, "ps"),
    "rescale_frequency": (5, "steps"),
})

results, node = run.get_node(builder)

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aiida_dlpoly-0.1.1.tar.gz (16.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aiida_dlpoly-0.1.1-py3-none-any.whl (13.5 kB view details)

Uploaded Python 3

File details

Details for the file aiida_dlpoly-0.1.1.tar.gz.

File metadata

  • Download URL: aiida_dlpoly-0.1.1.tar.gz
  • Upload date:
  • Size: 16.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.12.14

File hashes

Hashes for aiida_dlpoly-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a3597ac66f8bae604256871b1ffe6db0a39c5fdf6ee73f2ae735c843952ba7c8
MD5 d5994486cb1befd7299cbf5276bef1a4
BLAKE2b-256 285c1c1a191d64cbf4b7871adc8e5b32f6fd32bfde051ab92fc26e5197021185

See more details on using hashes here.

File details

Details for the file aiida_dlpoly-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: aiida_dlpoly-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 13.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.12.14

File hashes

Hashes for aiida_dlpoly-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0d01579cb48f840472b9f1d7c80c5c2147460aafa23b783cd4023905321704f0
MD5 a98604c57991ee4b06f61a7a94fe8149
BLAKE2b-256 bfd52b4e8655ca8ff43115d3cd7c27b22b21d13c42ce0b0d922760058a4e8d97

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 files

0.1.0

2 files

0.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page