matflow-new
Computational materials science workflow management in Python
Science Score: 44.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
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.4%) to scientific vocabulary
Keywords
Repository
Computational materials science workflow management in Python
Basic Info
- Host: GitHub
- Owner: hpcflow
- License: mpl-2.0
- Language: Python
- Default Branch: develop
- Homepage: https://docs.matflow.io
- Size: 76.4 MB
Statistics
- Stars: 7
- Watchers: 4
- Forks: 6
- Open Issues: 57
- Releases: 168
Topics
Metadata Files
README.md
MatFlow
Design, run, and share computational materials science workflows
Documentation: https://docs.matflow.io/
Feature parity with the old code (LightForm-group/matflow)
This is a list tracking which workflows/tasks we have reimplemented/tested in the new code.
| Symbol | Meaning | | ------ | -------------------------------------------------------------------------------------- | | ✅ | Tested and functional (may be undocumented) | | ❓ | Untested but should in principle work; may need tweaks to the template parametrisation | | ❌ | Requires a missing core feature in hpcflow, or a missing software integration | | - | Will not be reimplemented (e.g. superseded by another) |
Demo workflows
| Workflow | Status | Notes | | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- | | tensionDAMASKAl | ✅ | Available as a demo workflow (tensionDAMASKAl) | | tensionDAMASKMg | ✅ | Available as a demo workflow (tensionDAMASKMg) | | singlecrystalparameter_fitting | ✅ | Available as a demo workflow (fitsinglecrystalparameters) | | Dream3DRVEsimulation | ❌ | Requires `generatevolumeelement/fromstatistics/Dream3D` | | fityieldfunction | ✅ | Available as as a demo workflow |
Task schemas
| Task | Status | Notes |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| generatemicrostructureseeds | | |
| ⇒ method: random/damask | ✅ | generatemicrostructureseeds / MicrostructureSeeds |
| generatevolumeelement | | |
| ⇒ method: singlevoxelgrains/damask | ❌ | Unimplemented |
| ⇒ method: particle_RVE/damask | ❌ | Unimplemented |
| ⇒ method: dualphasetialphacolony | ❌ | Unimplemented |
| ⇒ method: fromdamaskinput_files | ✅/❌ | Demo workflow: damask-input-files; orientations not yet accepted |
| ⇒ method: fromdream3dpipeline | ❌ | Unimplemented |
| ⇒ method: extrusion | ✅ | generate_volume_element/extrusion |
| ⇒ method: from_statistics/Dream3D | ✅/❌ | generate_volume_element/from_statistics - Not yet tested with orientations input |
| ⇒ method: fromstatisticsdualphaseorientations/Dream3D | ❌ | Unimplemented |
| ⇒ method: random_voronoi/damask | ✅ | generatevolumeelement/from_voronoi |
| ⇒ method: random_voronoi/neper | ❌ | Unimplemented |
| ⇒ method: randomvoronoifrom_orientations | ✅ | Use generatevolumeelement/from_voronoi |
| ⇒ method: randomvoronoifromdualphase_orientations | ❌ | Unimplemented |
| modifyvolumeelement | | |
| ⇒ method: addbufferzones/damask | ✅ | modifyVE/addbuffer_zones |
| ⇒ method: new_orientations/damask | ❌ | Unimplemented |
| ⇒ method: geometry | ❌ | Unimplemented |
| ⇒ method: spread_orientations/damask | ❌ | Unimplemented |
| ⇒ method: grid_size/damask | ✅ | modifyVE/gridsize |
| generateloadcase | | |
| ⇒ method: mixed/formable | ✅ | defineloadcase / LoadCase |
| ⇒ method: cyclic_uniaxial/formable | ✅ | defineloadcase / LoadCase |
| ⇒ method: uniaxial/formable | ✅ | defineloadcase / LoadCase |
| ⇒ method: biaxial/formable | ✅ | defineloadcase / LoadCase |
| ⇒ method: plane_strain/formable | ✅ | defineloadcase / LoadCase |
| ⇒ method: planar_2D/formable | ✅ | defineloadcase / LoadCase |
| ⇒ method: random_2D/formable | ✅ | defineloadcase / LoadCase |
| ⇒ method: random_3D/formable | ✅ | defineloadcase / LoadCase |
| gettensiletest | | |
| ⇒ method: from_CSV/formable | ✅ | readtensiletest |
| simulatevolumeelement_loading | | |
| ⇒ method: simulatevolumeelement_loading | ✅ | simulateVEloading |
| optimisesinglecrystal_parameters | | |
| ⇒ method: levenberg_marquardt/formable | ✅ | fitsinglecrystal_parameters |
| load_microstructure | | |
| ⇒ method: EBSD+DIC/DefDAP | ✅ | load_microstructure/EBSD |
| ⇒ method: EBSD/DefDAP | ✅ | loadmicrostructure/EBSDDIC |
| visualisevolumeelement | | |
| ⇒ method: vtk/damask | ✅ | visualise_VE/vtk |
| ⇒ method: Dream3D/Dream3D | ❌ | Unimplemented |
| visualisevolumeelement_response | | |
| ⇒ method: texturepolefigure/mtex | ❌ | Unimplemented |
| ⇒ method: textureodfsection/mtex | ❌ | Unimplemented |
| generateMKmodel | | |
| ⇒ method: default/abaqus | ❌ | Unimplemented |
| simulateMKdeformation | | |
| ⇒ method: FE/abaqus | ❌ | Unimplemented |
| findforminglimit_curve | | |
| ⇒ method: strainrateratio/abaqus | ❌ | Unimplemented |
| visualise_orientations | | |
| ⇒ method: pole_figure/mtex | ✅ | visualise_orientations |
| generatephasefield_input | | |
| ⇒ method: fromrandomvoronoi/cipher | ❌ | Unimplemented |
| ⇒ method: fromrandomvoronoiwithorientations/cipher | ❌ | Unimplemented |
| ⇒ method: fromvolumeelement/cipher | ❌ | Unimplemented |
| simulategraingrowth | | |
| ⇒ method: phase_field/cipher | ❌ | Unimplemented |
| fityieldfunction | | |
| ⇒ method: least_squares/formable | ✅ | fityieldfunction |
| simulateorientationsloading | | |
| ⇒ method: Taylor/damask | ❌ | Unimplemented |
| sample_orientations | | |
| ⇒ method: fromCTFfile/mtex | ✅ | sampleorientationsfromctffile/mtex |
| ⇒ method: fromCRCfile/mtex | ✅ | sampleorientationsfromcrcfile/mtex |
| sample_texture | | |
| ⇒ method: from_ODF/mtex | - | Use sampletexturefromODFmat/mtex |
| ⇒ method: frommodelODF/mtex | ✅ | sampletexturefrommodelODF/mtex |
| ⇒ method: fromCTFfile/mtex | ✅ | sampletexturefromCTFfile/mtex |
| ⇒ method: fromCRCfile/mtex | ✅ | sampletexturefromCRCfile/mtex |
| ⇒ method: from_random/damask | ❌ | Unimplemented |
| ⇒ method: fromODFmat/mtex | ✅ | sampletexturefromODFmat/mtex |
| estimate_ODF | | |
| ⇒ method: fromCTFfile/mtex | - | Bug in MTEX's ODF export. |
| ⇒ method: fromCRCfile/mtex | - | Bug in MTEX's ODF export. |
| getmodeltexture | | |
| ⇒ method: unimodal/mtex | - | Use sampletexturefrommodelODF/mtex |
| ⇒ method: fibre/mtex | - | Use sampletexturefrommodelODF/mtex |
| ⇒ method: random/mtex | ✅ | sampletexturerandom/mtex |
Acknowledgements
MatFlow development is funded by UKAEA, and was initially developed using funding from the LightForm EPSRC programme grant (EP/R001715/1).

