GBMC
Grain Boundary Monte-Carlo Package
Install / Use
/learn @adehgha/GBMCREADME
GBMC
GBMC stands for Grain Boundary Monte-Carlo simulation.
.. image:: https://github.com/adehgha/Animations/blob/master/mc_anim.gif
Introduction:
This software is the implementation of the Monte-Carlo (random insertion-removal) technique for Grain Boundary simulation that has been presented in the following article:
Banadaki A.D., Tschopp M.A., Patala S., An efficient Monte Carlo algorithm for determining the minimum energy structures of metallic grain boundaries, Computational Materials Science, v.155, p.466-475, https://doi.org/10.1016/j.commatsci.2018.09.017
Inputs:
-
gb_folder: create a folder with the name pattern shown in the provided example (e.g.15_al_S5_0_N1_1_-2_1_N2_-1_1_-2). The boundary plane normal (bpn) indices are read from the folder name (can be changed later on). Indices followed by the N1 indicate the bpn indices of the lower crystal and those following the N2 indicate the indices of the upper crystal. -
folder_contents: the gb_folder must contain the following two files:dump.*: Thegb_foldermust contain a file with patterndump.*.gb_area: A file namedgb_areathat contains the area of the GB plane.
-
gb_main_folderpath : full path togb_folder. -
Parameters defined in
GBMC_RUN.m:GBMC_RUN.mis a matlab script that runs the simulation and contains the following parameters that are hard-coded in it:lammps_exe_path: full path to thelammpsexecutable on your system (e.g. '/usr/bin/lmp_daily').max_steps: maximum number of Monte-Carlo steps (includes the rejected steps).T: psuedo temperture in Kelvin for computing the insertion/removal probabilities (0.5 x T_melting).elem: a string representing the name of the species that is simulated e.g. 'al', 'ni', 'cu', etc.lat_param: lattice parameter in angstroms e.g. 4.05 for Al.lat_type: a string indicating the lattice type e.g.fcc,bcc, etc.csm_crit: the critical centro-symmetry value than can identify the GB atoms (0.1 is enough for fcc). Can be easily expanded to other crteria for complicated system where csm does not work.
Dump-file requirements:
It is impossible to come up with a general rule for how simulation boxes are setup. Different groups have different conventions. I have set up the code such that it matches the convention that is followed in Banadaki et. al's article
The following assumptions are made:
-
The file format should be a lammps dump-file (and not a lammps data file)
-
GB plane normal is along the Y direction.
-
The simulation is setup such that GB plane remains periodic.
-
The following columns must be present in the dump-file with the specified order.
id, type, x, y, z, c_eng, Centrosymmetry
Note that your dump-files do not usually have the
Centrosymmetrycolumn. You must compute this parameter for each atom and store it as the last column in the dump-file
lammps minimizations:
a general lammps input file with the name in.minimize is provided in the repositories which performs the minimizations. The inputs for this file are automatically generated by the GBMC_RUN.m. Potential files for Al, Cu, alpha Fe, and Ni are already available in the repository and the associated constatnts are commented out in the matlab file.
How to submit your MC jobs:
GBMC_RUN.m is a matlab function that takes the path of your gb_folder with the above properties and automatically runs your MC simulation, stores the results and cleanup and compresses the files associated with the intermediate steps your MC simulation (e.g. rejected steps etc.). I have prepared the the follwoing two shell scripts for batch submiting you jobs.
run_mc_local.sh: to run a job locally on a machine that has matlab installedrun_mc_on_cluster.sh: to run a job through a job scheduler. The provided command only apply to IBM's LSF job scheduler. To run it on slum or other job schedulers you must change the commands.
How to Cite:
Banadaki A.D., Tschopp M.A., Patala S., An efficient Monte Carlo algorithm for determining the minimum energy structures of metallic grain boundaries, Computational Materials Science, v.155, p.466-475, https://doi.org/10.1016/j.commatsci.2018.09.017
Authors:
Arash D. Banadaki adehgha@ncsu.edu Srikanth Patala spatala@ncsu.edu
Copyright (c) 2018 , North Carolina State University
Related Skills
node-connect
351.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
110.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
351.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
351.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
