这个例子展示了如何在物理计算中使用单位。计算一个降落伞兵的终极速度在国际和英制单位。解空降兵的运动,考虑重力和阻力。gydF4y2Ba
想象一个伞兵从飞机上跳下来。假设只有两种力作用在伞兵身上:重力和来自降落伞的反作用力。阻力与伞兵速度的平方成正比。gydF4y2Ba
作用在伞兵上的净力可以表示为gydF4y2Ba
,gydF4y2Ba
,gydF4y2Ba
在哪里gydF4y2Ba
伞兵的质量是多少gydF4y2Ba
ggydF4y2Ba为重力加速度gydF4y2Ba
是空降兵的速度吗gydF4y2Ba
为阻力常数gydF4y2Ba
定义描述运动方程的微分方程。gydF4y2Ba
信谊gydF4y2BaggydF4y2Ba米gydF4y2Ba重金属镉gydF4y2Ba信谊gydF4y2Bav (t)gydF4y2Bam*diff(v(t),t) + m*g == c_d*v(t)^2gydF4y2Ba
情商=gydF4y2Ba
假设降落伞在gydF4y2Ba
所以这个方程gydF4y2Ba情商gydF4y2Ba
是否对所有的值有效gydF4y2Ba
.用。解析解微分方程gydF4y2BadsolvegydF4y2Ba
在初始条件下gydF4y2Ba
.解表示空降兵的速度随时间的函数。gydF4y2Ba
速度=简化(dsolve(eq, v(0) == 0))gydF4y2Ba
速度=gydF4y2Ba
求阻力常数的单位制单位gydF4y2Ba .gydF4y2Ba
国际单位制的力单位是牛顿gydF4y2Ba .用基底单位来表示,牛顿是gydF4y2Ba .因为它们是等价的,所以它们的单位转换系数是1。gydF4y2Ba
u = symunit;unitConversionFactor (u。N, u.kg * u.m /美国^ 2)gydF4y2Ba
ans =gydF4y2Ba
拖曳力gydF4y2Ba 必须有相同的单位gydF4y2Ba 就像重力gydF4y2Ba .运用量纲分析,求出单位为gydF4y2Ba .gydF4y2Ba
信谊gydF4y2Badrag_units_SIgydF4y2Ba解出drag_units_SI * (u.m / u.s.)^2 == u.NgydF4y2Ba
drag_units_SI =gydF4y2Ba
定义下列值来描述伞兵的动作。gydF4y2Ba
伞兵的质量gydF4y2Ba
重力加速度gydF4y2Ba
阻力系数gydF4y2Ba
将这些值代入速度方程并简化结果。gydF4y2Ba
vel_SI =潜艇(速度,[g、m、重金属镉],[9.81 * u.m / u。s ^ 2, 70 * u。公斤,40*drag_units_SI])
vel_SI =gydF4y2Ba
vel_SI =简化(vel_SI)gydF4y2Ba
vel_SI =gydF4y2Ba
计算速度到3位有效数字的数值近似值。gydF4y2Ba
vel_SI = vpa(vel_SI)gydF4y2Ba
vel_SI =gydF4y2Ba
当重力与阻力平衡时,伞兵接近一个恒定速度。这就是所谓的终极速度,它发生在降落伞的阻力抵消了重力(没有进一步的加速度)的时候。求极限,求终速度gydF4y2Ba .gydF4y2Ba
vel_term_SI = limit(vel_SI, t, Inf)gydF4y2Ba
vel_term_SI =gydF4y2Ba
最后,将速度函数由国际单位制转换为英制单位。gydF4y2Ba
vel_Imperial =重写(vel_SI u.ft)gydF4y2Ba
vel_Imperial =gydF4y2Ba
转换终端速度。gydF4y2Ba
vel_term_Imperial =重写(vel_term_SI u.ft)gydF4y2Ba
vel_term_Imperial =gydF4y2Ba
把速度作为时间的函数画出来,表示时间gydF4y2BatgydF4y2Ba
在几秒内替换gydF4y2BatgydF4y2Ba
通过gydF4y2BaTgydF4y2Ba
年代,gydF4y2BaTgydF4y2Ba
是一个无量纲的符号变量。gydF4y2Ba
信谊gydF4y2BaTgydF4y2Bavel_SI = subs(vel_SI, t, t *美国)gydF4y2Ba
vel_SI =gydF4y2Ba
vel_Imperial = rewrite(vel_SI, u.ft)gydF4y2Ba
vel_Imperial =gydF4y2Ba
使用命令将表达式与单位分离gydF4y2BaseparateUnitsgydF4y2Ba
.用以下方法绘制表达式gydF4y2BafplotgydF4y2Ba
.使用。将单元转换为字符串,以用作绘图标签gydF4y2Basymunit2strgydF4y2Ba
.gydF4y2Ba
[data_SI, units_SI] = separateUnits(vel_SI);[data_Imperial, units_Imperial] = separateUnits(vel_Imperial);gydF4y2Ba
当空降兵的速度接近稳态时gydF4y2Ba .通过在范围内绘制速度图来说明速度是如何接近最终速度的gydF4y2Ba .gydF4y2Ba
subplot(1,2,1) fplot(data_SI,[0 2]) title(gydF4y2Ba“国际单位制速度”gydF4y2Ba)包含(gydF4y2Ba在年代”gydF4y2Ba) ylabel ([gydF4y2Ba“速度”gydF4y2Basymunit2str(units_SI)]) subplot(1,2,2) fplot(data_Imperial,[0 2]) title(gydF4y2Ba“英制单位的速度”gydF4y2Ba)包含(gydF4y2Ba在年代”gydF4y2Ba) ylabel ([gydF4y2Ba“速度”gydF4y2Basymunit2str (units_Imperial)))gydF4y2Ba