解决一个动力学方程
11视图(30天)
显示旧的评论
大家好,我想解决equationinMATLAB后,即获得u和u '。
m * u”(t) =符号(u ' c (t)) * * m *转基因* u“g (t)
u“g = [0, 0.002, 0.003, 0.004, 0.001, -0.01, -0.02, 0]
m = 2公斤,c = 0.1, g = 9.81
我将会很感激如果有人能帮我解决这个方程数值。
Thak你
答案(1)
大卫。马塞罗说道
2022年11月27日
我假设这个词
u“g (t)
出现在方程和数组
u“g
是一样的。也就是说,这个术语
u“g (t)
是作为一个离散时间函数。
你没有指定初始条件和时间跨度,所以我做了。
我认为50的身体是从一个高度和速度0,而且它下降10年代。
以下方法可以解决问题。
m = 2;
c = 0.1;
g = 9.81;
tspan = [0, 10];
u2g = [0, 0.002, 0.003, 0.004, 0.001, -0.01, -0.02, 0];
f_u2g = @ (x) interp1 (linspace (tspan (1) tspan(结束),长度(u2g)), u2g, x);%从离散数据连续函数插值
(t, u) =数值(@ (t, u)模型(t, u, m c、g、f_u2g), tspan, [50,0]);
情节(t, u (: 1), t, u (:, 2))
传奇(“u”,“u””)
函数dudt =模型(t, u, m c、g、f_u2g)
dudt (1, 1) = u (2);
dudt(2, 1) =符号(u (2)) * c * g-f_u2g (t);
结束