Contents     Functions         Previous Next     PDF Index

fe_stress

Purpose

Computation of stresses and energies for given deformations.

Syntax

Result = fe_stress('Command',MODEL,DEF)
  ...  = fe_stress('Command',node,elt,pl,il, ...)
  ...  = fe_stress( ... ,mode,mdof)

Description

You can display stresses and energies directly using fecom ColorDataEner commands and use fe_stress to analyze results numerically. MODEL can be specified by four input arguments node, elt, pl and il (those used by fe_mk, see also section 7.1 and following), a data structure with fields .Node, .Elt, .pl, .il, or a database wrapper with those fields.

The deformations DEF can be specified using two arguments: mode and associated DOF definition vector mdof or a structure array with fields .def and .DOF.

ener [m,k]ElementSelection

Element energy computation. For a given shape, the levels of strain and kinetic energy in different elements give an indication of how much influence the modification of the element properties may have on the global system response. This knowledge is a useful analysis tool to determine regions that may need to be updated in a FE model. Accepted command options are

The strain and kinetic energies of an element are defined by

  Estraine=
1
2
φTKelementφ   and     Ekinetice=
1
2
φTMelementφ

Element energies are computed for deformations in DEF and the result is returned in the data structure RESULT with fields .data and .EltId which specifies which elements were selected. A .vol field gives the volume or mass of each element to allow switching between energy and energy density.

For complex frequency responses, one integrates the response over one cycle, which corresponds to summing the energies of the real and imaginary parts and using a factor 1/4 rather than 1/2.

feplot allows the visualization of these energies using a color coding. You can use the high level commands fecom ColorDataK or ColorDataM or compute energies. These commands also support storing of energies in the model stack and a number of associated options.

 demosdt('LoadGartFe'); % load model,def 
 EnerK=fe_stress('enerk dens',model,def)
 cf=feplot(model,def);fecom ch7
 % Color by element
 feplot('ColorDataElt -ColorBarTitle "Ener Dens"',EnerK);
 % Color by group of elements
 feplot('ColorDataEnerK -ColorBarTitle "ener" -bygroup');

stress

out=fe_stres('stress CritFcn Rest',MODEL,DEF,EltSel) returns the stresses evaluated at elements of Model selected by EltSel.

The CritFcn part of the command string is used to select a criterion. Currently supported criteria are


sI, sII, sIIIprincipal stresses from max to min. sI is the default.
misesReturns the von Mises stress (note that the plane strain case is not currently handled consistently).
-comp iReturns the stress components of index i. This component index is giving in the engineering rather than tensor notation (before applying the TensorTopology transformation).

The Rest part of the command string is used to select a restitution method. Currently supported restitutions are


AtNodeaverage stress at each node (default). Note this is not currently weighted by element volume and thus quite approximate. Result is a structure with fields .DOF and .data.
AtCenterstress at center or mean stress at element stress restitution points. Result is a structure with fields .EltId and .data.
AtIntegstress at integration points (*b family of elements).
Gstatereturns a case with Case.GroupInfo{jGroup,5} containing the group gstate. This will be typically used to initialize stress states for non-linear computations. For multiple deformations, gstate the first nElt columns correspond to the first deformation.

The fecom ColorDataStress directly calls fe_stress and displays the result. For example, run the basic element test q4p testsurstress, then display various stresses using

 q4p('testsurstress')
 fecom('ColorDataStress atcenter')
 fecom('ColorDataStress mises')
 fecom('ColorDataStress sII atcenter')

To obtain strain computations, use the strain material as shown below.

 [model,def]=hexa8('testload stress');
 model.pl=m_elastic('dbval 100 strain','dbval 112 strain');
 model.il=p_solid('dbval 111 d3 -3');
 data=fe_stress('stress atcenter',model,def)

CritFcn

For stress processing, one must often distinguish the raw stress components assoicated with the element formulation and the desired output. CritFcn are callback functions that take a local variable r1 of dimensions (stress components × nodes × deformations) and to replace this variable with the desired stress quantity(ies). For example

 function out=first_comp(r1)
  out=squeeze(r1(1,:,:,:));

would be a function taking the first component of a computed stress. sdtweb fe_stress(''Principal''' provides stress evaluations classical for mechanics.

Redefining the CritFcn callback is in particular used in the StressCut functionality, see section 4.4.

See also

fe_mk, feplot, fecom


©1991-2011 by SDTools
Previous Up Next