Owner
- Name: hpcflow
- Login: hpcflow
- Kind: organization
- Location: United Kingdom
- Website: hpcflow.github.io
- Repositories: 6
- Profile: https://github.com/hpcflow
The home of the hpcFlow and MatFlow packages for computational workflow management
Citation (CITATION.cff)
# See https://citation-file-format.github.io for more info about the format
cff-version: 1.2.0
message: If you use this software, please cite it as below.
preferred-citation:
type: article
doi: 10.12688/materialsopenres.17516.1
url: https://materialsopenresearch.org/articles/2-2
title: >
A novel integrated framework for reproducible formability predictions
using virtual materials testing
journal: Materials Open Research
volume: 2
year: 2023
month: 1
abstract: >
Background: Formed aluminium alloy sheet materials are increasingly
adopted in production processes such as vehicle manufacturing, due to the
potential for weight-saving and improved recyclability when compared to
more traditional steel alloys. To maximise these benefits whilst
maintaining sufficient mechanical properties, the link between formability
and microstructure must be better understood. Virtual materials testing is
a cost-effective strategy for generating microstructure-informed
formability predictions.
Methods: We developed an open-source hybrid framework, combining
experimental and computational tasks, for generating reproducible
formability predictions. Starting with experimental texture measurements
and stress-strain curves, we calibrated crystal plasticity (CP) model
parameters. The framework used these parameters to perform a large set of
multiaxial full-field CP simulations, from which various anisotropic yield
functions were fitted. With these anisotropy parameters, we then employed
a Marciniak-Kuczyński finite-element model to predict forming limit
curves, which we compared with those from experimental Nakazima tests.
Results: We executed the workflow with the aluminium alloy Surfalex HF
(AA6016A) as a case study material. The 18-parameter Barlat yield function
provided the best fit, compared to six-parameter functions. Predicted
forming limits depended strongly on the chosen hardening law, and good
agreement with the experimental forming limit curve was found. All of the
generated data have been uploaded to the Zenodo repository. A set of
Jupyter notebooks to allow interactive inspection of our methods and data
are also available.
Conclusions: We demonstrated a robust methodology for replicable virtual
materials testing, which enables cheaper and faster formability analyses.
This complete workflow is encoded within a simple yet highly customisable
computational pipeline that can be applied to any material. To maximise
reproducibility, our approach takes care to ensure our methods and data —
and the ways in which that data is processed — are unambiguously defined
during all steps of the workflow.
authors:
# Authors of this citation
- given-names: Adam
family-names: Plowman
affiliation: University of Manchester
# email:
orcid: https://orcid.org/0000-0002-9781-7353
# website:
- given-names: Patryk
family-names: Jedrasiak
affiliation: University of Cambridge
# email:
orcid: https://orcid.org/0000-0001-6321-4821
# website:
- given-names: Thomas
family-names: Jailin
affiliation: University of Manchester
# email:
orcid: https://orcid.org/0000-0001-8580-8655
# website:
- given-names: Peter
family-names: Crowther
affiliation: University of Manchester
# email:
orcid: https://orcid.org/0000-0002-5430-6924
# website:
- given-names: Sumeet
family-names: Mishra
affiliation: Indian Institute of Technology Roorkee
# email:
orcid: https://orcid.org/0000-0002-9924-4894
# website:
- given-names: Pratheek
family-names: Shanthraj
affiliation: University of Manchester
# email:
orcid: https://orcid.org/0000-0002-6324-0306
# website:
- given-names: Joao
family-names: Quinta Da Fonesca
affiliation: University of Manchester
# email:
orcid: https://orcid.org/0000-0001-6063-8135
website: https://research.manchester.ac.uk/en/persons/joao.fonseca
title: "matflow: A Workflow Management System for Materials Science"
# version:
url: https://docs.matflow.io/
authors:
# As above, but of the software itself and not the publication
- given-names: Adam
family-names: Plowman
alias: aplowman
affiliation: University of Manchester
# email:
orcid: https://orcid.org/0000-0002-9781-7353
- given-names: Peter
family-names: Crowther
alias: merrygoat
affiliation: University of Manchester
# email:
orcid: https://orcid.org/0000-0002-5430-6924
- given-names: Joao
family-names: Quinta Da Fonesca
affiliation: University of Manchester
# email:
orcid: https://orcid.org/0000-0001-6063-8135
website: https://research.manchester.ac.uk/en/persons/joao.fonseca
- given-names: Francisco
family-names: Herrerías-Azcué
alias: fherreazcue
affiliation: University of Manchester
# email:
orcid: https://orcid.org/0000-0002-5906-221X
- given-names: Michael
family-names: Atkinson
alias: mikesmic
affiliation: University of Manchester
# email:
orcid: https://orcid.org/0000-0003-4843-699X
- given-names: Christopher
family-names: Fullterton
alias: cjfullerton
affiliation: University of Manchester
# email:
orcid: https://orcid.org/0000-0003-1306-2481
contact:
# How to contact someone about the software
- address: >
University of Manchester,
Oxford Road
city: Manchester
country: GB
# email:
name: Joao Quinta Da Fonesca
post-code: M13 9PL
license: MPL-2.0
repository-code: https://github.com/hpcflow/matflow-new
keywords:
- "workflow management"
- "materials science"
- "high-performance computing"
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 85
- Total pull requests: 194
- Average time to close issues: about 1 month
- Average time to close pull requests: 6 days
- Total issue authors: 7
- Total pull request authors: 10
- Average comments per issue: 1.24
- Average comments per pull request: 0.27
- Merged pull requests: 153
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 65
- Pull requests: 86
- Average time to close issues: 19 days
- Average time to close pull requests: 15 days
- Issue authors: 5
- Pull request authors: 8
- Average comments per issue: 1.29
- Average comments per pull request: 0.56
- Merged pull requests: 49
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- gcapes (40)
- SJaffa (17)
- aplowman (14)
- cjfullerton (7)
- Gbowker (3)
- dkfellows (3)
- fherreazcue (2)
- hpcflow-actions (1)
Pull Request Authors
- aplowman (110)
- hpcflow-actions (70)
- gcapes (17)
- cjfullerton (13)
- dkfellows (13)
- SJaffa (3)
- Gbowker (2)
- fherreazcue (2)
- AkashKumarSingh11032001 (1)
- samuel-hg-engel (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- 109 dependencies
- Sphinx ^4.4.0 develop
- black ^21.12b0 develop
- commitizen ^2.20.3 develop
- ipykernel ^6.6.1 develop
- pre-commit ^2.16.0 develop
- pydata-sphinx-theme ^0.8.0 develop
- pylint ^2.12.2 develop
- pytest ^6.2.5 develop
- sphinx-copybutton ^0.5.0 develop
- sphinx-jinja ^2.0.1 develop
- hpcflow-new 0.81.0a0
- pyinstaller ^4.10
- python >=3.7,<3.11
- actions/add-to-project v0.4.0 composite
- actions/cache v2 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/upload-artifact v2 composite
- actions/cache v2 composite
- actions/checkout v2 composite
- actions/download-artifact v2 composite
- actions/setup-python v2 composite
- actions/upload-artifact v2 composite
- softprops/action-gh-release v1 composite
- actions/cache v2 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/checkout v3 composite