1612725465-eb5831e2a489b993bf8c6c33f84310db (828847), страница 20
Текст из файла (страница 20)
Экспериментально исследовать на устойчивость трехслойную схему (4.9). Исследовать влияние веса σ на точность численного решения.Задание 6. Экспериментально исследовать на устойчивость трехслойную схему с весами по времени (4.10). Исследовать влияние весаσ на точность численного решения.Задание 7.
Экспериментально исследовать на устойчивость схему Дюфорта — Франкела (4.5). Выбирая τ = O(h) и τ = O(h2 ), численно показать сущность условной аппроксимации для схемы (4.5),т. е. показать, что при τ = O(h) аппроксимируется другое дифференциальное уравнение и отклонения численного решения от точногобудут существенными, а при τ = O(h2 ) погрешность численного решения будет величиной порядка O(h2 ).11.2. В этом пункте приводится несколько заданий по экспериментальной проверке свойств конечно-разностных схем для уравнения теплопроводности (3.1) с переменным коэффициентом ν(x, t) > 0. Свойствасхем проверять для двух случаев: коэффициент ν(x, t) является гладкойфункцией, например ν(x, t) = t+2ex или ν(x, t) = 2x+e−t ; коэффициентν(x, t) является разрывной функцией, например, кусочно-постояннойили кусочно-линейной.Задание 8.
На тестовых задачах с краевыми условиями второгорода выполнить численное исследование явной схемы (3.12). Экспериментально определить порядок точности схемы, а также показать,что схема является условно устойчивой.Задание 9. На примере второй краевой задачи экспериментально129доказать, что схема Кранка — Николсон (схема с весами (3.8) приσ = 0, 5) имеет второй порядок точности и абсолютно устойчива.Задание 10. На тестовых задачах с краевыми условиями второгорода выяснить порядок точности схемы с весами (3.8) при различныхзначениях весового параметра. Экспериментально подтвердить условия устойчивости схемы с весами, приведенные в теореме 3.1.11.3. В этом пункте собраны задания по экспериментальной проверке свойств явной и полностью неявной конечно-разностных схем длянелинейного уравнения теплопроводностиut = [ν(x, t, u)ux ]x + f (x, t, u).(11.1)с коэффициентом ν > 0 и правой частью f , зависящими от независимых переменных x, t и искомого решения u(x, t).
При использованииявной схемы (3.12) для решения нелинейного уравнения (11.1) сеточныеnфункции νj+1/2и ϕnj определяются формуламиnνj+1/2=ν(xj , tn , unj ) + ν(xj+1 , tn , unj+1 ),2ϕnj = f (xj , tn , unj ),поэтому явная схема для нелинейного уравнения является линейной и еереализация такая же, как в линейном случае.Для полностью неявной схемы (схема с весами (3.8) при σ = 1) полагаемn+1νj+1/2=ν(xj , tn+1 , un+1) + ν(xj+1 , tn+1 , un+1jj+1 ),2ϕnj = f (xj , tn+1 , un+1),jоткуда видно, что полностью неявная схема является нелинейной, поскольку ее коэффициенты и правая часть зависят от искомой функцииun+1 на (n+1)-м слое по времени.
Для нелинейных схем при переходе сослоя n на слой (n+1) вводятся итерации по нелинейности: вычислениефункции un+1 по известной функции un осуществляется с использованием итерационного процесса, суть которого состоит в том, что на итерации с номером (m + 1) определяются значения функции un+1,m+1 потой же разностной схеме, но с коэффициентом ν n+1,m и правой частьюϕn,m , вычисляемыми по функции un+1,m с предыдущей итерации. Темсамым схема линеаризуется и принимает следующий вид:130n+1,m+1un+1,m+1− unj− un+1,m+11 h n+1,m uj+1jj=νj+1/2−τhhn+1,m− νj−1/2гдеn+1,mνj+1/2=iun+1,m+1− un+1,m+1jj−1+ ϕn,m,jh(11.2)ν(xj , tn+1 , un+1,m) + ν(xj+1 , tn+1 , un+1,m)jj+1,2ϕn,m= f (xj , tn+1 , un+1,m).jjВ качестве начального приближения полагают un+1,0= unj .
Итерациjонный процесс заканчивается либо по ограничению на число итераций,либо по условию достаточной близости решений на двух соседних итерациях.Отметим, что если правая часть f линейна по u, то в уравнении (11.2)можно использовать ϕn,m+1, если этого позволяют условияj(2.2.49)—(2.2.51) корректности и устойчивости метода прогонки.Задание 11. На тестовых задачах для нелинейных уравнений параболического типа выполнить численное исследование явной схемы.Экспериментально определить порядок точности схемы и условия ееустойчивости.Задание 12. На тестовых задачах для нелинейных уравнений параболического типа выполнить численное исследование полностью неявной схемы.
Экспериментально определить порядок точности схемыи условия ее устойчивости.Приведем несколько задач с известным аналитическим решением,на которых можно тестировать указанные схемы.Задача 1 (о бегущей температурной волне):µ¶∂u∂∂u=æuσ, 0 < x, t ≥ t0 ,∂t∂x∂x½[σcæ−1 (ct0 − x)]1/σ при x ≤ ct0 ,u(x, t0 ) =0при x ≥ ct0 ,u(0, t) = u0 t1/σ ,где u0 = (σc2 /æ)1/σ . Задача имеет точное решение:½[σcæ−1 (ct − x)]1/σ при x ≤ ct,u(x, t) =0при x ≥ ct,131где σ, æ, c, t0 — положительные параметры, c — скорость распространения температурной волны.При решении этой задачи ограничиться конечным интервалом интегрирования x ∈ [0, l] таким, чтобы ct0 < 0, 5l.
Число узлов на [0, l]вводить таким, чтобы на отрезке [0, ct0 ] помещалось не менее пяти ячеек сетки. Конечное значение t = T выбирать таким, что T ≤ l/c. В этомслучае можно полагать u(l, t) = 0. Обратите внимание, что начальныеданные задачи заданы при t = t0 > 0. В качестве параметров задачиможно взять, например, следующие: σ = 1, æ = 1, c = 1, t0 = 0, 1,l = 1 или такие же значения с заменой σ = 1 на σ = 2.Задача 2:µ¶∂u∂∂ux=(e + t)+ (ex − 2te2x − tu), x ∈ (0; l); t ∈ (0; T ];∂t∂x∂xu(x, 0) = 0;u(l, t) = tel .u(0, t) = t;Задача имеет точное решение u(x, t) = tex .Задача 3:µ¶∂u∂∂u=u+ x2 − 6(t + 2)u, x ∈ (0; l); t ∈ (0; T ];∂t∂x∂xu(x, 0) = 2x2 ;u(0, t) = 0;u(l, t) = (t + 2)l2 .Задача имеет точное решение u(x, t) = (t + 2)x2 .Задача 4:µ¶∂u∂∂u=(x + t)+ t sin x + cos x + (x + t) · u,∂t∂x∂xu(x, 0) = 0;u(0, t) = t;x ∈ (0; l); t ∈ (0; T ];u(l, t) = t cos l.Задача имеет точное решение u(x, t) = t cos x.Задача 5:µ¶∂u∂∂u=2u+ 4(u − t) cos x, x ∈ (0; l); t ∈ (0; T ];∂t∂x∂xu(x, 0) = cos x;u(0, t) = 1 + 2t;u(l, t) = cos l + 2t.Задача имеет точное решение u(x, t) = cos x + 2t.При решении этой задачи правую границу l выбирать так, чтобыкоэффициент ν = 2u был положительным, например, положить l < π/2.132§ 12.
Задания для лабораторной работы 5В данном параграфе приведены задания к практическим занятиямна ЭВМ по теме «Итерационные методы численного решения задачиДирихле для двумерного уравнения Пуассона». Основная цель этих заданий состоит в экспериментальной проверке тех свойств численных методов, которые были установлены теоретически на лекциях и семинарских занятиях, выявлении новых, важных для практики особенностейиспользуемых методов, экспериментальном сравнении методов и экспериментальном определении условий применимости численных методов.По каждому заданию готовится краткий отчет (о содержании отчета см.
§ 1.13).12.1. Для всех заданий рассматривается одна и та же задача Дирихле (5.3) для уравнения Пуассона в прямоугольнике Ω. Эта задачааппроксимируется схемой (5.36). Разностная задача (5.36) решается методом установления, при этом начальную функцию u0 (x, y) нужно выбирать так, чтобы она удовлетворяла заданному краевому условию Дирихле (см. формулу (5.39) ). Общая схема всех итерационных методоввыглядит так:nun+1j,m − uj,m= Λunj,m + f (xj , ym ),τunj,m = µ(xj , ym ), (xj , ym ) ∈ γh ,Bu0j,m = u0 (xj , ym ),(xj , ym ) ∈ ωh ,n = 0, 1, . . .
,(12.1)(xj , ym ) ∈ ω̄h ,где n — номер итерационного шага, а τ — итерационный параметр.Приведем сводку итерационных методов, используемых в заданиях.Для метода простой итерации (5.37) оптимальное значение итерационного параметра τ находится по формуле (5.41). Для программнойреализации метода требуется два двумерных массива.Представим оператор Λ в виде суммы трех операторовΛ = −D + L + R,гдеµDuj,m =Luj,m =22+ 2h2xhyuj−1,muj,m−1+,2hxh2y¶uj,m ,Ruj,m =133uj+1,muj,m+1+.2hxh2yВ методе Зейделя производится следующая замена разностногоуравнения (5.36):n(−D + L)un+1j,m + Ruj,m + fj,m = 0.(12.2)Преобразуем итерационную схему (12.2):nnn(−D + L)(un+1j,m − uj,m ) + (−D + L)uj,m + Ruj,m + fj,m = 0,илиnn(D − L)(un+1j,m − uj,m ) = Λuj,m + fj,m .(12.3)Сравнивая схему (12.3) с общей схемой итерационных методов (12.1),видим, что B = D − L 6= E, т.
е. схема Зейделя неявная с итерационнымпараметром τ = 1.Расчетные формулы получаем из разностного уравнения (12.2):n+1n+1nnun+1un+1j−1,m − 2uj,m + uj+1,mj,m−1 − 2uj,m + uj,m+1++ fj,m = 0, (12.4)h2xh2yпричем расчет un+1j,m можно проводить по строкам, т. е. для каждогоm = 1, . . . , Ny − 1 эта величина вычисляется при измененииj = 1, . . . , Nx − 1. Расчет начинается с узла (x1 , y1 ) и проводится построкам сетки ωh с перебором строк снизу вверх. Найденное значениеnun+1j,m размещается в массиве на месте uj,m , поэтому для программнойреализации метода Зейделя требуется только один двумерный массив.ПВР — метод последовательной верхней релаксации отличается от метода Зейделя тем, что вначале по схеме, аналогичной (12.2),вычисляется вспомогательная величина ūj,m :n−Dūj,m + Lun+1j,m + Ruj,m + fj,m = 0,(12.5)а затем уже определяется un+1j,m :nun+1j,m = ωūj,m + (1 − ω)uj,m ,(12.6)где 1 ≤ ω < 2 — параметр верхней релаксации.Приведем формулы (12.5), (12.6) к общей схеме (12.1) итерационныхметодов.
Из равенства (12.6) следует, чтоūj,m =nun+1j,m − uj,m+ unj,m .ω134Поэтому уравнение (12.5) можно переписать как−Dnun+1j,m − uj,mn− Dunj,m + Lunj,m + Runj,m + Lun+1j,m − Luj,m + fj,m = 0,ωили−Dn¡¢un+1j,m − uj,mn+ Λunj,m + L un+1j,m − uj,m + fj,m = 0,ωт. е.nun+1j,m − uj,m= Λunj,m + fj,m .(12.7)ωТаким образом, метод ПВР — неявный итерационный метод с оператором B = D − ωL и итерационным параметром τ , равным параметрурелаксации ω. При ω = 1 метод ПВР совпадает с методом Зейделя(12.3).Расчетные формулы следуют из формул (12.5) и (12.6). При каждомфиксированном m = 1, . . .