解决一个动力学方程

11视图(30天)
山姆
山姆 2022年11月26日
大家好,我想解决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月26日
如果重力加速度g, g (t)在本产品m·u”一词·g (t) ?
质量乘以加速度u”乘以一个函数g (t) ?

登录置评。

答案(1)

大卫。马塞罗说道
大卫。马塞罗说道 2022年11月27日
@sam ——你没有提供足够的信息给我们,试图给出一个完整的答案,但我做了一些猜测,想出了一个解决方案。
我假设这个词 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);
结束

类别

找到更多的在创建和连接矩阵帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!