SDT-base         Contents     Functions         Previous Next     PDF Index



Expansion of experimental modeshapes (state estimation from shape know at sensors).


dExp = fe_exp('method',ID,Sens,FEM);
dExp = fe_exp('method',ID,SE);
sdtweb tuto_ExpGUI


Expansion seeks to estimate responses from measured data. It can be seen as state-estimation using a FEM model in full or reduced form. Theoretical aspects are discussed in the tutorial 3.3. An example is treated in detail in the gartco demonstration and sdtweb('tuto_ExpGUI') opens the tutorial of the graphical interface. This section gives a list of available methods with a short discussion of associated trade-offs.

SE reduced superelements for expansion

All the expansion methods can be applied on reduced models. The preferred reduction considers modes and static responses at sensors (Mode+Sens command below), but you can use any superelement including those imported from external software (see SeImport).

% Further illustrations in gartco demo
[model,Sens,ID,FEM]=demosdt('demopairmac');  %sdtweb demosdt('demopairmac')
 RA=struct('wd',sdtdef('TempDir'), ...
   'Reset',0, ...           % 1 to use reset
   'oProp',{{}}, ...        % Default ofact choice
   'EigOpt',[5 20 1e3], ... % Eigenvalue options
   'SensName','sensors', ...   % Sensor set for expansion
   'OutName','Gart_exp');   % Root of file name
% Generate or reload reduced model with modes & static

RA=struct('Solve','lagrange','pcond',1e-4); % Solve using lagrange multipliers
[dex1,dfix] = fe_exp('Static',ID,SE,RA); % Static 
dex3 = fe_exp('dynamic',ID,SE,RA); % Dynamic on reduced model
RO=struct('type','mdrewe','gamma',1e6, ...
  'cf',cf,'view',{{'fe_exp','viewEnerKDens',cf,'out1'}}); % feplot for display
[dex4,err] = fe_exp('mdre',ID,SE,RO); % MDRE-WE


Minimum dynamic residual expansion MDRE is the SDTools preferred strategy. However, computational times are generally only acceptable for the reduced basis form of the algorithm as illustrated above. Note that the result may incorrect due to poor conditioning with a large number of sensors.

MDRE-WE (Minimum dynamic residual expansion with measurement error) is adjusted by the relative weighting γj between model and test error in (3.9)


Fields of the option structure are

The first output argument is the expanded modeshape, the second the displacement residual which shown high energy concentration in locations where the model is wrong or the test very far from the model (which can occur when the test is wrong/noisy).


Static expansion is a subspace method where the subspace is associated with the static response to enforced motion or load at sensors. While you can use fe_reduc Static to build the subspace (or import a reduced subspace from an external code), a direct implementation for general definition of sensors is provided in fe_exp.

The main limitation with static expansion is the existence of a frequency limit (first frequency found when all sensors are fixed). These modes can be returned as a second argument to the Static command as illustrated below. If the first frequency is close to your test bandwidth, you should consider using dynamic expansion or possibly add sensors, see [55].

[model,Sens,ID,FEM]=demosdt('demopairmac');  %sdtweb demosdt('demopairmac')
[TR,dfix]=fe_exp('static',model,Sens);  % Build static subpace
dex1 = fe_exp('Subspace',ID,Sens,TR); 
cf=feplot(model,dex1); % Expanded mode
cf=feplot(model,dfix); % Fixed interface mode

In the present case, the fixed sensor mode at 44 Hz indicates that above that frequency, additional sensors should be added in the y direction for proper static expansion.

When many sensors and model reduction are used as in the example below, Lagrange resolution should be preferred to elimination, using options 'Solve','lagrange' and possibly adjusting the conditioning scalar 'pcond',1e-4.


Dynamic expansion is supported at the frequency of each deformation to be expanded using either full (costly) or reduced computations.

% Further illustrations in gartco demo
[model,Sens,ID,FEM]=demosdt('demopairmac');  %sdtweb demosdt('demopairmac')
dex1 = fe_exp('Dynamic',ID,Sens,model); % Dynamic full model

The preferred strategy is to build a reduced model SE containing normal and attachment modes. When many sensors are used Lagrange resolution should be preferred to elimination as shown in the example above.

Subspace, Modal, Serep

Subspace expansion solves a problem of the form


Modal or SEREP expansion is a subspace based expansion using the subspace spanned by low frequency target modes (stored in TR in the def format). With a sensor configuration defined (sens defined using fe_sens), a typical call would be

[model,Sens,ID,FEM]=demosdt('demopairmac');  %sdtweb demosdt('demopairmac')
TR=fe_def('subdef',FEM,1:20); % Subspace containing 20 modes
dex1 = fe_exp('Subspace',ID,Sens,TR);
cf.def(1)=fe_def('subdef',FEM,7:20); % Rigid not in FEM
cf.def(2)=dex1; fecom('show2def');

This method is very easy to implement. Target modes can be imported from an external code. A major limitation is the fact that results tend to be sensitive to target mode selection.

Another traditional approach to build subspaces is to generate the solutions by mathematical interpolation. fe_sens WireExp provides such a strategy. For a basic example of needed data structures, one considers the following case of a structure with 3 nodes. Node 2 is placed at a quarter of the distance between nodes 1 and 3 whose motion is observed. A linear interpolation for translations in the x direction is built using

 TR=struct('DOF',[1.01;2.01;3.01], ... % DOFs where subspace is defined
   'def',[1 0;3/4 1/4;0 1]); % Each .def column associated with a vector
 % sdtweb sens#sensstruct % manual definition of a sens structure
 sens=struct('cta',[1 0 0;0 0 1],'DOF',[1.01;2.01;3.01])
 % Sample test shapes
 dexp = fe_exp('Subspace',ID,sens,TR) % Expansion

For expansion of this form, T (stored in TR.def) must contain at most as many vectors as there are sensors. In other cases, a solution is still returned but its physical significance is dubious.

Subspace-Orth can be used to impose that an orthogonal linear combination of the modes is used for the expansion. This is motivated for cases where both test and analysis modeshapes are mass normalized and will provide mass orthonormal expanded modeshapes [56]. In practice it is rare that test results are accurately mass normalized and the approach is only implemented for completeness.

See also

fe_sens, fe_reduc, section 3.3, gartco demo.

©1991-2024 by SDTools
Previous Up Next