На этом этапе формируются математические соотношения, необходимые для определения характеристик системы, базируясь на учитываемых явлениях, используемых законах и принятых допущениях. Математическая модель должна быть “корректной”, т.е. приводить хотя бы к одному правильному решению. В частности, для задачи всплытия лодки следует написать уравнения для траектории и времени всплытия согласно принятой физической схеме. Учитывая, что ускорение и сила S = F – P, на основе второго закона Ньютона можно записать:
(1.6)
Отсюда:
(1.7)
А для горизонтальной составляющей имеем:
(1.8)
Сила сопротивления отсутствует, поэтому в правых частях уравнений (1.7, 1.8) нет дополнительных слагаемых. В этой задаче можно принять, что начальными условиями являются (при t = 0): X0 = 0, Y0 = 0 и u0 = 0. Интегрирование необходимо проводить до значения Yf = H. Соответствующее значение t = tf является временем всплытия.
Разработка алгоритма.
На этом этапе математическая модель представляется в форме, позволяющей получить решение задачи. В абсолютном большинстве случаев для решения используются численные методы, т.к. современные математические модели являются сложными и аналитическую форму их решения невозможно получить. Но в нашем простом примере легко выводится именно аналитическое решение. Интегрируя дважды уравнение (1.7) получим:
(1.9)
Учитывая начальные условия Y0 = 0 и u0 = 0, имеем С1 = С2 = 0, тогда:
(1.10)
Аналогично для X(t) получим:
(1.11)
Учитывая, что:
(1.12)
получим:
(1.13)
Траектория – это зависимость Y = f(X), получаемая исключением времени из формул (1.12, 1.13). Тогда:
(1.14)
При расчете траектории необходимо задать шаг, который определим по формуле: .
Создание программы расчета.
В современном математическом моделировании с весьма значительным объемом расчетов применяется ЭВМ, которая “не понимает” математических символов, а “понимает” только программы на языках программирования. Поэтому алгоритм, сформированный на предыдущем этапе, необходимо перевести на какой-нибудь язык программирования и только после этого возможно выполнение расчетов на ЭВМ. Алгоритм, переведенный на язык программирования, называется программой, в которой кроме вычислительных операций необходимо задать форму представления результатов.
Примем, что в нашем примере будет использован язык программирования ФОРТРАН, а результаты ()предстанут в числовой форме. Тогда программа расчета всплытия лодки можно записать в следующем виде:
PROGRAM MAIN
Dimension y(101), x(101)
C H – глубина начала всплытия (м)
С T – текущее время (с)
С TF – время всплытия
С RL - средняя плотность подлодки (кг/м3)
С RВ - плотность воды (кг/м3)
С W0 - горизонтальная скорость подлодки (м/с)
С XF - расстояние всплытия по горизонтали (м)
C DX - шаг траектории – ΔX (м)
G = 9.82
read(*,*) H, RL, RВ, W0
write(*,*)H, RL, RВ, W0
TF = SQRT(2*RL*H/(G*(RВ-RL)))
XF = W0*TF
B = G*(RВ-RL)/(2*RL*W0*W0)
DX = 0.01*XF
DO I=1,101
X(I)= (I-1)*DX
Y(I) = B*X(I)*X(I)
END DO
write(*,*) XF, TF, DX
write(*,*) (X(I), Y(I), I=1,101)
STOP
END PROGRAM MAIN