Н.А. Боголюбов - ОММ Методическое пособие (1133432), страница 9
Текст из файла (страница 9)
Устойчива ли следующая разностная схема:ymp+1 − ympτ−p+1p+1p+12 ym+1 − 2ym + ym−1ah2= 0; ym0 = ψ (xm), m = 0, ± 1 . . .p = 0,1, . . . [ Tτ ] − 1 .(неявная разностная схема с опережением) .1281Решение:Будем искать решение рассматриваемой разностной схемы в следующемвиде:ymp+1 = λ p+1e iαm .Подставляем вид решения в разностную схему и получаем разностноеуравнение , из которого, в конечном итоге, мы можем выразить λ иприменить спектральный критерий Неймана:2 iα−iα1 − λ −1 a (e − 2 + e )h,=∗2τh41 − λ −1a2 ⋅ 4 2 α= − 2 sin∗τ,τh21 − λ −1 = −1−τ 2 2ατ4asin⇒= r;22h2h1α= − r4a 2sin2∗λ .λ222αλ − 1 = − λr4a sin2.αλ 1 + r4a 2sin2=1 .()2λ(α) =(1 +1r4a 2sin2 α2 ).Условие устойчивости:λ(α) ≤ 1 ⇒τ1≤λ≤1→выполненодлялюбогоr=.α21 + 4rahОтвет: неявная схема безусловно устойчива.129Замечание:Спектральный критерий устойчивости Неймана применяется прирассмотрении задачи Коши с постоянными коэффициентами.В случае переменных коэффициентов мы должны применить принципзамороженных коэффициентов , чтобы впоследствии применить критерийНеймана.Рассмотрим пример:Исследование устойчивости разностной схемы для решения нестационарногоодномерного уравнения теплопроводности:∂T∂∂Tρc=λ.∂t∂x ( ∂x )Будем пренебрегать конвекцией и источником:ρ∂Φ∂∂Φ, где ρ и Γ непостоянные=Γ∂t∂x ( ∂x )коэффициенты, а зависят от координаты x и времени t .Запишем полную постановку задачи:ρLϕ =f=∂Φ∂t−∂∂ΦΓ, t∂x (∂x )≥ 0, 0 < x < L,Φ(0, x), 0 < x < L, Φ(t,0), t ≥ 0,Φ(t, L), t ≥ 0 .0, t ≥ 0, 0 < x < L, g(x), 0 < x < L,w(t), t ≥ 0,ψ (t), t ≥ 0 .130физический смысл рассматриваемой задачи: определение температуры встержне, у которого задано начальное распределение температуры g(x) изначения температуры на концах стержня w(t) и ψ (t) в любой моментвремени.Будем решать поставленную задачу численно - введем равномернуюсетку и составим разностную схему:ρ(t , xm)n−Γ(t n,Φmn+1 − ΦmnΔtxm + xm−12Φm0 = g(xm),−1n xm+1 + xmn+1Γt,Φ(m2)2Δx [ (− Φmn )−)(Φm − Φm−1)] = 0,nnΦ0n = w(t n),nΦM= ψ (t n),n = 0,1,2, .
. . . ; m = 0,1,2, . . . , M; MΔx = L .Выберем произвольную внутреннюю точку (t̃, x̃ ) области, гдерассматривается поставленная задача и «заморозим» коэффициенты вданной точке.Тогда разностное уравнение уже с постоянными коэффициентамипримет следующий вид:Φmn+1 − ΦmnΔt−nnΓ(t̃, x̃ ) Φm+1− 2Φmn + Φm−1ρ(t̃, x̃ )Δx 2= 0,Φm0 = g(xm),Φ0n = w(t n),nΦM= ψ (t n),n = 0,1,2, .
. . . ; m = 0,1,2, . . . , M; MΔx = L .131Применив принцип замороженных коэффициентов для устойчивостиразностной схемы необходимо, чтобы задача Коши для разностногоуравнения с постоянными коэффициентами удовлетворяла необходимомуспектральному критерию Неймана.Введем следующее обозначение:v=Γ(t̃, x̃ )ρ(t̃, x̃ ).Будем искать решение рассматриваемой задачи в виде:Φmn = λ ne iαm .Подставляем вид решения в разностную задачу и выразим спектр λ(α):λ(α) = 1 +vΔt iα−iαe−2+e().2ΔxИспользуем формулу Эйлера:e iα = cosα + isinα ,получаем:2vΔt4vΔt 2 α(1 − cosα) = 1 −λ =1−sin.Δx 2Δx 22Так как согласно критерию Неймана:λ ≤1.Следовательно, условие устойчивости:4vΔt 2 α1−sin≤1 .Δx 22132Полученное условие устойчивости будет выполняться при любомзначении α .Следовательно:Δx 2- данное соотношение накладывает ограничение на шаг поΔt ≤2vвремени Δt в зависимости от шага по пространственной координате Δx .В завершении главы рассмотрим ряд примеров по аппроксимацииразностных схем.1) Какова погрешность в следующем выражении :yi+1 − yi−1+ 2yi ?в точке xi Lh y =2hРешение:yx,i =yi+1 − yi−1- центральная разностная производная.
Она аппроксимирует2hпервую производную со вторым порядком:h 2 ′′ h 3 ′′′yi+1 = yi + hyi′ + yi + yi + _O (h 4) ._26h 2 ′′ h 3 ′′′yi−1 = yi − hyi′ + yi − yi + _O (h 4);_26yi+1 − yi−12h1h 3 ′′′=2hyi′ + yi + _O (h 4) =_2h (6)133h 2 ′′′= yi′ +yi + _O (h 3) = yi′ + _O (h 2) .__12Шаблон:i−1i+1Данная аппроксимация первой производной с повышенным порядком.Можно рассмотреть правую разностную производную:yi+1 − yiyx,i =.hАппроксимация с первым порядком:yi+1 − yih1h 2 ′′=hyi′ + yi + _O (h 3) =_h(2)h ′′= yi + yi + _O (h 2) = yi′ + _O (h) .__2Шаблон:i+1iТеперь рассмотрим левую разностную производную :y − yi−1.yx,i = ihАппроксимация с первым порядком:yi − yi−1 1h 2 ′′=hyi′ − yi + _O (h 3) =_hh(2)= yi′ −h ′′yi + _O (h 2) = yi′ + _O (h) .__2Шаблон:i134i−12) Какова погрешность в следующем выражении :dyhLh y =в точке xi + ?dx2Решение:Lh y =yi+1 − yih- аппроксимация первой производной в точке xi +узле:hв дробном21 h1 h21 h3yi+1 = yi + + y′i+ 1 +y″i+ 1 +y‴i+ 1 + O(h 4) .2222 22 46 8yi = yi+ 12h1 h21 h3− y′i+ 1 +y″i+ 1 −y‴i+ 1 + _O (h 4) ._22222 46 8yi+1 − yih= y′i+ 1 +211 h3=hy′i+ 1 +y‴i+ 1 + _O (h 4) =_22h(3 8)1 2h y‴i+ 1 + _O (h 3) = y′i+ 1 + _O (h 2) .__22241O (h 2) .Следовательно, аппроксимация в узле xi + имеет порядок __2Шаблон:i+1i+12135iГЛАВА 6Метод прогонки.Экономичные и консервативныеразностные схемы.Рассмотрим начально - краевую задачу для уравнения теплопроводностина отрезке:ut − uxx = f (x, t),u(x,0) = φ(x),u(0, t) = μ0(t),u(1, t) = μ1(t) .Будем решать поставленную задачу численно, используя схему с весами :vt − (δΛ^v + (1 − δ)Λv) = fm,n,vm,0 = φm,v0,n = μn0,v1,n = μm1 .Перепишем разностное уравнение поставленной задачи в следующемвиде:(1 − δ)τδτδτδτ− 2 ^vm−1 + 1 + 2 2 ^vm − 2 ^vm+1 = vm +[vm−1 − 2vm + vm+1] + τfm .2()hhhhиндекс m пробегает значения от 1 до Nx − 1 .136Введем следующие обозначения:Am =δτδτδτB=1+2,,C=,mm(h2 )h2h2Fm = vm +(1 − δ)τ[vm−1 − 2vm + vm+1] + τfm .2hТогда:^vm+1 − 2^vm + ^vm−1^vm − vmvm+1 − 2vm + vm−1−δ− (1 − δ)= f.22τhh^vm = vm − δ τ ^vm+1 + 2δ τ ^vm − δ τ ^vm−1−h2h2h2τττ−(1 − δ) 2 vm+1 + 2(1 − δ) 2 vm − (1 − δ) 2 vm−1 = τfm .hhh[−δτ ^τ ^τ ^v+1+δv−δvm−1 = τFm .m+1m222()hhh]Таким образом, мы получаем трехточечное разностное уравнение, котороеO (N ) операций , где N - число узлов.экономично решается методом прогонки за __Тогда определение сеточной функции ^v заключается в ее определении врешении следующей задачи:Am^vm−1 − Bm^vm + Cm^vm+1 = − Fm, (m = 1, .
. . , Nx − 1),{^v0 = μ^1, ^vNx = μ^2 . Полученная алгебраическая система является частным случаем задачи,которую можно решить методом прогонки , который мы сейчас и рассмотримприменительно к нашей задаче.137Итак, метод прогонки используется при решении системыалгебраических уравнений следующего вида:Am ym−1 − Bm ym + Cm ym+1 = Fm,{y0 = α1y1 + β1, yN = α2 yN−1 + β2 .Либо: Bm > Am + Cm, 0 ≤ α1,2 ≤ 1,либо: Bm ≥ Am + Cm, 0 ≤ α1,2 < 1 .Пусть значение искомой функции в двух соседних точках связаныследующим линейным соотношением:ym−1 = dm ym + δm .Подставим его в рассматриваемое уравнение и исключим ym−1 :Am(dm ym + δm) − Bm ym + Cm ym+1 = Fm .(Amdm − Bm)ym = − Cm ym+1 + Fm − Amδm .Теперь исключим ym :ym+1[(Amdm − Bm)dm+1 − Cm] = Fm − Amdm − δm+1(Amdm − Bm) .Приравняем выражение в квадратных скобках в левой части и правуючасть к нулю и получим рекурентные соотношения , из которых мы сможемопределить прогоночные коэффициенты :CmFm − Amδm.dm+1 =, δm+1 =Amdm − BmBm − Amdm138Теперь сравниваем граничные условия с линейным соотношением, еслимы положим m = 0 :y0 = α1y1 + β1⇒ d1 = α1, δ1 = β1 .}y0 = d1y1 + δ1Используя найденные значения d1 и δ1 , будем совершать прогонку внаправлении возрастания индекса, последовательно определяя изрекурентных соотношений значения коэффициентов dm и δm дляm = 1,2, .
. . , N .Тогда на правом конце мы будем иметь два соотношения, связывающиеyN−1 и yN :yN−1 = dN ⋅ yN + δN , yN = α2 yN−1 + β2 .Тогда:yN =α2δN + β2.1 − α2dNПри d1 = α1 ⇒ dm < 1 для m = 2, . . . , N . Учитывая, что α2 ≤ 1 , мыполучаем знаменатель положительным. Тогда значение yN полностьюопределенно.Используя найденное значение yN , мы делаем обратную прогонку всторону уменьшающихся значений индекса, последовательно определяязначения ym из рекурентных соотношений .Основное свойство метода прогонки: число арифметических операций припоиске решения поставленной задачи пропорционально числу узлов в слое.139Примеры:1) Можно ли применить метод прогонки в следующих задачах:Система :Ai yi−1 − Ci yi + Bi yi+1 = − Fi,y0 = ℘1y1 + v1,yN = ℘2 yN−1 + v2 .разрешима ,если:Ai > 0, Bi > 0, Ci ≥ Ai + Bi,или:Ci = Ai + Bi + Di, Di ≥ 0 .0 ≤ ℘α < 1, α = 1,2, .
. . 2yi+1 − 3yi + yi−1 = fi,а){y0 = y1, yN = yN−1 .Решение:Ai = 1 > 0, Bi = α > 0, Ci = 3 ≥ 3, ℘1 = 1 > 0, ℘2 > 0 .Ответ: нельзя применить метод прогонки.140yi+1 − 2yi + yi−1 = fi,б){y0 = 2, yN = 4 .Решение:Ai = 1 > 0, Bi = 1 > 0, Ci = 2 ≥ 2, ℘1,2 = 0 .Ответ : можно применить метод прогонки.2) Пусть численно решается следующая задача:yt = yxx + 1,yyyt=0x=0x=1= 0,= 1,= 1.⇒Ai yi+1 − Ci yi + Bi yi−1 = Fi,y0 = α1y1 + β1,yN = α2 yN−1 + β2 .Необходимо определить коэффициенты Ai , Bi , Ci методом прогонки .Решение:s+1s+1− 2yns+1 − yn+1+1yns+1 − yns yn−1yt = yxx + 1 ⇒=+1 .τh2141yns из числителя в левой части переносим в правую часть, а числитель вправой части переносим в левую часть:1 s+1 1 s+1 2 s+1 1 s+1 1 s+1yn − 2 yn−1 + 2 yn − 2 yn+1 = yn + 1 .τhhhτ1 s+121 s+1 1 s+11 sy −+y + 2 yn−1 = − yn − 1 .h 2 n+1 ( h 2 τ ) nhτОбозначим:An =1211C=+B=,,.nn222hhτhТаким образом, применяя метод прогонки:yn = αn+1yn+1 + βn+1 ,yx=0= 1 ⇒ y0 = α1y1 + β1 = 1 ⇒ α1 = 0, β1 = 1 .142Теперь перейдем к рассмотрению консервативных разностных схем.При составлении разностных схем для уравнений с переменнымикоэффициентами , кроме точности аппроксимации и устойчивости, важно,чтобы для численного решения выполнялись законы сохранения длярассматриваемой дифференциальной задачи.
Такие разностные схемы мыбудем называть консервативными.При нарушении консервативности разностной схемы мы можемполучить ошибочное решение.Рассмотрим пример консервативной разностной схемы:стационарное распределение тепла на отрезке, при том, что коэффициенттеплопроводности k(x) - разрывная функция:∂u(x)∂k(x)∂x (∂x )= 0,u(0) = 1, u(1) = 0 .k(x) =1, 0 ≤ x ≤ 12 ,3, 12 ≤ x ≤ 1 .Решение:Будем искать решение поставленной задачи в виде кусочно - линейнойфункции:u(x) =1 − 32 x, 0 < x < 12 ,1(12− x), 12 < x < 1 .143Тогда наше уравнение мы запишем в следующем виде:∂ 2 u(x) ∂k(x) ∂u(x)k(x)+=0 .2∂x∂x∂xСоставим разностную схему на отрезке [0,1] и введем равномерную1сетку, состоящую из четного количества точек N .