В этом примере показано, как работать с единицами измерения в физических расчетах. Рассчитайте конечную скорость падающего парашютиста как в SI, так и в британских единицах измерения. Решите движение десантника с учетом гравитационной силы и силы лобового сопротивления.
Представьте, что парашютист выпрыгнул из самолета. Предположим, что на парашютиста действуют только две силы: гравитационная сила и сила противодействующего сопротивления от парашюта. Сила сопротивления пропорциональна скорости в квадрате парашютиста.

Результирующая сила, действующая на десантника, может быть выражена как
сила,
2 − m g,
где
- масса десантника
g - гравитационное ускорение;
) - скорость парашютиста
- константа перетаскивания
Определите дифференциальное уравнение, описывающее уравнение движения.
syms g m c_d syms v(t) eq = m*diff(v(t),t) + m*g == c_d*v(t)^2
eq =
Предположим, что парашют открывается сразу при 0, так что уравнениеeq действителен для всех значений . Аналитическое решение дифференциального уравнения с помощью dsolve с начальным условием = 0. Решение представляет скорость парашютиста как функцию времени.
velocity = simplify(dsolve(eq, v(0) == 0))
velocity =
Найдите единицу измерения SI константы перетаскивания .
Единица силы СИ - Ньютон ). По базовым единицам Ньютон равен ). Так как они эквивалентны, они имеют единичный коэффициент преобразования 1.
u = symunit; unitConversionFactor(u.N, u.kg*u.m/u.s^2)
ans =
Сила сопротивления 2 должна иметь ту же единицу измерения по N), что и тяжести
syms drag_units_SI
drag_units_SI = simplify(solve(drag_units_SI * (u.m / u.s)^2 == u.N))drag_units_SI =
Опишите движение парашютиста, определив следующие значения.
Масса десантника
Гравитационное ускорение
Коэффициент лобового сопротивления
Подставьте эти значения в уравнение скорости и упростите результат.
vel_SI = subs(velocity,[g,m,c_d],[9.81*u.m/u.s^2, 70*u.kg, 40*drag_units_SI])
vel_SI =
vel_SI = simplify(vel_SI)
vel_SI =
Вычислите численное приближение скорости до 3 значащих цифр.
digits(3) vel_SI = vpa(vel_SI)
vel_SI =
Парашютист приближается к постоянной скорости, когда гравитационная сила уравновешивается силой сопротивления. Это называется конечной скоростью и происходит, когда сила сопротивления с парашюта отменяет гравитационную силу (дальнейшего ускорения нет). Найдите конечную скорость, приняв предел .
vel_term_SI = limit(vel_SI, t, Inf)
vel_term_SI =
Наконец, преобразуйте функцию скорости из единиц СИ в британские единицы.
vel_Imperial = rewrite(vel_SI,u.ft)
vel_Imperial =
Преобразуйте конечную скорость.
vel_term_Imperial = rewrite(vel_term_SI,u.ft)
vel_term_Imperial =
Чтобы построить график скорости как функции времени, выражайте время t в секундах и заменить t около T s, где T является безразмерной символьной переменной.
syms T
vel_SI = subs(vel_SI, t, T*u.s)vel_SI =
vel_Imperial = rewrite(vel_SI, u.ft)
vel_Imperial =
Отделите выражение от единиц измерения с помощью separateUnits. Постройте график выражения с помощью fplot. Преобразование единиц в строки для использования в качестве меток печати с помощью symunit2str.
[data_SI, units_SI] = separateUnits(vel_SI); [data_Imperial, units_Imperial] = separateUnits(vel_Imperial);
Скорость парашютиста приближается к установившемуся состоянию, когда 1. Показать, как скорость приближается к конечной скорости путем построения графика скорости в ≤2.
subplot(1,2,1) fplot(data_SI,[0 2]) title('Velocity in SI Units') xlabel('Time in s') ylabel(['Velocity in ' symunit2str(units_SI)]) subplot(1,2,2) fplot(data_Imperial,[0 2]) title('Velocity in Imperial Units') xlabel('Time in s') ylabel(['Velocity in ' symunit2str(units_Imperial)])
