Моделирование физических процессов
Математическое
моделирование физических
процессов. Нестационарные
процессы. Уравнения
гиперболического типа.
Введение
Физика - наука, в которой математическое моделирование является важным методом исследования. Сегодня кроме теоретической и экспериментальной физики можно выделить третий раздел - вычислительную физику. Одним из наиболее перспективных направлений использования информационных технологий в физическом образовании является компьютерное моделирование физических процессов и явлений.
Рост числа компьютеров в школах дает возможность каждому учителю использовать на своих уроках информационные технологии. Это с одной стороны, активизирует внимание учащихся и усиливает их интерес к уроку, а с другой – облегчает работу учащихся и учителя.
Компьютерные модели легко вписываются в традиционный урок, позволяя учителю продемонстрировать на экране компьютера многие физические эффекты, а также позволяют организовать новые нетрадиционные виды учебной деятельности.
При
использовании компьютерных моделей
физических явлений можно достигнуть
более полного усвоения курса
физики и формирование целостной
физической картины мира. Компьютер
помогает сделать это и в
отсутствие интереса к предмету у ученика, когда он считает, что физика в дальнейшем ему не будет нужна;
отсутствие способностей к изучению точных наук;
нехватка лабораторного оборудования в школе для демонстрации эксперимента.
Для
эффективного вовлечения учащихся в
учебную деятельность с использованием
компьютерных моделей необходимы индивидуальные
раздаточные материалы с
1.
Ознакомительное задание. (Назначение
модели, управление экспериментом,
задания и вопросы по
2.
Компьютерные эксперименты. (Провести
простые эксперименты по
3. Экспериментальное задание. (Спланировать и провести ряд компьютерных экспериментов).
4. Тестовые задания. (Выбрать правильный ответ, используя модель)
5.
Исследовательское задание. (Провести
эксперимент, доказывающий
6.
Творческое задание. (Придумать задачу,
решить её, поставить эксперимент
для проверки полученных
Значительное
число компьютерных моделей, охватывающих
почти весь школьный курс физики, содержится
в учебных электронных
Обобщая, можно сформулировать принципы применения компьютерных моделей на уроке:
1.
Модель явления необходимо
2.
Компьютерная модель должна
3. В результате работы с моделью ученики должны выявить как качественные, так и количественные зависимости между величинами, характеризующими явление.
4.
При работе с моделью
Существуют
большие возможности
функциональные возможности программы Excel заведомо перекрывают все потребности по автоматизации обработки данных эксперимента, построению и исследованию моделей;
универсальная программа Excel обладает стандартным интерфейсом;
изучение Excel предусматривается программами общего образования по информатике, следовательно, возможно эффективное использование Excel в условиях осуществления межпредметных связей с информатикой;
программа отличается доступностью в изучении и простотой в управлении;
результаты деятельности на рабочем листе Excel (тексты, таблицы, графики, формулы) «открыты» пользователю.
Cреди
всех известных программных
Электронные таблицы эффективно могут использоваться при проведении:
Демонстрационного
Лабораторных работ;
Физического практикума;
Решения задач по различным темам курса физики;
Контроля знаний.
В
своей работе учителя информатики
при изучении темы «Табличные вычисления
на компьютере», «Математическое моделирование
и решение задач с помощью
электронных таблиц» могут
- Математическое моделирование физических процессов
При расчете физических процессов составляется математическая модель - система уравнений, описывающая зависимости между физическими величинами при некоторых упрощающих допущениях. Например, при движении точки вблизи поверхности Земли полагается ускорение свободного падения постоянным, не зависящим от высоты расположения точки над поверхностью. Для тел, движущихся с небольшой скоростью или в разряженной атмосфере, пренебрегают сопротивлением воздуха. Само точка часто заменяют материальной точкой, т. е. размерами точки пренебрегают. Физические процессы описываются, как правило системой дифференциальных уравнений, для решения которой применяют различные численные методы (модели). Широко используется метод конечных разностей, в котором бесконечно малые приращения переменных заменяют малыми (конечными) приращениями.
Например, изменение параметра времени представляют в виде: dt=t 2 -t 1 , а изменение функции "Х": dX(t) = X(t)-X(t-dt) = X(t 2 )-X(t 1 ) = X 2 -X 1 .
Рассмотрим
задачу определения траектории точки,
движущегося в некоторой
Координаты точки X(t), Y(t) в некоторый момент времени "t" можно определить, зная координаты точки X(t - dt), Y(t - dt) в предыдущий момент времени "t - dt" и изменение (приращение) координат dX, dY:
X(t) = X(t-dt) + dX(t),
Y(t) = Y(t-dt) + dY(t).
Если временной интервал выбрать достаточно малым, то можно полагать, что скорость точки на этом интервале не изменяется и приращения координат определяются по формулам:
dX(t) = Vx(t)dt,
dY(t) = Vy(t)dt.
Здесь Vx(t), Vy(t) - проекции скорости на оси координат.
Составляющие скорости Vx(t) и Vy(t) можно вычислить по формулам:
Vx(t) = Vx(t-dt) + Ax(t) * dt,
Vy(t) = Vy(t-dt) + Ay(t) * dt.
Здесь Ax(t), Ay(t) - проекции ускорения на оси координат.
Ускорение
определяется силами, действующими на
точка: ускорение равно
Приведем алгоритм расчета траектории движения точки:
1.
Определяем силы, действующие на
точка, и находим проекции
Ax:= Fx(Vx, Vy, X, Y, t); Ay:= Fy(Vx, Vy, X, Y, t);
Где Vx, Vy, Ax, Ay - проекции скорости и ускорения.
2.
Задаем начальное положение
X[1]:= X0; Y[1]:= Y0; Vx[1]:= V * cos( fi ); Vy[1]:= V * sin( fi );
Ax[1]:= Fx(Vx[1], Vy[1], X[1], Y[1], t[1]);
Ay[1]:= Fy(Vx[1], Vy[1], X[1], Y[1], t[1]);
Где V - начальная скорость точки, fi - угол наклона вектора скорости к оси Х.
3.
Задаем временной шаг dt и разбиваем
весь временной интервал на N участков.
При равномерной разбивке
dt:= (t[N]-t[1])/(N-1); Здесь (t[N] - t[1]) - время движения точки.
Выбор величины dt определяется необходимой точностью расчета, возможностями вычислительной техники, и может уточняться при решении задачи.
4. Вычисляем массивы скорости, ускорения и координат точки:
For i:= 2 to N do begin
Vx[i]:= Vx[i-1] + Ax[i-1] * dt;
Vy[i]:= Vy[i-1] + Ay[i-1] * dt;
X[i]:= X[i-1] + 0.5 * (Vx[i-1] + Vx[i]) * dt;
Y[i]:= Y[i-1] + 0.5 * (Vy[i-1] + Vy[i]) * dt;
Ax[i]:= Fx(Vx[i], Vy[i], X[i], Y[i], t[i]);
Ay[i]:= Fy(Vx[i], Vy[i], X[i], Y[i], t[i]);
(уточняем скорость точки в расчетной точке)
VX[i]:= VX[i-1] + 0.5 * (Ax[i-1] + Ax[i]) * dt;
VY[i]:= VY[i-1] + 0.5 * (Ay[i-1] + Ay[i]) * dt;
end;
Для уменьшения погрешностей расчетной схемы, скорость и ускорения на участке интерполируются средними значениями.
5.
Строим траекторию движения
Здесь удобно использовать процедуры из библиотеки построения графиков GR_F. Следует определить расчетную область и область рисования траектории на экране. Траектория на экране рисуется процедурой: PutPixel_G(X[i], Y[i], N);
Для тестирования работы алгоритма рассмотрим задачу расчета траектории точки, движущегося из точки с координатами X, Y с начальной скоростью Vx, Vy под действием сил, вызывающих ускорение точки Ax, Ay. Следуя пунктам 1. . 5 приведенного выше алгоритма необходимо рассчитать траекторию движения точки и сравнить с траекторией точки, описанной аналитической зависимостью X(t), Y(t).
Практическое задание N 2
Рассчитать разностным моделированием и по аналитической зависимости траектории точки. Параметр a = 10, b = 5, 0<= t <=4 * pi, N=500.
Построить траектории точки.
Рассмотрим
задачу расчета траектории снаряда,
движущегося с начальной
FUNCTION Fx(Vx, kc : real): real; begin Fx:= - kc * Vx end;
FUNCTION Fy(Vy, kc : real): real; begin Fy:= - kc * Vy - g end;
Где
kc - коэффициент сопротивления
g = 9. 81, м/с - ускорение свободного падения у поверхности Земли.
Поскольку время подлета снаряда к цели неизвестно, то параметр "dt" выбирается приближенно, например, исходя из максимального времени полета снаряда над горизонтальной поверхностью без учета сопротивления воздуха: tмах= 2 * V * sin(fi)/g. Для N = 500, dt = t/500. При решении конкретных задач процесс расчета прекращается при достижении снарядом цели, либо при ограничениях по статическим координатам, например:
i:= 1;
REPEAT i:=i+1;
{операторы расчета массивов скорости, ускорения и координат точки }
Until (cc = GetPixel_G(X[i], Y[i])) or ( Y[i] < 0 ) or ( i = N );
Здесь cc - цвет пикселов цели, Y[i] < 0 - ограничение по горизонтальной поверхности, i = N - ограничение по размеру массива. В случае преждевременного завершения полета снаряда необходимо увеличить dt или параметр N.
Практическое задание N 3
1.
Рассчитать разностным
X = V 0 * t * cos(fi); Y = V 0 * t * sin(fi) - g * t 2 /2;
2.
Рассчитать разностным
Аналитическая зависимость имеет вид:
X=V 0 * cos(fi) * (1-e (-kc * t) )/kc; Y=(V 0 * sin(fi)+g/kc) * (1-e (-kc * t) )/kc-g * t/kc;
3.
Рассчитать разностным
4.
Составить программу поражения
неподвижной цели при kc 1 = kc 2 .
Изменяя в цикле угол fi на небольшую
величину, определить в программе
угол при котором будет
Рассмотрим
задачу расчета траектории космического
тела , в поле тяготения планеты
без учета сил сопротивления.
В начальный момент времени тело
движется на высоте "Н" со скоростью
"V 0 ", направленной по касательной
к окружности радиуса R 0 . Поскольку
движение спутника вокруг планеты достаточно
продолжительно, то не целесообразно
запоминать в оперативной памяти
все параметры (координаты, скорости
и ускорения) в каждый момент времени.
Обычно эти параметры, записываются
в файл на диск при вычислениях
через некоторые моменты
Xmin= Ymin= - Kv * R 0 , Xmax= Ymax= Kv * R 0 ,
Здесь R 0 = (Rz+H), Rz=6. 37 * 10 6 , м. - радиус Земли.
Kv=1. 5 при V 0 <= W 1 ; Kv=10 при W 1 < V 0 < W 2 ; Kv=20 при V >= V 2 .
W 1 = Rz * O ( g/R 0 ) - первая космическая скорость,
W 2 = O 2 * W 1 - вторая космическая скорость.
Параметр "dt" можно определить приближенно по формуле: dt=T/N,
где T= 6. 28 * Rz/W 1 - время оборота спутника вокруг Земли, N=300.
Расстояние от спутника до центра планеты определяется через координаты:
function R(x, y: double): double; begin R:= sqrt(x * x + y * y) end;
Проекции ускорений определим в виде функции:
function FA(x,r,kz: double):double; begin FA:= -kz * x/(r * r * r) end;
Здесь kz = 4. E+14 для Земли (в системе СИ).
Пусть в начальный момент времени известны координаты спутника:
x 1 = R 0 ; y 1 = 0; r 1 = R(x 1 , y 1 );
скорость: Vx 1 = 0; Vy 1 = V 0 ;
и ускорение: Ax 1 = FA(X 1 , r 1 , kz); Ay 1 = FA(Y 1 , r 1 , kz);
Отметим, что скорость в начальный момент времени направлена по касательной к окружности радиуса r 1 .
Для записи алгоритма расчета траектории необходимо знание параметров в двух соседних точках, например, в точке "1" - для предшествующего момента времени и в точке "2" - для расчетного момента времени. Расчет производим в цикле с одновременным выводом траектории движения спутника на экран до тех пор пока выполняется ограничение по радиусу траектории или не нажата любая клавиша.
While ( r1< Xmax ) or ( r1> Rz ) or ( not keyPressed ) do begin
Vx2:= Vx1 + Ax1 * dt; Vy2:= Vy1 + Ay1 * dt;
X2:= X1 + 0.5 * (Vx1 + Vx2) * dt;
Y2:= Y1 + 0.5 * (Vy1 + Vy2) * dt; r2:= R(x2, y2);
Ax2:=FA(X2, r2, kz);
Ay2:=FA(Y2, r2, kz);
Vx2:= Vx1 + 0.5 * (Ax1 + Ax2) * dt; { уточняем скорость }
Vy2:= Vy1 + 0.5 * (Ay1 + Ay2) * dt;
{
Переопределяем значения
x1:= x2; y1:= y2; r1:= r2;
Vx1:= Vx2; Vy1:= Vy2; Ax1:= Ax2; Ay1:= Ay2
PutPixel_G(x1,y1,c); (Строим траекторию движения точки, c - цвет точки)
end;
Практическое задание N 4
1.
Рассчитать разностным
r = P/(1 + e * cos(fi));
где e = P/R 0 - 1; P = (V 0 * R 0 /Rz) 2 /g ; 0 <= fi = 2 * Pi.
В начальный момент времени известны координаты спутника: x 1 = R 0 ; y 1 = 0;
и скорость: Vx 1 = 0; Vy 1 = V 0 ; Рассмотреть случаи:
1_1. Начальная скорость V 0 <= W 1 , высота H = 300000, м .
1_2. Начальная скорость W 1 <= V 0 < W 2 , высота H = 400000, м .
1_2. Начальная скорость V 0 >= W 2 , высота H = 500000, м .
Примечание: Построить траектории полета спутника. Через равные промежутки времени выводить на экран время полета спутника, скорость и высоту.
2.
Рассчитать разностным
3.
Рассчитать разностным
Рассмотрим задачу расчета траектории точки переменной массы , движущегося под действием реактивной тяги. Движение точки в этом случае описывается уравнением Мещерского:
A = (U/M) * (dM/dt) + F/M
Где A - ускорение точки, M - масса точки.
U
- скорость реактивной струи
F - результирующая внешних сил, действующих на точку,
Учитывая, что F = kz * M/r 2 - сила притяжения направлена к центру Земли, а P = U * (dM/dt) - реактивная сила двигателя (тяга) направлена по касательной к траектории движения, определяем проекции ускорения на оси координат:
Ax = P * Vx/(M * V) - kz * x/(r 3 ); Ay = P * Vy/(M * V) - kz * y/(r 3 );
Где V = O (Vx 2 + Vy 2 ) - скорость точки,
r = O ( x 2 + y 2 ) - расстояние до центра Земли,
Vx , Vy - проекции скорости точки на оси координат, x, y - координаты точки.
Полагая расход топлива z = dM/dt постоянным, массу точки можно определить по формуле: M = M 0 - z * t; при t < Tk ,
где M 0 - начальная масса точки, Tk - время работы двигателя.
Практическое задание N 5
1. Построить десять траекторий полета баллистической ракеты, рассчитанных разностным моделированием. Начальная скорость V 0 =1,м/с, тяга двигателя P=2. 5Е6,н, стартовая масса M 0 = 1. 5Е5, кг, расход топлива z= 700, кг/с, время работы двигателя Tk = 200, с.
2.
Построить траектории полета
двухступенчатой
3.
Построить траекторию полета
спутника Земли при включении
двигателя, рассчитанную
Через каждые 10 секунд выводить на экран время полета спутника и скорость.
Рассмотрим
задачу расчета траектории точки, прикрепленной
к упругой нити , и движущейся
с начальной скоростью "V 1 "
под углом "fi" к оси "x" из
точки с координатами (x 1 , y 1 ), без
учета сил сопротивления
Пусть точка имеет массу "M", длина нити "L". Полагаем, что нить невесома и абсолютно упруга. Коэффициент упругости "Kn".
Оси координат проведем через точку закрепления нити вверх и влево. Расчетную область ограничим: X_min = Y_min = - Lm, X_max = Y_max = Lm,
где Lm = abs(V 1 * O (M/Kn)) + O (x12 + y12) + L + 2 * M * g/Kn.
Период свободных колебаний груза,
подвешенного на упругой нити:
T = 6, 28 * O (M/Kn). Примем dt = T/300.
Проекции ускорения определяются как дискретная функция расстояния " r " от начала координат до точки закрепления нити: если r <= L, то ускорение от сил упругости равно нулю, в остальных случаях:
Ax = -x * Ky * dr/(r * M);
Ay = -y * Ky * dr/(r * M) - 9.81; где dr = (r-L) > 0.
Проекцию ускорения на ось “Х” от сил упругости, запишем в виде функции:
FUNCTION FA(x, r, L, Kn, M: double): double;
begin if (r-L)>0 then FA:= -x * Kn * (r-L)/(r * M) else FA:= 0 end;
Аналогичная
функция составляется для проекции
ускорения на ось “У”. Методика
расчета соответствует
Практическое задание N 6
1.
Построить траекторию движения
мяча, подвешенного на упругой
нити в вязкой среде,

- Моделирование финансового состояния и его роль в управлении предприятием
- Моделирование Химико-технологических систем
- Моделирование химической кинетики
- Моделирование экологических систем
- Моделирование эколого-экономических систем в моделях Н.Н. Моисеева
- Моделирование экономики и менеджмента
- Моделирование экономических и производственных процессов
- Моделирование управленческих решений
- Моделирование управленческих решений
- Моделирование управленческих решений
- Моделирование управленческих решений
- Моделирование управленческих решений (3)
- Моделирование управленческой деятельности человека
- Моделирование факторных систем