Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Моделирование объектов и процессов в металлургии

..pdf
Скачиваний:
20
Добавлен:
15.11.2022
Размер:
1.5 Mб
Скачать

То же самое делаем для отрезка [xi, xi+1]. Получаем wi+12 ai+1 ui+1hui .

Подставим полученные выражения в уравнение (4.5), получим разностное уравнение, содержащее значения искомой функции в точках xi, x1:

1

 

u

i+1

u

i

 

u

i

u

i1

 

 

 

 

ai+1

 

 

ai

 

 

 

diui + ϕi = 0 .

(4.8)

h

 

h

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

Полученное уравнение по своему построению является разностным аналогом основного дифференциального уравнения (4.2). Записывая уравнение (4.8) во всех точках сетки, в которых оно определено, т.е. при i=1, 2, …, N–1, получим систему из N–1 линейных алгебраических уравнений с N+1 неизвестными u0, u1, …, uN. Два недостающих уравнения получим путем аппроксимации граничных условий (4.3). Одним из уравнений является условие u (N )= µ2 , второе получаем также интегроинтерполяционным ме-

тодом. Для этого проинтегрируем основное уравнение (4.2) по отрезку [0, x0,5], где x0,5=0,5h:

 

x1

x1

 

 

w1

w0 2

q(x)u (x)dx + 2

f (x)dx = 0 .

(4.9)

2

x0

x0

 

 

Считая, что

wi12 ai ui hui1 ,

при i=1 получим

w1 a1 u1 u0 .

2 h

Выражение для w0 следует из граничного условия при x=0: w0 = −µ1 u0 .

71

elib.pstu.ru

Полагаем, что

x1

x1

2 q(x)u (x)dx = u0 2 q(x)dx ,

x0

x0

а

x1

d0 = 0,51 h 2 q(x)dx ,

x0

x1

ϕ0 = 0,51 h 2 f (x)dx .

x0

Подставим полученные выражения в (4.9), получим разностное уравнение

a

u1 u0

−βu

0

1

0,5hu

0

d

0

+ 0,5h

 

1

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

или

a1 u1 h u0 +u0 (β+ 0,5hd0 )= µ1 + 0,5hϕ0 .

Из этой записи видно, что полученное уравнение является разностным аналогом граничного условия.

Решение дискретной задачи будем обозначать yi = y (xi ). Запишем получившуюся разностную схему для задачи (4.2)–(4.3):

1

y

i

+1

y

i

 

 

y

i

y

i1

 

 

 

 

 

 

 

 

 

 

 

ai+1

 

 

ai

 

 

 

 

di yi + ϕi = 0,i =1,2,L, N 1,

h

 

 

 

h

 

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

 

u1 u0

+u

0

(β+ 0,5hd

0

)= µ

1

+ 0,5hϕ, y

N

= µ

2

. (4.10)

 

 

 

 

 

 

1

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

72

elib.pstu.ru

Аппроксимация, устойчивость и сходимость разностной схемы

Краевая задача

 

 

 

 

 

 

 

(k(x)u(x))q(x)u (x)+ f (x)= 0; 0 < x < l ,

(4.11)

 

 

 

 

 

 

 

 

 

 

k (0)u(0)u (0) = µ1; u (l )= µ2 ,

 

 

(4.12)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k(x)≥C1>0, β0,

 

 

 

 

 

для которой методом баланса построена разностная схема

 

 

1

 

y

i+1

y

i

 

 

y

i

y

i1

 

 

 

 

 

 

 

 

 

 

 

 

 

ai+1

 

 

ai

 

 

di yi + ϕi

= 0, i =1,

2,

L, N 1(4.13)

 

 

 

 

h

 

 

 

h

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

1

u1 u0

+u

0

(β+

0,5hd

0

)= µ

1

+

0,5hϕ, y

N

= µ

2

.

(4.14)

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Обозначим

