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

1329

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

ном интервале при i = N определяется из граничных условий в этой точке. С одной стороны,

U N = χ2U N 1 + µN ,

а с другой, по выражению (3.35), –

U N 1 = αNU N + βN .

Из этой системы находится значение функции на последнем интервале разбиения пространственной координаты:

U N =

µ

2

+ χ2βN

.

(3.42)

1 αN χ

2

 

 

 

Зная эту величину и используя выражение (3.35), можно рассчитать значения искомой функции на остальных интервалах разбиения i = N 1, N 2, ..., 1 (обратный ход).

Используя этот метод, необходимо выполнить определённые условия, обеспечивающие устойчивость вычислительного процесса:

первое условие

 

C i

 

 

Ai

 

+

 

Bi

 

, i =1, 2, ..., N 1,

(3.43)

 

 

 

 

 

 

причём строгое неравенство должно выполняться хотя бы в одной точке;

второе условие

χ1,2 1 ,

 

χ1

 

+

 

χ2

 

< 2 .

(3.44)

 

 

 

 

При выполнении этих условий знаменатель выражений (3.41) всегда больше числителя и величина коэффициентов αi оказывается всегда меньше единицы. Поэтому возникшие в процессе расчёта ошибки округления не приводят к их возрастанию и накоплению.

Достоинством метода является минимальное число математических операций, необходимых на его реализацию и, самое главное, линейная зависимость числа операций от числа алгебраических уравнений (порядка 10 операций). Такие методы принято называть экономичными [24]. Это обстоятельство делает метод прогонки весьма популярным для решения уравнений математической физики.

61

Помимо основного варианта метода прогонки разработаны разновидности, применяемые для решения тех же краевых задач, что

идля основного варианта. К ним относятся метод обратной прогонки

иметод встречных прогонок.

Как следует из названия, метод обратной прогонки отличается тем, что вычисление прогоночных коэффициентов η i и ς i произво-

дится в обратной последовательности, начиная с N-интервала для N 1, N 2, ..., 2,1, с использованием выражения (3.35), а вычисле-

ние функции в прямой последовательности i =1, 2, ..., N 2, N 1:

U i +1 = ηiU i + ς i , i =1, 2, ..., N 1 .

(3.45)

Метод встречных прогонок применяется в том случае, если необходимо найти решение в одной из точек исследуемой области. Для этого, исходя из граничных условий при i = 0 , рассчитывают прого-

ночные коэффициенты αi и βi , до исследуемой точки. Затем рассчитываются прогоночные коэффициенты ηi и ς i , исходя из граничных

условий на второй границе при i = N . Записываются выражения искомой величины в исследуемой точке:

U

i =

i 1 I 1 + β

i+1

;

i 1 = η

iU

i + ς

i

.

(3.46)

 

α + U +

 

U +

 

 

 

Совместное решение этой системы позволяет определить значение искомой функции в точках i и i +1 . При необходимости значения функции в других точках исследуемой области рассчитываются по любому из приведённых выражений (3.46). Для реализации метода здесь и далее использован пакет MATLAB [29].

Пример 3.1. Решение краевой задачи методом прогонки. На ин-

тервале [0,1] решим краевую задачу методом прогонки:

Y ′′ − 2 XY ′ − 2Y = −4 X ; Y (0) Y (0) = 0; Y (1) = 1 + e = 3, 71828,

и сравним решение, полученное численным методом, с аналитическим решением [28]

Y = X + exp (х2 ) .

62

Для решения задачи исследуемую область разбиваем на N =10 интервалов величиной

h x =1 N =110 = 0,1.

Дифференциальные операторы уравнения заменяем конечноразностными выражениями:

Yi +1 2Yi + Yi 1

2 X

 

Yi+1 Yi1

2Y

= −4 X

 

.

h2

i 2h

 

 

i

 

i

 

x

 

 

x

 

 

 

 

Преобразуя эти выражения, получим систему трёхчленных алгебраических уравнений для каждого из интервалов разбиения пространственной координаты:

 

 

 

AiYi1 CiYi + BiYi+1 = −Fi ,

 

 

с коэффициентами

 

 

 

 

 

 

 

 

 

 

 

 

 

Ai =1+ Xi hx ;

Bi =1Xi hx ; Ci

= 2 + 2hx2 ,

i =1, 2, ..., N 2, N 1, N.

Краевые условия аппроксимированы следующим образом:

 

Y0 (Y1 Y0 ) / hx = 0 ;

YN = 3, 71828 .

 

 

Отсюда

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y0 =

 

Y1

;

χ1 =

 

 

1

 

;

µ1 = 0 .

 

 

 

1 + hx

 

 

+ hx

 

 

 

 

 

 

