Skip to main content

Charge equilibration method for crystal structures

Project description

EQeq

Charge equilibration method for crystal structures.

Modified version, which allows specifying additional parameters:

  • lambda (default: 1.2) The dielectric screening parameter. Corresponds to eps_eff = 1.67
  • hI0 (default: -2.0) The electron affinity of hydrogen
  • chargePrecision (default: 3) Number of digits to use for point charges
  • method (default: "ewald", alternative: "nonperiodic") Method to compute the Coulombic interaction
  • mR (default: 2) Number of "expansion" unit cells to consider in periodic calculation ("real space"). 2 => 5x5x5
  • mK (default: 2) Number of "expansion" unit cells to consider in periodic calculation ("frequency space"). 2 => 5x5x5
  • eta (default: 50) Ewald splitting parameter
  • ionizationdata (default: ionizationdata.dat) File with ionization potentials and electron affinities. Default data are EA: experimental, T.Andersen et al., 1999 IP: experimental, C.E.Moore, 1970
  • chargecenters (default: chargecenters.dat) File with common oxidation states (lowered, if missing ionizationdata)

Installation

pip install pyeqeq

Usage

Command line interface

To run the HKUST-1 example:

eqeq examples/HKUST1/HKUST1.cif -o examples/HKUST1/HKUST1_w_charge.cif

Python interface

from pyeqeq import run_on_cif
run_on_cif("examples/HKUST1/HKUST1.cif")

Summary

The source code in this program demonstrates the charge equilibration method described in the accompanying paper. The purpose of the source code provided is to be minimalistic and do "just the job" described. In practice, you may wish to add various features to the source code to fit the particular needs of your project.

Major highlights of program:

  • Obtains charges for atoms in periodic systems without iteration
  • Can use non-neutral charge centers for more accurate point charges
  • Designed for speed (but without significant code optimizations)

Features not implemented but that you may want to consider adding:

  • Spherical cut-offs (for both real-space and reciprocal-space sums)
  • An iterative loop that guesses the appropriate charge center (so the user does not have to guess)
  • Ewald parameter auto-optimization
  • Various code optimizations

Authors

Original implementation by Christopher E. Wilmer, Randall Q. Snurr (advisor), Hansung Kim (car output), Patrick Fuller (streaming functionality), Louis Knapp (json output). Updated by Daniele Ongari.

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

pyeqeq-0.0.10.tar.gz (27.6 kB view details)

Uploaded Source

Built Distribution

pyeqeq-0.0.10-cp38-cp38-macosx_11_0_arm64.whl (110.8 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

File details

Details for the file pyeqeq-0.0.10.tar.gz.

File metadata

  • Download URL: pyeqeq-0.0.10.tar.gz
  • Upload date:
  • Size: 27.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.15

File hashes

Hashes for pyeqeq-0.0.10.tar.gz
Algorithm Hash digest
SHA256 9a801b8c36f15b362b49dd8f6131d6859d73325b610eeae2fedf5ea70d85e2a0
MD5 7495267324f4ecab2fcfad4c29509242
BLAKE2b-256 af65abb0e630ce463efcff519e02f8410e319c24c906046ee2d70bdb88455538

See more details on using hashes here.

File details

Details for the file pyeqeq-0.0.10-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyeqeq-0.0.10-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 19eb0ed885c3dd25cc063d3494999f2266af16fe63e95d6b320596ab8afa2043
MD5 13609a9aec4647acc63d90f505977c60
BLAKE2b-256 a3726650b9fa0a9410848445f7ecb4d44c84828a8b5a3bc9ea5186b269ea2c2d

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