Anonymous
×
Create a new article
Write your page title here:
We currently have 106 articles on MOR Wiki. Type your article name above or click on one of the titles below and start writing!



Revision as of 05:34, 17 June 2025 by Schuetz2 (talk | contribs)

Note: This page has not been verified by our editors.

Description: Mass-Spring-Damper System

This benchmark is a generalization of the nonlinear mass-spring-damper system presented in [1], which is concerned with modeling the a mechanical systems consisting of chained masses, linear and nonlinear springs, and dampers. The underlying mathematical model is a second order system:

Mx¨(t)+Dx˙(t)+Kx(t)+f(x(t))=Bu(t),y(t)=Cx(t).

First Order Representation

The second order system can be represented as a first order system as follows:

(100M)(p˙v˙)=(01KD)(pv)+(0fp(p))+(0Bv)y=(Cp0)(pv)

with the components:

M=m(1),K0=kl(2112),D=d(2112),Bv=(001),Cp=(001),

and the nonlinear term:

fp(p)=kn((11)p)3kn((11)p)3

and thus yielding the classic first order components:

E=(100M),A=(01KD),B=(0Bv),C=(Cp0).

The parameters for the mass m, linear spring constant kl, nonlinear spring constant kn, and damping d are chosen in [1] as m=1, kl=1, kn=2, and d=1.


Data

The following Matlab code assembles the above described E, A, B and C parameter dependent matrices and the function f for a given number of subsystems N.

function [E,A,B,C,f] = msd(N)

    U = speye(N);                     % Sparse unit matrix
    T = gallery('tridiag',N,-1,2,-1); % Sparse tridiagonal matrix
    H = gallery('tridiag',N,-1,1,0);  % Sparse transport matrix
    Z = sparse(N,N);                  % Sparse all zero matrix
    z = sparse(N,1);                  % Sparse all zero vector

    E = @(m) [U,Z;Z,m*U];             % Handle to parametric E matrix
    A = @(kl,d) [Z,U;kl*T,d*T];       % Handle to parametric A matrix
    B = sparse(2*N,1,1,2*N,1);
    C = sparse(N,1,1,2*N,1);
    f = @(x,kn) [z;-kn*( (H'*x(N+1:end)).^3 - (H*x(N+1:end)).^3)];
end


Dimensions

System structure:

E(m)x˙(t)=A(kl,d)x(t)+f(x(t);kn)+Bu(t)y(t)=Cx(t)

System dimensions:

E2N×2N, A2N×2N, B2N×1, C1×2N.

Citation

To cite this benchmark, use the following references:

  • For the benchmark itself and its data:
The MORwiki Community, Mass-Spring-Damper System. MORwiki - Model Order Reduction Wiki, 2018. http://modelreduction.org/index.php/Mass-Spring-Damper
@MISC{morwiki_msd,
  author =       {{The MORwiki Community}},
  title =        {Mass-Spring-Damper System},
  howpublished = {hosted at {MORwiki} -- Model Order Reduction Wiki},
  url =          {https://modelreduction.org/morwiki/Mass-Spring-Damper},
  year =         2018
}
  • For the background on the benchmark:
@INPROCEEDINGS{morKawS15,
  title =        {Model Reduction by Generalized Differential Balancing},
  author =       {Y. Kawano and J.M.A. Scherpen},
  booktitle =    {Mathematical Control Theory I: Nonlinear and Hybrid Control Systems},
  series =       {Lecture Notes in Control and Information Sciences},
  volume =       {461},
  pages =        {349--362},
  year =         {2015},
  doi =          {10.1007/978-3-319-20988-3}
}

References

  1. 1.0 1.1 Y. Kawano and J.M.A. Scherpen, Model Reduction by Generalized Differential Balancing, In: Mathematical Control Theory I: Nonlinear and Hybrid Control Systems, Lecture Notes in Control and Information Sciences 461: 349--362, 2015.