1612725465-542b3179b36a4849700e0b2ecf7da111 (828844), страница 8
Текст из файла (страница 8)
На практике расчетобычно производится с такими числами Куранта, которые с некоторымзапасом удовлетворяют условию устойчивости. Пусть, например, сетка измельчается, но число Куранта поддерживается постоянным. Дляфиксированного числа Куранта Cr < 1 неравенство (3.19) не будет выполняться при малых h ввиду условия θ = O(h). Следовательно, дляфиксированного числа Куранта и достаточно мелких сеток схема предиктор-корректор с квазипостоянными коэффициентами не будет сохранять монотонность численного решения.3.4. Далее мы рассмотрим схему предиктор-корректор с переменnным параметром θj+1/2.
Покажем, что этот параметр можно подобратьтак, что схема предиктор-корректор будет сохранять монотонность численного решения при любых числах Куранта, подчиняющихся условиюCr < 1.(3.24)nДля выбора параметра θj+1/2будем использовать метод дифференnциального приближения [30], считая, что величины θj+1/2являютсязначениями некоторой гладкой функции θ(x, t). Тогда П-форма дифференциального представления схемы предиктор-корректор имеет следующий вид (см. задачу 3.4):)a2 τah2 ( 2 2(θux )x +a æ − 1 uxxx −26]]a2 τ 2 [a3 τ 2 [−θt ux x +(θux )xx + (θuxx )x + O(τ 3 + h3 ).44ut + aux =(3.25)Видим, что второе слагаемое правой части не зависит от θ и совпадает с дисперсионным членом п.
д. п. (1.80) схемы Лакса – Вендроффа,генерирующей нефизичные осцилляции при расчете разрывных решений (см. рис. 4). Можно попытаться избавиться от осцилляций численного решения путем изменения дисперсии разностной схемы. В схемепредиктор-корректор это можно сделать за счет подходящего выборапараметра θ. Пусть для определенности a > 0. Тогда в силу условия50(3.24) коэффициент при uxxx во втором слагаемом правой части уравнения (3.25) будет отрицательным. Если положитьθ = θ̄huxx,uxθ̄ = const > 0,(3.26)то в П-форме (3.25) первое слагаемое правой части превратится в новоедисперсионное слагаемое 0.5a2 τ hθ̄uxxx с положительным коэффициентом при uxxx , что приведет к некоторому изменению дисперсионныхсвойств схемы.Для использования функции (3.26) в разностной схеме (3.3), (3.4)необходимо аппроксимировать производные uxx и ux . При a > 0 заменим их, например, следующими конечно-разностными выражениями:ux,j+1/2 − ux,j−1/2∂2u(xj+1/2 ) ∼,2∂xhuj+1 − uj∂u(xj+1/2 ) ∼ ux,j+1/2 ≡,∂xhт.
е. схемный параметр будем вычислять по формуле:nθj+1/2= θ̄unx,j+1/2 − unx,j−1/2unx,j+1/2.(3.27)Тогда одношаговый вариант схемы (3.3), (3.4) примет следующий вид:un+1− unj3unj − 4unj−1 + unj−2a2 τ unj − 2unj−1 + unj−2j+a=+τ2h2h2unj+1 − 3unj + 3unj−1 − unj−2a2 τ h+(θ̄ − θ0 ),2h3где постоянная θ0 определена формулой (3.5).П. д. п. этой схемы записывается как[ 2])a τhah2 ( 2 2ut + aux =θ̄ +a æ − 1 uxxx .26(3.28)(3.29)Отсюда видно, что, задавая то или иное значение для постоянной θ̄ > 0,мы можем менять коэффициент при третьей производной, т.
е. можемуправлять дисперсией разностной схемы. Тем не менее, подобрать постоянную θ̄ так, чтобы схема (3.28) сохраняла монотонность численногорешения для всех чисел Куранта, удовлетворяющих условию (3.24), неудается. Это следует из того, что схема (3.28) с постоянными коэффициентами является схемой второго порядка аппроксимации и потому51не может сохранять монотонность численного решения [3]. Покажемэто непосредственно, опираясь на теорему 2.1. Перепишем схему (3.28)в виде (2.4)= b1 unj+1 + b0 unj + b−1 unj−1 + b−2 unj−2 ,un+1jгде]a2 æ23aæ a2 æ2 [;b0 = 1 −+1 − 3(θ̄ − θ0 ) ;222]]2 2[2 2[a æaæ a æ= 2aæ +3(θ̄ − θ0 ) − 2 ; b−2 = −+1 − (θ̄ − θ0 ) .222b1 = (θ̄ − θ0 )b−1Легко проверить, что приθ0 ≤ θ̄ ≤2θL ,3(3.30)где постоянная θL определена формулой (3.8), коэффициенты b1 , b0и b−1 будут неотрицательными, а коэффициент b−2 – отрицательнымна всем рассматриваемом диапазоне чисел Куранта (3.24), т. е.
при0 < Cr < 1. Согласно теореме 2.1, схема (3.28) не сохраняет монотонность численного решения.Далее в качестве постоянной θ̄ будем брать левую границу промежутка (3.30):1θ̄ = θ0 =− 1.(3.31)CrВ этом случае схема (3.28) превращается в схему (2.44) (противопоточная схема с направленной назад разностью второго порядка), котораяимеет второй порядок аппроксимации (см. решение задачи 2.6) и п. д.
п.ut + aux =ah2(1 − aæ)(2 − aæ)uxxx .6Видим, что в отличие от схемы Лакса – Вендроффа коэффициент в дисперсионном члене схемы (2.44) положителен, поэтому эти схемы второгопорядка аппроксимации будут отличаться по дисперсионным свойствам.Покажем, что они отличаются и по свойству сохранения монотонностичисленного решения.
В самом деле, при a > 0 схема Лакса – Вендроффасохраняет на (n + 1)-м слое по времени монотонность любой монотонно возрастающей на n-м слое функции un , удовлетворяющей в каждомузле условию unx̄x,j ≤ 0 (см. задачу 2.3), а схема (2.44) – тех монотонно52возрастающих функций, для которых выполняется противоположноенеравенство unx̄x,j ≥ 0 (см. задачу 3.5). Монотонность произвольных монотонно убывающих функций сохраняется схемой Лакса – Вендроффапри условии unx̄x,j ≥ 0, а схемой (2.44) – при unx̄x,j ≤ 0. Поэтому, используя обе схемы, переключаясь по определенному правилу с одной схемына другую, можно сохранять монотонность численного решения из более широкого класса сеточных функций, чем схема Лакса – Вендроффа.Но даже такое совместное использование двух схем не позволяет сохранять монотонность произвольных сеточных функций, поэтому формула(3.27) требует некоторого уточнения.В качестве дополнительного ограничения на параметр (3.27) будемиспользовать условие ограниченности схемного параметра.
Например,потребуем, чтобы он был ограничен сверху постоянной θ0 . Кроме того,потребуем, чтобы сеточная функция (3.27) была неотрицательной. Этиnограничения приводят к новой формуле для θj+1/2:[nθj+1/2(= θ0 min 1; maxunx,j+1/2 − unx,j−1/2unx,j+1/2)]; 0,(3.32)из которой следует, чтоnθj+1/20nn θ · ux,j+1/2 − ux,j−1/20=unx,j+1/2θ0при 0 < unx,j+1/2 ≤ unx,j−1/2 илиunx,j−1/2 ≤ unx,j+1/2 < 0,при 0 ≤ unx,j−1/2 < unx,j+1/2 илиunx,j+1/2 < unx,j−1/2 ≤ 0,при unx,j−1/2 < 0 < unx,j+1/2 илиunx,j+1/2 < 0 < unx,j−1/2 .nДоопределим θj+1/2= 0 при unx,j+1/2 = 0.
Тогда последнюю формулуможно переписать при a > 0 какnθj+1/2=0θ0 ·unx,j+1/2 − unx,j−1/2unx,j+1/2при |unx,j+1/2 | ≤ |unx,j−1/2 | иunx,j+1/2 · unx,j−1/2 ≥ 0,при |unx,j+1/2 | > |unx,j−1/2 | иunx,j+1/2 · unx,j−1/2 ≥ 0,при unx,j+1/2 · unx,j−1/2 < 0.θ053Аналогично можно поступить и при a < 0.
В этом случае для управления дисперсией будем использовать вместо (3.26) функцию θ, определяемую формулойuxx,(3.33)θ = −θ0 huxв которой производная uxx аппроксимируется выражениемux,j+3/2 − ux,j+1/2∂2u(xj+1/2 ) ∼.∂x2hВ результате приходим к следующей формуле, справедливой дляпроизвольного знака коэффициента a:0при |unx,j+1/2 | ≤ |unx,j+1/2−s | иunx,j+1/2 · unx,j+1/2−s ≥ 0,)(nnθj+1/2=при |unx,j+1/2 | > |unx,j+1/2−s | и (3.34)θ0 1 − ξj+1/2unx,j+1/2 · unx,j+1/2−s ≥ 0,θ0при unx,j+1/2 · unx,j+1/2−s < 0,nгде s = sgn(a), ξj+1/2– одно из отношений (2.30) или (2.48):nξj+1/2=unx,j+1/2−sunx,j+1/2.3.5.
Покажем, что схема предиктор-корректор с переменным параметром (3.34) сохраняет монотонность численного решения. Перепишемсхему (3.3), (3.4), (3.34) в виде одношаговой схемы∗∗fj+1/2− fj−1/2un+1− unjj+= 0,τhгде f = au, f ∗ – поток схемы предиктор-корректор,)1( n∗nfj+1/2=fj+1 + fjn − τ a2 (1 + θj+1/2)unx,j+1/2 =2)1( nnn)unx,j+1/2 .= fj+1 + fj − τ a2 (1 + θ0 )unx,j+1/2 + τ a2 (θ0 − θj+1/22Используя формулу (3.34), получаем()nτ a2 (θ0 − θj+1/2)unx,j+1/2 = h (1 + s)gj + (1 − s)gj+1 ,54(3.35)(3.36)где сеточная функция gj , определенная в целых узлах, выглядит так: nux,j+1/21 2unx,j−1/2gj = æa θ0 ·20при |unx,j+1/2 | ≤ |unx,j−1/2 |,unx,j+1/2 · unx,j−1/2 ≥ 0,при |unx,j+1/2 | ≥ |unx,j−1/2 |,unx,j+1/2 · unx,j−1/2 ≥ 0,(3.37)при unx,j+1/2 · unx,j−1/2 < 0.Следовательно,∗fj+1/2=()]1[ nfj+1 + fjn − a2 æh(1 + θ0 )unx,j+1/2 + h gj + gj+1 − s(gj+1 − gj ) .2Отметим, что введенная функция gj может быть выражена черезфункцию minmod от двух вещественных переменныхminmod(u, v) =т.
е.1(sgn(u) + sgn(v)) min(|u|, |v|),2 uvminmod(u, v) =0при |u| ≤ |v|, u · v ≥ 0,при |u| ≥ |v|, u · v ≥ 0,при u · v < 0.(3.38)(3.39)Из формулы (3.37) видно, чтоgj =()1 2æa θ0 · minmod unx,j−1/2 , unx,j+1/2 .2(3.40)Некоторые свойства функции minmod перечислены ниже.Лемма 3.1.