Skip to content

Commit 6bf14fa

Browse files
committed
improvements suggested by @mkuehbach
1 parent 8900706 commit 6bf14fa

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

paper.md

+10-7
Original file line numberDiff line numberDiff line change
@@ -44,19 +44,19 @@ This library, which is also AGPL-licensed, is introduced here.
4444
Multi-physics-enriched crystal plasticity simulations are used to establish processing--structure--property relationships of crystalline materials at engineering length and time scales.
4545
Setting up a simulation requires parameterization of the constitutive models, description of microstructure and geometry, and definition of boundary and initial conditions.
4646
The interpretation of the resulting data requires tools for statistical analysis, plotting, and 3D visualization.
47-
Moreover, the design and study of complex materials using various computational techniques requires interoperability between different software packages in ICME worflows [@ShahEtAl2022].
47+
Moreover, the design and study of complex materials using various computational techniques requires interoperability between different software packages in ICME workflows [@ShahEtAl2022].
4848
These needs are best addressed by a modular set of routines for pre- and post-processing that integrate seamlessly into an existing ecosystem.
4949

5050
# Features
5151

5252
The materialpoint models implemented in DAMASK can be used in conjunction with different solvers: `DAMASK_grid`, `DAMASK_mesh`, `DAMASK_Marc`.
53-
The grid solver (`DAMASK_grid`) operates on periodically repeated hexahedral domains discretized by a structured grid, whereas the two other solvers are based on the finite element method and can be used for unstructured meshes and allow for more complex geometries.
54-
Hence, the definition of the geometry as well as boundary conditions and initial conditions depends on the selected solver and requires different pre-processing tools.
53+
The grid solver (`DAMASK_grid`) operates on periodically repeated hexahedral domains discretized by a structured grid, whereas the two other solvers are based on the finite element method and can be used for unstructured meshes, thus allowing for more complex geometries.
54+
Hence, the definition of the geometry together with boundary and initial conditions depends on the selected solver and requires different pre-processing tools.
5555
In contrast, the configuration of the materialpoint model and the DAMASK-specific HDF5 file format that is used to store the simulation results [@DiehlEtAl2017b] are solver-agnostic.
5656

57-
The DAMASK Python library is a package called `damask` and contains functionality for pre-processing tasks, such as the generation and manipulation of microstructures, load cases, material definition, or numerical parameters, as well as functionality for post-processing that enables analysis and visualization of DAMASK results.
57+
The DAMASK Python library is a package called `damask` and contains functionality for pre-processing tasks, such as the generation and modification of microstructures, load cases, material definition, or numerical parameters, as well as functionality for post-processing that enables analysis and visualization of DAMASK results.
5858
A particular focus is laid on finite-strain continuum mechanics and crystallography.
59-
The routines for conversion between the different kinds of orientation representations, such as Euler angles, rotation matrices, unit quaternions, or axis-angle pairs, are based a consistent set of conventions [@rowenhorst2015consistent].
59+
The routines for conversion between the different kinds of orientation representations, such as Euler angles, rotation matrices, unit quaternions, or axis-angle pairs, are based on a consistent set of conventions [@rowenhorst2015consistent].
6060
The provided routines and data tructures interoperate seamlessly with other libraries from the Python ecosystem, such as `NumPy` [@harris2020array], `pandas` [@mckinney-proc-scipy-2010], `Matplotlib` [@hunter2007matplotlib], `SciPy` [@2020SciPy-NMeth], `VTK`/`PyVista` [@ahrens200536] [@Sullivan_PyVista_3D_plotting_2019], `PyYAML`, `h5py` [@collette_python_hdf5_2014] [@FolkEtAl2011], and `orix` [@johnstone2020density] to facilitate the definition of custom ICME workflows.
6161

6262
Apart from its DAMASK-specific processing capabilities, many routines of the library can be used in other material science and continuum mechanics applications.
@@ -71,9 +71,12 @@ In addition to the three mandatory input files, i.e., geometry definition, mater
7171
## Post-Processing
7272

7373
The post-processing tools are centered around the HDF5 output file resulting from a DAMASK simulation.
74-
This flexible file format is called DADF5, short for "DAMASK HDF5", and ensures data storage according to the FAIR principles [@WilkinsonEtAl2016].
75-
The `Result` class provides custom views on the hierarchical data layout of the DADF5 file and enables the computation of derived quantities that are stored alongside with automatically created metadata in the output file.
74+
This flexible file format is called DADF5, short for "DAMASK HDF5" [@DiehlEtAl2017b], which allows data storage according to the FAIR principles [@WilkinsonEtAl2016].
75+
All data in DADF5 is enriched with metadata such as the date of creation, a human-understandable description, and the physical unit to ensure that the data is findable by humans and computers.
76+
The `Result` class provides custom views on the hierarchical data layout of the DADF5 file for easy accesibility.
77+
Moreover, it provides routines the computation of derived quantities that are stored alongside with automatically created metadata in the output file.
7678
The data can be further processed within Python or exported to various file formats for analysis using third-party tools such as `DREAM.3D`, `ParaView`, or `MTEX` [@BachmannEtAl2010].
79+
This, together with the fact that the complete simulation setup is stored in the DADF5 file, makes it possible to re-use and re-evaluate the data.
7780

7881

7982
# Alternatives

0 commit comments

Comments
 (0)