Редактирование: Совершенствование алгоритмов численного моделирования в методе динамики частиц

Перейти к: навигация, поиск

Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия Ваш текст
Строка 27: Строка 27:
 
<math> k_1=\Delta t f(x_n,t_n ) </math>
 
<math> k_1=\Delta t f(x_n,t_n ) </math>
  
<math> k_2=\Delta t f(x_n+k_1/2,t_n+\Delta t/2) </math>
+
<math> k_2=\Delta t f(x_n+k_1/2,t_n+Δt/2) </math>
  
<math> k_3=\Delta t f(x_n+k_2/2,t_n+\Delta t/2) </math>
+
<math> k_3=\Delta t f(x_n+k_2/2,t_n+Δt/2) </math>
  
<math> k_4=\Delta t f(x_n+k_3,t_n+\Delta t) </math>
+
<math> k_4=\Delta t f(x_n+k_3,t_n+Δt) </math>
  
 
<math> x_{n+1}=x_n+1/6 (k_1+2k_2+2k_3+k_4 )  \ \ (2) </math>
 
<math> x_{n+1}=x_n+1/6 (k_1+2k_2+2k_3+k_4 )  \ \ (2) </math>
Строка 39: Строка 39:
 
Ниже приводится модификация метода Рунге-Кутты 4 порядка, где с помощью одного хитрого приёма удаётся избежать многократного вычисления функцию <math> f(x,t) </math> на одном временном шаге и в то же время сохранить высокий порядок по времени.
 
Ниже приводится модификация метода Рунге-Кутты 4 порядка, где с помощью одного хитрого приёма удаётся избежать многократного вычисления функцию <math> f(x,t) </math> на одном временном шаге и в то же время сохранить высокий порядок по времени.
  
Идея заключается в разложении функций <math> f(x_n+k_i/2,t_n+\Delta t/2) </math> в ряд Тейлора в окрестности точки <math> (x_n,t_n) </math>.  
+
Идея заключается в разложении функций <math> f(x_n+k_i/2,t_n+Δt/2) </math> в ряд Тейлора в окрестности точки <math> (x_n,t_n) </math>.  
  
<math> f(x_n+k_i/2,t_n+\Delta t/2)= \frac {\partial f} {\partial x} (x_n,t_n )∙k_i/2+  \frac {\partial f} {\partial t} (x_n,t_n )  \Delta t/2 + ...  \ \ (3) </math>
+
<math> f(x_n+k_i/2,t_n+Δt/2)= \frac {\partial f} {\partial x} (x_n,t_n )∙k_i/2+  \frac {\partial f} {\partial t} (x_n,t_n )  Δt/2 + ...  \ \ (3) </math>
  
Здесь присутствуют малоприятные производные, однако, как потом окажется, с ними можно будет легко разобраться. Сколько членов в разложении нужно оставить, чтобы в схеме сохранился четвёртый порядок? – До <math> (\Delta t)^4 </math> и <math> (k_i )^4 </math> или меньше?
+
Здесь присутствуют малоприятные производные, однако, как потом окажется, с ними можно будет легко разобраться. Сколько членов в разложении нужно оставить, чтобы в схеме сохранился четвёртый порядок? – До <math> (Δt)^4 </math> и <math> (k_i )^4 </math> или меньше?
  
Для слагаемых с локальными производными по времени ответ очевиден – необходимо удерживать всё вплоть до <math> (\Delta t)^4 </math>, ибо в противном случае мы потеряем наш 4-й порядок по времени для схемы в целом. Однако для <math> k_i </math> на самом деле достаточно только первой производной.  
+
Для слагаемых с локальными производными по времени ответ очевиден – необходимо удерживать всё вплоть до <math> (Δt)^4 </math>, ибо в противном случае мы потеряем наш 4-й порядок по времени для схемы в целом. Однако для <math> k_i </math> на самом деле достаточно только первой производной.  
  
 
В случае, когда правая часть (1) не зависит явно от времени, (3) предельно упрощается.
 
В случае, когда правая часть (1) не зависит явно от времени, (3) предельно упрощается.
  
<math> f(x_n+k_i/2,t_n+\Delta t/2)=∂f/∂x (x_n,t_n )∙k_i/2 \ \ (4) </math>
+
<math> f(x_n+k_i/2,t_n+Δt/2)=∂f/∂x (x_n,t_n )∙k_i/2 \ \ (4) </math>
  
 
Данная ситуация имеет место при молекулярно-динамическом моделировании, поскольку потенциал взаимодействия, как правило, является функцией только координат и скоростей частиц.
 
Данная ситуация имеет место при молекулярно-динамическом моделировании, поскольку потенциал взаимодействия, как правило, является функцией только координат и скоростей частиц.
Строка 57: Строка 57:
 
<math> (x,t)=(v,\frac{F(r)}{m}) </math>
 
<math> (x,t)=(v,\frac{F(r)}{m}) </math>
  
<math> f(x_n+k_i/2,t_n+\Delta t/2) = (v,\frac{F(r+k_i^r/2)}{m}) = ( v+\frac {k_1^v}{2},\frac {F(r+\frac {k_1^r}{2})}{m} )= </math>
+
<math> f(x_n+k_i/2,t_n+Δt/2) = (v,\frac{F(r+k_i^r/2)}{m}) = ( v+\frac {k_1^v}{2},\frac {F(r+\frac {k_1^r}{2})}{m} )= </math>
  
 
<math> =( v+\frac {k_1^v}{2},\frac {F_n + \frac {dF}{dr} (r)  \frac{k_1^r}{2}}{m} )  \ \ (5) </math>
 
<math> =( v+\frac {k_1^v}{2},\frac {F_n + \frac {dF}{dr} (r)  \frac{k_1^r}{2}}{m} )  \ \ (5) </math>
Вам запрещено изменять защиту статьи. Edit Создать редактором

Обратите внимание, что все добавления и изменения текста статьи рассматриваются как выпущенные на условиях лицензии Public Domain (см. Department of Theoretical and Applied Mechanics:Авторские права). Если вы не хотите, чтобы ваши тексты свободно распространялись и редактировались любым желающим, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого.
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ МАТЕРИАЛЫ, ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Отменить | Справка по редактированию  (в новом окне)