A simplified way to get Gibbs free energy from Vasp calculations
Project description
VaspGibbs
Installation
pip install VaspGibbs
Usage
In a folder with a finished vasp calculation, run
vasp_gibbs
vasp_gibbs
will rerun Vasp to obtain vibration modes and output the gibbs free energy of your system.
Use -o
(only) or -t
(top) to specify a set of atoms for which to calculate vibration modes. Examples:
-o C O
would only compute vibration modes associated with C and O keeping all other atoms fixed.-o 1 3 6
would compute vibration modes associated with the first, third and sixth atoms in the POSCAR keeping all other atoms fixed.-t 10
would compute vibration modes associated with the first 10 atoms starting from the top of the unit cell along the c axis.
This can be useful when computing free energy differences between systems where one part of the system does not change, e.g. adsorption free energies.
To run vasp in parallel call:
vasp_gibbs -n [number of proc] -m [mpi executable] -v [vasp executable]
By default srun
and vasp_std
are used.
VaspGibbs will automatically compute the moment of inertia and symmetry of your molecule and compute rotational and translational contributions if you specify that the system is a molecule with the -m
flag.
The temperature and pressure can be set using the -T
and -P
flags.
Output
All outputs can be found in the VaspGibbs.md file. It contains the following information:
Rotational properties
Property | Value |
---|---|
Sigma | x |
P. axes | |
I~1 | x eV/THz^2 |
I~2 | x eV/THz^2 |
I~3 | x eV/THz^2 |
Energy corrections
Type | Z | E (eV) | S (eV/K) | F (eV) |
---|---|---|---|---|
ZPE | N/A | x | N/A | N/A |
Electronic | x | x | x | x |
Vibrational | x | x | x | x |
Rotational | x | x | x | x |
Translational | x | x | x | x |
Thermodynamic Quantities
Quantity | Value |
---|---|
Enthalpy | x eV |
Entropy | x eV/K |
Gibbs Free Energy | x eV |
G - E_dft | x eV |
TS | x eV |
Online Ressources
- https://pubs.acs.org/doi/abs/10.1021/jp407468t (Supporting Information)
- https://gaussian.com/thermo/
- https://wiki.fysik.dtu.dk/ase/ase/thermochemistry/thermochemistry.html
- https://chem.libretexts.org/Bookshelves/Physical_and_Theoretical_Chemistry_Textbook_Maps/Statistical_Thermodynamics_(Jeschke)/06%3A_Partition_Functions_of_Gases/6.04%3A_Rotational_Partition_Function
- https://vaspkit.com/tutorials.html#thermo-energy-correction
- https://uregina.ca/~eastalla/entropy.pdf (https://doi.org/10.1063/1.473958)
Citation
@software{therrien2023vaspgibbs,
author = {Félix Therrien},
title = {{VaspGibbs: A simple way to obtain Gibbs free
energy from Vasp calculations}},
month = apr,
year = 2023,
publisher = {Zenodo},
version = {v0.2.1},
doi = {10.5281/zenodo.7874413},
url = {https://doi.org/10.5281/zenodo.7874413}
}
Under development
Results have been checked with J. Phys. Chem. C 2013, 117, 49. More validation needs to be done; use with care.
Next steps: more testing, add to pypi, PV term for solids with Murnaghan equation, hindered translator and rotor?
Let me know if you would like new features to be added!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for VaspGibbs-0.2.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8063ee59e5dd7a1c96f0f016149659abb964205fc1ed69a0721fb50928cd3c0d |
|
MD5 | 42e146a53f7605bf6e1ebac26bc15c2b |
|
BLAKE2b-256 | bd4702b914a4df5148608f06b931a8b2f56c575ab44f2bb1ad7d39c1df875f9f |