Lu (x)= (k (x)u(x))q(x)u (x)+ f (x)

и

 

1

 

y

i+1

y

i

 

y

i

y

i1

 

 

Lh yi =

 

ai+1

 

 

ai

 

 

 

d i yi + ϕi .

 

 

h

 

 

 

h

 

 

h

 

 

 

 

 

 

 

 

Разностную задачу запишем как

 

Lh yh (x)= ϕh (x), x ωh ,

(4.15)

lh yh (x)h (x), x γh ,

(4.16)

где yh (x) – решение приближенной разностной задачи,

ϕh (x)S и

χh (x) – функции, полученные в результате замены входных дан-

ных задачи (1) и (2), ωh – множество внутренних узлов,

γh – мно-

жество граничных узлов.

 

Обозначим через zh погрешности сетки (4.15), (4.16):

 

zh = yh uh .

(4.17)

 

73

elib.pstu.ru

Разница между точным и приближенным решениями в узлах сетки называется погрешностью. Подставим (4.17) в разностную схему (4.15), (4.16). Предполагая, что Lh и lh – линейные операторы, получим для zh задачу (4.18), (4.19):

Lh zh (x)= ψh (x), x ωh ,

(4.18)

lh zh (x) = νh (x), x γh ,

(4.19)

где ψh (x) и νh (x) – погрешности аппроксимации решения u(x) раз-

ностной схемой основного уравнения и дополнительных условий. Будем говорить, что Lh аппроксимирует L с порядком m>0 в

точке x, если

ψ(x)= Lhu (x)Lu (x)= O(

 

h

 

m ).

(4.20)

 

 

Схема (4.15)–(4.16) аппроксимирует задачу (4.11)–(4.12)

и имеет m-й порядок аппроксимации, если

 

ψh

 

 

 

(2h) = O(

 

h

 

m ),

 

 

 

νh

 

 

 

(3h) = O(

 

h

 

m );

(4.21)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сходится, если при сгущении узлов сетки значение погрешности стремится к нулю и имеет m-й порядок точности, если

yh uh

 

 

 

(1h) = O(

 

h

 

m );

(4.22)

 

 

 

 

 

 

 

 

 

устойчива, если решение yh равномерно по h, непрерывно зависит от входных данных, т.е. малому изменению входных данных соответствует малое изменение решения. Устойчивость характеризует чувствительность разностной схемы к различного рода погрешностям, она является внутренним свойством разностной задачи, и это свойство не связывается непосредственно с исходной дифференциальной задачей (в отличие от сходимости). Устойчивость бывает условной и безусловной в зависимости от того, накладываются или нет ограничения на соотношения между шагами по разным переменным.

Если решение исходной дифференциальной задачи (4.11–4.12) существует, а разностная схема (4.15–4.16) устойчива и аппрокси-

74

elib.pstu.ru

мирует задачу (4.11–4.12) на данном решении, то разностное решение сходится к точному, при этом порядок сходимости совпадает с порядком аппроксимации.

Метод конечного объема является основным методом построения дискретных аналогов непрерывных физических задач.

Этапы проведения дискретизации

Этапы проведения дискретизации исходной дифференциальной задачи:

выбрать сетку, задав значения шага;

построить разностную схему;

определить погрешность, с которой разностная схема аппроксимирует исходную задачу;

проверить устойчивость разностной схемы;

сделать вывод о сходимости решения разностной задачи к решению исходной задачи.

Методы решения сеточных уравнений

Все методы решения разностных задач делятся на прямые и итерационные.

К прямым методам относят метод прогонки, метод полной редукции, метод разделения переменных и пр. К итерационным относят метод простой итерации, метод Чебышева, метод Зейделя, метод верхней релаксации, треугольный метод, попеременнотреугольный метод и пр.

Подробнее остановимся на методе прогонки, который представляет вариант метода последовательного исключения неизвестных.

Метод прогонки

