pip install VaspGibbs 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 Owould only compute vibration modes associated with C and O keeping all other atoms fixed.-o 0 2 5would compute vibration modes associated with the first, third and sixth atoms in the POSCAR keeping all other atoms fixed. (Counts from 0)-t 10would 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.
All outputs can be found in the VaspGibbs.md file. It contains the following information:
| Property | Value |
|---|---|
| Sigma | x |
| P. axes | |
| I~1 | x eV/THz^2 |
| I~2 | x eV/THz^2 |
| I~3 | x eV/THz^2 |
| 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 |
| Quantity | Value |
|---|---|
| Enthalpy | x eV |
| Entropy | x eV/K |
| Gibbs Free Energy | x eV |
| G - E_dft | x eV |
| TS | x eV |
- 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)
@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} } 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!