#If you use this program to construct dislocation, please cite:
Shihua MA, Wei SHAO, Shijun ZHAO. MagicDislocation: A Flexible Dislocations Construction Toolkit Based on Continuum Dislocation Theory. COMPUTER PHYSICS COMMUNICATIONS. Submitted
This is a flexible dislocation creation tool based on Python3
It could move atoms according to given direction and S plane to produce a new system containing a certain dislocation.
In detail, when users hope to produce a certain dislocation, they should provide information related to system, S-plane, dislocation's Burgers Vector, Then, atoms will move to certain positions.
For the system, users should give the lattice constant, data file type, data file path, structure type and the direction of each axis.
S plane is related to the shape and range of dislocation. If the S plane is a circle, the dislocation would be a loop. If the S plane is a rectangle, the dislocation would also be a rectangle loop. When trying to create a dislocation, the user should pass the
The Burgers vector <h, k, l> represents the moving direction and displace of atoms. Considering there are several different moving directions for a Burgers vector, users are required to give a detailed direction such as [h, k, l] or [-h, -k, l]. The detailed direction should be determined according to the S plane and axis's modeling direction.
cd examples
and then make a new directory to store your data,
and then you could pass the parameters related to your operations,
here, we store these parameters in the form of yaml file,
you could create your yaml file by referring these existing yaml files.
Then, you could start the shell script in examples
directory
bash run.sh
Or
python main.py --yaml_file './config.yaml (yaml_file path)'
cd src
python vis_main.py
Passing related parameters via the interface.
Detailed examples could be found in examples files. Users could create their own case via referring these examples.