Задание для реализации

реклама
Задание для реализации
Предлагается программа для решения системы квазилинейных уравнений
параболического типа:
T1
 div  1 (T1 )T1   f1 (T1 , T2 ),
t
T2
 div   2 (T2 )T2   f 2 (T1 , T2 ).
t
Блоки программы;
Основные функции;
Nle — основная программа: реализует переход к новому шагу по времени, реализует
итерации по нелинейности.
Sor1 — подпрограмма: реализует решение линейной системы уравнений (получающейся
на каждой итерации по нелинейности). Реализован метод верхней релаксации с красночерным разбиением (описан в книге Дж. Деммеля «Вычислительная линейная алгебра»).
Задание подразумевает, что эти функции не должны меняться пользователем, если
только при проведении тестирования не обнаружатся существенные ошибки!
Предполагается только исследование зависимостей и распараллеливание этих
программных единиц!
То, что должно быть модернизировано пользователями под тестовые и расчетные
задачи:
Функции, отвечающие за реализацию задачи (коэффициенты, ьфункциональные
зависимости): kappa1, kappa2 – функции, описывающие коэффициент теплопроводности.
Параметры задаются в файле “parameters.inc”.
Если функциональная зависимость коэффициента теплопроводности от температуры
представляется в виде i (Ti )  DiTii , то в файле “parameters.inc” необходимо задать D1,
D2, alpha1, alpha2.
intkappa1, intkappa2 – функции, описывающие интегралы от коэффициентов
u
теплопроводности, возвращают значения:  ( z )dz .
0
Для реализации в программе необходимо проинтегрировать выражения для
козффициентов. Если i (Ti )  DiTii , то intkappa должна вычислять значение:
Ti

i (Ti )   DiT i dT 
0
1
 1
DiT i (конечно, при значении alpha > –1).
i  1
Функции f1 и f2 задают правые части системы. Например, если выражение для правой
части есть f1 (T1,T2 )  a1T11 (T1  T2 ) , то соответствующие константы должны быть заданы в
файле “parameters.inc”.
Функции f1T1, f1T2, f2T1, f2T2 реализуют все частные производные
fi
. Например, для
T j
приведенной выше правой части f1 (T1,T2 )  a1T11 (T1  T2 ) функция f1T1 должна возвращать
значение
f1
(T1, T2 )  a1T111 ((1  1)T1  T2 ),
T1
,
f1T2
должна
возврашать
значение
f1
(T1 , T2 )  a1T11 , кроме того, параметры b в файле “parameters.inc” зарезервированы
T2
для задания коэффициентов, описывающих конкуренцию в «экологической» задаче.
Функции Bound1 и Bound2 задают граничные условия для Т1 и Т2 соответственно,
внутри них — 2 цикла по «горизонтальным» и «вертикальным» границам области в
каждый момент времени.
Для простоты рассмотрения во всех задачах реализуются только условия первого рода
(Дирихле).
Функции InitT1 и InitT2 задают начальные значения массивов Т1 и Т2 соответственно.
Закоментирована функция timestep. Ее целесообразно использовать для задания
уменьшающегося шага по времени при проведении тестов для режимов с обострением.
Задание 1 – «плазменное» (уровень «сильный»)
Требуется решить систему уравнений:
Te
 div  1Te5/ 2Te   qTe3/ 2 (Ti  Te )  rTe 2  pTe ,
t
Ti
 div   2Ti 3/ 2Ti   qTe3/ 2 (Ti  Te ),
t
в квадратной области 1  x  1,  1  y  1.
Моделирующую взаимодействие между электронной и ионной компонентами плазмы. В
правой части каждого уравнения первое слагаемое описывает теплопроводность
материала, второе – обмен энергиями за счет электронно-ионных столкновений.
Третье слагаемое моделирует источники тепла за счет джоулева нагрева при учете
конечной проводимости плазмы, последнее — потери на излучение. (показатели степени
модельные, так для джоулева нагрева правильный показатель либо 3/2, либо 1, в
зависимости от замагниченности). Все константы принять порядка единицы.
Начальные условия – холодный фон, температуры электронной и ионной компонент
принять равными нулю.
Граничные условия. Три стенки охлаждаемые, для них принять темпнратуру равной нулю.
На одной стенке есть источник ионов с температурой 1, электроны нагреваются за счет
внешнего поля, температура задана соотношением
T 1(t , 1, y ) 
2sin 2 ( t )
.
1.5  y
Система тестов – обменные члены положить равными нулю, исследовать развитие
локализованных возмущений в режиме с обострением (см. лекции).
Исследовать эффективность распараллеливания при расчете тестовой задачи и
двухтемпературной модели при использованиии 4,5,......,32 счетных ядер на сетках
А) 100×100
Б) 500×1000
Задание 2 – «эколгическая модель» (уровень «средний»)
Требуется решить систему уравнений:
n1
 div  d1n1n1   a1n1  b11n12  b12 n1n2 ,
t
n2
 div  d 2 n2n2   a2 n2  b21n1n2  b22 n22 ,
t
в квадратной области 1  x  1,  1  y  1.
Будем
считать, что все параметры задачи — положительные
0  d 2  d1  1. Зададим коэффициенты b следующим образом.
1.
Выполняется условие
b 
b
det  11 12   0
 b21 b22 
числа.
Пусть
Положим, например, что матрица, описывающая взаимодействие, есть
 b11 b12   1 5 



 b21 b22   6 5 
Система алгебраических уравнений описывает пространственно-однородое стационарное
решение системы
a1n1  b11n12  b12 n1n2  0, a2 n2  b21n1n2  b22 n22  0.
Она имеет 4 решения – тривиальное, решение, когда плотность каждой популяции
отлична от нуля (известно, что это решение неустойчивое) и два решения
(0, a2 b22 ), (a1 b11 ,0) .
Граничные условия для системы. На всех границах задается плотность популяции,
соответствующая одному из приведенных выше двух пространственно-однородных
решений.
Начальные условия. Во всей области задано одно из пространственно-однородных
решений (то же, что и на границах области), кроме того, есть одно или два пятна
произвольной формы (например, круглой), где задано другое пространственнооднородное решение.
Численно исследовать динамику плотности популяций.
Тестовый режим – найти стационарные неавтомодельные решения для каждой популяции
в случае, когда нет взаимодействия, а есть лишь самоограничение
n1
 div  d1n1n1   a1n1  b11n12 ,
t
n2
 div  d 2 n2n2   a2 n2  b22 n22 ,
t
Исследовать, как воспроизводится стационарное решение, исследовать выход на
стационарный режим.
*(дополнительное, для любителей длиных арифметических выкладок)
Найти стационарное неавтомодельное решение исходной задачи при условии d 2  0 и
условия его существоваия, исследовать численно выход на стационарное решение.
Исследовать эффективность распараллеливания при расчете тестовой задачи и
экологической модели при использованиии 4,5,......,32 счетных ядер на сетках
А) 100×100
Б) 500×1000
Скачать