Contents     Functions     Index     Previous Next     PDF

nor2res, nor2ss, nor2xf

Purpose

Transformations from normal mode models to other model formats.

Syntax

[res,po,psib,cpsi] = nor2res( ... ) 
               RES = nor2res( ... )
         [a,b,c,d] = nor2ss ( ... )
               SYS = nor2ss ( ... )
        [xf,IDopt] = nor2xf ( ... )
             XF(i) = nor2xf ( ... ,'struct')
               ... = nor2.. (ga,om,pb,cp, ... )
               ... = nor2.. (DEF,MODEL, ... )
               ... = nor2.. (DEF,ga,MODEL, ... )
               ... = nor2ss ( ... , ind,fc,type)
               ... = nor2xf ( ... , w,ind,fc,type)

Description

Normal mode models are second order models detailed in the theory section below. nor2res, nor2ss, and nor2xf provide a number of transformations from the normal mode form to residue, state-space, and transfer function formats.

The normal mode model is specified using either high level structure arguments DEF,MODEL (where the model is assumed to contain load and sensor case entries) or low level numeric arguments om,ga,pb,cp. Additional arguments w,ind,fc,type can or must be specified depending on the desired output. These arguments are listed below.

w,ind,fc,type

Other arguments are

DEF,MODEL

The normal mode shapes are can be given in a DEF a structure with fields .def, .DOF, .data (see section 7.8).

These mode shapes are assumed mass normalized and the first column of the .data field is assumed to give modal frequencies in Hz. They can be computed with fe_eig or imported from an external FEM code (see FEMLink).

Damping can be declared in different ways

Inputs and outputs are described by a model containing a Case (see section 4.2). Giving the model is needed when inputs correspond to distributed loads (FVol or FSurf case entries detailed under fe_load). SensDof are the only output entries currently supported (see fe_case).

Note that DofSet entries are handled as acceleration inputs. The basis described by DEF must allow a correct representation of these inputs. This can be achieved by using a basis containing static corrections for unit displacements or loads on the interface (see fe2ss CraigBampton or Free commands). A proper basis can also be generated using acceleration inputs at single nodes where a large seismic mass is added to the model. This solution is easier to implement when dealing with external FEM codes.

Here is a sample call that compares responses for two damping levels

[model,def]=demosdt('demogartfe');
model=fe_case(model, ...
             'DofLoad','Force',[4.03;55.03;2.03], ...
             'SensDof','Sensors',[4 55 30]'+.03);
model=stack_set(model,'info','Freq',linspace(5,70,500)', ...
  'info','DefaultZeta',.01);
nor2xf(def,model,'acc iiplot XF(1) -po -reset');
model=stack_set(model,'info','DefaultZeta',.05);
nor2xf(def,model,'acc iiplot XF(''HighDamping'')');
XF=iicom('curvexf')

When using distributed loads (pressure, etc.), the model elements are needed to define the load so that the model rather than a Case must be given as in the following example

model = demosdt('demo ubeam');
def=fe_eig(model,[106 20 10000 11 1e-5]);

%Pressure load
data=struct('sel','x==-.5', ... 
    'eltsel','withnode {z>1.25}','def',1,'DOF',.19);
model=fe_case(model,'Fsurf','Surface load',data)
%Sensors
model=fe_case(model,'sensdof','Sensors',[50:54]'+.03);

fe_case(model,'info')
model=stack_set(model,'info','Freq',linspace(10,240,460));

nor2xf(def,0.01,model,'iiplot XF(1) -po -reset');

om,ga,pb,cp

Standard low level arguments om (modal stiffness matrix), ga (modal viscous damping matrix), pb (modal controlability) and cp (modal observability) used to describe normal mode models are detailed in section section 5.2. A typical call using this format would be

load sdt_gart 
b = fe_c(mdof,[4.03;55.03])'; c = fe_c(mdof,[1 30 40]'+.03);
IIw=linspace(5,70,500)';
nor2xf(f0*2*pi,0.01,md0'*b,c*md0,IIw*2*pi,'rad iiplot XF(1) -po');

res

nor2res returns a complex mode model in the residue form

   [α(s)] = 
2N
j=1
{cψj}{ψjTb}
s−λj
=
2N
j=1
[Rj]
s−λj

This routine is particularly useful to recreate results in the identified residue form res for comparison with direct identification results from id_rc.

Pole residue models are always assumed to correspond to force to displacement transfer functions. Acceleration input or velocity, acceleration output specifications are thus ignored.

ss

nor2ss returns state-space models (see the theory section below).

When no roll-off frequency is specified, nor2ss introduces a correction, for displacement only, in the state-space models through the use of a non-zero d term. If a roll-off frequency fc is given, the static correction is introduced in the state-space model through the use of additional high frequency modes. Unlike the non-zero D term which it replaces, this correction also allows to correct for velocity contributions of truncated modes.

You can also specify fc as a series of poles (as many as inputs) given in the frequency/damping format (see ii_pof).

xf

nor2xf computes FRF (from u to y) associated to the normal mode model. When used with modal frequencies freq and a subset of the modes (specified by a non empty ind), nor2xf introduces static corrections for the truncated modes.

Theory

The basic normal mode form associated with load inputs [b]{u} is (see section 5.2)

  
[ [Is2 + [Γ] s + [Ω2]]NP × NP{(s)} = [φTb]NP × NA {u(s)}NA × 1 
       {y(s)} = [cφ]NS × NP {p(s)}NP × 1 

where the coordinates p are such that the mass is the identity matrix and the stiffness is the diagonal matrix of frequencies squared.

The associated state-space model has the form

  {
ṗ(t
p(t)
}= [
[0][I
−[\ Ω2 \ ]−[Γ] 
] {
p(t
ṗ(t)
} + [
φTb 
] {u(t)} 
  {y} = [c φ   0] {
p(t
ṗ(t)
} + [0] {u(t)}


When used with modal frequencies wj and a subset of the modes (specified by ind), nor2ss introduces static corrections for the truncated modes. When requesting velocity or acceleration output, static correction can only be included by using additional modes.

In cases with displacement output only, the static corrections are ranked by decreasing contribution (using a SVD of the d term). You can thus look at the input shape matrix b to see whether all corrections are needed.

nor2ss (and nor2xf by calling nor2ss) supports the creation of state-space models of transmissibilities (transfer functions from acceleration input to displacement, velocity or acceleration. For such models, one builds a transformation such that the inputs ua associated with imposed accelerations correspond to states

  {
ua 
qc 
} = [TI   TC] {p}

and solves the fixed interface eigenvalue problem

  [TCTΩ TC − ωjC2 TCT I TC ] {φjC} = {0}

leading to basis [TI TC]= [TI TCjC]] which is used to build the state space model

  {
qC
 u 
qC
}= [
[0][I
   [
−TCTΩ [TI  TC]
]
   [
−TCTΓ [TI  TC]
] {
u 
qC
qC
}+
  [
0
0
0I 
TCT bTCT  TI
]  {
uF 
 ua
}
  {y} = [c TI  cTC   0   0] {
ua 
qC
ua 
qC
} + [0] {
uF 
 ua
}

Simple adjustments lead to velocity and acceleration outputs.

When using acceleration input, care must be taken that the initial shapes of the normal mode model form an appropriate basis. This can be achieved by using a basis containing static corrections for unit displacements or loads on the interface (see fe2ss CraigBampton or Free commands) or a seismic mass technique.

See also

res2nor, id_nor, fe_c, psi2nor

demo_fe

©1991-2008 by SDTools
Previous Up Next