Skip to content
AiiDA plugin for running cluster expansion using icet.
Python Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.ci
aiida_ce
docs
examples
wrappers
.coveragerc
.gitignore
.pre-commit-config.yaml
.readthedocs.yml
.travis.yml
LICENSE
MANIFEST.in
README.md
atomic_numbers.raw
azure-pipelines.yml
cells.raw
conftest.py
coordinates.raw
natoms.raw
pytest.ini
setup.json
setup.py

README.md

Build Status Coverage Status Docs status PyPI version

aiida-ce

The aiida-ce is an aiida plugin which running the cluster expansion by using icet a tool for the construction and sampling of alloy cluster expansions as the backend. The plugin was designed to provided all the functions displayed in tutorials of icet

Features

orm data type

  • Structures collection for training is represented using StructureContainer, it can be initialize from a list of ase structures. Meanwhile, the energies of each structures can be attached to the data to constructed a training set input for TrainCalculation.
StructureContainer = DataFactory('ce.structures')
  • ClusterSpaceData is a data type to represent the cluster information used in the cluster expansion process. Though its real data is the information of each cluster, ClusterSpaceData store the data by its prototype inputs(primitive structure, cutoffs, chemical symbols). The ClusterSpace is then evaluated in the time of running.
ClusterSpaceData = DataFactory('ce.cluster')

calculation job

Because icet is a pythonic package without the executable files, aiida-ce makes the wrappers of different functions as excutatble files.

  • structure generators: EnumCalculation, SqsCalculation
EnumCalculation = CalculationFactory('ce.genenum')
SqsCalculation = CalculationFactory('ce.gensqs')
  • Train the ce model. Inputs are a StructureContainer and a ClusterSpaceData and the name of fitting method. It will ouput a ce model which can then be used to predict the energies of alloy of the same type.
TrainCalculation = CalculationFactory('ce.train')

Installation

pip install aiida-ce
verdi quicksetup  # better to set up a new profile
verdi plugin list aiida.calculations  # should now show your calclulation plugins

You need to copy the wrappers into the path in the computer where you gonna to run the executable file.

Usage

Here goes a complete example of how to submit a test calculation using this plugin.

A quick demo of how to submit a calculation:

verdi daemon start         # make sure the daemon is running
cd examples
verdi run submit.py        # submit test calculation
verdi process list -a  # check status of calculation

The plugin also includes verdi commands to inspect its data types:

verdi data ce structures list
verdi data ce structures dump <PK>
verdi data ce structures export <PK> <INDEX>

verdi data ce cluster list
verdi data ce cluster show <PK>
verdi data ce cluster dump <PK>

Development

git clone https://github.com/unkcpz/aiida-ce .
cd aiida-ce
pip install -e .[pre-commit,testing]  # install extra dependencies
pre-commit install  # install pre-commit hooks
pytest -v  # discover and run all tests

See the developer guide for more information.

License

MIT

Contact

morty.yu@yahoo.com

You can’t perform that action at this time.