Skip to content

A plugin package that enables the usage of the FEniCS computing platform with the AiiDA framework.

License

Notifications You must be signed in to change notification settings

Materials-Data-Science-and-Informatics/aiida-fenics

Repository files navigation

Enabling usage of the FEniCS computing platform with AiiDA

MIT license GitHub release PyPI version PyPI pyversions Build status Documentation Status codecov

This software contains a plugins that enables the usage of the FEniCS computing platform with the AiiDA framework. It includes special plugins for software building on FEniCS like the Phasefield dislocation interaction program Pdfdisloc. The enables provenance tracking for such simulations and workflows, which is need for research datamanagement, reproducibility and FAIR data.

Documentation

Hosted at http://aiida-fenics.readthedocs.io/en/develop/index.html. For other information see the AiiDA-core docs, or the FeniCs project.

License:

MIT license. See the license file.

How to cite:

If you use this package please consider citing:

Comments/Disclaimer:

Contents

  1. Introduction
  2. Installation Instructions
  3. Code Dependencies
  4. Further Information

Introduction

This is a python package (AiiDA plugin and utility) allowing to use the pdfdisloc code in the AiiDA Framework. The Pdfdisloc program contains workflows based on Fenics a finite element solver, that is widely applied in the material science and physics community.

The plugin :

The plugin consists of:

1. A data-structure representing Meshes.
2. pdfdisloc calculation

Installation Instructions

From the aiida-fenics folder (after downloading the code, recommended) use:

$ pip install .
# or which is very useful to keep track of the changes (developers)
$ pip install -e .

To uninstall use:

$ pip uninstall aiida-fenics

Or install latest release version from pypi:

$ pip install aiida-fenics

Test Installation

To test rather the installation was successful use:

$ verdi plugins list aiida.calculations
   # example output:

   ## Pass as a further parameter one (or more) plugin names
   ## to get more details on a given plugin.
   ...
   * fenics.dfdisloc

You should see 'fenics.*' in the list

The other entry points can be checked with the AiiDA Factories (Data, Workflow, Calculation, Parser). (this is done in test_entry_points.py)

We suggest to run all the (unit)tests in the aiida-fenics/tests/ folder.

$ bash run_all_cov.sh

Code Dependencies

Requirements are listed in setup.json.

most important are:

  • aiida_core >= 1.3.0

Mainly AiiDA:

  1. Download from www.aiida.net -> Download
  2. install and setup -> aiida's documentation

Further Information

Usage examples are shown in 'examples'.

Acknowledgements

Besides the Forschungszentrum Juelich GmbH (FZJ), this project was supported within the hub Information at the FZJ by the Helmholtz Metadata Collaboration (HMC), an incubator-platform of the Helmholtz Association within the framework of the Information and Data Science strategic initiative.