Skip to content

Commit 584b659

Browse files
authored
Update Lab3.md
1 parent 1b4030d commit 584b659

File tree

1 file changed

+97
-1
lines changed

1 file changed

+97
-1
lines changed

reports/Special/Lab3.md

Lines changed: 97 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
- [Противопотоковый метод второго порядка 🡐🡐](#противопотоковый-метод-второго-порядка-)
1515
- [BTCS 🧱](#BTCS-)
1616
- [Решение одномерного уравнения конвекции](#решение-одномерного-уравнения-конвекции)
17-
- [Решение явным Эйлером](#решение-явным-эйлером)
1817
4. [Заключение и выводы 📝](#4-заключение-и-выводы-)
1918

2019
## 1. Введение и цели работы 🎓
@@ -175,3 +174,100 @@ BTCS обладает первым порядком точности по вре
175174
**Программная реализация:** `include/Labs/Special/Lab3/ConvectionSolvers/BTCSSolver.h` (с использованием `ThomasSolver` для решения трёхдиагональной системы).
176175

177176
---
177+
178+
### Решение одномерного уравнения конвекции
179+
180+
Решим уравнение конвекции(переноса):
181+
182+
$$
183+
\frac{\partial U}{\partial t} + u\frac{\partial U}{\partial x} = 0
184+
$$
185+
186+
с начальным условием на отрезке $0\le x\le 1$:
187+
188+
$$
189+
U(x,0) = \varphi(x) = \cos\left(\frac{\pi}{2}x\right).
190+
$$
191+
192+
#### 1. Метод характеристик
193+
194+
Уравнение переноса описывает перенос профиля без изменения формы. Это удобно вывести методом характеристик.
195+
196+
Введём характеристики $x(t)$ такие, что вдоль них решение $U(x(t),t)$ постоянно. Рассмотрим производную по $t$:
197+
198+
$$
199+
\frac{d}{dt} U(x(t),t) = U_t + x'(t)U_x.
200+
$$
201+
202+
Чтобы эта производная обратилась в ноль, выбираем скорость характеристики $x'(t)=u$. Тогда
203+
204+
$$
205+
\frac{d}{dt} U(x(t),t) = U_t + uU_x = 0,
206+
$$
207+
208+
а значит
209+
210+
$$
211+
U(x(t),t) = \text{const вдоль характеристики}
212+
$$
213+
214+
Уравнение для характеристики:
215+
216+
$$
217+
\frac{dx}{dt} = u
218+
\;\Rightarrow
219+
x(t) = ut + x_0,
220+
$$
221+
222+
где $x_0$ — точка пересечения характеристики с осью времени $t=0$. Отсюда
223+
224+
$$
225+
x_0 = x - ut.
226+
$$
227+
228+
На линии $t=0$ значения решения заданы начальным условием: $U(x_0,0)=\varphi(x_0)$. Так как вдоль характеристики величина $U$ сохраняется, получаем
229+
230+
$$
231+
U(x,t) = U(x_0,0) = \varphi(x_0) = \varphi(x - ut).
232+
$$
233+
234+
Это общий вид точного решения для уравнения переноса с постоянной скоростью.
235+
236+
#### 2. Подстановка конкретного потенциала
237+
238+
В нашей задаче
239+
240+
$$
241+
\varphi(x) = \cos\left(\frac{\pi}{2}x\right)
242+
$$
243+
244+
Подставляя $x_0 = x - ut$ в эту функцию, получаем точное решение:
245+
246+
$$
247+
U(x,t) = \cos\left(\frac{\pi}{2}(x - ut)\right)
248+
$$
249+
250+
При фиксированном $t$ это тот же самый косинус, просто сдвинутый вдоль оси $x$ на величину $ut$. На отрезке $0\le x\le 1$ профиль $\cos(\pi x/2)$ «едет» вправо со скоростью $u$, не меняя амплитуды и формы.
251+
252+
---
253+
254+
#### Решение заданного уравнения конвекции различными методами и анализ полученных результатов
255+
256+
---
257+
258+
## 4. Заключение и выводы 📝
259+
260+
В ходе работы получено точное аналитическое решение задачи переноса с начальным условием $U(x,0) = \varphi(x) = \cos\left(\frac{\pi}{2}x\right)$ и показано, что оно представляет собой сдвиг начального профиля со скоростью u, что дало возможность использовать его в качестве эталона для оценки численных схем. Была разработана программная реализация набора явных и неявных конечно-разностных методов (FTCS, Лакса, Лакса–Вендрофа, Рихтмайера, МакКормака, противопотоковые схемы 1‑го и 2‑го порядков, BTCS) и проведены серии вычислительных экспериментов при различных значениях конвекционного числа c.
261+
262+
Анализ графиков решения и зависимости максимальной ошибки от времени позволил выделить характерные особенности каждого метода: проявления численной диффузии, дисперсии и практической неустойчивости, а также подтвердить основные теоретические результаты лекций (безусловная неустойчивость FTCS, условная устойчивость противопотоковых схем, высокое качество Лакса–Вендрофа и МакКормака, безусловная устойчивость, но сильная диффузия BTCS).
263+
264+
Схема FTCS для уравнения чистой конвекции подтвердило свою безусловную неустойчивость: при $c = 0.1$ и $c = 0.5$ наблюдался экспоненциальный рост ошибки и «взрыв» решения при увеличении времени расчёта.
265+
266+
Схемы Лакса, классического upwind первого порядка и BTCS демонстрируют устойчивость на рассматриваемых шагах, но сопровождаются заметной численной диффузией: максимум волны уменьшается, фронты сглаживаются, ошибка растёт примерно линейно со временем.
267+
268+
Методы второго порядка Лакса–Вендрофа и МакКормака показали наилучшее качество решения: при $|c| < 1$ профиль волны хорошо сохраняется, численная диффузия мала, а максимальная ошибка на интервале до $t = 10 c$ остаётся на уровне машинной точности или значительно ниже, чем у остальных схем.
269+
270+
Схема Рихтмайера и противопотоковый метод второго порядка, несмотря на формальную устойчивость при $|c| \le 1$ и $|c| < 2$ соответственно, оказались чувствительными к накоплению дисперсионных ошибок: при длительном интегрировании и $с = 0.5$ фиксировались большие значения глобальной погрешности и выраженные осцилляции.
271+
272+
С практической точки зрения для моделирования переходных процессов переноса с гладкими начальными условиями на конечных интервалах времени предпочтительно использовать схемы Лакса–Вендрофа или МакКормака; противопотоковый метод первого порядка и BTCS целесообразны там, где приоритет отдается устойчивости и монотонности решения, а не высокой точности профиля.
273+

0 commit comments

Comments
 (0)