aiida-cp2k
aiida-cp2k copied to clipboard
The CP2K plugin for the AiiDA workflow and provenance engine.
AiiDA CP2K
Installation
If you use pip, you can install it as:
pip install aiida-cp2k
To install the plugin in an editable mode, run:
git clone https://github.com/aiidateam/aiida-cp2k
cd aiida-cp2k
pip install -e . # Also installs aiida, if missing (but not postgres/rabbitmq).
Links
- Documentation for the calculation examples and features of the plugin.
- Make an issue for bug reports, questions and suggestions.
- AiiDA to learn about AiiDA.
- CP2K to learn about CP2K.
For maintainers
Release
To create a new release, clone the repository, install development dependencies with pip install '.[dev]', and then execute bumpver update --major/--minor/--patch.
This will:
- Create a tagged release with bumped version and push it to the repository.
- Trigger a GitHub actions workflow that creates a GitHub release.
Additional notes:
- Use the
--dryoption to preview the release change. - The release tag (e.g. a/b/rc) is determined from the last release.
Use the
--tagoption to override the release tag.
Testing
To run the tests, you need to have Docker installed in your system. Once this is done, you can build the Docker image with the following command:
docker build -t aiida_cp2k_test .
To test against another version of aiida-core, you can specify the build agrument AIIDA_VERSION:
docker build -t aiida_cp2k_test --build-arg AIIDA_VERSION=2.4.3 .
Then, you can launch the container:
DOCKERID=`docker run -d aiida_cp2k_test`
This will remeber the container ID in the variable DOKERID.
You can then run the tests with the following command:
docker exec --tty --user aiida $DOCKERID /bin/bash -l -c 'cd /home/aiida/aiida-cp2k/ && pytest'
To enter the container for manual testing do:
docker exec -it --user aiida $DOCKERID bash
License
MIT
Contact
Acknowledgements
This work is supported by:
- the MARVEL National Centre for Competency in Research funded by the Swiss National Science Foundation;
- the MaX European Centre of Excellence funded by the Horizon 2020 EINFRA-5 program, Grant No. 676598;
- the swissuniversities P-5 project "Materials Cloud".