1

 

 

 

 

 

Прогоночные коэффициенты

 

 

 

 

 

 

 

α 1 = χ1 =

1

;

 

β1 = 0 ; α

i+1 =

 

Βi

 

 

; βi +1 =

F i + βi Ai

;

 

 

C i − α

 

 

C i − α i Ai

 

1 + hx

 

 

 

 

 

i Ai

 

i =1, 2, ..., N 1 .

Записываем значение искомой функции на каждом интервале разбиения пространственной координаты

Y i = α i +1Y i +1 + β i +1 ; i = N 1, N 2, ..., 2,1.

63

Программа решения краевой задачи:

n=10; hx=1./n; for j=1:n

x(j)=hx*j; a(j)=1.+x(j)*hx; b(j)=1.-x(j)*hx; c(j)=2.+2.*hx^2; f(j)=4.*x(j)*hx^2; end

alf(2)=1./(1.+hx); bet(2)=0.; for j=2: n

r1=c(j)-a(j)*alf(j); alf(j+1)=b(j)/r1; bet(j+1)=(a(j)*bet(j)+f(j))/r1; end

y(n+1)=3.71828; for j=n:-1:1

y(j)=alf(j+1)*y(j+1)+bet(j+1); end

for j=1:n+1

x(j)=hx*(j-1); x1=x(j)^2; x3=exp(x1); xx(j)=x(j)+x3; end

disp(y); disp(xx);

Результаты расчета приведены в табл. 3.1, 3.2.

Таблица 3 . 1

Коэффициенты системы трёхчленных алгебраических уравнений в зависимости от пространственной координаты

x

Ai

Bi

C i

F i

 

 

 

 

 

0,10000

1,0100

0,9900

2,0200

0,0040

0,20000

1,0200

0,9900

2,0200

0,0080

0,30000

1,0300

0,9700

2,0200

0,0120

0,40000

1,0400

0,9600

2,0200

0,0160

0,50000

1,0500

0,9500

2,0200

0,0200

0,60000

1,0600

0,9400

2,0200

0,0240

0,70000

1,0700

0,9300

2,0200

0,0280

0,80000

1,0800

0,9200

2,0200

0,0320

0,90000

1,0900

0,9100

2,0200

0,0360

1,00000

1,1000

0,9000

2,0200

0,0360

64

Таблица 3 . 2

Прогоночные коэффициенты, значения искомой функции и погрешность численного решения

x

α i

β i

Численное

Аналитич.

Погрешность

решение

решение

 

 

 

 

0,10000

0,9091

0

1,1512

1,1100

0,03712

0,20000

0,8985

0,0036

1,2772

1,2408

0,02933

0,30000

0,8881

0,0106

1,4262

1,3941

0,0230

0,40000

0,8776

0,0207

1,6015

1,5735

0,0178

0,50000

0,8670

0,0339

1,8081

1,7840

0,01351

0,60000

0,8561

0,0501

2,0534

2,0333

0,009885

0,70000

0,8449

0,0693

2,3482

2,3323

0,00681

0,80000

0,8334

0,0916

2,7078

2,6965

0,00419

0,90000

0,8215

0,1169

3,1540

3,1479

0,001935

1,00000

0,8092

0,1453

3,7183

3,7183

0

3.2.2. Циклическая прогонка

Большинство электрических машин имеют замкнутый магнитопровод. Исследование магнитных полей таких машин производится в цилиндрической системе координат. Для задач, решаемых в цилиндрической системе координат, широко используется вариант прогонки, называемый циклическим [27].

Характерной особенностью таких задач являются условия периодичности для коэффициентов уравнений и решения задачи:

F i = F i + N ; Ai = Ai + N ; Bi = Bi + N ; C i = C i + N ;

 

Y i = Y i + N ,

(3.47)

а также для них справедливы периодические краевые условия в точках сопряжения

Y0 = YN

;

Y0

=

YN

.

(3.48)

x

 

 

 

 

 

 

x

 

Поэтому решение краевой

задачи

достаточно

найти для точек

i = 0,1, 2, ..., N 1 и сформулировать её в виде:

65

A0Y N 1 C 0Y 0 + B0Y 1 = −F 0, i = 0;

 

AiY i 1 C iY i + BiY i+1 = −F i, 1 iN1;

(3.49)

 

 

Y N = U 0.

 

Будем искать решение как сумму составляющих

Y i = U i + Y N V i ,

0 ≤ i N ,

(3.50)

где Ui – решение неоднородной задачи с однородными краевыми условиями:

AU

C U

+ B U

= −F , 1 iN1;

(3.51)

i i 1

i i

i i+1

i

 

U 0 = 0; U N = 0;

