Реферат: Компьютерное моделирование движения тел
Рассмотрим график полета тела представленный на рис. 1.
Как видно из графика скорость тела в любой точке траектории полета может быть определенна по формуле V=, в нашем случае вектор начальной скорости V0 определяется формулой V0 =. При этом текущее значение скорости Vт0 в соответствии с законом всемирного тяготения определяется формулой V0т = .
Исходя из этого проекция горизонтальной дальности до тела определяется формулой:
S= (V0х+ V1х+ V2х+…+ Vnx). ∆t
Так как Vx это прямолинейное равномерное движение, то V0x= V1x= V2x=…= Vnx , тогда S= V0x.n∆t = V0x.t, где t общее время полета тела. Таким образом проекция пути на ось Х будет иметь вид:
S=V0cos α . t= V0 n∆t cos α (1.1)
Рис.1
Высоту полета тела определяем в соответствии с прямолинейным равноускоренным движением по формуле [ 4 ]:
h= V0y.t+= V0sin α.t+= V0sin α.n∆t + (1.2)
Для построения такого графика не обходимо получить значение точек в плоскости X Y, которые будут отображать траекторию полета тела в каждый момент времени t.
Для составления программы используем формулы 1.1 и 1.2.
Войдем в Qbasic и наберем программу следующего вида:
REM полет тела
PRINT "t", "h", "s"
v = 50
g = 9.8
a = 30
f = a * 3.14 / 180
100 q = 1
t = t + q
s = v * t * COS(f)
h = v * t * SIN(f) - (g * t ^ 2) / 2
PRINT t, h, s
IF h < 0 THEN 200
GOTO 100
200 END
Где V-начальная скорость (м/с), g-ускорение свободного падения (м/с2 ), a-угол, f-формула пересчета угла в радианы, q-единица времени ∆t, t-текущее время, s- проекция горизонтальной дальности, h- высота. Каждой строчке в программе может быть присвоен номер или имя. Причем номера идут по возрастающей, при этом нет необходимости все строчки нумеровать. В данном случае между номером 100 и 200 заложено тело цикла в семь строк. Запуск программы осуществляется RUN\START.
Программа выдаст решение задачи из трех столбиков значений: t, h, s (табл.2).