Skip to main content

An FHI-aims official Python package

Project description

pyfhiaims – an FHI-aims Python suite

For a more complete set of documentation see: https://fhi-aims-club.gitlab.io/pyfhiaims/

Installation

You can install pyfhiaims from PyPI via pip:

pip install pyfhiaims

Or, alternatively, you can install it from the main branch of this Git repository:

git clone https://gitlab.com/FHI-aims-club/pyfhiaims.git
cd pyfhiaims
pip install .

Usage

The main purpose of the package is to provide an interface to build input files for FHI-aims and to parse its outputs.

The input files can be created in the following way:

  • geometry.in - build from ASE or pymatgen objects:
from ase.build import bulk
from pyfhiaims.geometry import AimsGeometry

cu = bulk('Cu', 'fcc', a=3.6)
aims_cu = AimsGeometry.from_atoms(cu)
aims_cu.write_file("geometry.in")
  • control.in - build from Python dictionary:
import os
from pyfhiaims.control import AimsControl

# create the dictionary of input parameters
params = {"xc": "pbe",
          "species_dir": os.path.join(os.getenv("AIMS_SPECIES_DIR"), "light"),
          "k_grid": (7, 7, 7)
          }

# create the AimsControl object
control_in = AimsControl(parameters=params)
control_in.write_file(aims_cu)

The FHI-aims output file can be parsed in the following way:

from pyfhiaims import AimsStdout

stdout = AimsStdout("aims.out")

Then you can access all the parsed results (stdout.results), run metadata (runtime choices and some geometry statistics — stdout.metadata), warnings (stdout.warnings), and errors. Also, stdout.is_finished_ok tells if FHI-aims run has been finished without any errors.

There are several properties defined that make access to different widely used values easier, like energy and forces. Also, the top level keys of stdout.results dictionary can be accessed using dot notation (so run times can be accessed with stdout.final["time"]).

There are many values that are parsed from the aims.out file; you are welcome to explore stdout.results dictionary.

Support

Just write us an issue in the issue tracker!

Roadmap

To be written...

Contributing

Contributions are extremely welcome!

Authors and acknowledgment

The package was written by:

  • Tom Purcell
  • Andrei Sobolev

License

The project is licensed under MIT license.

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

pyfhiaims-1.1.0.tar.gz (80.6 kB view details)

Uploaded Source

Built Distribution

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

pyfhiaims-1.1.0-py3-none-any.whl (97.5 kB view details)

Uploaded Python 3

File details

Details for the file pyfhiaims-1.1.0.tar.gz.

File metadata

  • Download URL: pyfhiaims-1.1.0.tar.gz
  • Upload date:
  • Size: 80.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyfhiaims-1.1.0.tar.gz
Algorithm Hash digest
SHA256 7b1ab59f49c1d4a68be5113dceda4f067fc04f8a96c92b4b62f19c6d2cb91d01
MD5 8767c42b448c68b8fa0a6d80056ef362
BLAKE2b-256 5bd28cad1c128fa7f36cf2415d746f6fb6fdd62098e6c27dcce7cc64b9594292

See more details on using hashes here.

File details

Details for the file pyfhiaims-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: pyfhiaims-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 97.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyfhiaims-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a6a88674476edb8db0939a77e49ab0286ac4b0a02cca9d199aedde0f1444f140
MD5 135b78ee0cbf79785c0cbb0d7c67800c
BLAKE2b-256 719b1e131b0154e8aef1a6932c29cb9e96f0f257dbdf5f49308318014899e9d3

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