
Product
Introducing Webhook Events for Alert Changes
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.
aiida-aimall
Advanced tools
A plugin to interface AIMAll with AiiDA
.github/: Github Actions configuration
workflows/
ci.yml: runs tests, checks test coverage and continuous integration at every new commitpublish-on-pypi.yml: automatically deploy git tags to PyPI - just generate a PyPI API token for your PyPI account and add it to the pypi_token secret of your github repositoryconfig/ config files for testing/docs environment
code-aim.yaml config file for building precommit and test envscode-gwfx.yaml config file for building precommit and test envsprofile.yaml config file for aiida profilelocalhost-config.yaml config file for localhost computerlocalhost-setup.yaml setup file for localhost computeraiida_aimall/: The main source code of the plugin package
data.py: A new AimqbParameters data class, used as input to the AimqbCalculation CalcJob classcalculations.py: A new AimqbCalculation CalcJob classparsers.py: Two parsers (AimqbBaseParser and AimqbGroupParser) for AimqbCalculation resultsworkchains/: New WorkChains.
calcfunctions.py: calcfunctions that are used in the workchainsinput.py: BaseInputWorkChain that is used in other workchains to validate multiple input optionsparam_parts.py: SmilesToGaussianWorkChain and AIMAllReorWorkChain: two workchains representing individual steps of the SubstituentParameterWorkchainqc_programs.py: QMToAIMWorkChain and GaussianToAIMWorkChain linking quantum chemical software output to an AIMQB calculationsubparam.py: SubstituentParameterWorkchain to automate calculation substituent properties in a multistep calculation.controllers.py: Workflow controllers to limit number of running jobs on localhost computers.
AimReorSubmissionController to control AimReorWorkChains. These use parent_group_label for the wavefunction file nodes from GaussianWFXCalculationsAimAllSubmissionController to control AimqbCalculations``. These use parent_group_labelfor the wavefunction file nodes fromGaussianWFXCalculation`sGaussianSubmissionController to control GaussianWFXCalculations. This is mostly intended to have a arbitrarily large number of max concurrents and scan for output structures of AimReorWorkchains to submit to a remote clusterdocs/: Source code of documentation for Read the Docstests/: Basic regression tests using the pytest framework (submitting a calculation, ...). Install pip install -e .[testing] and run pytest.
conftest.py: Configuration of fixtures for pytest.gitignore: Telling git which files to ignore.pre-commit-config.yaml: Configuration of pre-commit hooks that sanitize coding style and check for syntax errors. Enable via pip install -e .[pre-commit] && pre-commit install.readthedocs.yml: Configuration of documentation build for Read the Docs.isort.cfg: Configuration to make isort and black precommit actions compatibleLICENSE: License for your pluginREADME.md: This filepyproject.toml: Python package metadata for registration on PyPI and the AiiDA plugin registry (including entry points)Many of the workflows provided are specific to my field of study, but the calculations and parsers should be widely useful. Again, as many things designed here were specific to my usage, there are some quirks that must be used at this time, but as I progress with this, I'll endeavour to replace them as optional parts.
AimqbParameters Data class to validate command line parameters used to run AIMAll calculations
AimqbParameters = DataFactory('aimall.aimqb')
aim_params = AimqbParameters(parameter_dict={"naat": 2, "nproc": 2, "atlaprhocps": True})
Run an AIMQB calculation using a valid starting file format (WFN/WFX/FCHK as SinglefileData)
AimqbCalculation = CalculationFactory('aimall.aimqb')
builder = AimqbCalculation.get_builder()
builder.parameters = aim_params
builder.file = SinglefileData('/absolute/path/to/file')
# Alternatively, if you have file stored as a string:
# builder.file = SinglefileData(io.BytesIO(wfx_file_string.encode()))
submit(builder)
Documentation is hosted at ReadTheDocs.
(env) pip install aiida-aimall
(env) verdi quicksetup # better to set up a new profile
(env) verdi plugin list aiida.calculations # should now show your calclulation plugins
If you are using WorkChains that run GaussianCalculations on some computers like Apple M1s, the current release v1.8.1 may result in an error in due to a space in the computer name. The master branch of cclib has been updated to fix this bug. The direct dependency is not allowed on PyPi. If you are in the situation, you can fix it by installing the current version of cclib from the master branch.
(env) pip install git+https://github.com/cclib/cclib
git clone https://github.com/kmlefran/aiida-aimall .
cd aiida-aimall
pip install --upgrade pip
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 guidelines for contributing for more information.
The testing and documentation framework is heavily influenced by the infrastructure presented in aiida-quantumespresso. Copyright (c), 2015-2020, ECOLE POLYTECHNIQUE FEDERALE DE LAUSANNE (Theory and Simulation of Materials (THEOS) and National Centre for Computational Design and Discovery of Novel Materials (NCCR MARVEL))
MIT
FAQs
A plugin to interface AIMAll with AiiDA
We found that aiida-aimall demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.

Security News
ENISA has become a CVE Program Root, giving the EU a central authority for coordinating vulnerability reporting, disclosure, and cross-border response.

Product
Socket now scans OpenVSX extensions, giving teams early detection of risky behaviors, hidden capabilities, and supply chain threats in developer tools.