Info
此问题已关闭。 请重新打开它进行编辑或回答。
How can I solve for coupled differential equations?
1 次查看(过去 30 天)
显示 更早的评论
How can I solve for the 's in the system of differential equations?
I have:
m1 = 12; m2 = 24; K1 = 6000; K2 = 3450; B1 = 40; B2 = 28; F = 5;
My equations are:
0 个评论
回答(2 个)
Sulaymon Eshkabilov
2019-5-31
编辑:Sulaymon Eshkabilov
2019-5-31
if FREQ = 0 ... 1000 Hz. Then you will have 1001 solutions with a freq step of 1 Hz.
e.g.
f = 0:1000;
F = 5* 5 * (1i * 2 * pi * f);
for ii =1:numel(F)
ICs = [0; 0; 0; 0]; % Initial Conditions
ODE=@(t,x)([x(2); (1/m1)*(F(ii)-B1*x(2)+B1*x(4)+K1*x(3)); x(4);...
(1/m2)*(-(B1+B2)*x(4)+B1*x(2)-(K1+K2)*x(3)+K1*x(1))]);
[t, x]=ode45(ODE, ts, ICs, []);
plot(t, x(:,1), 'b', t, x(:,2), 'r', t, x(:,3), 'g', t, x(:,4), 'k'), hold on
end
Good luck
0 个评论
Sulaymon Eshkabilov
2019-5-16
Hi Brandon,
An easy and fast way of solving this coupled system is to use ODEx (ode23, ode45, ode113, etc) solvers. Here is one of the quick solution scripts:
m1 = 12; m2 = 24; K1 = 6000; K2 = 3450; B1 = 40; B2 = 28; F = 5;
ODE=@(t,x)([x(2); (1/m1)*(F-B1*x(2)+B1*x(4)+K1*x(3)); x(4);...
(1/m2)*(-(B1+B2)*x(4)+B1*x(2)-(K1+K2)*x(3)+K1*x(1))]);
ts = [0, 1]; % Time space
ICs = [0; 0; 0; 0]; % Initial Conditions
[t, x]=ode45(ODE, ts, ICs, []);
plot(t, x(:,1), 'b', t, x(:,2), 'r', t, x(:,3), 'g', t, x(:,4), 'k')
5 个评论
Sulaymon Eshkabilov
2019-5-31
You said frequency 0 .. 1000 Hz that is for your external excitation force F? Let's say F = 10sin(f*t), where f is your frequency. Is that what you mean or what? ... Math is needed.
此问题已关闭。
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!