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.0.0.tar.gz (73.3 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.0.0-py3-none-any.whl (84.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pyfhiaims-1.0.0.tar.gz
Algorithm Hash digest
SHA256 2e04e558f506b319db045bc9906cd1de60f7325ae40e7bf324c3911e86637130
MD5 135c6d50cce2fc8b2e233252c88aa920
BLAKE2b-256 a8a3dec11f0234debfc4c4e0ade6364e4d1c67d8cc25665d8eeb790ccbdb2bf1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyfhiaims-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 84.0 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.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ecad398253b254b8c077b0c53ee538a7df105bbae9920f07c9ea41df2258d0f8
MD5 91a7b27ae3da772e0410867c2a7dc6d4
BLAKE2b-256 aa8016c68d6ca1d2e6f9b11fe0b27d3b3efc3ef1ee2b2959312f0c173ca3a051

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