Skip to main content

Debye approximation implementation for the calculation of thermodynamic properties from ground-state atomistic simulations.

Project description

debyetools

Implementation of a tool for calculating self-consistent thermodynamic properties that can take into account all kinds of contributions to the free energy inluding explicit anharmonicity. The software presented here is based in the Debye approximation within the QHA using the crystal internal energetics parametrized at ground-state to project the thermodynamics properties at high temperatures.

Made by Javier Jofre: javier.jofre@polymtl.ca If you use debyetools in a publication, please refer to the source code. If you use the implemented method for the calculation of the thermodynamic properties, please cite the following publication:

Jofre, J., Gheribi, A. E., & Harvey, J.-P. Development of a flexible quasi-harmonic-based approach for fast generation of self-consistent thermodynamic properties used in computational thermochemistry. Calphad 83 (2023) 102624. doi: https://doi.org/10.1016/j.calphad.2023.102624.

   @article{,
      author = {Javier Jofré and Aïmen E. Gheribi and Jean-Philippe Harvey},
      doi = {10.1016/j.calphad.2023.102624},
      issn = {03645916},
      journal = {Calphad},
      month = {12},
      pages = {102624},
      title = {Development of a flexible quasi-harmonic-based approach for fast generation of self-consistent thermodynamic properties used in computational thermochemistry},
      volume = {83},
      year = {2023},
   }

Requirements for Python module:

  • numpy
  • mpmath
  • scipy

Requirements for Interface:

For the interface it will also be necesary:

  • matplotlib
  • PySide6

Installation

pip install --upgrade debyetools

Get started

To start getting familiar with the interface you can download examples input files. The GUI can be launched by executing the interface script from the debyetools repository main folder:

python interface.py

Or you can launch inside python:

from debyetools.tpropsgui.gui import interface
interface()

Debye tools can also be used as a library. Example: heat capacity of Al fcc using 3rd order Birch-Murnaghan EOS

import numpy as np
import debyetools.potentials as potentials
from debyetools.ndeb import nDeb

# EOS parametrization
# =========================
EOS_parameters = [-3.607736520e+05, 9.929277050e-06, 7.729289055e+10, 4.604381753e+00]
EOS = potentials.BM()
EOS.fitEOS([0], [0], initial_parameters=EOS_parameters, fit=False)

# Other Contributions parametrization
# =========================
p_electronic = [3.8027342892e-01, -1.8875015171e-02, 5.3071034596e-04, -7.0100707467e-06]
mass = 0.026981500000000002
Tmelting = 933
p_defects = 8.46, 1.69, Tmelting, 0.1
p_anharmonicity = 0, 1
p_XS = 0, 0, 0
poissonsratio = 0.37

# F minimization using Slater approximaiton
# =========================
ndeb = nDeb(poissonsratio, mass, p_anharmonicity, EOS, p_electronic, p_defects, p_XS, mode='jjsl')
T_initial, T_final= 0.1, 1000
T = np.arange(T_initial, T_final, 10)
Pressure = 0
T, V = ndeb.min_G(T, EOS_parameters[0] * .9, P=Pressure)

# Evaluation of thermodynamic properties
# =========================
tprops_dict = ndeb.eval_props(T, V, P=Pressure)

To Do's:

  • Improve error handling
  • Improve Documentation
  • Add handling of anisotropic materials
  • Prediction of explicit anharmonicity parameters

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

debyetools-2.0.51.tar.gz (95.8 kB view details)

Uploaded Source

File details

Details for the file debyetools-2.0.51.tar.gz.

File metadata

  • Download URL: debyetools-2.0.51.tar.gz
  • Upload date:
  • Size: 95.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.13

File hashes

Hashes for debyetools-2.0.51.tar.gz
Algorithm Hash digest
SHA256 53d279e20162df68dd4f083e18720ec976f945084f86b4e8949f8e1f58353c0d
MD5 45f110e2ff59d234b88ca6c82f5fb9fc
BLAKE2b-256 441bcf85c2c25aad0925eba25032ab0cf8b414cab53366489284e1bcf1602148

See more details on using hashes here.

Supported by

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