задание ргр. Компьютерное моделирование движения тел в среде с учетом трения
Скачать 274 Kb.
|
Тема: Компьютерное моделирование движения тел в среде с учетом трения Цель работы: Разработать программное приложение для проведения компьютерного моделирования процесса движения тела в среде с учетом трения среды Для достижения поставленной цели необходимо выполнить следующие задачи: Выписать математическую модель, определить состав набора входных параметров и их конкретные числовые значения. Программно реализовать численный метод Рунге-Кутта для вычисления решения системы дифференциальных уравнений модели. Спроектировать пользовательский интерфейс программы моделирования, обращая особое внимание на формы представления результатов. Произвести отладку и полное тестирование программы. Выполнить конкретное задание из своего варианта работы. Качественно проанализировать результаты моделирования, построить графики зависимостей от времени траектории перемещения моделируемого тела и его скорости. Реализовать анимацию процесса. Создать текстовый отчет по результатам выполнения задания, включающий: постановку задачи и описание модели; результаты тестирования программы; результаты, полученные в ходе выполнения задания (в различных формах); качественный анализ результатов. Структура РГР Введение (Актуальность, цель, задачи, краткая аннотация работы) Основная часть (по параграфам в соответствии с задачами) Заключение (выводы по работе) Список использованных источников (около 10 источников) Общие рекомендации по выполнению работы Целесообразно до начала компьютерной реализации модели провести обезразмеривание переменных, входящих в уравнения, выявить безразмерные комбинации параметров модели и дальнейшие действия производить в безразмерных величинах. Необходим контроль точности результатов и устойчивости применяемого численного метода. Для этого достаточно ограничиться эмпирическими приемами (например, сопоставлением решений, полученных с несколькими разными шагами по времени). Целесообразно применять для моделирования стандартные методы интегрирования систем дифференциальных уравнений, изученные в рамках ЧМ. Простейшие методы (метод Эйлера) часто бывают неустойчивы и их применение ведет к лишнему расходу времени. Результаты моделирования следует выводить на экран компьютера в следующих видах: таблицы зависимостей перемещения и скорости от времени, графики этих зависимостей, траектории. Анимация динамических иллюстрации движения тел (скажем, изображение движений по траекториям в некотором условном масштабе времени через равные промежутки). Уместны звуковые сигналы (одни — в критические моменты для моделируемого движения, другие — через некоторый фиксированный отрезок пройденного пути и т.д.). При выводе результатов в табличном виде следует учитывать, что соответствующий шаг по времени не имеет практически ничего общего с шагом интегрирования и определяется удобством и достаточной полнотой для восприятия результатов на экране. Экран, сплошь забитый числами, не поддается восприятию. Выводимые числа следует разумным образом форматировать, чтобы незначащие цифры практически отсутствовали. При выводе результатов в графической форме графики должны быть построены так, как это принято в математической литературе (с указанием того, какие величины отложены по осям, масштабами и т.д.). Поскольку таблицы, графики и траектории на одном экране обычно не помещаются, удобно сделать меню, в котором пользователь выбирает желаемый в настоящий момент вид представления результатов. Варианты Вариант 1. Парашютист прыгает с некоторой высоты и летит, не открывая парашюта; на какой высоте (или через какое время) ему следует открыть парашют, чтобы иметь к моменту приземления безопасную скорость (не большую 10 м/с)? Вариант 2. Изучить, как связана высота прыжка с площадью поперечного сечения парашюта, чтобы скорость приземления была безопасной (см. вариант 1)? Вариант 3. Промоделировать падения тела с заданными характеристиками (масса, форма) в различных вязких средах. Изучить влияние вязкости среды на характер движения. Скорость движения должна быть столь невелика, чтобы квадратичной составляющей силы сопротивления можно было пренебрегать. Вариант 4. Промоделировать падения тела с заданными характеристиками (масса, форма) в различных плотных средах. Изучить влияние плотности среды на характер движения. Скорость движения должна быть достаточно велика, чтобы линейной составляющей силы сопротивления можно было пренебрегать (на большей части пути). Вариант 5. Промоделировать движение исследовательского зонда, «выстреленного» вертикально вверх с уровня земли. В верхней точке траектории над зондом раскрывается парашют и он плавно спускается в точку старта. Вариант 6. Промоделировать движение исследовательского зонда, «выстреленного» вертикально вверх с зависшего над землей вертолета. В верхней точке траектории над зондом раскрывается парашют и он плавно спускается на землю. Вариант 7. Глубинная бомба, установленная на взрыв через заданное время, сбрасывается вертикально вниз со стоящего неподвижно противолодочного корабля. Исследовать связь между глубиной, на которой произойдет взрыв, и формой корпуса (сферической, полусферической, каплевидной и т.д.). Вариант 8. Глубинная бомба, установленная на взрыв на заданной глубине, сбрасывается вертикально вниз со стоящего неподвижно противолодочного корабля. Исследовать связь между временем достижения заданной глубины и формой корпуса (сферической, полусферической, каплевидной и т.д.). Вариант 9. Провести моделирование взлета ракеты при значениях параметров m0 = 2 . 107 кг, mкон = 2 . 105 кг, = 2 . 105 кг/c, Fтяги = 4. 108 н. Ответить на вопрос: достигнет ли ракета при этих значениях параметров первой космической скорости 7,8 км/с? Вариант 10. См. вариант 9. Провести исследование соотношения входных параметров m0 и Fтяги, при которых ракета достигнет первой космической скорости (и в соответствующий момент исчерпает горючее). Остальные входные параметры фиксировать произвольно. Построить соответствующую фазовую диаграмму в переменных (m0, Fтяги). Вариант 11. Разработать и исследовать усовершенствованную модель взлета ракеты, приняв во внимание, что реальные космические ракеты обычно двух-трехступенчатые, и двигатели разных ступеней имеют разную силу тяги. Вариант 12. Промоделировать движение исследовательского зонда, снабженного разгонным двигателем небольшой мощности, «выстреленного» вертикально вверх с уровня земли. В верхней точке траектории двигатель выключается, над зондом раскрывается парашют и он плавно спускается в точку старта. Вариант 13. Промоделировать движение исследовательского зонда, снабженного разгонным двигателем небольшой мощности, «выстреленного» вертикально вверх с зависшего над землей вертолета. В верхней точке траектории над зондом раскрывается парашют и он плавно спускается на землю. Вариант 14. Глубинная бомба-торпеда, снабженная разгонным двигателем, установленная на взрыв через заданное время, сбрасывается вертикально вниз со стоящего неподвижно противолодочного корабля. Исследовать связь между глубиной, на которой произойдет взрыв, и формой корпуса (сферической, полусферической, каплевидной и т.д.). Вариант 15. Глубинная бомба-торпеда, снабженная разгонным двигателем, установленная на взрыв на заданной глубине, сбрасывается вертикально вниз со стоящего неподвижно противолодочного корабля. Исследовать связь между временем достижения заданной глубины и формой корпуса (сферической, полусферической, каплевидной и т.д.). Вариант 16. Торпеда, снабженная разгонным двигателем, нацеливается с подводной лодки на стоящий вертикально над ней надводный корабль. Исследовать связь между временем поражения цели формой корпуса (сферической, полусферической, каплевидной и т.д.). Вариант 17. Построить траектории и найти временные зависимости горизонтальной и вертикальной составляющих скорости и перемещения для тела массой 1 кг, брошенного под углом 45о к горизонту с начальной скоростью 10 м/с 1) в воздухе; 2) в воде. Сравнить результаты с теми, которые получились бы без учета сопротивления среды (последние можно получить либо численно из той же модели, либо аналитически). Вариант 18. Найти вид зависимости горизонтальной длины полета тела и максимальной высоты траектории от одного из коэффициентов сопротивления среды, фиксировав все остальные параметры. Представить эту зависимость графически и подобрать подходящую аналитическую формулу, определив ее параметры методом наименьших квадратов. Вариант 19. Разработать модель подводной охоты. На расстоянии r под углом подводный охотник видит неподвижную акулу. На сколько метров выше ее надо целиться, чтобы гарпун попал в цель? Вариант 20. Поставить и решить задачу о подводной охоте при дополнительном условии: акула движется. Теоретические сведения для выполнения задания Тема: МОДЕЛИРОВАНИЕ ФИЗИЧЕСКИХ ПРОЦЕССОВ. Движение тел в среде с учетом трения Второй закон Ньютона. В рассматриваемых ниже физических задачах фундаментальную роль играет второй закон Ньютона. Он гласит, что ускорение, с которым движется тело, прямо пропорционально действующей на него силе (если их несколько, то равнодействующей, т.е. векторной сумме сил) и обратно пропорционально его массе: Если сила или масса не являются величинами постоянными, необходимо записать этот закон в более общей математической форме. Допустим, что сила или масса (или и то, и другое) непостоянны и заданным образом зависят от времени, скорости движения или перемещения: (t,v,s) и (t,v,s). Достаточно наличия хотя бы одной из указанных зависимостей, чтобы ускорение было величиной переменной. В этом случае приведенная выше формула определяет его значение в тот момент времени, которому соответствуют сила и масса. Реальный интерес представляет временная зависимость перемещения (f) и скорости (t). Поскольку ускорение есть приращение скорости, а скорость - приращение перемещения, то (1) а сам второй закон Ньютона приобретает вид (2) или, что то же самое, (3) Еще раз подчеркнем, что совсем необязательно чтобы сила и/или масса зависели каждая от трех указанных переменных. Чаще всего в конкретных задачах присутствует в явном виде одна из указанных зависимостей. Произведем дискретизацию по времени простейшим возможным способом. Если в некоторый момент времени t0величина sимеет значение s0, а величина - значение , то в некоторый последующий момент времени будем иметь (4) Здесь индекс «0» означает величины в начальный момент времени. При вычислениях значений и в последующие моменты времени можно поступать аналогично (4). Так, если известны значения и в момент tiто (5) Вопрос о выборе конкретного значения Δtвесьма непрост и определяется следующими соображениями. При компьютерном моделировании можно получить решение задачи о движении тела на некотором конечном отрезке времени [t0, T]. Чем больше величина Δt, тем: а) меньше вычислений требуется для того, чтобы пройти весь заданный временной интервал; б) меньшая точность в передаче значений непрерывных функций и их дискретными представлениями - наборами чисел и Вопрос о точности результатов является в описываемом моделировании одним из центральных. Он распадается на два: как оценить эту точность и можно ли, уменьшая Δt , достигать все большей точности? Остановимся вначале на первом. Формулы (4), (5) представляют собой применение метода Эйлера для приближенного решения системы дифференциальных уравнений (3). Наиболее приемлемой при использовании этого и родственного ему методов (например, Рунге - Кутта) является эмпирическая оценка точности. Для этого отрезок [t0, T] проходится с некоторым шагом Δt, а затем с существенно меньшим (например, в два раза) шагом. Сравнение результатов в точках t1t2, ..., T позволяет составить представление о реальной точности результатов. Если она недостаточна, то следует повторить процесс с еще меньшим шагом. Однако уменьшение шага Δtне всегда ведет к улучшению результатов моделирования. Одна из причин заключается в том, что чем меньше шаг, тем больше арифметических действий, ведущих к увеличению глобальной погрешности округления. Другая причина глубже и связана со способом дискретизации - перехода от описания реально непрерывного процесса движения тел к описанию по простейшим формулам (4), (5). Обе причины могут привести к неустойчивости решения, т.е. к получению результатов, не имеющих реально ничего общего с истинными. Обычно неустойчивость становится заметной при повторениях процесса с уменьшением шага Δt. Более эффективными при моделировании процессов, описываемых дифференциальными уравнениями, являются методы Рунге - Кутта более высокого порядка аппроксимации, чем метод Эйлера, неявные методы, методы типа «предиктор-корректор», отличающиеся повышенной устойчивостью, и другие, описанные в специальной литературе. Сила сопротивления. В ряде представленных ниже задач необходимо знать, от чего зависит сила сопротивления при движении в среде. При реальных физических движениях тел в газовой или жидкостной среде трение сильно влияет на характер движения. Соответствующие закономерности носят эмпирический характер и отнюдь не имеют столь строгой и четкой формулировки, как второй закон Ньютона. При относительно малых скоростях величина силы сопротивления пропорциональна скорости и имеет место соотношение (6) где определяется свойствами среды и формой тела. Например, для шарика - так называемая формула Стокса, где - динамическая вязкость среды, r - радиус шарика. Так, для воздуха при t= 20°С и давлении 1 атм μ = 0,0182 , для воды μ. = 1,002 , для глицерина μ=1480 . При более высоких скоростях сила сопротивления становится пропорциональной квадрату скорости: (7) Разумеется, линейная по скорости часть силы сопротивления формально также сохранится, но если , то вкладом можно пренебречь. О величине k2 известно следующее: она пропорциональна площади сечения тела S, поперечного по отношению к потоку, плотности среды и зависит от формы тела. Обычно представляют (8) где с - безразмерный коэффициент лобового сопротивления (рис. 1). При достижении достаточно большой скорости, когда образующиеся за обтекаемым телом вихри газа или жидкости начинают интенсивно отрываться от тела, значение с в несколько раз уменьшается; для шара оно становится приблизительно равным 0,1. Рис. 1. Значения коэффициента лобового сопротивления для некоторых тел, поперечное сечение которых имеет указанную на рисунке форму Свободное падение тела. Математическая модель свободного падения тела - уравнение второго закона Ньютона с учетом двух сил, действующих на тело - силы тяжести и силы сопротивления среды. Движение является одномерным; проецируя силу, скорость и перемещение на ось, направленную вертикально вниз, из (3) получаем (9) В конкретных задачах можно одной из составляющих силы сопротивления пренебречь (если она заведомо много меньше другой). Частичное тестирование моделирующей программы можно провести для движения без трения. Аналитическое решение в этом случае общеизвестно. Входные параметры модели: начальная высота тела; начальная скорость тела; величины, определяющие коэффициенты сопротивления среды и Взлет ракеты. Построим простейшую модель вертикального взлета ракеты, приняв гипотезу, что ее масса уменьшается во время взлета по линейному закону: (10) Double M(double t) { double rez; rez = M0-a*t; if (rez return rez; } Силу тяги двигателя будем считать постоянной на всем участке взлета. Уравнение движения примет вид в проекции на вертикальную ось Однако при самом простом моделировании данного процесса необходимо принять во внимание, что плотность воздуха ρ, входящая в коэффициент k2, убывает по мере подъема ракеты по закону , где h - высота, – плотность воздуха вблизи поверхности Земли. β=1,29*10-4 м--1 - иначе модель будет совершенно неадекватна реальности. Таким образом, модель будет описываться системой двух дифференциальных уравнений для функций v(t) и h(t): (11) Входные параметры модели: m0 - начальная масса ракеты, заправленной топливом; mкон - остаточная масса после полного выгорания топлива; α - расход топлива; величины, определяющие k2, - коэффициент сопротивления воздуха (линейной составляющей силы сопротивления можно заведомо пренебречь); Fтяги - сила тяги двигателя (принять постоянной). Движение тела, брошенного под углом к горизонту. Дифференциальные уравнения модели получаются из второго закона Ньютона проецированием скорости и перемещения на горизонтальную и вертикальную оси координат: (12) Входные параметры модели: m - масса тела; ν - начальная скорость; α - угол начального наклона вектора скорости к горизонту; величины, определяющие коэффициенты сопротивления среды k1и k2. |