Awesome
GPUMD-Wizard
Material structure processing software based on ASE (Atomic Simulation Environment) providing automation capabilities for calculating various properties of metals. Additionally, it aims to run and analyze molecular dynamics (MD) simulations using GPUMD.
Features
- Based on the ASE package, MetalProperties-Automator supports different calculators such as calorine, DP, and LAMMPS.
- Allows for automated batch calculations of metal properties.
- Enables batch processing of files in the XYZ format.
- Integrated with GPUMD for performing molecular dynamics simulations, such as irradiation damage.
Installation
Requirements
Package | version |
---|---|
Python | >= 3.8 |
ase | >= 3.18.0 |
calorine | >= 2.2.1 |
phonopy | >= v2.22.0 |
By pip
$ pip install gpumd-wizard
From Source
$ git clone --recursive https://github.com/Jonsnow-willow/GPUMD-Wizard.git
Add GPUMD-Wizard
to your PYTHONPATH
environment variable in your ~/.bashrc
file.
$ export PYTHONPATH=<path-to-GPUMD-Wizard-package>:$PYTHONPATH
Usage
from wizard.atoms import SymbolInfo, MaterialCalculator
from calorine.calculators import CPUNEP
def main():
# Create calculator object
calc = CPUNEP('nep.txt')
# Set properties-related parameters
millers = [(1,1,0),(0,0,1),(1,1,1),(1,1,2)]
sia_vectors = [(1/2,1/2,1/2),(1,0,0),(1,1,0)]
nths = [1,2,3]
# Generate bulk atoms and calculate properties
symbol_info = SymbolInfo('W', 'bcc', 3.185)
atoms = symbol_info.create_bulk_atoms()
material_calculator = MaterialCalculator(atoms, calc, symbol_info.symbol, symbol_info.structure)
material_calculator.lattice_constant()
material_calculator.elastic_constant()
material_calculator.eos_curve()
material_calculator.phonon_dispersion()
material_calculator.formation_energy_vacancy()
material_calculator.migration_energy_vacancy()
for nth in nths:
material_calculator.formation_energy_divacancies(nth)
for miller in millers:
material_calculator.formation_energy_surface(miller)
material_calculator.stacking_fault(a = (1,1,-1), b = (1,-1,0), miller = [1,1,2], distance = 3.185/2)
material_calculator.stacking_fault(a = (1,1,-1), b = (1,1,2), miller = [1,-1,0], distance = 3.185/2)
material_calculator.pure_bcc_metal_screw_dipole_move()
material_calculator.pure_bcc_metal_screw_one_move()
for vector in sia_vectors:
material_calculator.formation_energy_sia(vector)
material_calculator.formation_energy_interstitial_atom('W',[0,0,1/2],'octahedral')
material_calculator.formation_energy_interstitial_atom('W',[1/4,0,1/2],'tetrahedral')
if __name__ == "__main__":
main()
Authors:
Name | contact |
---|---|
Jiahui Liu | jiahui.liu.willow@gmail.com |
Citations
Reference | cite for what? |
---|---|
[1-2] | for any work that used GPUMD |
[3] | NEP + ZBL |
[4] | UNEP |
References
[1] Zheyong Fan, Wei Chen, Ville Vierimaa, and Ari Harju. Efficient molecular dynamics simulations with many-body potentials on graphics processing units, Computer Physics Communications 218, 10 (2017).
[2] Zheyong Fan, Yanzhou Wang, Penghua Ying, Keke Song, Junjie Wang, Yong Wang, Zezhu Zeng, Ke Xu, Eric Lindgren, J. Magnus Rahm, Alexander J. Gabourie, Jiahui Liu, Haikuan Dong, Jianyang Wu, Yue Chen, Zheng Zhong, Jian Sun, Paul Erhart, Yanjing Su, Tapio Ala-Nissila, GPUMD: A package for constructing accurate machine-learned potentials and performing highly efficient atomistic simulations, The Journal of Chemical Physics 157, 114801 (2022).
[3] Jiahui Liu, Jesper Byggmästar, Zheyong Fan, Ping Qian, and Yanjing Su, Large-scale machine-learning molecular dynamics simulation of primary radiation damage in tungsten, Phys. Rev. B 108, 054312 (2023).
[4] Keke Song, Rui Zhao, Jiahui Liu, Yanzhou Wang, Eric Lindgren, Yong Wang, Shunda Chen, Ke Xu, Ting Liang, Penghua Ying, Nan Xu, Zhiqiang Zhao, Jiuyang Shi, Junjie Wang, Shuang Lyu, Zezhu Zeng, Shirong Liang, Haikuan Dong, Ligang Sun, Yue Chen, Zhuhua Zhang, Wanlin Guo, Ping Qian, Jian Sun, Paul Erhart, Tapio Ala-Nissila, Yanjing Su, Zheyong Fan, General-purpose machine-learned potential for 16 elemental metals and their alloys arXiv:2311.04732 [cond-mat.mtrl-sci]