GithubHelp home page GithubHelp logo

materials-data-science-and-informatics / aiida-fenics Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 0.0 155 KB

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

License: Other

Python 98.21% Shell 1.79%
aiida python fem fenics fenics-x aiida-fenics aiida-plugin aiida-plugins physics simulation

aiida-fenics's Introduction

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.

aiida-fenics's People

Contributors

broeder-j avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.