Файл: Голембо, З. Б. Алгоритмизация и программирование электротехнических задач на электронных цифровых вычислительных машинах учеб. пособие.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 21.10.2024
Просмотров: 66
Скачиваний: 0
При с = |
0 уравнение (9.43) биквадратное: |
|
|
|
|
|||||||||
|
|
|
|
|
tk |
— б/2 + |
1 = 0, |
|
|
(9.46) |
||||
Минимальный |
по |
модулю |
корень |
этого |
уравнения |
равен |
||||||||
~У Ъ—У8. |
Уравнение |
(9.43) |
при |
произвольном |
с заменяется |
сле |
||||||||
дующим образом: |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
t'k — 6t2+\+ct |
|
(Г- — 1) = 0. |
|
|
(9.47) |
||||||
Обозначим левую часть |
(9.47) через fc(t). |
Так как |
|
|
||||||||||
|
/ (0) = |
1 |
при |
с > 0 ; |
f(V3 |
— |
V8)>0 |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
с < 0 ; |
|
/ ( - | / з - т / 8 ) < 0 |
|
|
||||
и fc(t) |
непрерывна, |
имеет |
место |
неравенство |
(9.45). |
|
|
|||||||
2. Теперь докажем, |
что fc{t) |
монотонно |
убывает на сегменте |
|||||||||||
[о, Уз |
— УЪ]. Для доказательства достаточно |
убедиться |
в том, |
|||||||||||
что fc(t) |
< |
0. |
|
|
|
|
|
|
|
|
|
|
|
|
Действительно, |
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
fc(t) |
= tt(t2 |
— 3) + |
с(3/ 2 — 1) |
|
|
|
|||||
|
|
|
*8 |
— 3 < 0 |
при |
t<y~3\ |
|
|
(9-48) |
|||||
|
|
|
З*2 |
— 1 < 0 |
при |
/ < |
1 / V"3 . |
|
|
|
||||
Так |
как t изменяется |
в |
пределах |
от 0 до |
Уз— У 8, |
то |
чтобы доказать, что fc(t) < 0, достаточно убедиться в том, что
Уз^уъ<узи |
У з Г у 1 < 1 / У 3 |
(последнее |
устанавли |
|||
вается |
непосредственно). |
|
|
|
||
3. |
Докажем, что если с' > с, то график функции fc- |
(t) (рис. 9.4) |
||||
расположен ниже графика fc(t), |
т. е. |
fc(t)—fC'(t)>0. |
||||
Действительно, |
|
|
|
|
|
|
|
/ e (f) = |
/* — 6 / » + |
1 |
+ct(t*-l); |
|
|
|
fc. |
(*) = |
** —6*» + |
1 |
+c't{i2—\). |
|
юткуда |
|
|
|
|
|
|
|
Ш-fc- |
|
(t)=(c-c')t(t*-\)>Q. |
|
Так как с—с' < 0 по условию, то t2 — 1 <; 0, поскольку
г<У 3 — У8.
Следовательно, при с' > с нуль уравнения fc>{t) = 0 располо жен левее нуля уравнения fc(t) = 0.
J62
|
|
|
г. |
Выбор начального |
приближения |
|
|
|
|
|
|
|||
|
|
|
в зависимости от величины 2{ап |
— |
ац^/а^ |
|
|
|
||||||
Покажем, |
что |
начальное приближение |
tc |
уравнения |
(9.43) |
|||||||||
целесообразно |
выбирать следующим образом: |
|
|
|
|
|
||||||||
1. |
При |
100 > |
| с | ' > 3 |
tc |
= 1/с; |
|
|
|
|
|
|
|
||
2. |
При |
с | < 3 |
tc = Уз |
— У 8sign с; |
|
|
|
|
|
|
||||
3. |
При |
с| |
> |
0. |
|
|
|
|
|
|
|
|
|
|
В последнем случае приближенное решение уравнения |
(9.43) |
|||||||||||||
выписывается |
сразу: |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
L = |
|
|
! |
. |
|
|
|
|
|
(9.49) |
1. |
|
|
|
0 |
|
|
c[\-fc(l/c)\ |
|
|
|
|
|
|
|
Пусть с :> 3. |
|
|
|
|
|
|
|
|
|
|
||||
Тогда |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
U(*с) = Ш1 с) = |
|
- 6 / с 2 + |
1 + |
( 1 / с 2 |
- 1) |
= |
|
||||||
|
|
|
|
= |
1/с4 — 5 / с 2 < 0 . |
|
|
|
|
|
(9.50) |
|||
Следовательно, |
при с > |
|
(1/5), 0 < |
t0 < |
(1/с), |
где |
t0 — реше |
|||||||
ние уравнения |
(9.43). |
|
|
|
|
|
|
|
|
|
|
|||
Вторая |
производная f"(t) |
< 0 |
на отрезке [/„, tc]. |
Действитель |
||||||||||
но, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
f ё ( 0 = |
12/2 |
+ 6с/ — 12. |
|
|
|
|
(9.51) |
|||
Положительный нуль второй производной равен |
|
|
|
|||||||||||
|
|
|
|
— с / 4 + ] / с 2 / 1 6 + 1. |
|
|
|
|
(9.52) |
|||||
Убедимся в том, что он превосходит |
1/с. Решим |
неравенство |
||||||||||||
|
|
|
|
— с / 4 + |
у ' с 2 / 1 6 + _ 1 > ( 1 / с ) . |
|
|
|
(9.53) |
В результате получим, что с > ] / 2 .
В силу того.что /"(0) = —12, а второй нуль второй производ ной отрицателен,/"(0 отрицательно в пределах сегмента [/„, tc].
/"(1/с)/ |
(1/с) > 0, |
так |
как fc(t) |
< 0 в |
пределах |
[0, 1/с] Ш |
монотонно |
убывает. |
|
|
|
|
|
Так как fc(0) = |
—с, |
/ с (t) |
<1 —с, |
с >- 3, следовательно, |
||
/с(0 -«С —3 на сегменте [0, 1/с]. |
|
|
|
|||
Итерации начинаются с tc = 1/с и последовательные прибли |
||||||
жения монотонно убывают до t0> |
0, поэтому первую |
производную |
необходимо вычислять в тех точках, где она превосходит по аб солютной величине 3.
2. Если 0 < с < 3, то |
tc=V |
Ъ — У 8. |
|
|
Как уже говорилось, значение t0 |
— решение уранения |
(9.43)— |
||
. лежит на полуинтервале |
[0,tc]. |
На |
этом полуинтервале fc(t) <. 0, |
|
так как положительный нуль второй производной при с = |
3 равен |
|||
1/2. |
|
|
|
|
163
В функции |
ф (с) = — с 14 + |
У |
с21 |
16 + 1 <|J (с) монотонно убыва |
||||||
ет при всех значениях с. |
|
|
|
|
|
|
||||
Сказанное следует из того, что |
Ф'(с) < 0 : |
|
||||||||
|
|
f |
(С ) = — 1/4 + с / [ 1 6 ] / с 2 |
/ 1 6 + 1 ] . |
(9.54) |
|||||
Определим, при |
каких значениях с |
|
< 0, т. е. |
|
||||||
|
|
|
|
с / [ 16 т / с 3 / |
16 + |
1 ] < |
(1/4). |
|
||
Сократив последнее неравенство на 4 и возводя полученное |
||||||||||
выражение в квадрат, приходим к неравенству |
|
|||||||||
|
|
|
|
с 2 < с 2 + 1 6 , |
|
|
(9.55) |
|||
которое будет справедливо при всех значениях с. |
|
|||||||||
Так как |
положительный нуль fc(t) |
есть монотонно |
убывающая |
|||||||
функция |
с, |
то для |
всех значений |
|
с, |
заключенных |
в интервале |
|||
О < с < |
3, нуль второй производной превосходит 1/2. |
|
||||||||
Таким образом, |
при 0 < с < 3 |
одно значение второй |
производной |
|||||||
отрицательно, другое — больше |
1/2, |
следовательно, вторая произ- |
ч
Рис. 9.5. Поведение второй производной внутри сегмента [0, 1/2]
водная на сегменте [0, 1/2] сохраняет свой знак. В силу того, что она отрицательна в нуле, она будет отрицательна и на всем сегменте
[О, 1/2], а тем более в пределах [0, tc], |
так как |
У 3 — У 8 < (1/2) |
(рис. 9.5). |
|
|
Выше было показано, что / с (Уз |
— У в) < |
0, следовательно, |
итерации начинаются с точки, в которой выполнено неравенство
Оценим теперь fc(t) |
для случая 0 <^ с < |
3. Если а есть решение |
уравнения fc{t) = 0 |
при с — 3, то решение уравнения fc(f) — О |
|
при с < 3 лежит правее а (см. п. 3). |
|
|
Так как для всех с в пределах 0 <1 с < |
3 итерации начинаются с |
tc = Уз — У 8 и последовательные приближения монотонно убы вают, сходясь к решению t0 > а, достаточно оценить величину
f'c(t) в пределах сегмента [а, У з — , что можно сделать сле дующим образом:
f'e (t) = 4/ (/3 — 3) + с (З/2 —1) < 4/ (/3 — 3) < 4а (а3 —3).
164
Непосредственной проверкой убеждаемся в том, что'а — реше ние уравнения (9.43) при с = 3 удовлетворяет неравенству
( 1 / 5 ) < а < ( 1 / 4 ) .
Следовательно,
/; ( ; ) < (4/5) ( 1 7 2 5 - 3 ) < - 2 .
д.Оценка точности
|
|
|
|
решения уравнения |
(9.43) |
|
|
|
|
||||
При |
решении |
уравнения |
(9.43) на ЭЦВМ получается не точное |
||||||||||
решение t0, |
так как итерации |
обрываются на некотором прибли |
|||||||||||
жении th. Дадим оценку величины погрешности |
|
|
|||||||||||
Решение |
уравнения |
(9.43) |
последова |
|
|
||||||||
тельными приближениями |
ведется до тех |
|
|
||||||||||
пор, пока |/ (th)\ не станет меньше |
неко |
|
|
||||||||||
торого |
е. Величина |
е вводится в машину |
|
|
|||||||||
вместе с программой. При всех значениях с |
|
|
|||||||||||
справедлива |
|
оценка |
fc(t) < —2. |
М с |
|
|
|||||||
|
Проведем |
(рис. 9.6) |
через |
точку |
|
|
|||||||
координатами |
thl, |
f (tk) |
прямую е с угло |
|
|
||||||||
вым коэффициентом —2. Пусть |
tk'—точка |
|
Уз-VT |
||||||||||
пересечения этой прямой с осью t. Так как |
|
f(tK) |
|||||||||||
fc{t) |
< |
—2, |
то на tkth |
график / с (t) распо |
|
|
|||||||
ложен выше кривой |
t. |
Следовательно, |
t0 |
|
|
||||||||
лежит между 4<V В треугольнике tkth М |
|
|
|||||||||||
катет titth |
в |
2 раза |
меньше |
катета |
thM. |
|
|
||||||
|
Предположим, |
что |/с (4)| < |
е ; тогда |
|
|
|
|||||||
|
|
tk—tQ<tk—tk<{zl2). |
|
|
|
Рис. 9.6. |
Геометри |
||||||
|
|
|
|
|
ческое |
представление |
|||||||
Таким образом, |
найдя |
значение t |
оценки |
точности ре |
|||||||||
шения |
уравнения |
||||||||||||
при |
котором |
/ (th) < |
е |
получим |
реше- |
(9.43) |
|||||||
ние с точностью до е/2. |
|
|
|
|
|
|
|
§ 9.7. Выражения элементов матрицы D через тангенс половинного угла поворота
Элементы |
г'-го столбца матрицы D |
вычисляются |
по формуле |
dSi |
= a s i c o s Ф + ask s i n Ф- (s = |
1, 2, ..., i — 1). |
|
Заменив |
в этой формуле cos ср на |
(1—t2 )/(\-\-t2 ) |
и sin q> на |
'2t/(l -hi2), после преобразования получим:
165
Аналогично элементы k-ro столбца |
D вычисляются |
по формуле |
|||||||||||
dsk = ask cos Ф — asl |
sin ф = |
ask |
— y - ^ - |
(ask |
t + |
asi) |
(9.57) |
||||||
|
|
|
|
( s = |
1, 2 |
|
k— 1). |
|
|
|
|
|
|
Для элементов t'-й строки |
|
|
|
|
|
|
|
|
|||||
du = ^ |
cosф + allssm |
ф = |
о„ — - j - |
^ |
- (ai s f |
— aliS) |
(9.58) |
||||||
|
|
|
|
(s = i + |
1 |
|
n). |
|
|
|
|
|
|
Для элементов &-й строки |
|
|
|
|
|
|
|
|
|||||
dbs = |
°W cos ф — ais |
sin ф = |
o/ M |
— — ^ - |
(ot a |
f + |
a,-,) |
(9.59) |
|||||
|
|
|
|
(s = |
k + 1 |
|
n). |
|
|
|
|
|
|
Элементы |
dih |
dik, |
dkk |
|
|
|
|
|
|
|
|
|
|
dn |
= an |
cos2 |
ф + 2ai f t sin ф cos cp + akk |
sin2 |
ф |
= |
|
||||||
= |
a » |
+ |
7 Г ^ ) Г К ( 1 - |
О |
+ * (aftft |
- a „ ) ] ; |
|
(9>60) |
|||||
dju = |
aik |
(cos2 ф — sin2 ф) + |
{akk |
— au) |
sin ф cos ф = |
|
|||||||
= a»< + T T T ^ [ ( a " ~~a u ) |
( 1 ~~ ' 2 ) |
~ 4 / f l ' f t l : |
' |
( 9 - 6 1 } |
|||||||||
dkk |
= akk |
cos2 |
ф + |
an sin2 ф — 2aik sin cp cos cp = |
|
||||||||
= |
аы |
+ |
TTZT^r |
|
- |
a**) |
t~aik(l-1% |
|
|
|
(9.62) |
||
|
|
|
U + t )~ |
|
|
|
|
|
|
|
|
|
Формулы (9.56) и (9.62) записаны в таком виде, что при вычис лениях по ним влияние ошибок округления минимально.
§ 9.8. Алгоритмизация метода Якоби
Составление программы для метода Якоби является трудоем ким процессом и требует высокой квалификации программиста. Представим программу по методу Якоби на алгоритмическом языке Алгол, что позволит пользоваться ею на любой ЭЦВМ, имеющей транслятор.
procedure jacobi |
(а, |
п, |
Е, |
b, |
Т); |
value |
п, Е; |
|
||||||
integer «; real Е; array |
a, |
b, |
|
Т; |
|
|
|
|
||||||
begin |
integer |
i, |
j , |
k, |
t\, |
t2, |
t3, |
/4, |
/5, |
/6; |
|
|||
real c, |
s, |
л 1, |
г 2, |
r3, |
|
г 4, |
г 5, |
г 6, |
г 7, |
г 8 , г 9, г 10, М, |
Ml; |
|||
array |
h[\; |
5]; |
|
|
|
|
|
|
|
|
|
|
|
|
procedure f(u, |
v, p, |
q, |
w, in, |
I); |
|
|
|
|
||||||
value in, |
I; |
|
|
|
|
|
|
|
|
|
|
|
|
|
integer u, |
v, |
p, |
q, |
in, |
I; |
array |
w; |
|
|
|
|
166