***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.
**duplicate
switches if we allow post processors to create variables with the same name or if the duplicate names are appended with
_n#
in the**no_duplicate
case (default).**elset
define the element set of concern.
**file
define the type of file where the data will be read. (problem
.integ
, problem.node
…).**ipset
define the Gauss point group of concern.
**material_file
indicates that a separate material file which is to be used for reading material coefficients if no
*model_coef
is entered in a*process
command.**nset
define the node set of concern.
**output_number
define the period of time which will be used. The default is the full time period of existing results.
**at
is an alternative to
output_number
: specific maps can be selected through their time.**output_to_node
indicates that the post output should be directed to anode
file and not actnod
file. The distinction is that if copying displacement variables the new files can have deformed geometry displayed in Zmaster.**packet_size
can 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.
**process
add 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
,23
and13
will 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