2.2.1. postResults


Purpose

Extract data from a simulation result file into an ASCII table.


parent_gray

Background

Supported file formats

  • MSC.Marc (*.t16)
  • DAMASK_spectral (*.spectralOut)

Types of output

  • nodal scalar (displacement, temperature, ...)
  • elemental scalar (equivalent stress, ...)
  • elemental tensor (stress, strain, ...)
  • homogenization output
  • crystallite output (phase, orientation, deformation gradient, ...)
  • constitutive output (dislocation density, slip resistance, twin volume fraction, ...)

Output processing

The result extraction internally comprises three steps:
  • filtering the data according to geometry or mesh properties. Use the --filter option to specify filtering conditions.
  • grouping the filtered data by user-defined criteria based on geometry and mesh properties. Use the --separation option to indicate which discrimination criteria you want for grouping.
  • mapping the values in each group to one scalar quantity by a user-defined function. Use the --map option to indicate how to map all values of a group to a single scalar.

File positions and increments

Typically, a result file contains more than one time step but, for instance, a number $N$ of them. We distinguish between »positions«, which follow a strictly consecutive numbering $1,\ldots,N$, and »increments«, which follow the numbering that the respective increment had in the course of the overall simulation. Example: suppose a simulation comprises 100 increments of which only every tenth is written to the result file. The result file will then contain positions $0,1,\ldots,10$ and increments $0,10,\ldots,100$ (because the initial configuration is always included as position 0 and increment 0).


parent_gray

Usage

> postResults [options] resultfile


parent_gray

Switches

--info / -i [ False ]
just list contents of resultfile
--legacy / -l [ False ]
interpret user block according to legacy (prior to DAMASK rev 1115) format
--split / -s [ False ]
split output into one separate file per increment
--increments [ False ]
range indicator addresses true increment numbers, not plain positions in file
--sloppy [ False ]
do not pre-check validity of increment range
--time / -t [ False ]
output time of increment (as first data column)
--nodal / -n [ False ]
data is extrapolated to nodal value


parent_gray

Options

--type / -p string [ auto ]
type of resultfile
--prefix string [ none ]
prefix to output file name
--suffix string [ none ]
suffix to output file name
--dir / -d string [ postProc ]
name of subdirectory to hold output
--range / -r start end step [ all ]
range of positions (or increments) to output

--homogenization string or int [ 1 ]
homogenization identifier (section in material.config part <homogenization>)
--crystallite string or int [ 1 ]
crystallite identifier (section in material.config part <crystallite>)
--phase string or int [ 1 ]
phase identifier (section in material.config part <phase>)

--ns list
nodal scalars to extract
--es list
elemental scalars to extract
--et list
elemental tensors to extract
--ho list
homogenization results to extract
--cr list
crystallite results to extract
--co list
constitutive results to extract

--filter / -f PythonCode
condition(s) to filter results. keywords interpreted in the PythonCode are 'elem', 'node', 'ip', 'grain', and 'x', 'y', 'z'.
--separation list
properties to separate (and sort) results. keywords are 'elem', 'node', 'ip', 'grain', and 'x', 'y', 'z'.
--sort list
properties to sort results (overrides --separate order). keywords are 'none', 'elem', 'node', 'ip', 'grain', and 'x', 'y', 'z'.
--map / -m string or PythonLambda
function applied to map multiple values to one scalar quantity per group. User-defined mappings (lambda a,b,n:) are formulated in an incremental fashion for each new data point, a(dd), and may use the current (incremental) result, b(ase), as well as the number, n(umber), of already processed data points for evaluation. Predefined options are
  • min right lambda n,b,a: min(b,a)
  • max right lambda n,b,a: max(b,a)
  • avg right lambda n,b,a: (n*b+a)/(n+1)
  • avgabs right lambda n,b,a: (n*b+abs(a))/(n+1)
  • sum right lambda n,b,a: b+a
  • sumabs right lambda n,b,a: b+abs(a)


parent_gray

Examples

  • volume-averaged results of deformation gradient and first Piola–Kirchhoff stress for all increments
    --cr f,p
  • spatially resolved slip resistance (of phenopowerlaw) in separate files for increments 10, 11, and 12
    --range 10 12 1 --increments --split --separation x,y,z --co resistance_slip
  • get averaged results in slices perpendicular to x for all negative y coordinates split per increment
    --filter 'y < 0.0'  --split --separation x --map 'avg'
  • global sum of squared data falling into first quadrant arc between R1 and R2
    --filter 'x >= 0.0 and y >= 0.0 and x*x + y*y >= R1*R1 and x*x + y*y <=R2*R2' --map 'lambda n,b,a: n*b+a*a'
Topic revision: r10 - 15 Apr 2014, PhilipEisenlohr


  • News
25 Mar 2019
Release of version v2.0.3
21 Jan 2019
DAMASK overview paper finally published with full citation information available
01 Dec 2018
DAMASK overview paper now online
17 Sep 2018
CMCn2018 & DAMASK user meeting to be hosted at Max-Planck-Institut für Eisenforschung
22 May 2018
Release of version v2.0.2
01 Sep 2016
CMCn2016 & DAMASK user meeting to be hosted at Max-Planck-Institut für Eisenforschung
25 Jul 2016
Release of version v2.0.1
08 Mar 2016
Release of version v2.0.0
22 Feb 2016
New webserver up and running
09 Feb 2016
Migrated code repository from Subversion to GitLab
17 Dec 2014
Release of revision 3813
14 May 2014
Release of revision 3108
02 Apr 2014
Release of revision 3062
16 Oct 2013
Release of revision 2689
15 Jul 2013
Release of revision 2555
15 Feb 2013
Release of revision 2174
13 Feb 2013
Doxygen documentation
16 Dec 2012
Powered by MathJax rendering
23 Nov 2012
Release of revision 1955
15 Nov 2012
Release of revision 1924
01 Nov 2012
Updated sidebar
30 Oct 2012
Significant website updates and content extensions


This site is powered by FoswikiCopyright by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding DAMASK? Send feedback
§ Imprint § Data Protection