Форум: "Потрепаться";
Текущий архив: 2002.11.14;
Скачать: [xml.tar.bz2];
ВнизУравнение движения тела, брошенного под углом Найти похожие ветки
← →
greenrul (2002-10-26 11:00) [0]Нужно написать уравнение движения снаряда, зная его начальную скорость, и координаты, КУДА он должен прилететь. Никакого начального угла не дано.
Проще говоря,
Player1.x:=?(speed,x_dest,y_dest)
Player1.y:=?(speed,x_dest,y_dest)
Раньше мне нужно было вводить еще и начальный угол, и процедура выглядела так:
y:=SelectedUnit.Y+snarad_speed*sin(DegToRad(Snarad.start_angle))*(time/speed) + g*(((time*time)/(speed*speed))/2);
x:=SelectedUnit.x+snarad_speed*cos(DegToRad(Snarad.start_angle))*(time/speed);
но теперь угла-то нет... попытался выразить угол :Snarad.start_angle:=Round(RadToDeg(ArcCos((sector*30-SelectedUnit.x)*time / 50)));
Но он почему-то всегда равен 0
← →
Карлсон (2002-10-26 11:31) [1]купи учебник физики за девятый класс, а еще лучше почитай трехтомник Ландсберга.
тема "Движение тела брошенного под углом к горизонту"
← →
Valt (2002-10-26 11:39) [2]
> greenrul
Послушай Карлсона, он то знает толк в полетах:)
← →
][рюн (2002-10-26 12:59) [3]а чего вы над ним издеваетесь?
я вот тоже не знаю чем помочь - учебника нет (как и у greenrul"a небось тоже)...
подсказали-бы
← →
Dr_Mike (2002-10-26 13:36) [4]Ээх...не хотелось бы опозориться, но попробую... :-)))
(Просьба, если кто заметит ошибку в моих расчетах, обязательно скажите, буду благодарен.)
Запишем систему уравнений для равноускоренного движения в проекциях (фактически уравнения движения тела брошенного под углом к горизонту):
Xкон = Xнач + Vx*T + Gx*T^2 / 2
Yкон = Yнач + Vy*T + Gy*T^2 / 2
так как Gx = 0 и Gy = G , то:
Xкон = Xнач + Vx*T + 0
Yкон = Yнач + Vy*T + G*T^2 / 2
откуда:
Xкон = Xнач + Vx*T
Yкон = Yнач + Vy*T + G*T^2 / 2
теперь распишем проекции скорости (где A - начальный угол):
Vx = V * cosA
Vy = V * sinA
Итак:
Xкон = Xнач + T*V*cosA
Yкон = Yнач + T*V*sinA + G*T^2 / 2
T*V*cosA = Xкон - Xнач
T*V*sinA = Yкон - Yнач - G*T^2 / 2
Xкон - Xнач
cosA = -----------
T*V
Yкон - Yнач - G*T^2 / 2
sinA = -----------------------
T*V
теперь запишем tgA = sinA / cosA:
(Xкон - Xнач) * (T*V) Xкон - Xнач
tgA = ---------------------------------------- = ----------------------
(T*V) * (Yкон - Yнач - G*T^2 / 2) Yкон - Yнач - G*T^2 / 2
← →
Карлсон (2002-10-26 13:36) [5]http://www.spin.nw.ru/MECHAN/simulations/gun.htm
фактически копия предыдущей линки http://mechanics.h1.ru/Spin/imjd2.htm
и вот еще:
http://friends.pomorsu.ru/~tanya.uryanskaya/nova.html
читайте, разбирайтесь....
← →
greenrul (2002-10-26 13:46) [6]2Карлсон - читал
2Dr_Mike - я сам так пробовал, пока не понял, что время-то не дано при котором снаряд будет в конечной точке...
← →
Dr_Mike (2002-10-26 13:46) [7]м-да, опозорился :(((
http://www.spin.nw.ru/MECHAN/simulations/gun.htm - действительно все расписано как нельзя лучше !!!
← →
Pumpkin (2002-10-26 13:51) [8]Я тут на бумажке накрапал:
V - скорость; S - расстояние полета по горизонтали; A - угол (альфа); t0 - время полета до верхней точки, t - общее время полета, h - макс. высота, g - уск. своб. пад.
S и V известны, A - ищем. Выписываем известные формулы:
Vy = V*sin(A); Vx = V*cos(A); t = 2*t0;
S = Vx*t; g = Vy/t0;
отсюда имеем:
S = V*t*cos(A) = V*2*(Vy/g)*cos(A) = V*2*V*sin(A)*cos(A)/g = ((V^2)/g)*(2*sin(A)*cos(A)) = ((V^2)/g)*sin(2*A);
отсюда:
A = arcsin(S*g/(V^2))/2.
Однакож я где-то мог ошибиться.
← →
Dr_Mike (2002-10-26 14:35) [9]>greenrul © (26.10.02 13:46)
одна простоя вещь - в горизонтальной плоскости ускорения-то нет ! :))
Xкон = Xнач + T*V*cosA
T = (Xкон - Xнач) / (V*cosA)
то есть Т и cosA связаны между собой - при соблюдении некоторых условий это значит, что каждого угла есть свое время, за которое прилетит снаряд
так что стоит или задавать время, за которое должен прилететь снаряд, или угол, под которым его запускать
!!! нужно только проверять, чтобы было решение - иначе снаряд не долетит :))))
← →
PaRL (2002-10-26 20:18) [10]Vx = V*cosA
Vy = VsinA - gt
V = sqrt(Vx*Vx + Vy*Vy)
x = x0 + VtcosA
y = y0 + VtsinA - gt*t/2
Основные. Если угла не дано сам думай.
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2002.11.14;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.012 c