aiida-jutools

Tools for simplifying daily work with the AiiDA workflow engine

https://github.com/judftteam/aiida-jutools

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.4%) to scientific vocabulary

Keywords

aiida computational-materials-science computational-science data-science density-functional-theory dft forschungszentrum-juelich high-throughput judft materials-informatics materials-science pandas provenance toolkit utility workflow
Last synced: 6 months ago · JSON representation ·

Repository

Tools for simplifying daily work with the AiiDA workflow engine

Basic Info
  • Host: GitHub
  • Owner: JuDFTteam
  • License: mit
  • Language: Python
  • Default Branch: develop
  • Homepage:
  • Size: 36.3 MB
Statistics
  • Stars: 6
  • Watchers: 4
  • Forks: 6
  • Open Issues: 9
  • Releases: 3
Topics
aiida computational-materials-science computational-science data-science density-functional-theory dft forschungszentrum-juelich high-throughput judft materials-informatics materials-science pandas provenance toolkit utility workflow
Created about 6 years ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

README.md

Documentation Status Build Status codecov MIT license GitHub version PyPI version DOI

aiida-jutools

This package offers

  1. For users: Tools for simplifying daily work with the AiiDA workflow engine, especically with respect to data management and high-throughput computing.
  2. For developers: Common utilities for AiiDA plugins, such as the JuDFTteam AiiDA plugins. These utitlities in turn make use of the common underlying Python layer masci-tools. <!-- 3. Science tools: --> <!-- - jutools.structure.structure_analyzer.analyze_symmetry -->

Just import with import aiida_jutools as jutools. Then you can call all tools like so: jutools.subpackage.tool (). All tools have comprehensive docstrings.

Installation

```bash git clone git@github.com:JuDFTteam/aiida-jutools.git cd aiida-jutools

user install

pip install .

developer install

pip install -e . ```

Documentation

Under construction. However, all classes and methods have comprehensive docstrings.

For developers

You have made some AiiDA code that may be useful to others? Consider adding it to jutools! Make a pull request, or ask @Irratzo to be added as developer.

Please adhere to the developer coding conventions: - Place larger classes in a subpackage (subfolder) in a separate module (file). Smaller stuff like functions go in the respective subpackage's subpackage/util.py. - Make all tools available at subpackage level via import in subpackage/__init__.py. See existing files for how to do that. Also import each new subpackage in the package's top-level __init__.py. Together, this enables to access all tools with tab completion like jutools.subpackage.tool() instead of needing to import single modules. The former is better practice. For that purpose, keep subpackage and module names short but clear, preferably one word only, as opposed to tool names which should be as long as needed to be self-explanatory. - Prefix non-user tools with _ to keep user namespace clean and organized. - Prefix all imports inside modules with _ to keep user namespace clean and organized. Prefer top namespace imports to avoid name conflicts and ambiguities. See existing modules for conventions, e.g. with respect to AiiDA imports. - Add docstring for every added tool. Add typing hints wherever possible and sensible. See existing modules for examples. - When manipulating AiiDA nodes, implement with 'load or create' pattern: load nodes if already exist, otherwise create. Provide a dry_run:bool=True and verbosity options (verbosity:int, verbose:bool, or silent:bool). - If you use cross-references in docstrings, do cross-referencing relative to the current location (i.e., prefixed by a dot .). Example: :py:func:`~.query_processes` instead of :py:func:`~aiida_jutools.process.query_processes`, when in module aiida_jutools.process.

Owner

  • Name: JuDFTteam
  • Login: JuDFTteam
  • Kind: organization

JuDFTteam is the GitHub home of the quantum materials simulation codes and toolkits developed by the division Quantum Theory of Materials at FZ Jülich.

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: AiiDA-JuTools
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Johannes
    family-names: Wasmer
    email: johannes.wasmer@gmail.com
    affiliation: Forschungszentrum Jülich
    orcid: 'https://orcid.org/0000-0001-5113-3119'
  - given-names: Philipp
    family-names: Rüssmann
    email: philipp.ruessmann@uni-wuerzburg.de
    affiliation: University of Würzburg
    orcid: 'https://orcid.org/0000-0002-6196-2700'
  - given-names: Roman
    family-names: Kovacik
    email: r.kovacik@fz-juelich.de
    affiliation: Forschungszentrum Jülich
    orcid: 'https://orcid.org/0000-0002-2780-547X'
identifiers:
  - type: doi
    value: 10.5281/zenodo.10429636
    description: >-
      This DOI represents all versions, and will always
      resolve to the latest one.
repository-code: 'https://github.com/JuDFTteam/aiida-jutools'
url: 'https://github.com/JuDFTteam/aiida-jutools'
abstract: >-
  Tools for simplifying daily work with the AiiDA workflow
  engine 
keywords:
  - workflow
  - data-science
  - utility
  - dft
  - toolkit
  - pandas
  - provenance
  - density-functional-theory
  - aiida
  - materials-science
  - high-throughput
  - computational-science
  - forschungszentrum-juelich
  - computational-materials-science
  - judft
license: MIT

GitHub Events

Total
Last Year

Dependencies

docs/requirements_for_rtd.txt pypi
  • aiida-core >0.9.0
setup.py pypi
  • aiida-core *
  • aiida-kkr *
  • humanfriendly *
  • masci-tools *
  • numpy *
  • pandas *
  • pycifrw *
  • scipy *
  • spglib *