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

Дискретно-полевые модели электрических машин. Часть I II

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

Исследуемую область разбивают на N интервалов величиной hx . Решение краевой задачи ищем в виде U = sin αx , коэффициент которогоα определяется из граничных условий.

Запишем значения функций для точек i +1 и i 1 с координатами x + hx и x hx соответственно

Ui +1 = sin α(x + hx ) ; Ui 1 = sin α(x hx ) .

 

 

 

(5.3)

Заменяя производную в уравнении (5.2) конечно-разностным

оператором, будем иметь

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

λhx2

 

 

 

Ui+1 2Ui +Ui1 + λUi hx

= 2sin αx

cos αhx

1

 

 

= 0.

(5.4)

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поскольку находится нетривиальное решение sin αx

0 , то

 

cos αhx

 

1 +

λhx2

= 0 ,

 

 

 

 

(5.5)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

откуда собственное значение

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

λ =

4

 

 

 

2

 

αhx

 

 

 

 

 

 

 

 

sin

 

 

 

 

 

 

.

 

 

 

 

(5.6)

 

2

 

 

 

 

 

 

 

 

 

 

hx

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

Определим α , используя граничные условия. При x = 0 гранич-

ное условие выполняется всегда.

 

Второе граничное

условие

при

x = L выполняется в том случае, если αL = kπ,

где k =1, 2, ... – целое

число. Отсюда определяется

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

α =

kπ

.

 

 

 

 

 

 

 

 

(5.7)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L

 

 

 

 

 

 

 

 

 

 

Если x = ihx и L = Nhx , то собственные функции

 

 

 

Uk = sin

kπx

= sin

kπi

,

 

 

 

 

(5.8)

 

 

 

 

 

 

 

 

 

 

L

 

 

 

 

 

 

 

 

N

 

 

 

 

 

а собственные значения

111

λ k

=

4

sin

2

αhx

=

4

sin

2

kπhx

=

4

sin

2

kπ

.

(5.9)

h2

 

h2

 

 

 

 

 

 

2

 

 

 

2L h2

 

 

2N

 

 

 

x

 

 

 

 

x

 

 

 

 

x

 

 

 

 

 

Таким образом, собственные функции дискретного оператора Лапласа описываются выражениями

 

Uk

= sin

kπi

,

 

 

 

 

 

 

 

 

 

 

N

а собственные значения –

 

 

 

 

 

 

 

 

 

λ

 

=

4

sin

2

kπ

.

k

h2

 

 

 

 

 

 

2N

 

 

 

x

 

 

 

 

 

 

Все собственные значения положительны и лежат в диапазоне

0 ≤ λ ≤

4

.

 

k

h2

 

x

Собственные функции ортогональны на интервале [0,L], а их норма

 

 

 

 

 

L

L

 

kπx

dx == (

 

 

 

 

2kπx

)

 

L

 

 

 

 

 

 

1

 

L

 

 

 

L

 

 

Uk

 

 

 

= U k2dx = sin

2

sin

 

=

. (5.10)

 

 

 

 

 

 

 

 

 

0

0

 

L

2

 

2kπ

 

L

 

0 2

 

 

 

 

 

 

 

 

 

 

В этом случае собственные функции с учётом нормировки записываются в виде

µi

=

2

sin

kπi

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

(5.11)

L

 

 

 

 

N

 

В работах [18, 23, 25, 27, 32, 33] показано, что финитную функцию можно представить в виде разложения по собственным функциям дискретного оператора Лапласа:

 

2

N 1

kπi

 

 

f (i ) =

φk sin

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

(5.12)

 

 

 

N k =1

N

 

где коэффициенты разложения

112

N 1

kπi

 

 

φk = f (i)sin

.

(5.13)

 

i =1

N

 

Рассмотрим метод разделения переменных при решении двумерного уравнения Пуассона при нулевых граничных условиях первого рода:

 

 

2U

+

 

2U

= f ( x, y )

(5.14)

 

 

x2

 

 

 

 

y 2

 

или

 

 

 

 

 

 

 

 

U= ∆

1U+ ∆

2U= f ( x, y ),

(5.15)

где 1 и

2 – одномерные операторы Лапласа.

 

Будем рассматривать искомую функцию U (x, y) и правую часть

уравнения

f (x, y) как функции сеточного аргумента U (i, j) и

f (i, j) .

Поскольку обе функции обращаются на границах исследуемой области в нуль, их можно разложить по собственным функциям дискрет-

ного оператора Лапласа, например µk ( j) :

N 21

 

 

 

 

 

 

 

