Borrar filtros
Borrar filtros

Find Eigenvalues of ODE45 Solution MATLAB

6 visualizaciones (últimos 30 días)
Jonathan Frutschy
Jonathan Frutschy el 9 de Abr. de 2024
Comentada: Jonathan Frutschy el 3 de Mayo de 2024
I have the following non-linear ODE:
I have the following ODE45 solution:
fun = @(t,X)odefun(X,K,C,M,F(t),resSize);
[t_ode,X_answer] = ode45(fun,tspan,X_0);
The input matrices are stiffness K(X), damping C, mass M, and force F. resSize is the total number of masses in the system.
I would like to find the system's eigenvalues using either the Jacobian matrix, transfer function, or any other viable method.
I have tried using:
[vector,lambda,condition_number] = polyeig(K(X_answer),C,M);
This is tricky since my K matrix is a function handle of X. In other words, K=@(X). X represents a displacement vector of each mass in the system (x_1(t),x_2(t),...x_resSize(t)), where resSize is the total number of masses. My X_answer matrix is a double with dimensions of t_ode by resSize, where each row is the displacement vector of each mass in double form. Is there some way to substitute X_answer into my function handle for K so I can use polyeig()? If not, how would I go about finding my system's transfer function or Jacobian matrix so that I can find it's eigenvalues?
  7 comentarios
Sam Chak
Sam Chak el 2 de Mayo de 2024
The input force consists of the sum of a slower wave and a faster wave.
I'm curious about the scientific basis or any journal paper that describes the method of determining the system's resonance by computing the state-dependent eigenvalues at each time step. Is this related to the design of a Tuned Mass Damper for a high-rise building?
Jonathan Frutschy
Jonathan Frutschy el 3 de Mayo de 2024
@Sam Chak This is intended for a classified research project. While I can't divulge the details, a tuned mass damper on a high rise building is a great application!

Iniciar sesión para comentar.

Respuesta aceptada

Torsten
Torsten el 9 de Abr. de 2024
Editada: Torsten el 9 de Abr. de 2024
Your system reads
z1'= z2
z2' = ( F-(c1+c2)*z2-( ((k1*gamma1+k2*gamma2)*z1^2+k1+k2)*z1+(-k2*gamma2*z1^2-k2)*z3 ) )/m1
z3' = z4
z4' = (-(c2+c3)*z4-( (-k2*gamma2*z3^2-k2)*z1+((k2*gamma2+k3*gamma3)*z3^2+k2+k3)*z3))/m2
Linearize the right hand side by computing the 4x4 Jacobian (with respect to z1 - z4) and compute its eigenvalues in the course of the simulation.

Más respuestas (0)

Categorías

Más información sobre Ordinary Differential Equations en Help Center y File Exchange.

Productos


Versión

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by