Identifying parameters for an Equation of motion

1 visualizzazione (ultimi 30 giorni)
Hi, I have a data set that represent the free vibration of a structure. I want to quantify the dynamic parameters of the structure (mass, stiffness, damping coefficient, friction force) using optimization scheme by solving an equation of motion, which defined as follows:
What I am try to do is how to define the objective function that I want to pass it to the optimizing function (ga:genetic algorithm). I wort so far a function that will give me the difference( that I want to minimize it) between two curves (data set and the solution of the equation for specified conditions and values of the parameters that I want to quantifying them (m, k, c*, F). What I am stuck on is how to define these parameters as variables that I am seeking for in the optimizing function (ga).
  • my main script:*
% define the initial conditions and parameters
initial=[30/1000, 0]; % [displacement Velocity]
m=2459;k=107178;zeta=.05;
F=300;
dt=0.02;
tf=10;
% define the data set
d2=........;
% call the function that will solve the equation and return the difference between the two curves. I used Runge-Kutta method
f=RK(k,m,zeta,F,initial,dt, tf,d2,h)
_ * * My function**_
function C1= RK(k,m,zeta,F,initial,dt, tf,d2,h)
for i=1:length(t)-1
% here the Rk implementation script ;
end
d1=........; % the computed displacement response for specific parameters
h=length(d1);
1 %%%%%simple difference
diff=abs((d2(1:h))-(d1)');
C1 =sum(diff);
So for one special initial condition, I want to vary the parameters values until I get the global optimum set of parameters that gives me the minimum difference between the two curves. Any ideas? Would anyone help me,please!
Thanks

Risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by