U (i, j) = U k (ik ( j) , 0 ≤ j

N 2 , 0 ≤ i

N 1 ;

k =1

 

 

 

 

 

 

 

N 21

 

 

 

 

 

f (i, j) =

ϕ k (ik ( j) , 0 ≤ j

N 2 , 0 ≤ i

N 1 ;

k =1

 

 

 

 

 

 

 

 

µk ( j) =

2

sin

kπj

.

 

 

L2

 

 

 

 

 

N 2

 

(5.16)

(5.17)

(5.18)

Подставляя выражения для U (i, j) и f (i, j) в уравнение (5.15), получим

N 21

U (i, j)= ∆ 1U (i, j+) 2U (i,=j)1 U k (ik+( j)

k =1

N 21

2 U k (ik ( j) (5.19)

k =1

113

или

U (i, j)=

N2 1

1

k (i

k

( j)+

2

k (i

k

( j) .

(5.20)

 

U

 

 

U

 

 

 

 

 

k =1

 

 

 

 

 

 

 

 

 

 

 

Поскольку µk ( j)

не зависит от координаты

x

i ,

эту собствен-

ную функцию можно вынести за знак производной по i . Аналогич-

но, U k (i) не зависит от координаты

y j . Поэтому эту функцию

также можно вынести за знак производной по

j . Тогда будем иметь

N2 1

 

 

k

 

 

U

 

U

 

 

k

 

N2 1

k

 

 

k

 

 

 

 

 

µ

( j)

k (i) +

 

2µ

( j) =

(i

( j)

 

.

(5.21)

k =1

 

 

 

1

 

k (i)

 

 

 

φ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k =1

 

 

 

 

 

 

 

Собственные функции дискретного оператора Лапласа

2 , как

показано выше, находятся при решении уравнения

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2µk ( j) + λk µk ( j) = 0 .

 

 

 

 

 

 

 

 

(5.22)

Отсюда следует

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2µk ( j) = −λkµk ( j) .

 

 

 

 

 

 

 

 

(5.23)

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

 

 

N2 1 µ

k

( j)

1

k (i)

λ

k

k

(i

k

( j) φ

(i

k

( j) = 0 .

(5.24)

 

 

U

 

U

 

 

 

k

 

 

 

 

 

 

 

k=1

Всилу ортогональности собственных функций дискретного оператора Лапласа указанное равенство выполняется для каждого члена разложения. Тогда

U

λ

U

 

k

(i) = 0 , 1 i

1

(5.25)

1 k (i)

k

 

k (i) φ

N1,

при краевых условиях U k (0) = U k (N 1) = 0 .

 

 

В этом выражении собственные значения оператора

2

λ k =

 

 

4

 

 

sin 2

kπ

 

, k = 1, 2,..., N2 .

(5.26)

 

(h y )

2

 

 

 

 

 

 

2N2

 

 

114

Таким образом, для каждого члена разложения k =1, 2, ..., N2 1

решается одномерная краевая задача (5.25) с использованием прогонки по i при минимальном числе математических операций. Рассчитав U k (i) , можно по выражению (5.17) восстановить искомую

функцию во всех точках исследуемой области. Нахождение коэффициентов разложения φk (i) и восстановление искомой функции про-

изводится с использованием БДПФ с минимальной затратой математических операций. Подобный подход распространяется и на решение многомерных краевых задач с уравнениями Пуассона, а также других, более сложных задач, допускающих разделение переменных. В качестве одномерного вэтомслучае может бытьвзят оператор вида

 

 

U

 

U

 

 

L1U = k1(x)

 

k 2(x)

 

 

 

+ R(x1)

 

q(x1 )U ,

(5.27)

 

 

 

x1

 

x1

x1

 

 

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

Решение уравнений Лапласа и Пуассона методом разделения переменных с использованием БДПФ является самым быстрым и точным способом решения этих уравнений.

Уравнения Лапласа и Пуассона могут быть решены с использованием метода редукции. Идея метода заключается в том, чтобы постепенно понижать порядок системы, исключая последовательно сначала неизвестные с нечётными номерами, затем неизвестные с номерами, кратными двум, затем – кратными четырём, восьмиит.д.

Если число неизвестных кратно 2k, то в результате последовательного исключения остаётся одно уравнение, из которого можно найти неизвестное с номером k / 2 . После этого осуществляется обратный ход, в результате которого вычисляются значения неизвест-

ных с номерами k / 4, k / 8, k /16, ..., k / 2k, k / k .

Метод редукции по числу вычислительных операций сравним с методом разделения переменных, т.е. N log2 N , однако имеет более сложный алгоритм реализации. Описание этого метода и его

115

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

[27, 32, 33].

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

Пример 5.1. Решение двумерной краевой задачи методом раз-

деления переменных. Решим уравнение Пуассона

2U

+

2U

= f (x, y)

x2

 

 

y 2

 

 

 

 

в квадрате [0 :1,0 :1] при нулевых граничных условиях:

U (0, y) = U (1, y) = U (x,0) = U (x,1) = 0 .

Задачу решаем в следующей последовательности. Разбиваем стороны квадрата на N интервалов величиной

hx = h y = 1 . N

Записываем решение задачи и правую часть дифференциального уравнения в виде разложения по собственным функциям дискретного оператора Лапласа:

 

2

N2 1

 

 

 

2

N2 1

U (i, j) =

Yk (i)µk ( j) ; f (i, j) =

ϕ k (iµ) k ( j) ;

N 2

N 2

 

k =1

 

 

 

k =1

 

 

µk

( j) =sin(

kπj

) .

 

 

 

 

 

 

 

 

 

 

 

N 2

 

 

Подставляя указанные разложения в дифференциальное уравнение, будем иметь

N2 1

µ ( j)

[

 

(i)] +

N2 1

 

 

[ µ (i)]

N2 1

 

(i)µ ( j) ,

Y k

Y k

(i)

2

= − ϕ

k

k

1

 

k

k

k =1

 

 

 

 

k =1

 

 

 

k =1

 

 

N2 1

 

 

 

 

 

 

 

 

 

 

где ϕ k= f (i, jk ( j) ,

 

 

 

 

 

 

 

j =1

116

а ∆1 и ∆2 – дискретные двумерные операторы Лапласа. Учитывая, что

µ

( j) = −

λ

k µ

k

( j) ,

2 k

 

 

 

получим

N 1

2 µk ( j){1[Y k (i)] λkY k (i) + φ(i)} = 0 .

k =1

С учётом ортогональности собственных функций уравнения для членов разложения записываются в виде

1[Y k (i)] λkY k (i) = −φk (i) ,

i =1, 2, ..., N1 1; k =1, 2, ..., N2 1, Y k (0) = 0 ; Y k (N 1) = 0 .

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

Yk ,i +1 2Yk ,i

+ Yk ,i 1

λkY k ,i = −φk ,i

,

2

 

h x

 

 

 

i =1, 2, ..., N1 1; k =1, 2, ..., N2 1; Y k ,0 = 0 ; Y k , N1 = 0 .

Собственные значения дискретного оператора Лапласа известны:

λk =

4

 

 

2

 

kπ

 

 

 

sin

 

 

 

.

(h y )

2

 

 

 

 

 

 

 

2N2

 

Преобразовывая каждое

 

из

 

уравнений системы для

k = 1, 2, ..., N2 1, приведём его к виду

 

 

AiY i 1 C iY i + BiY i+1 = −F i

,

i =1, 2, ..., N1 1.

Полученную систему совместно с нулевыми граничными условиями решаем методом прогонки с минимальной затратой математических операций. Подобные решения осуществляем для всех k =1, 2, ..., N2 1 членов разложения. Восстанавливаем иско-

мую функцию, используя приведённое выше выражение.

117

Результаты решения при N1 = N2 = N = 16, f (1: N1;1: N2 ) = 0; f (7 : 9, 7 : 9) = 100 представлены ниже.

Программа решения краевой задачи методом разделения переменных:

n1=17; n2=17; hx=1./(n1-1); hy=1./(n2-1); f(1:n1,1:n2)=0.; f(8:10,8:10)=100; for k=2:n2-1

r1=(k-1)*pi/(2.*(n2-1)); r2=sin(r1); lam(k-1)=4.*r2*r2/(hy*hy);

end fi(1:n1,1:n2)=0.; for i=8:10

for k=2:n2 fi(i,k-1)=0; for j=2:n2

r1=(k-1)*pi*(j-1)/(n2-1); r2=sin(r1); r3=f(i,j); fi(i,k-1)=fi(i,k-1)+r2*r3;

end

end end

for k=2:n2-1 for i=1:n1

a(i)=1.; b(i)=1.; c(i)=2.+hx*hx*lam(k-1); ff(i)=hx*hx*fi(i,k-1);

end

alf(2)=0.; bet(2)=0.; for i=2:n1

r=c(i)-alf(i)*a(i); alf(i+1)=b(i)/r; bet(i+1)=(ff(i)+bet(i)*a(i))/r;

end y(n1,k-1)=0; for i=n1-1:-1:1

y(i,k-1)=alf(i+1)*y(i+1,k-1)+bet(i+1);

end

end

for i=2:n1-1 for j=2:n2-1

r4=0;

for k=2:n2-1

r1=(k-1)*pi*(j-1)/(n2-1); r2=sin(r1); r3=y(i,k-1); r4=r4+r2*r3; u(i,j-1)=2.*r4/(n2-1); end

end end

disp(u); surf(u)

118

Результаты решения краевой задачи приведены в табл. 5.1–5.5.

 

 

 

Таблица 5 . 1

Собственные значения дискретного оператора Лапласа

 

 

 

 

k

λ

k

λ

1

9,8

9

611,9

2

39

10

707,9

3

86,3

11

796,5

4

150

12

874

5

227,5

13

937,7

6

326,1

14

985

7

412,1

15

1014,2

8

512

 

 

Таблица 5 . 2 Правая часть дифференциального уравнения

j

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

2

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

3

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

4

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

5

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

6

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

7

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

8

0

0

0

0

0

0

0

100

100

100

0

0

0

0

0

0

0

9

0

0

0

0

0

0

0

100

100

100

0

0

0

0

0

0

0

10

0

0

0

0

0

0

0

100

100

100

0

0

0

0

0

0

0

11

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

12

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

13

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

14

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

15

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

16

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

17

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

119

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица

5 . 3

 

 

 

 

 

Преобразованные по Фурье правые части

 

 

 

 

 

 

 

 

 

 

 

дифференциального уравнения

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

 

 

 

 

 

 

φ(k)

 

 

 

 

 

 

 

 

k

 

 

 

 

φ(k)

 

 

 

1

 

 

 

 

 

296,1571

 

 

 

 

 

 

9

 

 

 

 

60,9819

 

 

 

2

 

 

 

 

 

0

 

 

 

 

 

 

 

 

10

 

 

 

 

 

0

 

 

 

 

3

 

 

 

 

 

–266,2939

 

 

 

 

 

 

11

 

 

 

 

11,1140

 

 

 

4

 

 

 

 

 

0

 

 

 

 

 

 

 

 

12

 

 

 

 

 

0

 

 

 

 

5

 

 

 

 

 

211,1140

 

 

 

 

 

 

13

 

 

 

 

–66,2939

 

 

 

6

 

 

 

 

 

0

 

 

 

 

 

 

 

 

14

 

 

 

 

 

0

 

 

 

 

7

 

 

 

 

 

–139,018

 

 

 

 

 

 

15

 

 

 

 

96,1571

 

 

 

8

 

 

 

 

 

0

 

 

 

 

 

 

 

 

16

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица

5 . 4

 

 

 

 

Решение системы алгебраических уравнений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

1

2

 

 

 

3

 

 

4

 

 

 

5

 

6

 

 

7

 

 

8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0,7037

1,4344

 

 

2,2202

 

3,0914

 

4,0813

5,2281

6,5758

 

7,0194

 

2

 

–0,035

–0,083

 

–0,158

 

–0,287

 

–0,513

–0,912

 

–1,618

–1,830

 

 

5

0,0022

0,0063

 

 

0,0161

 

0,0402

 

0,1000

0,2488

0,6187

0,7138

 

7

–0,0002

–0,0006

 

–0,0021

 

–0,0070

 

–0,0230

–0,0761

–0,2519

 

–0,2900

 

9

0,0000

0,0001

 

 

0,0003

 

0,0011

 

0,0046

0,0191

0,0792

0,0903

 

11

0,0000

0,0000

 

 

0,0000

 

0,0001

 

0,0005

0,0023

0,0115

0,0130

 

13

0,0000

0,0000

 

–0,0001

 

–0,0004

 

–0,0020

–0,0108

–0,0594

 

–0,0667

 

16

0,0000

0,0000

 

 

0,0001

 

0,0004

 

0,0024

0,0139

0,0804

0,0900

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

9

 

10

 

 

11

 

 

 

12

 

 

13

 

 

14

 

15

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

6,5758

 

5,2281

 

4,0813

 

3,0914

 

2,2202

 

 

1,4344

0,7037

 

3

 

–1,6185

 

–0,9122

 

–0,5133

 

–0,2875

 

–0,1585

 

–0,0830

–0,0355

 

 

5

 

0,6187

 

0,2488

 

0,1000

 

0,1000

 

0,0161

 

 

0,0063

0,0022

 

7

 

–0,2519

 

–0,0761

 

–0,0230

 

–0,0070

 

–0,0070

 

–0,0006

–0,0002

 

 

9

 

0,0792

 

0,0191

 

0,0046

 

0,0011

 

0,0003

 

 

0,0001

0,0000

 

11

 

0,0115

 

0,0023

 

0,0005

 

0,0001

 

0,0000

 

 

0,0000

0,0000

 

13

 

–0,0594

 

–0,0108

 

–0,0020

 

–0,0004

 

–0,0001

 

0,0000

0,0000

 

15

 

0,0804

 

0,0139

 

0,0024

 

0,0004

 

0,0001

 

 

0,0000

0,0000

120