Программа по моделированию полета тела, брошенного под углом к горизонту (артиллерийского снаряда или ядра). C# Visual Studio


Условия задачи:
Выстрел произведен с начальной скоростью V0, под углом к горизонту α.
Считать, что снаряд имеет форму шара с радиусом r, изготовлен из материала, имеющего определенную плотность ρ.
Построить траекторию полета снаряда Y(x) ,
указать максимальную высоту полета Hk , дальность падения снаряда Xk и время полета tk , построить график скорости V(t) на отрезке [0,tk].

  1. Параметры, влияющие на траекторию полета под углом к горизонту
  2. Точность результата вычислений и сложность модели
  3. Модель полета тела под углом к горизонту
  4. Интерфейс приложения - возможности по изменению параметров задачи
  5. Калькулятор траектории полета

Вы можете использовать исходный код данного приложения, как вариант… , как трамплин…! Дорабатывайте под свои требования, усовершенствуйте… возьмите только нужное, а остальное можно удалить…


Параметры, влияющие на траекторию полета под углом к горизонту


Исходные данные, которые необходимо учитывать, при расчете траектории тела, брошенного под углом к горизонту:

     Начальная скорость V0, м/с
     Начальная высота H0, м
     Угол выстрела α, ° (град)
     Масса тела m, гр
     Диаметр D, мм
     Ускорение свободного падения g, м/c²
     Плотность воздуха (среды) ρ, кг/м³
     Коэффициент лобового сопротивления С.


Точность результата вычислений и сложность модели


Сложность математической модели вопрос не праздный. Все зависит от необходимой точности результата. Можно вообще сопротивлением воздуха пренебречь (если бросаешь кирпич рукой)…, но на дальние расстояния (особенно легкие предметы значительного объема) - ошибиться можно в разы.

Если копнуть глубже (это все про сложность модели): использование школьных констант g=9,8 (ускорение свободного падения) и ρ=1,29 (плотность воздуха) тоже не катит, так как в условиях морского побережья они будут больше, чем в условиях высокогорья. А если еще учитывать широту g будет расти по мере удаления от экватора и приближения к полюсам.

Радует только то, что для конкретных условий их (константы) можно подобрать опытным путем и дальнейшие вычисления запускать уже на этих значениях констант.

Модель полета тела под углом к горизонту


При построении математической модели условимся, что ось Оx системы координат направлена горизонтально в направлении выстрела, а ось Oy - вертикально вверх. Вектор скорости снаряда V(t) за время полета будет изменяться как по величине, так и по направлению, поэтому в модели рассматриваем его проекции на координатные оси. Горизонтальную составляющую скорости в момент времени t обозначим Vx(t), а вертикальную Vy(t).

Пусть поверхность Земли плоская. Согласно законам механики, при сделанных предположениях движения тела в горизонтальном направлении является почти равномерным, а в вертикальном равнозамедленным или равноускоренным с ускорением свободного падения g.

Интерфейс приложения - возможности по изменению параметров задачи


Цель приложения - математическое моделирование свободного падения тел с учетом сопротивления воздуха на основе дифференциальных зависимостей. И, конечно, для сравнения строится траектория полета тела с этими же исходными параметрами, но без учета сопротивления атмосферы, т.е. по формулам модели Галилея.

Возможности по проведению опытов

  • Система координат имеет фиксированные значения (50м для высоты и дальности, 10м/с для скорости, 1с для времени), но на мониторах больших размеров в полноэкранном режиме предельные возможности опытов значительно возрастают.

  • При определении исходных данных, таких как плотность материала, радиус ядра, а также уровень, с которого производится бросок или выстрел допускается ввод целых чисел (а не только шаг счетчика ), обеспечивая тем самым более высокую точность. Параметр «Уровень» H0 , то есть высота расположения тела перед броском, может иметь как положительные, так и отрицательные значения (т.е. выше или ниже уровня земли).

Программа строит траекторию полета тела Y(x) брошенного под углом к горизонту, и кроме того, используя параболическую интерполяцию, с высокой точностью определяет дальность полета Xk, максимальную высоту полета Hk , время полета tk , а так же время (взлета) достижения телом максимальной высоты, и координату Х (взлета), при которой максимальная высота достигнута.

Решение поставленной задачи сведено к решению системы дифференциальных уравнений, т.е. численному решения задачи Коши для системы обыкновенных дифференциальных уравнений. Для решения задачи Коши здесь используется простой в реализации метод Рунге-Кутта 4-порядка, обеспечивающий достаточно высокую точность вычислений.

Калькулятор траектории полета


Выстрел под углом к горизонту из капонира

Калькулятор траектории полета
Рис.1        Калькулятор траектории полета

Выстрел под углом к горизонту с площадки на высоте 59 метров

Зависимость скорости тела от времени полета
Рис.2        Зависимость скорости тела от времени полета

Понятно, что пока снаряд летит вверх, скорость замедляется, а после достижения максимальной высоты, ядро начинает вновь разгоняться под действием силы тяжести... и скорость растет.

скачать ехе-файл для тестирования



Другие примеры на тему «РЕШЕНИЕ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ»

Другие примеры на языке «C#»

Другие примеры на языках «C»,«C++»





Если у Вас остались вопросы, то задать их Вы можете, нажав на эту кнопочку ...




Если на этой странице не нашлось того, что Вы так искали...

         Не расстраивайтесь, не все потеряно... Смело щелкайте...
исходный код на заказ. orenstudent.ru Автоматизация документов MS Office. orenstudent.ru исходный код на заказ. orenstudent.ru Помогите найти и устранить ошибку в исходном коде программы. orenstudent.ru Skype-консультирование по программированию
Скайп-консультации

Акция !!!
исходный код комментарии цена минимальная


Не попадайтесь на удочку мошенников-кидал...
Сайт помощи студентам по программированию и информатике

Program code