***local_post_processing#
Description#
This procedure is used to define the local post computations to apply at nodes or Gauss points. We recall that the local post computations are performed across all stored time points at each location. These operations are therefore primarily temporal, whereas a global post is used for spatial operations such as averaging over volumes. The global operations can however generate similar fields as local computations.
Syntax#
The following syntax summary applies:
***local_post_processing
[ **duplicate | **no_duplicate ]
[ **elset eset ]
[ **file file-key ]
[ **ipset ipset ]
[ **material_file fname ]
[ **nset nset ]
[ **output_number out-num-list ]
[ **at t1 t2 … tN ]
[ **output_to_node | **no_output_to_node ]
[ **packet_size size ]
[ **process type ]
\(~\,\) …
The sub options define geometrical groups of concern, time period,
material files, and the post treatments to apply. Any number of
**process commands can be added in a ***local_post_processing
section, and they will all normally have their own sub commands and
parameters to enter. The following table summarizes the function of each
of these commands, and the pages which follow give the detailed command
input syntax.
**duplicateswitches if we allow post processors to create variables with the same name or if the duplicate names are appended with
_n#in the**no_duplicatecase (default).**elsetdefine the element set of concern.
**filedefine the type of file where the data will be read. (problem
.integ, problem.node…).**ipsetdefine the Gauss point group of concern.
**material_fileindicates that a separate material file which is to be used for reading material coefficients if no
*model_coefis entered in a*processcommand.**nsetdefine the node set of concern.
**output_numberdefine the period of time which will be used. The default is the full time period of existing results.
**atis an alternative to
output_number: specific maps can be selected through their time.**output_to_nodeindicates that the post output should be directed to anodefile and not actnodfile. The distinction is that if copying displacement variables the new files can have deformed geometry displayed in Zmaster.**packet_sizecan be used for large output results files to decrease physical memory requirements. In this case post computations are performed by packets of size elements/nodes. Note: This option is not compatible with all data-output formats.
**processadd a new post computation and begin reading the input for it.
Note
In the first instance of **local_post_processing or
**global_post_processing the full description of the file/localization
(e.g. elset)/output range, etc. must be specified. Subsequent processing
entries will however use the last entered data, so that easy switching of
local and global post computations can take place.
Example#
The following is another example input from the test
Rainflow_test/INP/fatigue.inp:
****post_processing
***precision 5
***local_post_processing
**file integ
**elset ALL_ELEMENT
**output_number 1-40
**material_file fatigue.mat
**process range
*alpha 0.001
*var sig
**process fatigue_S
*mode simple
*var sig
**process multirange
*var sig
*reverse 5
**process fatigue_rainflow
*var sig
*mode simple
*reverse 5
***global_post_processing
**output_number 1
**process average
*list_var Dsig NF_S ncyc D1sig NF1
****return
**output_number#
Description#
This command is used to define the period of time which will be active for the post computation.
Syntax#
**output_number [ n1 - n2 | n1, n2, …, nN ]
The user indicates the number of “maps” in the form of a list of
integers, or intervals of integers. The elements of the list are
separated by commas or blank spaces. The intervals are specified with
two integers separated by a dash (-).
In the absence of an **output_number entry, the post-processor will
use all the solution maps in the file problem.ut.
Example#
Output numbers have to be specifically asked for. The following input file snippets demonstrate the syntax allowable for this.
% to get outputs 1,2,3,4,5,20,35
**output_number 1-5,20,35
% to get outputs 1 and 20
**output_number 1 20
% to get outputs 1, 20 and 30
**output_number 1,20 30
**at#
Description#
This command selects which maps which will be active for the post
computation by their time, rather than by their number. Thus, it is an
alternative to **output_number.
Syntax#
**at t1 t2 … tN
Note that specified time steps that do not exist in the results files
are ignored. Explicitly specifying t1 t2 … tN in the
***resolution bloc ensures that such maps will exist.
**nset#
Description#
This command defines the nodes to be treated by specifying a node group
(nset). One can use the mesher (****mesher) mode of operation to
generate these sets.
Syntax#
**nset nset
The groups of nodes nset must of course be defined in the geometry
file mesh.geof designated after the instruction
**meshfile file in the file problem.ut. All the nodes of
this group will be taken into account for the post calculation. To
simply designate all the nodes in the structure, one may always use the
pre-defined node set ALL_NODE. The nset selection can be modified at
any time with a new **nset instruction.
Example#
**nset surface
% with the following definition in the .geof file:
**nset surface
10 11 12 13 19 20 22 30 31
...
**elset#
Description#
This option defines the elements to be treated with post computations by specifying an element group (elset). Elsets can be generated in a mesh using the batch mesher (chapter 4).
Syntax#
**elset elset
The group of elements elset must of course be defined in the geometry
file mesh.geof designated after the instruction **meshfile
in the file problem.ut. All the elements of this group will be
taken into account for the post calculation; that is to say that the
post computations will be evaluated at all the elements Gauss points. To
simply designate all the elements in the structure, one may always use
the pre-defined element set ALL_ELEMENT. The elset selection can be
modified at any time with a new **elset instruction.
Example#
**elset wheel
% with the following definition in the .geof file:
** elset wheel
1 2 3 4 5 6 7 8
...
**ipset#
Description#
This command is used to select the integration point set (ipset) to treat with post computations.
Syntax#
**ipset ipset
The group of Gauss points ipset must be defined in the geometry file
mesh.geof designated after the instruction **meshfile in the
file problem.ut. Gauss points are specified in the
mesh.geof file under the group section **ipset by a series
of element/integration point couples (nel/nip with nel the element
id and nip the integration point number indexed from 1). The ipset
selection can be modified at any time with a new **ipset
instruction.
Example#
**ipset failure
% with the following definition in the .geof file:
**ipset failure
% nb_gp elem_id ip_list
2 1 1 2
2 2 1 2
2 3 1 2
2 4 1 2
**file#
Description#
This command is used to specify on what types of file the post calculation will be calculated. There is no selection by default.
Syntax#
**file filetype
where filetype is the selection of files to read, among the possible
files which were output by the finite element calculation. In the
general case, the type of output file produced is the same as the input
data file (i.e. if the input is an .integ file the output
.integp file has the exact same format with different variables).
The following table is a summary of the different possibilities:
filetype |
file read |
file created |
|---|---|---|
|
problem |
problem |
|
problem |
problem |
|
problem |
problem |
|
problem |
problem |
Certain post-processors do not respect this generality. For example
node_interpolation reads its input data in the file
problem.node but produces results in the file
problem.integp.
The “active” file selection can be modified at any instant with a new
**file instruction.
Example#
% to select the file extension .integ
% the results will be written in a file with a .integp
% extension
**file integ
**material_file#
Description#
This command is used to specify the name of a material file containing coefficients when they are necessary. This file can be updated during the progression through the post calculations if it is necessary. The current material file is the one selected by the last instance of this command.
Syntax#
**material_file file
Example#
**material_file aluminum
Material file syntax#
As this material file can be the same for the finite element, simulation
and post processing calculations, it is necessary to localize the
post-processor’s specific data. This is done with an entry of the
command ***post_processing_data 1Other behavior commands such as ***behavior terminate at the
next command of level ***. This effectively distinguishes the
components of the material file, just as the **** level
commands do in the input file. In this data-entry section,
different entries for the different post processors requiring
coefficients should be entered. Each section will contain coefficients
specific to the post processor given. Coefficients use the
COEFFICIENT objects given in the Z-mat manual in Chapter 5.
Note that the COEFFICIENT can depend on the internal variables,
auxiliary variables, flux and grad variables, or the external parameters
(if the save_parameter option was used for the later).
***post_processing_data
\(~\,\) **process PROCESS [ option1 … optionP ]
\(~\,~\,~\,\) name1 COEFFICIENT
\(~\,~\,~\,\) ….
\(~\,~\,~\,\) nameN COEFFICIENT
The optional input parameters option1 … optionP can be used to specify the particular use of the given post computation by giving an application option keyword, the tensor or variable on which it operates, etc.
The names name1 … nameN are the local names of the coefficients necessary to define for the corresponding calculation. These coefficient names are given for each process computation in the manual sections which follow.
Example#
***post_processing_data
**process fatigue_S sig
M 2400.
beta 5.
sigma_l 120.
sigma_u 450.
***post_processing_data
**process creep xtv
A temperature
1400. 1050.
2350. 900.
5000. 700.
r 5.
**process#
Description#
This keyword introduces a post-computation to be added to the set of
available results. most post computations take one or more subject
variables which will provide the basis of the calculations (e.g. finding
principal values of a tensor takes a tensor name as the subject, which
could be sig to find the principal stresses).
Post-computations which take subject variables introduced by the key
word *list_var are applied uniquely to scalar variables. All the
character strings following the key word are interpreted as such.
Certain post-computations which use the keyword *var to introduce
the subject variable are applied to either scalar or tensorial
variables. In this case, there will also be a command option named
*type which is provided to specify the type of variable.
Nevertheless, in order to simplify the input, the following variable
name convention is given:
All character strings which end in
11,22,33,12,23and13will be interpreted as the name of a scalar variable.Otherwise the character string is interpreted as a tensorial variable name.
The following local post-processor types are available in the standard distribution.
HCF LCF adiabatic_temperature
base_fatigue copy creep
delay derive deviator
ductile_failure eigen2 evcum_sum
external fatigue_E fatigue_EE
fatigue_S fatigue_rainflow fmax
fmin format function
harmonic hyper_visco inc_creep_damage
inelastic initiation integrate
load local_frame_axes mat_sim
max min mises
multirange neu_sehitoglu norm
oxidation rainflow range
trace transform_frame tresca
triax z7p