Текущая версия |
Ваш текст |
Строка 2: |
Строка 2: |
| Реализовать численное решение одномерно уравнения теплопроводности. | | Реализовать численное решение одномерно уравнения теплопроводности. |
| ==Постановка задачи== | | ==Постановка задачи== |
− | Решается однородное уравнение теплопроводности на промежутке <math>\left[0\ldots L\right]</math> | + | Решается следующая уравнение |
− | :<math>\frac{\partial T\left(x,t\right)}{\partial t} - a^2\frac{\partial^2 T\left(x,t\right)}{\partial x^2} = 0</math>
| + | <math>c\dot{T} - T'' = 0</math> |
− | С граничными условиями
| |
− | :<math> \begin{cases}
| |
− | T(0,t) = T_0 \\
| |
− | T(L,t) = T_1
| |
− | \end{cases}</math>
| |
− | И начальным распределением температуры
| |
− | :<math>T(x,t) = T_s</math>
| |
− | | |
− | ==Конечно-разностная схема==
| |
− | | |
− | Задача содержит производную по времени первого порядка и производную по пространственной координате второго порядка.
| |
− | Запишем исходное уравнение в виде
| |
− | :<math>\frac{\partial T\left(x,t\right)}{\partial t} = a^2\frac{\partial^2 T\left(x,t\right)}{\partial x^2}</math>
| |
− | | |
− | Введем равномерную сетку <math>0 < x_i < L</math> с шагом разбиения <math>Δx</math>. Шаг по времени назовем <math>Δt</math>
| |
− | Построим явную конечно-разностную схему:
| |
− | :<math>\frac{T_i^{n+1}-T_i^{n}}{Δ t} = \frac{a^2}{Δx^2}\left(T_{i+1}^{n} - 2T_{i}^{n}+T_{i-1}^{n}\right)</math>
| |
− | Где, <math>T_i</math> — значение температуры в <math>i</math>-ом узле.
| |
− | | |
− | ==Компьютерная реализация==
| |
− | Компьютерную реализацию программы можно найти в [[File:SAD_HeatConductivity.7z|архиве]]
| |
− | | |
− | ==Результаты==
| |
− | {| class="wikitable" width="300" floating="center"
| |
− | !Количество процессов
| |
− | !Время рассчета (сек)
| |
− | |-
| |
− | |1
| |
− | |184.2
| |
− | |-
| |
− | |2
| |
− | |91.6
| |
− | |-
| |
− | |5
| |
− | |39.4
| |
− | |-
| |
− | |10
| |
− | |19.2
| |
− | |-
| |
− | |20
| |
− | |9.9
| |
− | |-
| |
− | |30
| |
− | |8.1
| |
− | |-
| |
− | |40
| |
− | |7.5
| |
− | |}
| |
− | | |
− | ==Выводы==
| |
− | * Для малого числа узлов в сетке использовать многопроцессорные вычисления не выгодно: время работы программы увеличивается.
| |
− | * При увеличении числа процессоров относительный выигрыш во времени уменьшается.
| |
− | | |
− | ==Полезные ссылки==
| |
− | [https://ru.wikipedia.org/wiki/%D0%A3%D1%80%D0%B0%D0%B2%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%82%D0%B5%D0%BF%D0%BB%D0%BE%D0%BF%D1%80%D0%BE%D0%B2%D0%BE%D0%B4%D0%BD%D0%BE%D1%81%D1%82%D0%B8 Уравнение теплопроводности]
| |