4.7 Article

Elastic3rd: A tool for calculating third-order elastic constants from first-principles calculations

期刊

COMPUTER PHYSICS COMMUNICATIONS
卷 261, 期 -, 页码 -

出版社

ELSEVIER
DOI: 10.1016/j.cpc.2020.107777

关键词

Elasticity; Third-order elastic constants; Strain modes; Arbitrary symmetry

资金

  1. opening funding of National Key Laboratory of Science and Technology on Advanced Composites in Special Environments (Jingchuan Zhu), China
  2. China Scholarship Council
  3. China Postdoctoral Science Foundation

向作者/读者索取更多资源

The paper introduces Elastic3rd, an open-source Python package that can calculate third-order and second-order elastic constants for crystals with any symmetry from first-principles calculations. The code has been validated through case studies of various materials like C, Si, and Mg.
The third-order elastic constants (TOECs) are fundamental to describe crystal's nonlinear response to stress, and can be applied to explore anharmonic properties of crystals such as Gruneisen parameters, thermal expansion coefficient, and the effect of pressure on second-order elastic constants (SOECs). Here, we report an open-source python package, Elastic3rd, which is able to calculate the SOECs and TOECs using the strain-energy method for crystals with any symmetry from first-principles calculations. An algorithm to generate necessary strain modes and the corresponding coefficients for a given symmetry is proposed. These strain modes are then applied to the fully relaxed structure to generate the deformed structures. The total energies of the strained structures are calculated by a chosen first-principles code, and the SOECs and TOECs are determined by fitting the resulted strainenergy data. The present code has been validated by several case studies of C, Si and Mg, and the case of MnP4 shows the ability for low-symmetry crystals. Program summary Program title: Elastic3rd CPC Library link to program files: https://doi.org/10.17632/n54vr2kwx8.1 Developer's repository link: https://github.com/hitliaomq/ELASTIC3rd Licensing provisions: GNU General Public License 3 Programming language: Python 2.7.X and Python 3.X. External routines/libraries: Numpy [1], Scipy [2], and Matplotlib [3]. Nature of problem: To automatically calculate the third-order elastic constants for crystals with any symmetry from first-principles calculations. Solution method: Firstly, the deformed patterns and the corresponding coefficients for the secondand third-order elastic constants are automatically generated according to the symmetry. Secondly, the deformed patterns are applied to the initial lattice and the corresponding input files for firstprinciples calculations are generated. Thirdly, the energies of the deformed structures are calculated by first-principles software such as CASTEP [4] and VASP [5]. Then, the parameters of strain-energy functions are obtained by fitting the strain and energy relationships. Finally, the third-order elastic constants are determined by solving the linear-independent equations, and the second-order elastic constants are calculated by solving the overdetermined equation using the least squares method. Addition comments including restrictions and unusual features: This code is well modularized. Thus, the energy can be calculated using energy-generated first-principles or other packages only by writing few functions. (C) 2020 Elsevier B.V. All rights reserved.

作者

我是这篇论文的作者
点击您的名字以认领此论文并将其添加到您的个人资料中。

评论

主要评分

4.7
评分不足

次要评分

新颖性
-
重要性
-
科学严谨性
-
评价这篇论文

推荐

暂无数据
暂无数据