Skip to main content

The FPTE package is a collection of tools for finite pressure temperature elastic constants calculation. Features include, but are not limited to stress-strain method for getting second order elastic tensors using DFT package VASP as well as, ab initio molecular dynamic method for temperaturedependent elastic constants.

Project description

Finite Pressure Temperature Elasticity (FPTE) package

Stress-Strain

Installation

Dependencies

FPTE requires:

  • Python (>= 3.7)
  • NumPy (>= 1.16.5)
  • Pandas (>= 0.25.3)
  • Matplotlib (>= 2.2.4)
  • joblib (>= 0.11)

FPTE 1.2.0 and later require Python 3.7 or newer. FPTE 1.1.0 and later require Python 3.4 or newer.

FPTE plotting capabilities (i.e., functions start with plot_ and classes end with "Display") require Matplotlib (>= 2.2.4).

User installation

If you already have a working installation of numpy and scipy, the easiest way to install FPTE is using pip:

pip install -U FPTE

or install from source:

git clone https://github.com/MahdiDavari/FPTE
cd FPTE
python setup.py install

In order to check your installation you can use:

python -m pip show FPTE  # to see which version and where FPTE is installed
python -m pip freeze  # to see all packages installed in the active virtualenv
python -c "import FPTE; print(FPTE.__version__)"

Note that in order to avoid potential conflicts with other packages it is strongly recommended to use a virtual environment (venv).

Theory

Elastic Stifness Coefficients from Stress-Strain Relations:

According to Hooke's law, the second-rank stress and strain tensors for a slightly deformed crystal are related by

$$ $$

where the fourth rank tensors cijkl and sijkl are called the elastic stiffness coefficients and elastic compliance constants respectively. Here we deal with elastic stiffness coefficients cijkl, which govern the proper stress-strain relations at nite strain. In general, we can write

$$ $$

where X and x are the coordinates before and after the deformation. There are 81 independent stiffness coefficients in general; however, this number is reduced to 21 by the requirement of the complete Voigt symmetry. In Voigt notation (cij), the elastic constants form a symmetric 6x6 matrix

$$ $$

In single suffix notation (running from 1 to 6), we can also use the matrix representations for stress and strain

$$ $$
and

$$ $$

where the stress components are σ1 = σxx ; σ2 = σyy ; σ3 = σzz ; σ4 = σyz ; σ5 = σzx ; σ6 = σxy, and the strain components are ε1 = ε xx ; ε2 = εyy ; ε3 = εzz ; ε4 = εyz ; ε5 = εzx ; ε6 = εxy. When a crystal lattice is deformed with strain (ε), new lattice vectors a are related to old vectors ** a**0 by a = (I + ε) a0, where I is identity matrix. The stress-strain relations are then simply given by

$$ $$

The presence of the symmetry in the crystal reduces further the number of independent c ij . A cubic crystal having highest symmetry is characterized by the lowest number (only three) of independent elastic constants, c11, c12 and c44, which in matrix notation is

$$ $$

Crystal System Space Group Number No. of Elastic Constants
Cubic 195-230 3
Hexagonal 168-194 5
Trigonal 143-167 6-7
Tetragonal 75-142 6-7
Orthorhombic 16-74 9
Monoclinic 3-15 13
Triclinic 1 and 2 21

Note: For more information regarding the second-order elastic constant see reference:

  1. Golesorkhtabar, Rostam, et al., “ElaStic: A Tool for Calculating Second-Order Elastic Constants from First Principles.” Computer Physics Communications 184, no. 8 (2013): 1861–73.

  2. Karki, Bijaya B. “High-Pressure Structure and Elasticity of the Major Silicate and Oxide Minerals of the Earth’s Lower Mantle,” 1997.

  3. Barron, THK, and ML Klein. “Second-Order Elastic Constants of a Solid under Stress.” Proceedings of the Physical Society 85, no. 3 (1965): 523.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

FPTE-1.2.1.tar.gz (23.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

FPTE-1.2.1-py3-none-any.whl (29.6 kB view details)

Uploaded Python 3

File details

Details for the file FPTE-1.2.1.tar.gz.

File metadata

  • Download URL: FPTE-1.2.1.tar.gz
  • Upload date:
  • Size: 23.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.5

File hashes

Hashes for FPTE-1.2.1.tar.gz
Algorithm Hash digest
SHA256 57d569ffd5a915d636216757d76d10deeb3da7694da9bd4ec630d0e5b3fa6677
MD5 6051d99f20a6383388ce8f61ff512e3d
BLAKE2b-256 93b4fa7d9b7cd48b6a6363608af9c45209e0f5fb2fa5ffb7412f28bc74de6c4e

See more details on using hashes here.

File details

Details for the file FPTE-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: FPTE-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 29.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.5

File hashes

Hashes for FPTE-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f4209fc8097494c1897643666535c783b4ca916d6304c90731b6fc0a30a6146c
MD5 e7a0a9a41cef5e57c1356a17a1116773
BLAKE2b-256 fa990fcd465525c07a7de1a40abef38357c8cf69bfec04b72a99616d24ee34e3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page