Express

Express: a high-level, extensible workflow framework for accelerating ab initio calculations for the materials science community

https://github.com/mineralscloud/express.jl

Science Score: 77.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 6 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org, sciencedirect.com
  • Committers with academic emails
    1 of 8 committers (12.5%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.5%) to scientific vocabulary

Keywords

abinitio-simulations geophysics julia-package materials-science physics quantum-espresso workflows

Keywords from Contributors

pde interpretability meshing hack matrix-exponential pinn ab-initio-simulations standardization neural-operators bridges
Last synced: 4 months ago · JSON representation ·

Repository

Express: a high-level, extensible workflow framework for accelerating ab initio calculations for the materials science community

Basic Info
Statistics
  • Stars: 29
  • Watchers: 2
  • Forks: 1
  • Open Issues: 0
  • Releases: 31
Topics
abinitio-simulations geophysics julia-package materials-science physics quantum-espresso workflows
Created over 6 years ago · Last pushed about 1 year ago
Metadata Files
Readme License Code of conduct Citation

README.md


Express: a high-level, extensible workflow framework for accelerating ab initio calculations

| Documentation | Build Status | Others | | :--------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------: | | Stable Dev | Build Status Build Status Build Status pipeline status Coverage | GitHub license Code Style: Blue |

"Express" is a extensible, high-performance workflow framework designed to automate ab initio calculations in the field of materials science. This framework includes rigorously tested workflow templates for tasks such as structure optimization, equation of state (EOS) fitting, phonon spectrum (lattice dynamics) computation, and thermodynamic property calculation within the quasi-harmonic approximation (QHA) framework. Express is structured with modularity in mind, enabling the reuse of its components across diverse applications and facilitating the development of customized workflows.

The code is hosted on GitHub, with some continuous integration services to test its validity.

This repository is created and maintained by @singularitti. You are very welcome to contribute.

Please cite this package as:

Q. Zhang, C. Gu, J. Zhuang et al., express: extensible, high-level workflows for swifter ab initio materials modeling, Computer Physics Communications, 108515, doi: https://doi.org/10.1016/j.cpc.2022.108515.

The BibTeX format is:

