7.8  FEM result data structure

7.8  FEM result data structure#

Deformations resulting from finite element computations (fe_eig, fe_load, …) are described by def structures with fields


.defdeformations (NDOF by NDef matrix)
.DOFDOF definition vector, note that the .tdof field is used for responses at sensors and the .dof field for input/output pairs
.data(optional) (NDef by Ninfo vector or matrix) characterizing the content of each deformation (frequency, time step, ...)
  
.Xlab(optional) {'DOF',{'Freq';'Index'}} cell array describing the columns of data.
.defL(optional) displacement field corresponding to the left eigenvectors obtained from fe_ceig.
.fun(optional) function description [Model Analysis Field FieldType Format NDV]. This is based on the UNV 55 format detailed below. Typically field with [0 fe_curve('TypeAnalysis')]. This field is needed for proper automated display setup.
.lab(optional) cell array of strings characterizing the content of each deformation (columns of .def). For large arrays, the use of a .LabFcn is preferable.
.ImWrite(optional) can be used to control automated multiple figure generation, see iicom ImWrite.
.LabFcncallback for label generation see fecom LabFcn
.Legenddata for legend generation, see fecom Legend
.label(optional) string describing the content
.DofLaboptional cell array of strings specifying a label for each DOF. This is used for display in iiplot.
  
.scalefield used by feplot to store scaling information.

The .fun field is a numeric row with values (a typical value for static responses is def.fun=[0 1 0])

  • Model (0 Unknown, 1 Structural, 2 Heat Transfer, 3 Fluid Flow)
  • Analysis see list with fe_curve('TypeAnalysis')
  • Field see list with 0: Unknown (or general SDT), 1: Scalar, 2: Tx Ty Tz, 3: Tx Ty Tz Rx Ry Rz, 4: Sxx Sxy Syy Sxz Syz Szz, 5: Sxx Syx Szx Sxy Syy Szy Sxz Syz Szz
  • FieldType see list with fe_curve('typefield')
  • Format 0 default, 2 Real, 5 Complex
  • NDV Number Of Data Values Per Node (0 for variable number)

SDT provides a number of utilities to manipulate deformation structures. In particular you should use

  • def=fe_def('subdef',def,ind) extracts some deformations (columns of def.def). You can select based on the data field, for example with ind=def.data(:,1)>100.
  • def=fe_def('AppendDef',def,def1) combines two sets of deformations
  • def=fe_def('SubDof',def,DOF) extracts some DOF (rows of def.def). To select based on DOF indices, use def=fe_def('SubDofInd',def,ind).
  • def=feutilb('placeindof',DOF,def) is similar but DOF may be larger than def.DOF.
  • fe_def('SubDofInd-Cell',def,ind_dof,ind_def) return clean display of deformation as a cell array.