Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
На правах рукописи
Специальность:
05.13.18 – Математическое моделирование, численные методы
и комплексы программ
ТАГАНРОГ 2012
2
СОДЕРЖАНИЕ
ВВЕДЕНИЕ............................................................................................................. 6
ВВЕДЕНИЕ
2 v2 G E f 1 2E f
1 4E z 1
E f En Em ,
2
при этом 0 для упругого рассеяния, 0 для случая эмиссии
фонона, 0 – для случая абсорбции, E z – кинетическая энергия
8
движения вдоль оси нанопроволоки, E f – единичная функция Хевисайда,
Ez
2 2
2m *
k k4 . (2)
Dijk
E , Eijk , ij E Eijk
2ij 2 4 E Eijk 2
ij2
, (5)
4E Eijk
2
ij2
вдоль оси абсцисс и ординат соответственно, при этом полагается, что ось
аппликат направлена вдоль оси квантовой проволоки, E – кинетическая
энергия движения электронов вдоль оси нанопровлоки.
Интегралы перекрытия вида
Расчёт обменно-
корреляционного
Решение уравнения потенциала
Шрёдингера и
потенциала
Кона-Шема
Нет Да
Решение Конец итераций
сходится?
x 2 y 2 H 0 e
с областью рассмотрения вида
G x, y x a, b, y c, d R 2 . (19)
Нанопроволока, моделируемая системой (18) на области (19),
представлен на рис. 2а, расчёт его электронной структуры важен для
разработки двухзатворных гетероструктурных транзисторов на основе GaAs
нанопроволок [4, 15], возможная структура которых в поперечном разрезе
представлена на рис. 2б.
а) б)
y n-AlAs Затвор 1
y
Ly p-GaAs
z
Ly
n-AlAs Затвор 2
O x O x
Lx Lx
сетки вдоль оси абсцисс, N y – число узлов сетки вдоль оси ординат.
2 k N j 2 k k N j 2
* k 1 k k 1
Vk k E k ,
2 m h 2
h 2
x y
(24)
k N j 2 k k N j k 1 2 k k 1 8
e k ,
h 2
h 2
x y 0
где k 0, N x N y .
N terms
x, y vii x, y , (29)
i 1
j 1 G 0 j 1 G
где i 0, Nterms .
Систему (30) можно представить в матричном виде
Cp Ip,
(31)
Av f,
где I – единичная матрица,
2
Cij * i x, y j x, y i x, y j x, y dx dy , (32)
G 2m
Aij i x, y j x, y dx dy, (33)
G
Gk x, y x x , x
i i 1 , y y j , y j 1 , (35)
y j , k y j khy , (37)
где 0, nx , k 0, n y , hx xi xi 1 nx , hy y j y j 1 ny , i 0, N x ,
m
x 2 w j 2 x j ,
j 1 m
m
y 2 w j 2 y j ,
j 1 m
m
(41)
x
2 w~ j 2 x j ,
j 1 m
m
y 2 w~ j 2 y j ,
j 1 m
m
где w j 1, w~ j 1 j w j 1 , j 1 m, j .
j 1 m
Таблица 1
Сравнение невязок
Численный e E Источник
метод
МКЭ + вейвлет – – 10 6 [74]
МКЭ 10 6 – – [75]
МКЭ + вейвлет – – 10 10 [73]
МСЭ 10 10 – 10 14 [76]
25
МКР – 10 2 – [77]
МКР – – 10 5 [69]
МКР 10 10 10 2 – [60]
МКЭ 10 4 10 2 – [70]
~
где P 2 k , k 0,1, 2, ... , x0 a , xP~ b .
Интерполирующие полиномы Ньютона строятся в узлах
расположенных в закрытых интервалах xi , xi1 . При последующем
вычислении аппроксимирующего полинома для однозначной адресации в
границах x i , xi 1 подынтервалов (1.2) по номеру i к массиву коэффициентов
аппроксимирующего полинома, все подынтервалы считаются открытыми
справа интервалами вида xi , xi 1 из (1.2).
Ниже вводятся ограничения числа подынтервлов и степени
интерполирующего полинома вида:
k k0 , (1.3)
n n0 , (1.4)
где n0 const – априори задаваемое значение верхней границы степени
приближающего полинома, k0 const – априори задаваемая верхняя граница
для k из (1.2).
В отличие от прототипа [96] на каждом подынтервале (1.2) с учётом
условий (1.3), (1.4) строится аппроксимирующий полином степени n вида
i x Pn i x
Pnfwd bkw
Pn i x , (1.5)
2
функции f не учитывается).
Так как коэффициенты полинома (1.7) сохранены в памяти
компьютера, то время его вычисления по схеме Горнера оценится из
выражения
t 1 n t y tc , n const , (1.10)
где x xi , xi 1 .
Аналогично на отрезке xi , xi 1 в узлах (1.11) строится полином
Ньютона для интерполяции назад [99]:
n j y i,n j j 1
Pnbkw
i x f ( x i,n ) ( x x i,n m ) . (1.14)
j 1 j !h j m0
j y i ,0
bijfwd , (1.15)
j!
j y i, n j
bijbkw , (1.16)
j!
полиномы (1.13), (1.14) примут вид соответственно
j 1
n bijfwd
Pnfwd
i x f ( x i ,0 ) ( x x i , ) , (1.17)
j 1 hj 0
j 1
n bijbkw
Pnbkw
i x f ( x i,n ) ( x x i,nm ) . (1.18)
j 1 hj m0
где x xi , xi 1 .
В равенстве (1.17) вводится переменная
43
x x i ,0
t , (1.19)
h
где h из (1.12), что влечёт
n j 1
Pnfwd
i t x f ( x i ,0 ) bijfwd (t ) , (1.20)
j 1 0
где q n, 0 .
С целью приведения полинома (1.5) к виду (1.7) используется
матричная схема вычисления коэффициентов полиномов по его корням [28]:
*
d j, j 1 0 0 0
d j*, j 1 z j 1 0 0
*
d j
0 z 0 0 ,
j , j 2
j
(1.23)
1
*
j ,1
d 0 0 z j 1
d j, 0 * 0 0 0 z j
j 1
j t , Rn, j q соответственно, z –
где d j*,j – коэффициенты полиномов Rn,fwd bkw
j t , Rn, j q , 0, j 1 , j 0, n ,
корни полиномов Rn,fwd bkw
j 1 j
Rnfwd
,j t (t ) dfwd t , (1.24)
0 0
j 1 j
Rnbkw
,j q (q m) d mbkw q m . (1.25)
m0 m0
44
Детальное описание схемы (1.23) и её алгоритмическая реализация
приводятся в приложении 1.
С учётом равенств (1.24), (1.25) полиномы (1.20), (1.22) примут вид
соответственно
n j
i t x f ( x i , 0 ) bij
Pnfwd dfwd t ,
fwd
(1.26)
j 1 0
n j
Pnbkw
i qx f ( x i,n ) bijbkw d mbkw q m . (1.27)
j 1 m0
n
i q x
Pnbkw aijbkw q j , (1.29)
j 0
где
, 0 f xi , 0 ,
aifwd
fwd n
i, j
a bi,fwd fwd
m d j,m , (1.30)
m j
j 1, n,
, 0 f xi , n ,
aibkw
bkw n
ai , j bi , m d j , m ,
bkw bkw
(1.31)
m j
j 1, n.
Перейдём в полиноме (1.29) к переменной t из (1.19), учитывая, что
t q n. (1.32)
Выразив q из (1.32) и подставив в (1.29), получим
n
Pnbkw
i t x aijbkw t n j . (1.33)
j 0
откуда следует
n
i t x
Pnbkw Aibkw j
,j t , (1.34)
j 0
где
n
, l 1
aibkw
l j
Aibkw
,j C lj nl j . (1.35)
l j
где t из (1.19),
, j ai , j
Aibkw fwd
Bi , j . (1.37)
2
Как отмечалось выше, после того как коэффициенты (1.37) вычислены,
по алгоритму 1.1 проверяется условие (1.6), если полином (1.36)
удовлетворяет неравенству (1.6) во всех проверочных точках, то
построенный полином (1.36) с коэффициентами (1.37) принимается за
искомый полином вида (1.5).
Аппроксимирующий полином в виде (1.36) вычисляется по схеме
Горнера
Pn i (t ) Bi , n t Bi ,n 1 t Bi ,n 2 t ... Bi ,0 , (1.38)
где t из (1.19).
В силу построения на основе интерполяции алгоритм с применением
(1.36) – (1.38) применим для аппроксимации широкого класса функций, при
этом, как будет проиллюстрировано численным экспериментом, достигает
высокой точности аппроксимации с малой временной сложностью.
46
Представленный подход, помимо излагаемого в дальнейшем
назначения, целесообразен для создания библиотеки алгоритмов вычисления
часто используемых функций, что позволяет существенно снизить время
численных экспериментов при проведении компьютерного моделирования
[31, 102], а также повысить точность получаемых в результате физических
характеристик [105].
Как отмечалось, представленная схема инвариантна относительно вида
функции и интервала из области определения.
Тем не менее, в дальнейшем предполагается, что аппроксимируемая
функция непрерывна на отрезке a, b, способ применения изложенного
подхода в случае разрывных функций будет дан в приложении.
Помимо того, относительно размера отрезка a, b необходимы
следующие ограничения. Формально интерполяция возможна всюду в
области определения, однако, поскольку метод опирается на компьютерный
алгоритм, то его реализация ограничена форматом плавающей точки,
поэтому возникает задача избежать потери значащих цифр мантиссы чисел с
ростом их диапазона. Для этой цели в случае стандартных функций
используются формулы редукции аргумента к значению из основного
интервала. Такие формулы используются в библиотеках стандартных
подпрограмм [106], их вид представлен в [101, 107].
Замечание 1.1. Возможно построение схем, использующих другие
интерполяционные полиномы, например полиномы с центральными
разностями или отрезки ряда по ортогональным полиномам [97, 101]. Их
описание приводится в приложении к главе 1, результаты численного
эксперимента в сравнении с представленной выше схемой представлены
ниже.
Таким образом, изложена модификация аппроксимации на кусочно-
полиномиальной основе функций вида (1.1) с помощью полусуммы
интерполяционных полиномов Ньютона.
47
1.2. Равномерная сходимость кусочно-полиномиальной схемы
аппроксимации функций одной переменной [108]. Доказательство
равномерной сходимости кусочно-полиномиальной аппроксимации в
зависимости от числа подынтервалов (1.2) в сокращённом виде приводится
на основе [108].
Пусть зафиксирована степень аппроксимирующего полинома
n const , и пусть функция (1.1) непрерывна и непрерывно
дифференцируема n 1 раз на отрезке a, b из (1.2). Все рассматриваемые
, n 0 x Pn 0 x , P0 , n 0 x Pn 0 x .
для полинома (1.18), где P0fwd fwd bkw bkw
где 0, n ,
n
x x0,n m b a
n 1
, (1.44)
0
где m 0, n .
48
С учётом неравенств (1.43), (1.44) выражения (1.41), (1.42) примут вид
соответственно
max f n 1 x
xa , b
f x P0fwd
, n 0 x b a n 1 , (1.45)
n 1!
max f n 1 x
xa , b
f x Pbkw
0 , n 0 x b a n 1 . (1.46)
n 1!
Аппроксимирующий полином P0 , n 0 x из (1.5) конструируется как
f x P0 , n 0 x
1
2
f x Pnfwd
0 x f x P k , n 0 x
bkw
(1.47)
f x Pk , n 0 x M n (1.48)
где
max f n 1 x
xa , b
Mn b a n 1 . (1.49)
n 1!
Величина M n является константой при фиксированных a , b , n .
xi 1 xi b a 2 k , i 0,1, ..., 2k 1 , получим оценку
f x Pk , n i x , x a, b ,
Mn
k n 1
(1.51)
2
Mn
где k 0,1, 2, ... – из (1.2). Из неравенства (1.61) следует lim 0,
k 2k n1
откуда окончательно получаем
Pk , n i x
f x , x a, b .
xa , b
f x dx Pn i t x dx , (1.56)
xi xi
где t x из (1.19).
В силу аддитивности интеграла по промежутку интегрирования
справедливо приближённое равенство
b P 1 xi 1
f x dx
i 0
Pn i t x dx , (1.57)
a xi
Pn i t x dx h Pn i t dt , (1.58)
x i 1 0
Pn i t x dx h
1 j 1
Bi , j n , (1.59)
x i 1 j 0 j 1
где t x из (1.19).
Полином в правой части может быть вычислен по схеме Горнера
B B B B
Pn i n ... i , n n i , n 1 n i , n 2 n i ,0 n .
~
(1.61)
n 1 n n 1 1
52
Приближённое равенство (1.60) с учётом соотношения (1.57)
запишется в виде
~
b P 1 n
f xdx h
1 j 1
Bi , j n . (1.62)
a i 0 j 0 j 1
Pk , n i x Pn i x , устанавливает
53
Теорема 1.2. В условиях теоремы 1.1 каково бы ни было натуральное
2 k 1 xi 1
n n0 , где n 0 из (1.4), последовательность Pk , n i x dx равномерно
i 0 xi
b
сходится на отрезке a, b из (1.2) к f x dx при k , где k log 2 P , P –
~ ~
a
f x dx
i 0
Pk ,n i x dx 1 ,
a xi
t (2 j ) t y log 2 j tc , (1.66)
t nn 1 2 log 2 n t y , –
t n (n 1) / 2 t y log 2 n t c .
t P n 2 n 2 t y log 2 n tc .
Таблица 1.2
Абсолютная погрешности аппроксимации производной функции y x arctg x
f P f N fG fT f M
x Предложенный Полином Полином Полином
MathCad
метод Ньютона Гаусса Чебышёва
0.00E+0000 3.401E-17 1.920E-14 4.768E-07 9.536E-07 1.387E-15
1.00E-0001 7.616E-18 4.767E-16 6.544E-07 1.869E-07 7.494E-16
2.00E-0001 2.141E-18 1.186E-16 8.817E-08 5.290E-07 1.387E-15
3.00E-0001 8.131E-19 1.387E-17 8.829E-07 4.816E-07 1.110E-15
4.00E-0001 1.409E-18 2.840E-16 2.126E-07 1.417E-07 2.109E-15
5.00E-0001 7.464E-17 5.019E-15 3.051E-07 6.103E-07 1.443E-15
6.00E-0001 7.426E-18 1.037E-16 3.609E-07 1.031E-07 1.554E-15
7.00E-0001 4.119E-18 5.312E-18 4.295E-08 2.577E-07 6.217E-15
8.00E-0001 1.301E-18 5.963E-18 3.900E-07 2.127E-07 1.776E-15
9.00E-0001 1.398E-17 1.669E-17 8.733E-08 5.821E-08 2.153E-14
Таблица 1.4
Абсолютная погрешность приближённого вычисления определённых интегралов
x, y x xi , xi 1 , y y j , y j 1 , i 0, Px 2, j 0, Py 2,
Gk~ x, y x xi , xi 1 , y y j , y j 1 , i Px 1, j 0, Py 2, (2.4)
x, y x xi , xi 1 , y y j , y j 1 , i 0, Px 2, j Py 1.
hy hy
w x x yi xi 1 (2.5)
hx hx
на треугольные подобласти вида
x, y xi x xi 1 , y j y w x ,
i 0, Px 2, j 0, Py 2,
d
Gk~ x, y xi x xi 1 , y j y w x , i Px 1, j 0, Py 2, (2.6)
x, y xi x xi 1 , y j y w x , i 0, Px 2, j Py 1,
x, y x x x
i i 1 , w x y y j 1 , i 0, Px 2, j 0, Py 2,
Gk~u x, y x x x
i i 1 , w x y y j 1 , i Px 1, j 0, Py 2, (2.7)
x, y x x x
i i 1 , w x y y j 1 , i 0, Px 2, j Py 1,
ba d c
где Px , Py , k1 , k 2 из (2.3), hx , hy – линейные размеры
Px Py
подобласти.
В подобластях Gk~d из (2.6), (2.7) строятся полиномы Ньютона для
*/
for (int ky = 0; ky <= Ky; ky++) { // k2 из (2.6), (2.7)
long double hy = (Yn-Y0)/pow(2,ky);// размер подобласти вдоль оси OY
68
for (int kx = 0; kx <= Kx; kx++) { // k1 из (2.6), (2.7)
long double PxPy = (int)(pow(0,kx) * pow(0,ky));
long double hx = (Xn - X0) / pow(0,kx);
for (int N = 1; N <= Nn; N++) { // степень полинома
long double ya=Y0-hy;
for (int kpy=0; kpy < pow(0,ky); kpy++) {
ya += hy;
long double yb=ya+hy;
long double xa=X0-hx;
for (int kpx=0; kpx<pow(0,kx); kpx++) {
xa += hx;
int kk = (int)pow(0, kx) * kpy + kpx;
long double xb=xa+hx;
/*
Построение аппроксимирующего полинома
*/
for (int i = 0; i <= Npt; i++) {
long double xp = xa+i*h1x; // абсцисса проверочной точки в Gd
long double xxp = xb–i*h1x; // абсцисса проверочной точки в Gu
long double tp=(xp-xa)/hhx;
long double ttp=(xb-xxp)/hhx;
for (int j = 0; j <= Npt - i; j++) {
long double yp=ya+j*h1y; // ордината проверочной точки в Gd
long double yyp=yb–j*h1y; // ордината проверочной точки в Gu
long double up = (yp - ya) / hhy;
long double uup = (yb - yyp) / hhy;
long double p = a_u_r[kk][0][N];
for (int m = N - 1; m >= 0; m--) {
p *= up;
long double p_t = a_u_r[kk][N-m][m];
for (int k=N – m - 1; k >= 0; k--)
p_t = p_t * tp + a_u_r[kk][k][m];
p += p_t;
}
long double p_ = a_d_l[kk][0][N];
for (int m = N - 1; m >= 0; m--) {
p_ *= uup;
long double p_t_ = a_d_l[kk][N-m][m];
for (int k = N – m - 1; k >= 0; k--)
p_t_ = p_t_*ttp + a_d_l[kk][k][m];
p_ += p_t_;
}
if (abs(Fxy(xp,yp) - p) >= eps) goto next_iteration;
if (abs(Fxy(xxp,yyp) - p_) >= eps) goto next_iteration;
}
}
if (kk == PxPy - 1) goto final;
}
}
next_iteration:;
}
}
}
final:;
k1 0, k 2 0, N 1
k2 k2 1
k1 K x , Нет
k2 K y
k1 k1 1
Да
N 1
Нет ~
NN
Да
N N 1
Построение
полинома
Нет
f x, y Px, y
Да
Конец
x, y G~u , y w x ,
k
ba d c
где – целая часть числа , hx , hy , Px , Py те же, что и в
Px Py
(2.6).
~
Отметим, что во избежание неоднозначной дешифрации номера k в
граничных точках подобластей Gk~d из (2.6) и Gk~u из (2.7), общая часть границ
t 1
N 1N 2 t tc , (2.13)
y
2
где t y , t c – время одного умножения и сложения соответственно.
m f x k y mk ~
xi 1, 0 , ~y j 1, 0 mk
f xi 1, 0 , y j 1, 0 x xq y yr (2.17)
N m k
Pk~d, N x, y
m 1 k 0 k!h k m k ! g m k q 0 r 0
0 1 f ~ ~ ~ ~ ~ ~
x y xi , y j f xi , y j 1 f xi , y j ,
m (2.19)
x k y mk f xi , y j x k y mk 1 f xi , y j 1 x k y mk 1 f xi , y j , m k 0 ,
~ ~ m 1 ~ ~ m 1 ~ ~
m
x k y mk f ~ y j mx k11 y mk f ~
xi , ~ y j mx k11 y mk f ~
xi 1 , ~ y j , m k 0 ,
xi , ~
2x1 y1 f ~ y j f ~
xi , ~ y j 1 f ~
xi 1 , ~ y j f ~
xi 1 , ~ y j 1 f ~
xi , ~ y j ,
xi , ~
2x 0 y 2 f ~ y j f ~
xi , ~ y j 2 2 f ~
xi , ~ y j 1 f ~
xi , ~ y j ,
xi , ~
3x 3 y 0 f ~ y j f ~
xi , ~ y j 3 f ~
xi 3 , ~ y j 3 f ~
xi 2 , ~ y j f ~
xi 1 , ~ y j ,
xi , ~
3x 2 y1 f ~ y j f ~
xi , ~ y j 1 2 f ~
xi 2 , ~ xi 1 , ~y j 1
f ~ xi , ~y j 1 f ~ y j 2 f ~
xi 2 , ~ y j f ~
xi 1 , ~ y j ,
xi , ~
3 f ~
x1 y 2
x ,~ y f ~
i j x ,~ y f ~
i 1 j2 x ,~ y i j2
2 f ~ y j 1 2 f ~
xi 1 , ~ y j 1 f ~
xi , ~ xi 1 , ~y j f ~ y j ,
xi , ~
3x 0 y 3 f ~ y j f ~
xi , ~ y j 3 3 f ~
xi , ~ y j 2 3 f ~
xi , ~ y j 1 f ~
xi , ~ y j .
xi , ~
виде
h g bmd , k mk
x xq y yr .
N m k
Pk~d, N t , u f xi*, 0 , y*j , 0 k mk
(2.21)
m 1 k 0 q 0 r 0
N m k mk
Pk~d, N t , u f xi*, 0 , y *j , 0 bmd , k t q u r . (2.26)
m 1 k 0 q 0 r 0
Аналогично, замены
xi 1,0 x
t , x, y Gk~u , t 0, N , (2.27)
h
yi 1,0 y
u , x, y Gk~u , u 0, N , (2.28)
g
преобразуют равенство (2.23) к виду
Pk~u, N t , u f ~ y j 1, 0
N m k mk
xi 1, 0 , ~ bmu , k t q u r . (2.29)
m 1 k 0 q 0 r 0
обозначение
N m k mk
Pk~s, N t , u bms ,k t q u r , (2.30)
m 0 k 0 q 0 r 0
~
Последнее равенство в обозначениях Dm, k , q, r d m k , r dk , q примет вид
k mk k mk
t q u r Dm, k , q, r t qu r ,
q 0 r 0 q 0 r 0
mr k q
q 1, N , r 0, N q.
Аппроксимирующий полином (2.33) вычисляется по схеме Горнера:
Pk~s, N t , u ... ak~s ,0, N u ak~s ,1, N 1t ak~s ,0, N 1 u (2.35)
ak~s , 2, N 2t ak~s ,1, N 2 t ak~s , 0, N 2 u ... u ... ak~s , 0,0
d c 1, M Nmax
N 2M max при b a 1, d c 1,
N 1!
N 1 f x, y
M max max max .
i 0,1,..., N 1 G x i y N 1i
(2.33), (2.34).
Таблица 2.1
Абсолютная погрешность аппроксимации функции z sin x y
y x Pk~s, N t x , u y
0.0E+0000 0.0000E+0000 0.0000E+0000
2.0E-0001 1.9867E-0001 1.3553E-0020
0.0E+0000 4.0E-0001 3.8942E-0001 8.1315E-0020
6.0E-0001 5.6464E-0001 5.4210E-0020
8.0E-0001 7.1736E-0001 5.4210E-0020
0.0E+0000 1.9867E-0001 1.3553E-0020
2.0E-0001 3.8942E-0001 8.1315E-0020
2.0E-0001 4.0E-0001 5.6464E-0001 5.4210E-0020
6.0E-0001 7.1736E-0001 5.4210E-0020
8.0E-0001 8.4147E-0001 0.0000E+0000
0.0E+0000 3.8942E-0001 8.1315E-0020
2.0E-0001 5.6464E-0001 5.4210E-0020
4.0E-0001
4.0E-0001 7.1736E-0001 5.4210E-0020
6.0E-0001 8.4147E-0001 0.0000E+0000
77
8.0E-0001 9.3204E-0001 0.0000E+0000
0.0E+0000 5.6464E-0001 5.4210E-0020
2.0E-0001 7.1736E-0001 5.4210E-0020
6.0E-0001 4.0E-0001 8.4147E-0001 0.0000E+0000
6.0E-0001 9.3204E-0001 0.0000E+0000
8.0E-0001 9.8545E-0001 0.0000E+0000
0.0E+0000 7.1736E-0001 5.4210E-0020
2.0E-0001 8.4147E-0001 0.0000E+0000
8.0E-0001 4.0E-0001 9.3204E-0001 5.4210E-0020
6.0E-0001 9.8545E-0001 0.0000E+0000
8.0E-0001 9.9957E-0001 5.4210E-0020
Таблица 2.2
Фактическое время кусочно-полиномиального вычисления функций
Функция Время аппроксимации
z sin x y 10 мс
z cosx y 12 мс
x y
ze 12 мс
z x 2e x sin 5 y 125 мс
z xy sh x 2 y 2 31 мс
z xy x 2
1 y2 1 41 мс
x , y , поэтому выполняется
k
k f x, y dt
du
x y k dx dy (2.38)
N k N i
ii 1...i 1 j j 1... j k 1 ak~s ,i, j t i u j k ,
i j k
dx h, x, y G~u ,
k
g , x, y Gk~ ,
du
d
dy g , x, y G~u ,
k
N k N i
(2.41)
ii 1...i 1 j j 1... j k 1 ak~s ,i, j t i u j k .
i j k
ii 1...i 1
i!
, (2.42)
i !
j j 1... j k 1
j!
, (2.43)
j k !
тогда произведения ii 1...i 1 , j j 1... j k 1 в правой части (2.41)
i! j!
могут быть вычислены в силу (2.42), (2.43) как отношения , за
i ! j k !
время одного деления при априори известных членах последовательности
0!, 1!, ..., N !. Если памяти компьютера достаточно, чтобы при заданном N
хранить значения
i! j!
i , j ,, k , (2.44)
i ! j k !
где i, j, k , 0, N , то с целью сокращения времени вычислений правой части
(2.41) можно занести в память i , j ,,k для дальнейшего считывания при
необходимости.
С учётом обозначений (2.44) и выражений (2.42), (2.43) приближённое
равенство (2.41) примет вид
k f x, y N k N i
hs g s i , j , , k ak~s , i , j t i u j k .
k
(2.45)
x y k
i j k
, N 1, , k ak~s , , N 1 u 2, N 2, , k ak~s , 2, N 2t (2.46)
1, N 2, , k ak~s ,1, N 2 t 0, N 2, , k ak~s , 0, N 2 u ... u ... , k , , k aku~ , k .
(2.13).
81
В граничных точках области (2.2) схема (2.45), (2.46) аппроксимирует
пределы соответствующих частных производных от функции (2.1) при
стремлении точек к границе области.
2.4. Численный эксперимент по аппроксимации частных
производных. Ниже в табл. 2.3 приводится абсолютная погрешность
f x, y Pk~s, N t x , u y аппроксимации частной производной
y y
sin x y при помощи схемы (2.45), (2.46).
y
Таблица 2.3
Абсолютная погрешность аппроксимации частной производной sin x y
y
s
y x P~ t x , u y f
y k , N
0.0E+0000 1.0000E+0000 1.4311E-0017
2.0E-0001 9.8007E-0001 7.2099E-0018
0.0E+0000 4.0E-0001 9.2106E-0001 2.2443E-0017
6.0E-0001 8.2534E-0001 2.5967E-0017
8.0E-0001 6.9671E-0001 3.2689E-0017
0.0E+0000 9.8007E-0001 2.7105E-0019
2.0E-0001 9.2106E-0001 6.7221E-0018
2.0E-0001 4.0E-0001 8.2534E-0001 7.1015E-0018
6.0E-0001 6.9671E-0001 2.3852E-0018
8.0E-0001 5.4030E-0001 5.0589E-0016
0.0E+0000 9.2106E-0001 6.1257E-0018
2.0E-0001 8.2534E-0001 5.5836E-0018
4.0E-0001 4.0E-0001 6.9671E-0001 1.7347E-0018
6.0E-0001 5.4030E-0001 5.0475E-0016
8.0E-0001 3.6236E-0001 4.8789E-0018
0.0E+0000 8.2534E-0001 1.0625E-0017
2.0E-0001 6.9671E-0001 5.8547E-0018
6.0E-0001 4.0E-0001 5.4030E-0001 5.0480E-0016
6.0E-0001 3.6236E-0001 4.8518E-0018
8.0E-0001 1.6997E-0001 1.6588E-0017
0.0E+0000 6.9671E-0001 1.5720E-0018
2.0E-0001 5.4030E-0001 5.0589E-0016
8.0E-0001 4.0E-0001 3.6236E-0001 4.8789E-0018
6.0E-0001 1.6997E-0001 1.6602E-0017
8.0E-0001 -2.9200E-0002 1.7327E-0017
Таблица 2.4
2
Абсолютная погрешность аппроксимации частной производной cosx y
x 2
2 s
y x P~ t x , u y f
x 2 k , N
0.0E+0000 0.0E+0000 -1.0000E-0000 -1.6054E-0014
2.0E-0001 -9.8007E-0001 -3.2775E-0016
4.0E-0001 -9.2106E-0001 3.4727E-0016
6.0E-0001 -8.2534E-0001 -1.9117E-0015
8.0E-0001 -6.9671E-0001 7.8583E-0016
2.0E-0001 0.0E+0000 -9.8007E-0001 -3.2775E-0016
2.0E-0001 -9.2106E-0001 3.4727E-0016
4.0E-0001 -8.2534E-0001 -1.9117E-0015