bibtex @article{ZHANG2022108515, title = {express: extensible, high-level workflows for swifter ab initio materials modeling}, journal = {Computer Physics Communications}, pages = {108515}, year = {2022}, issn = {0010-4655}, doi = {https://doi.org/10.1016/j.cpc.2022.108515}, url = {https://www.sciencedirect.com/science/article/pii/S001046552200234X}, author = {Qi Zhang and Chaoxuan Gu and Jingyi Zhuang and Renata M. Wentzcovitch}, keywords = {automation, workflow, high-level, high-throughput, data lineage} }

We also have an arXiv prepint.

Installation

The package can be installed with the Julia package manager. From the Julia REPL, type ] to enter the Pkg REPL mode and run:

pkg> add Express

Or, equivalently, via the Pkg API:

julia julia> import Pkg; Pkg.add("Express")

Documentation

  • STABLEdocumentation of the most recently tagged version.
  • DEVdocumentation of the in-development version.

Here is a video introduction to this code:

Watch the video

Project status

The package is tested against, and being developed for, Julia 1.6 and above on Linux, macOS, and Windows.

Questions and contributions

You are welcome to post usage questions on our discussion page.

Contributions are very welcome, as are feature requests and suggestions. Please open an issue if you encounter any problems. The Contributing page has guidelines that should be followed when opening pull requests and contributing code.

Stargazers over time

Stargazers over time

Owner

  • Name: Minerals Cloud
  • Login: MineralsCloud
  • Kind: organization
  • Email: mineralscloudcu@gmail.com
  • Location: Columbia University, New York, NY, USA

Investigates minerals in the cloud

Citation (CITATION.bib)

@article{ZHANG2023108515,
title = {express: Extensible, high-level workflows for swifter ab initio materials modeling},
journal = {Computer Physics Communications},
volume = {282},
pages = {108515},
year = {2023},
issn = {0010-4655},
doi = {https://doi.org/10.1016/j.cpc.2022.108515},
url = {https://www.sciencedirect.com/science/article/pii/S001046552200234X},
author = {Qi Zhang and Chaoxuan Gu and Jingyi Zhuang and Renata M. Wentzcovitch},
keywords = {Automation, Workflow, High-level, High-throughput, Data lineage},
abstract = {In this work, we introduce an open-source Julia project, express, an extensible, lightweight, high-throughput, high-level workflow framework that aims to automate ab initio calculations for the materials science community. express is shipped with well-tested workflow templates, including structure optimization, equation of state (EOS) fitting, phonon spectrum (lattice dynamics) calculation, and thermodynamic property calculation in the framework of the quasi-harmonic approximation (QHA). It is designed to be highly modularized so that its components can be reused across various occasions, and customized workflows can be built on top of that. Users can also track the status of workflows in real-time, and rerun failed jobs thanks to the data lineage feature express provides. Two working examples, i.e., all workflows applied to lime and akimotoite, are also presented in the code and this paper.
Program summary
Program Title: express CPC Library link to program files: https://doi.org/10.17632/bbzzrxsm4b.1 Developer's repository link: https://github.com/MineralsCloud/Express.jl Licensing provisions: GNU General Public License v3.0 Programming language: Julia Nature of problem: High-performance ab initio calculation is gaining more and more popularity when investigating the physical and chemical properties of materials in the scientific community. There are several ab initio programs in the market, but they are often not user-friendly to new users because of their intrinsic complexity. Even for familiar users, dealing with daily preparation and post-analysis could be trivial and fallible. Therefore, plenty of workflow frameworks have been developed to solve this problem. However, most of them cannot meet our expectations for several reasons. They are either too complex to read and modify, or too heavy for simple tasks. Plus, they put little focus on addressing the real pain points of everyday calculations, such as data preparation and output parsing. Solution method: We developed a workflow framework that can simplify this process, i.e., most of the mundane work can be replaced by writing a few lines of configurations. We also automated the three most-used work procedures into configurable workflows: equations of state fitting (structural optimization), phonon spectrum calculation, and thermodynamics calculation.}
}

GitHub Events

Total
  • Watch event: 5
  • Delete event: 1
  • Push event: 1
  • Pull request event: 2
  • Create event: 1
Last Year
  • Watch event: 5
  • Delete event: 1
  • Push event: 1
  • Pull request event: 2
  • Create event: 1

Committers

Last synced: almost 2 years ago

All Time
  • Total Commits: 2,681
  • Total Committers: 8
  • Avg Commits per committer: 335.125
  • Development Distribution Score (DDS): 0.23
Past Year
  • Commits: 384
  • Committers: 5
  • Avg Commits per committer: 76.8
  • Development Distribution Score (DDS): 0.185
Top Committers
Name Email Commits
singularitti s****i@o****m 2,064
Reno 2****i 454
CompatHelper Julia c****y@j****g 83
github-actions[bot] 4****] 44
wjy 1****2@1****m 17
Restyled.io c****s@r****o 7
dependabot[bot] 4****] 7
wjy j****9@c****u 5
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 5
  • Total pull requests: 112
  • Average time to close issues: 14 days
  • Average time to close pull requests: 4 days
  • Total issue authors: 4
  • Total pull request authors: 4
  • Average comments per issue: 11.8
  • Average comments per pull request: 0.02
  • Merged pull requests: 108
  • Bot issues: 0
  • Bot pull requests: 64
Past Year
  • Issues: 0
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: about 2 months
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 1
Top Authors
Issue Authors
  • singularitti (2)
  • paperref (1)
  • JuliaTagBot (1)
  • rkurchin (1)
Pull Request Authors
  • github-actions[bot] (53)
  • singularitti (48)
  • dependabot[bot] (10)
  • restyled-io[bot] (2)
Top Labels
Issue Labels
register versions (2)
Pull Request Labels
dependencies (10)

Packages

  • Total packages: 2
  • Total downloads:
    • julia 4 total
  • Total dependent packages: 4
    (may contain duplicates)
  • Total dependent repositories: 0
    (may contain duplicates)
  • Total versions: 44
juliahub.com: Express

Express: a high-level, extensible workflow framework for accelerating ab initio calculations for the materials science community

  • Versions: 31
  • Dependent Packages: 2
  • Dependent Repositories: 0
  • Downloads: 4 Total
Rankings
Dependent repos count: 9.9%
Dependent packages count: 16.6%
Average: 24.0%
Stargazers count: 29.1%
Forks count: 40.4%
Last synced: 4 months ago
juliahub.com: ExpressBase

Express: a high-level, extensible workflow framework for accelerating ab initio calculations for the materials science community

  • Versions: 13
  • Dependent Packages: 2
  • Dependent Repositories: 0
Rankings
Dependent repos count: 9.9%
Dependent packages count: 16.6%
Average: 36.1%
Forks count: 53.5%
Stargazers count: 64.2%
Last synced: 4 months ago

Dependencies

.github/workflows/CI.yml actions
  • actions/checkout v3 composite
  • codecov/codecov-action v3 composite
  • julia-actions/cache v1 composite
  • julia-actions/julia-buildpkg v1 composite
  • julia-actions/julia-docdeploy v1 composite
  • julia-actions/julia-processcoverage v1 composite
  • julia-actions/julia-runtest v1 composite
  • julia-actions/setup-julia v1 composite
.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite
.github/workflows/register.yml actions
  • julia-actions/RegisterAction latest composite
.github/workflows/CompatHelper.yml actions