Vi – решение однородной задачи с неоднородными краевыми условиями:

AV

C V + B V

= 0, 1 iN1;

(3.52)

i i 1

i i i i+1

 

 

V 0 =1; V N =1.

В полном соответствии систем (3.51) и (3.52) краевой задаче (3.49) можно убедиться, умножив (3.52) на YN и сложив с (3.51).

Каждая из краевых задач (3.51) и (3.52) решается методом прогонки, описанным выше:

U

i

=

 

i 1 i 1

+ β

i+1

;

 

V

i =

i 1 i 1 + γ

i+1

,

 

 

 

α + U

+

 

 

 

 

 

 

α + V +

 

 

 

 

 

αi +1 =

 

 

 

Bi

 

 

 

; βi +1 =

F i + Aiβi

;

 

 

 

 

 

C i αi Ai

 

 

 

 

 

 

 

 

 

 

 

 

 

C i αi Ai

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i =1, 2, ..., N 1, N

 

 

 

 

β

N +1

+

 

α

N 1

 

 

1

 

 

 

 

 

 

 

 

 

Y N =

 

 

 

 

 

+ U

 

 

 

; Yi = Ui + YNVi , 0

1 γ

N

=1

α

N

 

1 1

 

 

 

 

 

 

 

 

 

 

= V

 

 

 

 

 

 

 

 

 

i = N 1, N 2, ..., 1 ;

γ i+1

=

Aiγ

i

 

,

C i − α

 

 

 

 

 

i Ai

;

 

 

 

 

 

i

N , i =1, 2, ... N 1.

Для реализации циклической прогонки необходимо затратить 14N–8 математических операций на один интервал разбиения пространственной координаты, т.е. этот метод также является экономичным. При соблюдении условий устойчивости прогонки накопления ошибки не происходит, счёт является устойчивым.

66

Пример 3.2. Решение периодической задачи методом цикличе-

ской прогонки. В области [0, 2π ] решим краевую задачу

2Y 0, 446Y = f (x)

x2

спериодическими краевыми условиями

 

 

Y

Y

Y (0)

= Y (2π) = 0,

 

 

=

 

 

.

 

 

 

 

x 0

 

x 2π

Правая часть дифференциального уравнения является функцией пространственной координаты и для 24 интервалов имеет следующие значения:

f 1f 2= 0; f 3f 10= 0,137;

f 11

f 14= 0;

f 15f 22= − 0,137; f 23

f 24=

0.

Исследуемая область разбивается на N = 24 пространственных интервалов величиной

h x = N = 0, 2618 .

Дифференциальный оператор аппроксимируетcя конечно-раз- ностным выражением со вторым порядком точности и подставляется в уравнение

Y i +12Y i +Y i 1 0, 446Yi = − fi .

2

hx

Преобразуя это выражение, получаем систему трёхчленных алгебраических уравнений для всех интервалов разбиения пространственной координаты:

Ai Y i 1 C i Y i + Bi Y i +1 = − F i ,

 

i =1, 2, ..., N 1, N ,

 

где Ai = 1; Bi =1; Fi = f i h2x ;

Ci

= 2 + 0, 446hx2 ; Y0 = YN .

 

 

 

α1 = 0; β1 = 0; γ1 =1;

αi +1

=

 

Bi

 

 

; βi+1 =

Fi + Ai

βi

 

;

Ci

Ai

αi

 

Ci Ai

αi

 

 

 

 

 

 

67

γi+1 =

 

Ai γi

 

 

, i =1, 2, ..., N ,

U N 1 = βN ;

V N 1 = αN + γN ;

Ci Ai αi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

U

i

=

α

i +1

i +1 + β

i+1

;

V = α

V +

 

γ

i +1

,

i = N 2, N 3, ..., 2,1;

 

 

U

 

 

 

i

i +1 i+1

 

 

 

 

 

 

 

 

 

 

 

=

β N +1 + α N +1U1

Yi = Ui

+ YNVi ,

i =1, 2, ..., N 1;

 

 

YN

 

 

 

 

 

 

,

 

 

1− γ

N +1

− α

V

 

 

 

 

 

 

 

 

N +1 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= Y1

; Y0 = YN ;

 

Y

=

Y

Y

 

 

 

 

 

YN +1

 

 

 

 

i +1

i 1

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x i

 

2hx

По полученным данным построены графические зависимости A( x) = Y ( x) и B(x) = Y (x) , которые описывают распределение век-

торного потенциала и магнитной индукции по длине расточки стато-

ра (рис. 3.2).

Рис. 3.2. Пространственное распределение векторного потенциала (a) и магнитной индукции (б)

Программа решения краевой задачи:

n=24; dx=2.*pi/n;

