КСЕ модели решения уравнения теплопроводности — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
м
м (rollbackEdits.php mass rollback)
 
(не показано 5 промежуточных версий 2 участников)
Строка 1: Строка 1:
 
Необходимо численно решить уравнение:
 
Необходимо численно решить уравнение:
  
<tex> \frac{\delta T}{\delta t} + u \frac{\delta T}{\delta x} - \varkappa \frac{\delta T}{\delta x^2} = 0</tex>
+
<tex> \frac{\delta T}{\delta t} + u \frac{\delta T}{\delta x} - \varkappa \frac{\delta^2 T}{\delta x^2} = 0</tex>
  
 
Для этого делаем такие замены (метод явный, "против потока")
 
Для этого делаем такие замены (метод явный, "против потока")
Строка 14: Строка 14:
  
  
В методах "по потоку" мы смотрим на предыдущие значения справа, поэтому одна из замен такая:
+
В методах "по потоку" в первой производной по <tex> x </tex> мы смотрим на предыдущие значения справа, поэтому одна из замен такая:
  
 
<tex> \frac{\delta T}{\delta x} \quad \to \quad \frac{T_{i+1}^n - T_i^n}{\Delta x}</tex>
 
<tex> \frac{\delta T}{\delta x} \quad \to \quad \frac{T_{i+1}^n - T_i^n}{\Delta x}</tex>
Строка 22: Строка 22:
 
Ещё есть метод "чехарда" (вероятно он называется методом Дефорта-Франкла), он задаётся таким уравнением:
 
Ещё есть метод "чехарда" (вероятно он называется методом Дефорта-Франкла), он задаётся таким уравнением:
  
<tex> \frac{T_i^{n+1} - T_i^{n-1}}{2 \Delta t} + u \frac{T_{i+1}^n - T_{i-1}^n}{2 \Delta x} - \varkappa \frac{T_{i-1}^n - 2T_i^n + T_{i+1}^n}{\Delta x^2} </tex>
+
<tex> \frac{T_i^{n+1} - T_i^{n-1}}{2 \Delta t} + u \frac{T_{i+1}^n - T_{i-1}^n}{2 \Delta x} - \varkappa \frac{T_{i-1}^n - 2T_i^n + T_{i+1}^n}{\Delta x^2} = 0 </tex>
  
 
Требуется самим придумать граничные и начальные условия и решить уравнение методами ([явным, неявным] <*> ["по потоку", "против потока"]) ++ ["чехарда"].
 
Требуется самим придумать граничные и начальные условия и решить уравнение методами ([явным, неявным] <*> ["по потоку", "против потока"]) ++ ["чехарда"].
Строка 28: Строка 28:
 
Заметка: в качестве вариантов начальных условий желательно иметь "ступеньку" и "пик" (типа <tex> T(0, x) = \Theta(-x) </tex> и <tex> T(0, x) = \sigma(x) </tex>, если кто помнит что это такое)
 
Заметка: в качестве вариантов начальных условий желательно иметь "ступеньку" и "пик" (типа <tex> T(0, x) = \Theta(-x) </tex> и <tex> T(0, x) = \sigma(x) </tex>, если кто помнит что это такое)
  
Параметры <tex> \Delta x, \Delta t, u, \kappa </tex> подаются на входной интерфейс программы, надо уметь как-то выводить <tex> T_i^n </tex>, например в виде анимированного или 3D графика.
+
Параметры <tex> \Delta x, \Delta t, u, \varkappa </tex> подаются на входной интерфейс программы, надо уметь как-то выводить <tex> T_i^n </tex>, например в виде анимированного или 3D графика.
  
  
 
Ещё в ходе решения возникают выражения
 
Ещё в ходе решения возникают выражения
  
<tex> \frac{u \cdot \Delta t}{\Delta x} = s </tex> - число Куррента
+
<tex> \frac{u \cdot \Delta t}{\Delta x} = s </tex> {{---}} число Куррента
  
<tex> \frac{\varkappa \cdot \Delta t}{\Delta x^2} = r </tex> - число Рейнольца
+
<tex> \frac{\varkappa \cdot \Delta t}{\Delta x^2} = r </tex> {{---}} число Рейнольца
  
 
Несходимость метода может напрямую зависеть от величины <tex> sign(1 - s - 2r) </tex>, поэтому надо уметь показывать или принимать на вход эти <tex> s </tex> и <tex> r </tex>
 
Несходимость метода может напрямую зависеть от величины <tex> sign(1 - s - 2r) </tex>, поэтому надо уметь показывать или принимать на вход эти <tex> s </tex> и <tex> r </tex>

Текущая версия на 19:40, 4 сентября 2022

Необходимо численно решить уравнение:

[math] \frac{\delta T}{\delta t} + u \frac{\delta T}{\delta x} - \varkappa \frac{\delta^2 T}{\delta x^2} = 0[/math]

Для этого делаем такие замены (метод явный, "против потока")

[math] \frac{\delta T}{\delta t} \quad \to \quad \frac{T_i^{n+1} - T_i^n}{\Delta t}[/math]

[math] \frac{\delta T}{\delta x} \quad \to \quad \frac{T_i^n - T_{i-1}^n}{\Delta x}[/math]

[math] \frac{\delta T}{\delta x^2} \quad \to \quad \frac{T_{i-1}^n - 2T_i^n + T_{i+1}^n}{\Delta x^2}[/math]

и выражаем [math] T^{n+1} [/math].


В методах "по потоку" в первой производной по [math] x [/math] мы смотрим на предыдущие значения справа, поэтому одна из замен такая:

[math] \frac{\delta T}{\delta x} \quad \to \quad \frac{T_{i+1}^n - T_i^n}{\Delta x}[/math]

В неявных методах у всех производных по [math] x [/math] заменяется [math] T^n \to T^{n+1} [/math].

Ещё есть метод "чехарда" (вероятно он называется методом Дефорта-Франкла), он задаётся таким уравнением:

[math] \frac{T_i^{n+1} - T_i^{n-1}}{2 \Delta t} + u \frac{T_{i+1}^n - T_{i-1}^n}{2 \Delta x} - \varkappa \frac{T_{i-1}^n - 2T_i^n + T_{i+1}^n}{\Delta x^2} = 0 [/math]

Требуется самим придумать граничные и начальные условия и решить уравнение методами ([явным, неявным] <*> ["по потоку", "против потока"]) ++ ["чехарда"].

Заметка: в качестве вариантов начальных условий желательно иметь "ступеньку" и "пик" (типа [math] T(0, x) = \Theta(-x) [/math] и [math] T(0, x) = \sigma(x) [/math], если кто помнит что это такое)

Параметры [math] \Delta x, \Delta t, u, \varkappa [/math] подаются на входной интерфейс программы, надо уметь как-то выводить [math] T_i^n [/math], например в виде анимированного или 3D графика.


Ещё в ходе решения возникают выражения

[math] \frac{u \cdot \Delta t}{\Delta x} = s [/math] — число Куррента

[math] \frac{\varkappa \cdot \Delta t}{\Delta x^2} = r [/math] — число Рейнольца

Несходимость метода может напрямую зависеть от величины [math] sign(1 - s - 2r) [/math], поэтому надо уметь показывать или принимать на вход эти [math] s [/math] и [math] r [/math]