Non linear mechanical damper
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
shahzer rahman
il 4 Apr 2020
Commentato: Alireza Babaei
il 11 Ago 2023
Hi
I am trying to implement a non linear mechanica damper using MATLAB. I know there are blocks for this in simulink, but I want to code this myself for a much better understanding of the whole system. Can someone help me with this? Maybe suggest a few reference papers. Thanks a lot
1 Commento
madhan ravi
il 4 Apr 2020
Would you be able to share the picture of Simulink model or the one you are trying to replicate?
Risposta accettata
Ameer Hamza
il 4 Apr 2020
If you follow the Simulink block, you can write the equation of a simple mass-spring-damper system connected in a series like this (here is supposed m=1 for simplicity)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/281766/image.png)
similarly, you can write the equation for any other nonlinear damper model. The 2nd order ODE is equivalent to the following system of first-order ODEs
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/281767/image.png)
Now you can write ode45 to solve this system
b1 = 1;
b2 = 0.5;
b3 = 0.1;
b4 = 0.01;
b5 = 0.001;
k = 2;
odeFun = @(t,y) [y(2); -b1*y(2)-sign(y(2))-b2*y(2)^2-b3*y(2)^3-sign(y(2))*b4*y(2)^4-b5*y(2)^5-k*y(1)];
tspan = [0 5];
ic = [1; 0];
[t,y] = ode45(odeFun, tspan, ic);
plot(t,y);
1 Commento
Alireza Babaei
il 11 Ago 2023
can you also help with the case that there is a forcing term? imagine: for dydt(2) = forcingterm - ...
this forcing term needs to be a function of time. in this case we run into the issue of inconsistent dimensions. Any hints for that?
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Assembly in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!