Для краевой задачи (4.11–4.12) методом баланса построена разностная схема (4.13–4.14).

Запишем разностную задачу в виде

a j y j1 c j y j +b j y j+1 = − f j , j =1, 2, L, N 1,

(4.23)

75

elib.pstu.ru

y0 = ϰ 1 y1 1 , yN = ϰ 2 yN 1 2 .

(4.24)

Для нахождения решения задачи (4.23–4.24) используем представление

y j = α j+1 y j+1 j+1, j = 0, 1, L, N 1 ,

(4.25)

где αj+1, βj+1 – неизвестные коэффициенты, называемые прогоночными коэффициентами.

Отсюда найдем

y j1 j y j j j (αj+1y j+1 j+1 )j = (4.26) jαj+1y j+1 jβj+1 j , j =1, 2, L, N 1.

Подставим выражения (4.25) и (4.26) в уравнение (4.23):

a jα jα j+1 y j+1 + a jα jβ j+1 + a jβ j c jα j+1 y j+1 c jβ j+1 + b j y j+1 + f j =

= y j+1 α j+1 (a jα j c j )+b j + β j+1 (a jα j c j )+ a jβ j + f j = 0.

Это уравнение выполнено, если коэффициенты αj+1, βj+1 выбрать таким образом, чтобы выражения в квадратных скобках обращались в ноль.

То есть

α j+1

=

b j

, β j+1 =

a jβ j + f j

, j =1, 2, L, N 1. (4.27)

c j −α j a j

c j −α j a j

 

 

 

 

Для решения уравнений (4.27) необходимо задать начальные значения α1, β1, которые определяются из требования эквивалентности уравнения y0 = α1 y1 1 начальному условию (4.24). Тогда

α1 = ϰ1,β1 = µ1

(4.28)

Вычисление коэффициентов αj+1, βj+1 по формулам (4.27), (4.28) называется прямой прогонкой.

После того как прогоночные коэффициенты найдены, решение системы находится по рекуррентной формуле (4.25), начиная с j=N–1. Для начала счета по этой формуле требуется знать yN, которое определяем из уравнений

76

elib.pstu.ru

yN 1 = αN yN N , yN = ϰ 2 yN 1 2 ,

(4.29)

Нахождение yj по формулам (4.25), (4.29) называется обратной прогонкой.

Разностные схемы для уравнения теплопроводности

В области {0 < x <1,0 < t T} требуется найти решение уравнения

u

=

2u

+ f (x,t),

t

 

2 x

 

удовлетворяющее начальному условию u (x,0)= u0 (x)

и граничным условиям

u (0,t)= µ1 (t),u (l,t)= µ 2 (t).

(4.30)

(4.31)

(4.32)

Решение задачи (4.30)–(4.32) существует и единственно, обладает необходимым числом производных по x и по t и непрерывно зависит от начальных и граничных данных.

Для построения разностной сетки необходимо прежде всего ввести сетку в области изменения независимых переменных и задать шаблон.

Шаблон – определенное количество соседних точек, участвующих в построении разностной задачи.

Введем сетку по переменному x

ωh ={xi = ih; i = 0, 1, L, N; hN =1}

исетку по переменному t с шагом τ, которую обозначим

ωτ ={tn = nτ; n = 0, 1, L, K; Kτ =T} .

77

elib.pstu.ru

Точки (xi ,tn ), i = 0, 1, L, N; n = 0, 1, L,

K образуют узлы

пространственно-временной сетки ωh,τ = ωh ωτ .

 

Слоем называется множество всех узлов сетки ωh,τ , имеющих

одну и ту же временную координату.

 

Для функции y(x,t), определенной на сетке

ωh,τ , введем обо-

значения

 

yi = y (xi ,tn ).

 

Иногда для упрощения записи индексы i и n будем опускать.

Чтобы аппроксимировать уравнение (4.30) в точке (xi ,tn ), введем

четырехточечный шаблон,

