Skip to content

hpcflow/matflow-new

Repository files navigation

MatFlow logo

MatFlow

PyPI - Version PyPI - Python Version

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
tension_DAMASK_Al Available as a demo workflow (tension_DAMASK_Al)
tension_DAMASK_Mg Available as a demo workflow (tension_DAMASK_Mg)
single_crystal_parameter_fitting Available as a demo workflow (fit_single_crystal_parameters)
Dream3D_RVE_simulation Requires generate_volume_element/from_statistics/Dream3D
fit_yield_function Available as as a demo workflow

Task schemas

Task Status Notes
generate_microstructure_seeds
⇒ method: random/damask generate_microstructure_seeds / MicrostructureSeeds
generate_volume_element
⇒ method: single_voxel_grains/damask Unimplemented
⇒ method: particle_RVE/damask Unimplemented
⇒ method: dual_phase_ti_alpha_colony Unimplemented
⇒ method: from_damask_input_files ✅/❌ Demo workflow: damask-input-files; orientations not yet accepted
⇒ method: from_dream3d_pipeline Unimplemented
⇒ method: extrusion generate_volume_element/extrusion
⇒ method: from_statistics/Dream3D ✅/❌ generate_volume_element/from_statistics - Not yet tested with orientations input
⇒ method: from_statistics_dual_phase_orientations/Dream3D Unimplemented
⇒ method: random_voronoi/damask generate_volume_element/from_voronoi
⇒ method: random_voronoi/neper Unimplemented
⇒ method: random_voronoi_from_orientations Use generate_volume_element/from_voronoi
⇒ method: random_voronoi_from_dual_phase_orientations Unimplemented
modify_volume_element
⇒ method: add_buffer_zones/damask modify_VE/add_buffer_zones
⇒ method: new_orientations/damask Unimplemented
⇒ method: geometry Unimplemented
⇒ method: spread_orientations/damask Unimplemented
⇒ method: grid_size/damask modify_VE/grid_size
generate_load_case
⇒ method: mixed/formable define_load_case / LoadCase
⇒ method: cyclic_uniaxial/formable define_load_case / LoadCase
⇒ method: uniaxial/formable define_load_case / LoadCase
⇒ method: biaxial/formable define_load_case / LoadCase
⇒ method: plane_strain/formable define_load_case / LoadCase
⇒ method: planar_2D/formable define_load_case / LoadCase
⇒ method: random_2D/formable define_load_case / LoadCase
⇒ method: random_3D/formable define_load_case / LoadCase
get_tensile_test
⇒ method: from_CSV/formable read_tensile_test
simulate_volume_element_loading
⇒ method: simulate_volume_element_loading simulate_VE_loading
optimise_single_crystal_parameters
⇒ method: levenberg_marquardt/formable fit_single_crystal_parameters
load_microstructure
⇒ method: EBSD+DIC/DefDAP load_microstructure/EBSD
⇒ method: EBSD/DefDAP load_microstructure/EBSD_DIC
visualise_volume_element
⇒ method: vtk/damask visualise_VE/vtk
⇒ method: Dream3D/Dream3D Unimplemented
visualise_volume_element_response
⇒ method: texture_pole_figure/mtex Unimplemented
⇒ method: texture_odf_section/mtex Unimplemented
generate_MK_model
⇒ method: default/abaqus Unimplemented
simulate_MK_deformation
⇒ method: FE/abaqus Unimplemented
find_forming_limit_curve
⇒ method: strain_rate_ratio/abaqus Unimplemented
visualise_orientations
⇒ method: pole_figure/mtex visualise_orientations
generate_phase_field_input
⇒ method: from_random_voronoi/cipher Unimplemented
⇒ method: from_random_voronoi_with_orientations/cipher Unimplemented
⇒ method: from_volume_element/cipher Unimplemented
simulate_grain_growth
⇒ method: phase_field/cipher Unimplemented
fit_yield_function
⇒ method: least_squares/formable fit_yield_function
simulate_orientations_loading
⇒ method: Taylor/damask Unimplemented
sample_orientations
⇒ method: from_CTF_file/mtex sample_orientations_from_ctf_file/mtex
⇒ method: from_CRC_file/mtex sample_orientations_from_crc_file/mtex
sample_texture
⇒ method: from_ODF/mtex - Use sample_texture_from_ODF_mat/mtex
⇒ method: from_model_ODF/mtex sample_texture_from_model_ODF/mtex
⇒ method: from_CTF_file/mtex sample_texture_from_CTF_file/mtex
⇒ method: from_CRC_file/mtex sample_texture_from_CRC_file/mtex
⇒ method: from_random/damask Unimplemented
⇒ method: from_ODF_mat/mtex sample_texture_from_ODF_mat/mtex
estimate_ODF
⇒ method: from_CTF_file/mtex - Bug in MTEX's ODF export.
⇒ method: from_CRC_file/mtex - Bug in MTEX's ODF export.
get_model_texture
⇒ method: unimodal/mtex - Use sample_texture_from_model_ODF/mtex
⇒ method: fibre/mtex - Use sample_texture_from_model_ODF/mtex
⇒ method: random/mtex sample_texture_random/mtex

Acknowledgements

MatFlow development is funded by UKAEA, and was initially developed using funding from the LightForm EPSRC programme grant (EP/R001715/1).