Nonlinear mechanical system simulation based on modal coordinates and modal forces

In a project at Beihang University different methods to model, simulate and identify nonlinear mechanical systems are studied. One promising method to simulate forced response in nonlinear mechanical systems is based on modal coordinates and modal forces. The method allows many input forces and many nonlinearities to be handled simultaneously. The method is briefly described here together with a simple example.


Introduction
There are many ways to calculate the forced response to a linear mechanical system.Some of those methods, such as calculating the response as a convolution between the input force and the impulse response, are computation intensive.The author therefore introduced a way to use digital filters to calculate the response in a paper 2003, [1].The method was well suited to include nonlinearities attached to the linear system.That unique method was described for instance in a paper 2006, [2].The calculations were fast, but a bias error was introduced.The bias error was identified for the digital filter method and related ones as Runge-Kutta and State Space.The results were described in several papers, such as [3].
The digital filter functions for nonlinear systems were collected in a nonlinear MATLAB toolbox, which have been used in many companies and universities.It was presented at an IMAC conference 2007, [4].
In the toolbox, the functions could handle systems with many nonlinearities, but only one input force could be treated.There was a need to be able to simulate many simultaneous input forces, so a method, building on modal coordinates and modal forces, has been developed.

Linear system
For a linear mechanical system, the transfer function  between a force input in point  and a displacement response in point  may be written as: where  are the residues and  are the poles.* stands for complex conjugate.For each , we can get  by: where  is a reference point.Care has to be taken when selecting , so that all modes are excited.
VIBROENGINEERING PROCEDIA.OCTOBER 2018, VOLUME 20 The sign of the square roots has to be carefully selected as well. and  corresponds to scaled mode shapes.With many input forces, we can now calculate the modal forces, one for each mode, by multiplying with the corresponding  : where  is a matrix with the applied forces in columns.With  as the numbers of time samples,  the number of forces, and  as the number of modes: = ,  ,   = ,  ,   = ,  .
We now apply each modal force to the corresponding function: We do that with a digital filter, using ramp invariant method and MATLAB function filter.The filter coefficients are determined by: where  is the time step, inverse of sampling frequency.After filtering, the modes may be combined to displacement and/or velocity at selected outputs by multiplying with corresponding factors, similar to Eq. ( 3).As we are only using half of Eq. ( 1), to get the result we have to take 2 times the real part.Fig. 1. shows the principle.
The linear system is defined by mass matrix , damping matrix  and stiffness matrix .The applied forces are given as time histories with sampling frequency  in columns of .The degree of freedom numbers, DOFS, for reference, applied forces and wanted responses are given.mods is a vector telling which modes to use, numbered in frequency order.
A version where the linear system is defined by residues and poles is also made: ,  =  , , , , , ,  .

Linear system with nonlinearities
The method above may be extended to a linear system with localized nonlinear elements added at certain DOFs.The nonlinear forces should be zero memory, which means they may be expressed as functions of displacement and/or velocity at DOFs where they are attached.
The filtering in the process is taken one time step at a time.For mode m, the value at sample  may be written as: where NLFM is the modal nonlinear force, calculated the same way as the modal applied force.
A big part of this,  , may be calculated from what is already known: which should be fulfilled for all modes.An estimate of the modes gives estimates of displacement and velocities at DOFs where there are nonlinearities.The nonlinear functions are explicitly given in the code, so the modal force NLFM can be calculated.This gives a new estimate of the modes.The procedure goes on until convergence.A typical number of needed iterations is five to six.
Here are some examples of nonlinear functions in the MATLAB code.
A cubic spring at one DOF, ND(1), to ground and a gap with end stiffness between another DOF, ND(2), and ground: if abs(ND( 2

Example
A four degree of freedom system, fourdof, is used, Fig. 2. Two nonlinear elements are added, a cubic spring between DOF 4 and ground, and a "square with sign damper" from DOF 3 to ground.Two random forces are applied, one to DOF 4 and one

Conclusions
A method for simulating forced response at a linear system with added localized non-linearities has been introduced.The method is based on modal coordinates and modal forces, giving the possibility to handle many applied input forces and many nonlinearities at the same time.