a(1:n+1)=1.; b(1: n+1)=1.; c(1: n+1)=a(1: n+1)+b(1: n+1)+0.446*dx^2; f(1:n+1)=0; r1=0.137*dx^2; f(3:10)=r1; f(15:22)=-r1; ss(1:n)=0.;

alf(2)=0.; bet(2)=0.; gam(2)=1.;

disp(a); disp(b); disp(c); disp(f); disp(alf); disp(bet); disp(gam);

68

for j=1:n nn(j)=j;

end

for j=2:n+1

r=c(j)-a(j)*alf(j); alf(j+1)=b(j)/r; bet(j+1)=(f(j)+a(j)*bet(j))/r; gam(j+1)=a(j)*gam(j)/r;

end

u(n)=bet(n+1); v(n)=alf(n+1)+gam(n+1); for j=n-1:-1:2

u(j)=alf(j+1)*u(j+1)+bet(j+1); v(j)=alf(j+1)*v(j+1)+gam(j+1); end

r2=bet(n+2)+alf(n+2)*u(2); r3=1.-alf(n+2)*v(2)-gam(n+2); y(n+1)=r2/r3; y(1)=y(n+1);

for j=2:n y(j)=u(j)+y(n+1)*v(j);

end

bl(1)=(y(2)-y(n))/(2.*dx); bl(n)=(y(1)-y(n-1))/(2.*dx); for j=2:n-1

bl(j)=(y(j+1)-y(j-1))/(2.*dx); end

n1(nn)=nn; n2(nn)=ss; n3(nn)=bl(1: n); n4(nn)=y(1: n); disp(y); disp(bl);

plot(n1,n2,n1,n3,n1,n4)

Результаты решения задачи приведены в табл. 3.3, 3.4.

Таблица 3 . 3

Коэффициенты системы алгебраических уравнений и прогоночные коэффициенты

i

Ai

Bi

C i

α i

β i

γ i

1

1,0000

1,0000

2,0357

0.0000

0,0000

0,0000

2

1,0000

1,0000

2,0357

0.0000

0,0000

1,0000

3

1,0000

1,0000

2,0357

0,4925

0,0000

0,4925

4

1,0000

1,0000

2,0357

0,6502

0,0061

0,3202

5

1,0000

1,0000

2,0357

0,7244

0,0112

0,2319

6

1,0000

1,0000

2,0357

0,7656

0,0158

0,1776

7

1,0000

1,0000

2,0357

0,7905

0,0199

0,1404

69

Окончание табл. 3 . 3

i

Ai

Bi

C i

α i

β i

γ i

8

1,0000

1,0000

2,0357

0,8064

0,0199

0,1132

9

1,0000

1,0000

2,0357

0,8169

0,0270

0,0925

10

1,0000

1,0000

2,0357

0,8240

0,0300

0,0762

11

1,0000

1,0000

2,0357

0,8288

0,0326

0,0632

12

1,0000

1,0000

2,0357

0,8321

0,0271

0,0525

13

1,0000

1,0000

2,0357

0,8344

0,0226

0,0438

14

1,0000

1,0000

2,0357

0,8360

0,0189

0,0367

15

1,0000

1,0000

2,0357

0,8371

0,0158

0,0307

16

1,0000

1,0000

2,0357

0,8379

0,0054

0,0257

17

1,0000

1,0000

2,0357

0,8385

–0,0033

0,0216

18

1,0000

1,0000

2,0357

0,8389

–0,0107

0,0181

19

1,0000

1,0000

2,0357

0,8391

–0,0168

0,0152

20

1,0000

1,0000

2,0357

0,8393

–0,0220

0,0127

21

1,0000

1,0000

2,0357

0,8395

–0,0264

0,0107

22

1,0000

1,0000

2,0357

0,8395

–0,0300

0,0090

23

1,0000

1,0000

2,0357

0,8395

–0,0331

0,0075

24

1,0000

1,0000

2,0357

 

 

 

Таблица 3 . 4

Коэффициенты U(J), V(J) и результаты решения краевой задачи Y(j) и BL(j)

i

Ui

Vi

Yi

BLi

1

0

0

0,0126

0,0973

2

0,0276

0,8450

0,0383

0,1003

3

0,0561

0,7159

0,0652

0,0884

4

0,0769

0,6086

0,0846

0,0613

5

0,0907

0,5199

0,0973

0,0360

6

0,0978

0,4471

0,1035

0,0119

7

0,0986

0,3880

0,1035

–0,0119

8

0,0929

0,3408

0,0973

–0,0360

9

0,0808

0,3039

0,0846

–0,0613

10

0,0617

0,2764

0,0652

–0,0884

11

0,0351

0,2573

0,0383

–0,1003

70

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]