Filtering Output and Operating on Output in Abaqus/Explicit
You can pre-filter element and nodal field output and element,
nodal, contact, integrated, and fastener interaction history output before it
is written to the output database.
You can also operate on filtered or unfiltered (raw) output data
to extract the maximum, minimum, or absolute maximum of the output variables
over time. In addition, you can set a limit value for the output variables, and
you can stop the analysis at the time this limit is reached. For field output
the time at which the maximum, minimum, and absolute maximum were reached or
the time when the limit was reached is output by default for each output
variable.
If you filter a field output request that includes many output variables and
applies to the entire model, the memory requirements and the running time will
both increase. For common output requests consisting of a few element output
variables and a few nodal output variables the memory requirements and the
running time will not increase substantially.
Defining a Low-Pass Infinite Impulse Response Digital Filter
You can define three types of low-pass Infinite Impulse Response filters as
part of the model definition. Typical magnitude curves for analog type filters
are presented in
Figure 1,
where
represents the normalized cutoff frequency, which is the ratio of the cutoff
frequency to the sampling frequency (the sampling frequency is the inverse of
the time increment).
The Butterworth filter is very common; its response in the pass band is
known as maximally flat. The Type I Chebyshev filter has a sharper transition
between the pass band and the stop band, but it has a ripple in the pass band.
The Type II Chebyshev filter also has a sharper transition between the pass
band and the stop band than a Butterworth filter of the same order, but it has
a ripple in the stop band. The higher the order of the filter, the narrower the
transition band. However, the computational cost increases as the order
increases. In addition, for high-order filters the phase lag, which is the time
delay between the filtered and unfiltered signal, may become significant. For
most applications filter orders of two or four are sufficiently accurate.
To define a Butterworth filter, you must specify the cutoff frequency,
, and the filter order, N. Since the implementation of the
filters is done using cascades of second-order sections,
Abaqus
expects an even number for the filter order. If you specify an odd number for
the order, the order will be increased internally to the next even number. The
default value for the order is two, and the highest order that can be
prescribed is twenty. For the Chebyshev filters you must also specify an
additional parameter, the ripple factor. The ripple factor is equal to
for a Type I Chebyshev filter and is equal to
for a Type II Chebyshev filter (see
Figure 1).
No checks are performed to ensure that the cutoff frequency is appropriate;
for example,
Abaqus
does not check that only the noise of the signal is eliminated. You need to
know the range of the physical frequencies that are expected in the solution,
and you must prescribe a cutoff frequency greater than these frequencies. In
addition, the cutoff frequency should be less than half the sampling frequency;
otherwise, no filtering is performed.
Abaqus
internally remaps (using a quadratic interpolation) the output raw data so that
the filtering can satisfy the constant time-increment (sampling) requirement.
Defining the Filter Type
You must assign each filter definition a name that can be used to refer to
the filter from an output request.
Start-Up Conditions for the Filter
By default, the values of the variables at time zero (zero increment) are
used as the initial conditions (or start-up conditions); however, you can
change this initial value.
Filtering Using the Low-Pass Infinite Impulse Response Filters
To pre-filter element, nodal, contact, or integrated history output or
element and nodal field output based on one of the low-pass Infinite Impulse
Response filters that you defined, you refer to this filter by name from the
output request.
Filtering the Output Based on the Time Interval
For history output you can request that
Abaqus/Explicit
create an antialiasing filter that is internally based on the time interval
specified in the output request. The cutoff frequency is set internally to
one-sixth of the time frequency (the time frequency is the inverse of the time
interval, t, used for history output). If no time
intervals are specified, the default number of history output intervals is used
to create the cutoff frequency of the filter. You can also use antialiasing
filters for a field output request, but in this case the cutoff frequency is
set to one-sixth of a time frequency corresponding to two hundred time
intervals per step if less than two hundred field frames are requested. If more
than two hundred field frames are requested, the cutoff frequency is set to
one-sixth of the requested time frequency. The antialiasing filter is a
second-order Butterworth type and a filter definition is not required.
Abaqus/Explicit
does not check whether the specified time interval for history output provides
an appropriate cutoff frequency to build the internal filter. You should know
approximately how many data points are required to describe your history curve
(or signal) accurately, and
Abaqus/Explicit
will give you the most physical (un-aliased) representation of the signal for
that number of points. Similarly for field output
Abaqus/Explicit
does not check whether the cutoff corresponding to two hundred sampling
intervals or more (if you request more than two hundred frames) is appropriate
for your analysis. If a lower (or higher) cutoff frequency is needed, you
should define the filter in the model data.
Filtering Field Output or History Output Written at Time Intervals
You can apply a filter to a field output request or a history output
request written at intervals of time in your analysis.
Filtering Field Output Written at Evenly Spaced Intervals of Time
You can apply a filter to a field output request written at evenly spaced
time intervals in your analysis.
Requesting Maximum, Minimum, or Absolute Maximum Values for an Output Request
You can apply a filter to a field output request or a history output request
to obtain the maximum, minimum, or absolute maximum values for each variable in
the output request. The absolute maximum option enables you to obtain the
largest absolute value, negative or positive, for each variable in the output
request.
Abaqus
evaluates maximum, minimum, or absolute maximum values at every increment
during the analysis and reports these values at the time given by the output
interval specified in the output request. For field output requests the last
output frame will contain the maximum (or absolute maximum) value and minimum
value over the entire step; the intermediate frames will show the maximum,
minimum, or absolute maximum value up to the frame time. An additional output
variable containing the time when the maximum, minimum, or absolute maximum
occurred is output automatically for each output variable requested. This time
output is written by default (and it cannot be suppressed).
For field output requests
Abaqus
filters by default each component of tensor and vector quantities of output
variable independently and provides separate maximum, minimum, or absolute
maximum values for each component of the variable. You can, however, request
the maximum or minimum value or apply a limit value to an invariant such as
Mises stress for element output or magnitude for nodal output (see
Applying Bounding Values to Invariants).
Requesting Maximum, Minimum, or Absolute Maximum Values for Filtered Output
You can define a low-pass digital filter that returns the maximum,
minimum, or absolute maximum value for output requests to which it is applied.
Requesting Maximum, Minimum, or Absolute Maximum Values for Unfiltered Output
You can define a filter that returns the maximum, minimum, or absolute
maximum value for output requests to which it is applied without performing any
digital filtering of the data.
Setting an Upper or Lower Limit on Variables in an Output Request
You can apply a filter to a field output request or a history output request to prescribe a
bounding value for the variables in the output request. If any of the variables in the
output request reach a value higher than the maximum limit, lower than the minimum limit, or
greater than the absolute maximum limit, Abaqus returns the limiting value. The time at which the limit was reached is output separately
for each requested variable. This time output is written by default (and it cannot be
suppressed). You can also request an additional field output frame when the limiting value
is reached.
Setting an Upper Limit or a Lower Limit for Filtered Output
You can define a low-pass digital filter that enforces an upper or lower
bound for the variables in the output requests to which it is applied.
Setting an Upper Limit or a Lower Limit for Unfiltered Output
You can define a filter that enforces an upper or lower bound for the
variables in the output requests to which it is applied but that does not
perform any Butterworth or Chebyshev filtering of the data.
Requesting an Extra Output Frame for Filtered or Unfiltered Output
You can capture, on demand, the analysis state through field output requests when the
value of an output variable reaches a specified upper or lower bound. All of the on demand
field output is written soon (usually within two increments) after the increment in which
the bounding value is reached. Once the criterion is met, the feature is turned off
automatically to avoid repeated on demand output. If necessary, you can use the feature
multiple times with varying bounding values.
Stopping an Analysis or Concluding a Step When an Output Variable Reaches a Prescribed Limit
You can apply a filter to a field output request or a history output request
that stops the analysis or concludes a step when the value of any variable in
the output request reaches a specified upper bound or lower bound.
Stopping an Analysis or Concluding a Step of Filtered Output When a Variable Reaches a Prescribed Limit
You can define a low-pass digital filter that stops the analysis or
concludes a step if any of the variables in the output requests to which it is
applied reach a prescribed limit.
Stopping an Analysis or Concluding a Step of Unfiltered Output When a Variable Reaches a Prescribed Limit
You can define a filter that does not perform any Butterworth or Chebyshev
filtering of your output data and stops the analysis or concludes a step if any
of the variables in the output requests to which it is applied reach a
prescribed limit.
Applying Bounding Values to Invariants
By default, each component of a tensor or vector quantity is filtered
individually and the maximum, minimum, or absolute maximum value and the
limiting values are reported separately for each component. You can, however,
apply a filter directly to an invariant. In this case
Abaqus
internally monitors the invariant you specified.
Abaqus
still writes the components to the output database, but these components
correspond to the maximum, minimum, or limiting values of the invariant.
Table 1
shows which invariants are available for output variable categories.
Table 1. Invariants available for output variable categories.
Category
First invariant
Second invariant
MaxP
IntermP
MinP
All nodal vector output
Magnitude
–
—
—
—
Stress element output
Mises
Press
SP3
SP2
SP1
Logarithmic strain output
LEP3
LEP2
LEP1
Nominal strain output
NEP3
NEP2
NEP1
Thermal strain output
THE3
THE2
THE1
Applying Bounding Values to Invariants of Filtered Output
You can define a low-pass digital filter that filters the invariant.
Applying Bounding Values to Invariants of Unfiltered Output
You can define a filter that does not perform any Butterworth or Chebyshev
filtering of your output data and filters the invariant.
Output Variables Available for Filtering
Low-pass Infinite Impulse Response filters such as Butterworth and Chebyshev
filters are intended for filtering of output variables susceptible to noise,
such as accelerations and reaction forces or, to a lesser degree, stress and
strain. However, digital filtering is allowed for most element and nodal output
variables, and you can apply bounding values on unfiltered data for nearly all
element and nodal output variables.
Table 2
shows the set of output variables that cannot be digitally filtered but to
which you can apply bounding values, and
Table 3
shows the set of output variables for which neither digital filtering nor
application of bounding values are allowed.
Table 2. Output variables to which bounding values can be applied but digital
filtering cannot be applied.