состоящий из узлов (xi±1,tn ), (xi ,tn ),

(xi ,tn+1 ). Производную u

заменим в точке (xi ,tn ) разностным

t

отношением

ytn,i = yin+1τyin ,

апроизводную 2u – второй разностной производной

2 x

y n

=

yin+1 2 yin + yin1

.

xx,i

 

h2

 

Правую часть f (x,t) заменим приближенной сеточной функцией ϕin , в качестве которой можно взять одно из следующих выражений

f (xi ,tn ),

1

xi+0,5

f (x,tn )dx,

1

tn+1 dt xi+0,5

f (x,t )dx .

h

hτ

 

 

xi0,5

 

 

tn xi0,5

 

В результате получим разностное уравнение

yin+1 yin

=

yin+1 2 yin + yin1

+ ϕin ,

τ

h2

 

 

78

elib.pstu.ru

которое аппроксимирует исходное дифференциальное уравнение в точке (xi ,tn ) с первым порядком по τ и вторым порядком по h при

условии, что разность ϕin

f (xi ,tn ) имеет тот же порядок малости.

Тогда разностная схема будет иметь вид

 

yin+1 yin

=

yin+1 2 yin + yin1

+ ϕin ,

 

 

h2

 

τ

 

 

 

i =1, 2,

L, N 1,

 

n = 0, 1,

L, K 1,

 

hN =1,

 

 

 

 

 

Kτ =1,

 

 

 

(4.33)

 

y0n = µ1 (tn ),

 

 

 

yNn = µ2 (tn ),

 

n = 0, 1,

L, K,

 

yi0 = u0 (xi ), i = 0, 1, L, N

Разностная схема (4.33) представляет собой систему линейных алгебраических уравнений, с числом уравнений равных числу неизвестных. Решение подобных систем находят по слоям. Решение на нулевом слое задано начальными условиями

yi0 = u0 (xi ),

i = 0, 1, L, N.

Если решение yit , i = 0, 1, L, N на слое n уже найдено, то решение yin+1 на слое n+1 находится по явной формуле

yin+1 = yin + τ(yxxn ,i + ϕin ),

i =1, 2, L, N 1 ,

79

elib.pstu.ru

а значения y0n+1 = µ1 (tn+1 ), yNn+1 = µ2 (tn+1 ) доопределяются из гра-

ничных условий. По этой причине схема (4.33) называется явной разностной схемой.

Погрешность разностной схемы (4.33) определяется как разность между решением разностной задачи (4.33) и исходной (4.30) – (4.32)

 

 

 

 

zin

= yin u (xi ,tn ) .

(4.34)

Подставляя (4.34) в (4.33), получим уравнение для погрешности

 

 

 

zin+1 zin

=

zin+1 2zin + zin1

+ ψin ,

 

 

 

 

 

 

 

 

 

τ

 

 

 

h2

 

 

 

 

 

 

i =1, 2,

L, N 1 ,

 

 

 

 

 

 

n = 0, 1,

L, K 1,

 

 

 

 

 

 

hN =1,

 

 

 

 

 

 

 

Kτ =T ,

 

 

 

 

 

 

 

z0n = zNn

= 0,

(4.35)

 

 

 

 

 

n =1, 2,

L, K,

 

 

 

 

 

 

zi0 = 0,

 

 

 

 

 

 

 

i = 0, 1,

L, N

 

где ψn = −u n

+u n

+ ϕn

– погрешность аппроксимации разностной

i

t,i

xx,i

i

 

 

 

 

 

схемы (4.33) на решение задачи (4.30) – (4.32). Явную схему (4.33) можно применять лишь при условии τ ≤ 0,5h2 . Для объяснения используют метод гармоник.

Чисто неявной разностной схемой для уравнения теплопроводности называется разностная схема, использующая шаблон (xi±1,tn ), (xi ,tn ), (xi ,tn+1 ) и имеющая вид

80

elib.pstu.ru