Компьютерные технологии в физике. Часть 1. Компьютерное моделирование физических процессов. Красов В.И - 47 стр.

UptoLike

8
Алгоритм решения уравнений движения линейного осциллятора
В численных решениях используются только безразмерные переменные,
поэтому в данном пункте и других пунктах Пособия, где описываются
алгоритмы соответствующих решений, знак «штрих» у безразмерных
переменных, для простоты, опущен
Численный алгоритм решения уравнений (3.16), (3.17) выглядит
следующим образом:
1. Задаются начальные условия
(
)
00
,Vx .
2. Определяется значение правой части уравнения (3.17) в этой точ-
ке
(
)
0
xf .
3. Путем решения уравнений (3.16), (3.17) методом Эйлера с задан-
ным шагом по времени, определяются значения
(
)
11
, xV в следующий мо-
мент времени.
4. Шаги 1-3 повторяются для каждого последующего момента вре-
мени.
Ниже приведен фрагмент программы решения уравнений колебаний,
в котором реализован модифицированный алгоритм Эйлера. Точность ре-
шения определяется величиной шага по времени dt. В этом фрагменте вы-
числяются значения x и V в каждый момент времени. "f(x,t)" - условное
обозначение функции для вычисления правой части (3.17).
.............................................................................
{задаются начальные условия для колебаний}
x:=x0;
V:=V0;
t:=t0;
repeat
PaintBox1.canvas.Pixels[round(t), round(x)]:=clRed;
PaintBox2.canvas.Pixels[round(t), round(v)]:=clRed;
{команды вывода результатов на экран}
V:=V+dt*f(x,t);
x:=x+dt*V;
t:=t+dt;
until {условие завершения расчета}
.............................................................................
Условие завершения расчета означает, например, что траектория
вышла за пределы рассматриваемой области пространства, или частица за-
вершила нужное количество циклов при финитном движении. Завершить
выполнение расчетов можно и по нажатию клавиши.
PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com
              Алгоритм решения уравнений движения линейного осциллятора

              В численных решениях используются только безразмерные переменные,
              поэтому в данном пункте и других пунктах Пособия, где описываются
              алгоритмы соответствующих решений, знак «штрих» у безразмерных
              переменных, для простоты, опущен
                        Численный алгоритм решения уравнений (3.16), (3.17) выглядит
              следующим образом:
                        1. Задаются начальные условия ( x0 ,V0 ).
                        2. Определяется значение правой части уравнения (3.17) в этой точ-
              ке f ( x0 ).
                        3. Путем решения уравнений (3.16), (3.17) методом Эйлера с задан-
              ным шагом по времени, определяются значения (V1, x1 ) в следующий мо-
              мент времени.
                        4. Шаги 1-3 повторяются для каждого последующего момента вре-
              мени.
                        Ниже приведен фрагмент программы решения уравнений колебаний,
              в котором реализован модифицированный алгоритм Эйлера. Точность ре-
              шения определяется величиной шага по времени dt. В этом фрагменте вы-
              числяются значения x и V в каждый момент времени. "f(x,t)" - условное
              обозначение функции для вычисления правой части (3.17).
              .............................................................................
              {задаются начальные условия для колебаний}
              x:=x0;
              V:=V0;
              t:=t0;
              repeat
                  PaintBox1.canvas.Pixels[round(t), round(x)]:=clRed;
                  PaintBox2.canvas.Pixels[round(t), round(v)]:=clRed;
              {команды вывода результатов на экран}
                  V:=V+dt*f(x,t);
                  x:=x+dt*V;
                  t:=t+dt;
              until {условие завершения расчета}
              .............................................................................

                   Условие завершения расчета означает, например, что траектория
              вышла за пределы рассматриваемой области пространства, или частица за-
              вершила нужное количество циклов при финитном движении. Завершить
              выполнение расчетов можно и по нажатию клавиши.

                                                      8


PDF created with FinePrint pdfFactory Pro trial version http://www.fineprint.com