МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСТИТЕТ Институт прикладной математики и механики Кафедра теоретической механики ОТЧЕТ ПО КУРСОВОМУ ПРОЕКТУ Многопоточный алгоритм решения уравнения теплопроводности Выполнил: студент группы № 63604/1 А. В. Яшин Проверил: ____________ А. А. Ле-Захаров Санкт-Петербург 2015 Постановка задачи T aT f (x, t) , где t оператор Лапласа, в двухмерной постановке сеточным методом в многопоточном режиме. Реализовать численное решение уравнения теплопроводности Требуется найти непрерывное в D решение T = T(x,t) задачи T aT f (x, t) t С целью построения разностной схемы в области D введем сетку ωhτ = {(xi,tj): xi=ih, 0≤i≤n, h=1/n, tj=jτ, 0≤j≤m, τ=T/m}. с шагами h по x и τ по t. Используя приближенные формулы вычисления производных 𝑗+1 𝜕𝑇 𝑇 ( ) ≈ 𝑖 𝜕𝑡 𝑖𝑗 𝑗 𝑗 𝑗 𝑗 − 𝑇𝑖 𝜕 2 𝑇 𝑇 − 2𝑇𝑖 + 𝑇𝑖+1 , ( 2 ) ≈ 𝑖+1 , 𝜏 𝜕𝑥 𝑖𝑗 ℎ2 можно записать разностную схему вида (1) 𝑗 где ν𝑖 - сеточная функция, являющаяся точным решением разностной схемы и аппроксимирующая точное решение дифференциального уравнения в узлах сетки; σ - параметр, 𝑗 𝑗 𝑗 называемый весом, а φ𝑖 , некоторая правая часть, например, φ𝑖 = 𝑓𝑖 . В общем случае схема определена на шеститочечном шаблоне, изображенном на рисунке 1. Рис. 1. Шаблон схемы с весом. Для решения уравнения теплопроводности использовался неявная разностная схема. В случае σ = 1 схема (1) приобретает вид: Данная схема определена на четырехточетном шаблоне (см. рис. 3) и является неявной. Рис. 2. Шаблон неявной схемы 𝑗+1 В данном случае для определения ν𝑖 получаем систему уравнений вида Система уравнений является трехдиагональной, и может быть решена методом прогонки. Известно, что неявная разностная схема будет вычислительно устойчива при любом соотношении шагов τ и h (абсолютная устойчивость). Погрешность аппроксимации составит также O(τ+h2). Исходные данные Образец имеет квадратную форму с физическим размером 10 x 10 см. Коэффициент 5 теплопроводности a 10 м с , что близко к реальным значениям для различных сталей. 2 Начальная температура поверхности T0 300 K . Задаются фиксированные граничные условия – две стороны имеют фиксированную температуру 200о К, а две другие 300о К. Область разбивается сеткой с количеством ячеек 500 500 . Таким образом, шаг по 4 координате h 2 10 м , по времени τ = 5·10-2 с, согласующийся с условием устойчивости. Общее физическое время расчёта t = 50 c, т.е. количество итераций по времени nt = 500. 300о К 200о К 200о К 300о К Рис. 3. Карта начального распределения температуры Результаты 1 100 200 300 400 500 1 1 100 100 200 200 300 300 400 400 500 500 1 100 200 300 400 500 Рис. 4. Карта распределения температуры 300 280 260 240 220 200 100 200 300 400 Рис. 5. Распределения температуры в нормальном сечении 500 Число потоков Время, с Число итераций 1 78,39 104 2 32,59 104 4 20,58 104 8 33,39 104 16 43,96 104 Таблица 1. Зависимость времени расчёта от числа потоков