mech2d: An Efficient Tool for High-Throughput Calculation of Mechanical Properties for Two-Dimensional Materials
Abstract
:1. Introduction
2. Methods
- (1)
- Hexagonal lattice
- (2)
- Square lattice
- (3)
- Rectangular and centered rectangular lattice
- (4)
- Oblique lattice
3. Results
3.1. mech2d Design
- (1)
- Easy to install (see below).
- (2)
- Loosely coupled mode, which is considered easy to extend and maintain.
- (3)
- Support for any symmetry of 2D materials.
- (4)
- Support for the popular DFT engine VASP. It can be easily extended to other DFT calculators by implementing the corresponding input writer and output parser.
- (5)
- Automatical task submission, error correction and collection on both local or remote machines.
3.2. Installation
- pymatgen.
- dpdispatcher.
- custodian.
3.3. Running the Code
- m2d -h
- usage: m2d [-h] [-v] {init,run,post} …
- Desctiption:
- ------------
- mech2d is a convenient script that use to calculate the mechanical
- properties of 2D materials, including Stress-Strain Curve, elastic
- constants and relevant properties. The script works based on
- several subcommands with their own options. To see the options
- for the subcommands, type ‘‘m2d subcommand -h’’.
- positional arguments:
- {init,run,post}
- init Generating initial data for elastic systems.
- run Run the DFT calculation for deformed
- structures.
- post Postprocessing for elastic calculation.
- optional arguments:
- -h, --help show this help message and exit
- -v, --version Display version
- m2d init -c POSCAR -m 0.05 -n 9 -a stress -p elc
- m2d run -a stress input.yaml
- m2d post -a stress --plot
3.4. Examples
4. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
Sample Availability
Abbreviations
2D | Two-dimensional |
SS | stress-strain |
ES | energy-strain |
DFT | Density functional theory |
SOEC | second-order elastic constants |
Appendix A. Help Information
Appendix A.1. Init Help Information
- usage: m2d init [-h] [-c CONFIG] [-a {stress,energy}] [-m MAXS] [-n NUMBER]
- [-d {xx,yy,bi,xy} [{xx,yy,bi,xy} …]]
- [-r RANGES [RANGES …]] [-p {elc,ssc}] [-v] [-b]
- optional arguments:
- -h, --help show this help message and exit
- -c CONFIG, --config CONFIG
- The structure filename. Supported format:
- [‘.vasp’,‘POSCAR’,‘.cif’,‘.xsf’]
- -a {stress,energy}, --approach {stress,energy}
- Support ‘Energy’ or `Stress’ approach.
- -m MAXS, --maxs MAXS For elastic constant calculation, it stands for the
- maximum Lagrangian strain, suggested value is [0.030,
- 0.150] for Energy approach, [0.0010, 0.0050] for
- Stress approach; for stress strain cuver calcuation,
- this value has no above limitation.
- -n NUMBER, --number NUMBER
- The number of the deformed structures [odd number >
- 4].
- -d {xx,yy,bi,xy} [{xx,yy,bi,xy} …], --direction {xx,yy,bi,xy} [{xx,yy,bi,xy} …]
- The direction used for stress strain curve, default
- value: ‘xx’. ‘xx’ for ‘x’ direction; ‘yy’ for ‘y’
- direction; ‘bi’ for bi-Axis strain and ‘xy’ for shear
- strain.
- -r RANGES [RANGES …], --ranges RANGES [RANGES …]
- The Lagrangian strain range used for stress-strain
- curve calculation. e.g., 0.0 0.2
- -p {elc,ssc}, --properties {elc,ssc}
- What do you want to calcuation? elastic constant or
- stress strain curve? default value: ‘elc’.
- -v, --verbose print verbose information or not.
- -b, --back Whether backup the old folder? default value: False.
Appendix A.2. Run Help Information
- usage: m2d run [-h] [-a {stress,energy}] [-p {elc,ssc}] [--manual] [-v] input
- positional arguments:
- input input file for supplying information about DFT calculation,
- json/yaml format. The ‘machine’, ‘tasks’, ‘code’, and
- ‘resources’ should be supplied.
- optional arguments:
- -h, --help show this help message and exit
- -a {stress,energy}, --approach {stress,energy}
- Support ‘Energy’ or ‘Stress’ approach.
- -p {elc,ssc}, --properties {elc,ssc}
- What do you want to calcuation? elastic constant or
- stress strain curve? default value: ‘elc’.
- --manual Manual model, only for generating the input files without runing
- -v, --verbose Print verbose information or not.
Appendix A.3. Post Help Information
- usage: m2d post [-h] [-a {stress,energy}] [-i INPUTFILE] [-p {elc,ssc}] [--skip] [-o ORDER]
- [-f FMT] [-d DPI] [--plot] [-v]
- optional arguments:
- -h, --help show this help message and exit
- -a {stress,energy}, --approach {stress,energy}
- Support ‘Energy’ or ‘Stress’ approach.
- -i INPUTFILE, --inputfile INPUTFILE
- Parsing elastic constant tensor from input file
- -p {elc,ssc}, --properties {elc,ssc}
- What do you want to calcuation? elastic constant or stress strain
- curve? default value: ‘elc’.
- --skip Whether to skip the data parsing ? if true, it means the
- Def_*_Energy.dat should be exists in corresponding folder. default
- value: False.
- -o ORDER, --order ORDER
- The order of polynomial for fitting. Default value: 4 for strain-
- stress approach and 3 for stress-strain method
- -f FMT, --fmt FMT The format of output figure. Default value: .jpg
- -d DPI, --dpi DPI The resolution of output figure. Default value: 100
- --plot plot the figures
- -v, --verbose print verbose information or not.
Appendix B. Input.Yaml for mech2d
- ---
- machine:
- batch_type: Slurm
- context_type: LocalContext
- local_root: ‘‘./work’’
- remote_root: ‘‘./work’’
- remote_profile:
- hostname: localhost
- username: wang
- port: 22
- timeout: 10
- resources:
- number_node: 1
- cpu_per_node: 48
- gpu_per_node: 0
- queue_name: batch
- task_max: 10
- group_size: 1
- custom_flags:
- - ‘‘ulimit -s unlimited’’
- module_list:
- - ‘‘vasp/5.4.1’’
- #source_list:
- # - ‘‘/opt/intel/parallel_studio_xe_2020.2.108/psxevars.sh intel64’’
- #envs:
- # PATH: ‘‘/opt/soft/vasp541:$PATH’’
- tasks:
- command: ‘‘mpirun -np 48 vasp_std’’
- task_work_path:
- forward_files:
- - INCAR
- - KPOINTS
- - POTCAR
- - POSCAR
- backward_files:
- - runlog
- - errlog
- - OUTCAR
- - OSZICAR
- - vasprun.xml
- - CONTCAR
- outlog: runlog
- errlog: errlog
- code:
- name: vasp
- input:
- INCAR: ‘‘./INCAR’’
- #KPOINTS: ‘‘./KPOINTS’’
- KPOINTS:
- kspacing: 5000
- kgamma: false
- POTCAR: ‘‘./POTCAR’’
- #vdw_kernel: vdw_kernel.bindat
References
- Novoselov, K.S.; Geim, A.K.; Morozov, S.V.; Jiang, D.E.; Zhang, Y.; Dubonos, S.V.; Grigorieva, I.V.; Firsov, A.A. Electric field effect in atomically thin carbon films. Science 2004, 306, 666–669. [Google Scholar] [CrossRef] [PubMed]
- Wang, Q.H.; Kalantar-Zadeh, K.; Kis, A.; Coleman, J.N.; Strano, M.S. Electronics and optoelectronics of two-dimensional transition metal dichalcogenides. Nat. Nanotechnol. 2012, 7, 699–712. [Google Scholar] [CrossRef]
- Manzeli, S.; Ovchinnikov, D.; Pasquier, D.; Yazyev, O.V.; Kis, A. 2D transition metal dichalcogenides. Nat. Rev. Mater. 2017, 2, 17033. [Google Scholar] [CrossRef]
- Liu, H.; Neal, A.T.; Zhu, Z.; Luo, Z.; Xu, X.; Tománek, D.; Ye, P.D. Phosphorene: An Unexplored 2D Semiconductor with a High Hole Mobility. ACS Nano 2014, 8, 4033–4041. [Google Scholar] [CrossRef] [PubMed]
- Wei, Q.; Peng, X. Superior mechanical flexibility of phosphorene and few-layer black phosphorus. Appl. Phys. Lett. 2014, 104, 251915. [Google Scholar] [CrossRef]
- Lee, C.; Wei, X.; Kysar, J.W.; Hone, J. Measurement of the elastic properties and intrinsic strength of monolayer graphene. Science 2008, 321, 385–388. [Google Scholar] [CrossRef]
- Geim, A.K.; Grigorieva, I.V. Van der Waals heterostructures. Nature 2013, 499, 419–425. [Google Scholar] [CrossRef]
- Pomerantseva, E.; Gogotsi, Y. Two-dimensional heterostructures for energy storage. Nat. Energy 2017, 2, 17089. [Google Scholar] [CrossRef]
- Deng, D.; Novoselov, K.S.; Fu, Q.; Zheng, N.; Tian, Z.; Bao, X. Catalysis with two-dimensional materials and their heterostructures. Nat. Nanotechnol. 2016, 11, 218–230. [Google Scholar] [CrossRef]
- Wang, H.; Li, X.; Liu, Z.; Yang, J. ψ-Phosphorene: A new allotrope of phosphorene. Phys. Chem. Chem. Phys. 2017, 19, 2402–2408. [Google Scholar] [CrossRef]
- Ahn, E.C. 2D materials for spintronic devices. npj 2D Mater. Appl. 2020, 4, 17. [Google Scholar] [CrossRef]
- Akinwande, D.; Brennan, C.J.; Bunch, J.S.; Egberts, P.; Felts, J.R.; Gao, H.; Huang, R.; Kim, J.S.; Li, T.; Li, Y.; et al. A review on mechanics and mechanical properties of 2D materials—Graphene and beyond. Extrem. Mech. Lett. 2017, 13, 42–77. [Google Scholar] [CrossRef]
- Li, X.; Cai, W.; An, J.; Kim, S.; Nah, J.; Yang, D.; Piner, R.; Velamakanni, A.; Jung, I.; Tutuc, E.; et al. Large-area synthesis of high-quality and uniform graphene films on copper foils. Science 2009, 324, 1312–1314. [Google Scholar] [CrossRef] [PubMed]
- Chen, J.H.; Jang, C.; Xiao, S.; Ishigami, M.; Fuhrer, M.S. Intrinsic and extrinsic performance limits of graphene devices on SiO2. Nat. Nanotechnol. 2008, 3, 206–209. [Google Scholar] [CrossRef] [PubMed]
- Golesorkhtabar, R.; Pavone, P.; Spitaler, J.; Puschnig, P.; Draxl, C. ElaStic: A tool for calculating second-order elastic constants from first principles. Comput. Phys. Commun. 2013, 184, 1861–1873. [Google Scholar] [CrossRef]
- de Jong, M.; Chen, W.; Angsten, T.; Jain, A.; Notestine, R.; Gamst, A.; Sluiter, M.; Krishna Ande, C.; van der Zwaag, S.; Plata, J.J.; et al. Charting the complete elastic properties of inorganic crystalline compounds. Sci. Data 2015, 2, 150009. [Google Scholar] [CrossRef]
- Liu, Z.L.; Ekuma, C.; Li, W.Q.; Yang, J.Q.; Li, X.J. ElasTool: An automated toolkit for elastic constants calculation. Comput. Phys. Commun. 2022, 270, 108180. [Google Scholar] [CrossRef]
- Singh, S.; Lang, L.; Dovale-Farelo, V.; Herath, U.; Tavadze, P.; Coudert, F.X.; Romero, A.H. MechElastic: A Python library for analysis of mechanical and elastic properties of bulk and 2D materials. Comput. Phys. Commun. 2021, 267, 108068. [Google Scholar] [CrossRef]
- Yalameha, S.; Nourbakhsh, Z.; Vashaee, D. ElATools: A tool for analyzing anisotropic elastic properties of the 2D and 3D materials. Comput. Phys. Commun. 2022, 271, 108195. [Google Scholar] [CrossRef]
- Wang, V.; Xu, N.; Liu, J.C.; Tang, G.; Geng, W.T. VASPKIT: A user-friendly interface facilitating high-throughput computing and analysis using VASP code. Comput. Phys. Commun. 2021, 267, 108033. [Google Scholar] [CrossRef]
- Jain, A.; Hautier, G.; Moore, C.J.; Ping Ong, S.; Fischer, C.C.; Mueller, T.; Persson, K.A.; Ceder, G. A high-throughput infrastructure for density functional theory calculations. Comput. Mater. Sci. 2011, 50, 2295–2310. [Google Scholar] [CrossRef]
- Pizzi, G.; Cepellotti, A.; Sabatini, R.; Marzari, N.; Kozinsky, B. AiiDA: Automated interactive infrastructure and database for computational science. Comput. Mater. Sci. 2016, 111, 218–230. [Google Scholar] [CrossRef]
- Kresse, G.; Furthmüller, J. Efficiency of ab-initio total energy calculations for metals and semiconductors using a plane-wave basis set. Comput. Mater. Sci. 1996, 6, 15–50. [Google Scholar] [CrossRef]
- Kresse, G.; Furthmüller, J. Efficient iterative schemes for ab initio total-energy calculations using a plane-wave basis set. Phys. Rev. B 1996, 54, 11169. [Google Scholar] [CrossRef]
- Chen, Z.; Li, Z.; Wang, H. Two-dimensional auxetic GeSe2 material with ferroelasticity and flexoelectricity. J. Phys. Chem. C 2021, 125, 19666–19672. [Google Scholar] [CrossRef]
- Jochym, P.T. Elastic. Available online: http://wolf.ifj.edu.pl/elastic/ (accessed on 20 May 2023).
- Maździarz, M. Comment on ‘The Computational 2D Materials Database: High-throughput modeling and discovery of atomically thin crystals’. 2D Mater. 2019, 6, 48001. [Google Scholar] [CrossRef]
- Zhang, Y.; Wang, H.; Chen, W.; Zeng, J.; Zhang, L.; Wang, H.; Weinan, E. DP-GEN: A concurrent learning platform for the generation of reliable deep learning based potential energy models. Comput. Phys. Commun. 2020, 253, 107206. [Google Scholar] [CrossRef]
- Perdew, J.P.; Burke, K.; Ernzerhof, M. Generalized gradient approximation made simple. Phys. Rev. Lett. 1996, 77, 3865. [Google Scholar] [CrossRef]
- Blöchl, P.E. Projector augmented-wave method. Phys. Rev. B 1994, 50, 17953. [Google Scholar] [CrossRef]
- Wei, X.; Fragneaud, B.; Marianetti, C.A.; Kysar, J.W. Nonlinear elastic behavior of graphene: Ab initio calculations to continuum description. Phys. Rev. B 2009, 80, 205407. [Google Scholar] [CrossRef]
- Liu, Z.L. High-efficiency calculation of elastic constants enhanced by the optimized strain-matrix sets. arXiv 2020, arXiv:2002.00005. [Google Scholar]
- Haastrup, S.; Strange, M.; Pandey, M.; Deilmann, T.; Schmidt, P.S.; Hinsche, N.F.; Gjerding, M.N.; Torelli, D.; Larsen, P.M.; Riis-Jensen, A.C.; et al. The Computational 2D Materials Database: High-throughput modeling and discovery of atomically thin crystals. 2D Mater. 2018, 5, 042002. [Google Scholar] [CrossRef]
- Wang, L.; Kutana, A.; Zou, X.; Yakobson, B.I. Electro-mechanical anisotropy of phosphorene. Nanoscale 2015, 7, 9746–9751. [Google Scholar] [CrossRef] [PubMed]
- Zhang, S.; Zhou, J.; Wang, Q.; Chen, X.; Kawazoe, Y.; Jena, P. Penta-graphene: A new carbon allotrope. Proc. Natl. Acad. Sci. USA 2015, 112, 2372–2377. [Google Scholar] [CrossRef]
0 | 0 | ||
0 | |||
0 | 0 | ||
0 | 0 | ||
0 | |||
0 |
Lattice Type | Number of Deformation | Deformation Lists |
---|---|---|
Hexagonal | 2 | , |
Square | 3 | , , |
Rectangular | 4 | , , , |
Oblique | 6 | , , , , , |
Lattice Type | Number of Deformation | Deformation Lists |
---|---|---|
Hexagonal | 1 | |
Square | 1 | |
Rectangular | 2 | , |
Oblique | 3 | , , |
System | Lattice Type | a (Å) | b (Å) | K-Points | |
---|---|---|---|---|---|
graphene | Hexagonal | 2.468 | 2.468 | 120 | 24 × 24 × 1 |
Hexagonal | 3.180 | 3.180 | 120 | 21 × 21 × 1 | |
penta-graphene | Square | 3.631 | 3.631 | 90 | 17 × 17 × 1 |
Square | 3.671 | 3.671 | 90 | 18 × 18 × 1 | |
Rectangular | 3.297 | 3.297 | 90 | 25 × 15 × 1 | |
Centered-Rectangular | 4.906 | 5.571 | 90 | 15 × 12 × 1 |
System | Sources | Approach | ||||
---|---|---|---|---|---|---|
graphene | our work | ES | 354.1 | 67.5 | ||
our work | SS | 353.2 | 63.1 | |||
Ref. [20] | ES | 349.1 | 60.3 | |||
Ref. [31] | ES | 358.1 | 60.4 | |||
Ref. [32] | SS | 353.2 | 63.7 | |||
our work | ES | 132.6 | 32.8 | |||
our work | SS | 134.4 | 34.6 | |||
Ref. [32] | SS | 136.9 | 33.1 | |||
Ref. [33] | SS | 131.4 | 32.6 | |||
Ref. [20] | ES | 128.9 | 32.6 | |||
penta-graphene | our work | ES | 269.5 | −20.1 | 151.4 | |
our work | SS | 270.1 | −18.6 | 151.4 | ||
Ref. [35] | ES | 265.0 | −18.0 | / | ||
our work | ES | 58.4 | 20.5 | 38.3 | ||
our work | SS | 62.4 | 25.7 | 36.9 | ||
Ref. [32] | SS | 58.2 | 22.7 | 38.1 | ||
-phosphorene | our work | ES | 103.8 | 17.1 | 24.4 | 22.7 |
our work | SS | 103.4 | 17.8 | 23.9 | 22.6 | |
Ref. [34] | ES | 105.2 | 18.4 | 26.2 | 22.4 | |
Ref. [20] | ES | 104.4 | 21.6 | 34.0 | 27.4 | |
Ref. [32] | SS | 103.4 | 18.0 | 24.6 | 21.8 | |
our work | ES | 23.2 | 28.1 | 39.4 | 31.6 | |
our work | SS | 23.7 | 28.3 | 39.4 | 31.5 | |
Ref. [25] | ES | 23.0 | 27.4 | 37.8 | 31.1 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Wang, H.; Li, T.; Liu, X.; Zhu, W.; Chen, Z.; Li, Z.; Yang, J. mech2d: An Efficient Tool for High-Throughput Calculation of Mechanical Properties for Two-Dimensional Materials. Molecules 2023, 28, 4337. https://doi.org/10.3390/molecules28114337
Wang H, Li T, Liu X, Zhu W, Chen Z, Li Z, Yang J. mech2d: An Efficient Tool for High-Throughput Calculation of Mechanical Properties for Two-Dimensional Materials. Molecules. 2023; 28(11):4337. https://doi.org/10.3390/molecules28114337
Chicago/Turabian StyleWang, Haidi, Tao Li, Xiaofeng Liu, Weiduo Zhu, Zhao Chen, Zhongjun Li, and Jinlong Yang. 2023. "mech2d: An Efficient Tool for High-Throughput Calculation of Mechanical Properties for Two-Dimensional Materials" Molecules 28, no. 11: 4337. https://doi.org/10.3390/molecules28114337
APA StyleWang, H., Li, T., Liu, X., Zhu, W., Chen, Z., Li, Z., & Yang, J. (2023). mech2d: An Efficient Tool for High-Throughput Calculation of Mechanical Properties for Two-Dimensional Materials. Molecules, 28(11), 4337. https://doi.org/10.3390/molecules28114337