. Числено решаване на уравнения - метод на Нютон. СЛАУ - метод на проста итерация. Приближено решаване на нелинейни уравнения Метод на допирателните (Метод на Нютон) Това е метод за приближено решаване на нелинейни уравнения. Условията, които трябва да са изпълнени за прилагането му и гарантират съществуването на точно един реален корен * в [a,b] са: ) f(), f (), f () са дефинирани и непрекъснати в интервала [a,b]; ) f(a)f(b)<0 функцията има различни знаци в a и b; 3) f (), f () са с постоянни знаци в [a,b]. Имаме четири възможни случая:
Приближаване чрез допирателни посредством метода на Нютон (за случай I) се извършва като от единия край на интервала ( 0 =b) се построява допирателната към f() и за първо приближение към корена * се взима пресечната точка на допирателната с оста O. На следващата стъпка (итерация) се построява допирателната към f() в точката и се получава като пресечна точка на допиртелната с оста O и т.н. Така получаваме безкрайната редица от приближения: 0,,, k,
Началното приближение 0 трябва да е в онзи край на интервала [a, b], за който е изпълнено f( 0 )*f ( 0 )>0, като за случаите I) и IV) 0 =b, а за II) и III) 0 =a. Итерационният процес е: За грешката е валидна оценката: M * ( ) ( ) = + f. m, където M ma f ( ) [ a, b] f =, m mi f ( ) =. [ a, b] 3
Задача Да се намери с точност 0,00 (0-3 ) коренът на уравнението - si()=0,5 по метода на допирателните. Решение: Локализираме корена графично и виждаме, че решението (пресечната точка) е в интервала [;,5]. 4-4 - Изпълнено е условието функцията да има различни знаци в двата края на избрания интервал [a,b] или f(a)f(b)<0: ( ) ( ) = ( ) ( si 0.5 )*(.5 si(.5) 0. ) f * f.5 5 = 0.03097 4
Също така проверяваме дали първата f () и втората f () производна на функцията са с постоянни знаци в интервала [;,5]:.0.5.0 0.5-4.0 0.5-4 -0.5 -.0 5
Определяме в кой край на интервала ще е началното приближение съгласно f( 0 )*f ( 0 )>0: ( ) ( ) ( ) ( si 0.5 )*si( ) f * f = = 0.076970 ( ) ( ) ( ) ( si.5 0. ) ( ) f.5 * f.5 = 5 *si. 5 = 0.587 Итерационният процес + = ( ) ( ) si 0, 5 ще е сходящ при 0,5 cos =. m За оценка на грешката изчисляваме константите: = mi cos( ) = 0, 4597, M ( ) [;,5] = ma si = 0,9975, M / m =,0849. [;,5] 6
Изчисленията са представени в таблицата: f ( ) ( ) ε =, 0849( ) f 0,5 0,55 0,993 -,835 0,0364 0,664 0,080>0,00,735 0,004 0,63 0,0033>0,00 3,7 0,000005 <0,00 Забележка: Ако не закръгляме до четвъртия знак, на третата стъпка бихме 6 имали грешка 5.0. Закръгляме до четири знака след десетичната запетая: = =, ( ),5 0, 55 / 0,993, 83 f ( ) = 0, 0364, ( ) f = 0, 664 ;, 83 0, 0364 / 0, 664,735 ε =,0849, 83,5 = 0,080, ε =, 0849,735, 83 = 0, 0033, = =, ( ) f ( ) = 0, 004, ( ) f = 0, 63; = =, ( ) 3,735 0, 004 / 0, 63,7 Отговор: 3 * =,7. ε =, 0849,7,735 = 0, 000005. 7
Решаване със система Mathematica Да се намери с точност 0,00 коренът на уравнението -si()=0,5 по метода на допирателните. 8
9
Задача Да се намери с точност метода на допирателните. Задача 3 3 0 коренът на уравнението e 0 + = по Да се намери с точност по метода на допирателните. 0 0 коренът на уравнението e = 0 0
Приближено решаване на системи линейни алгебрични уравнения Метод на простата итерация (Метод на Якоби) Това е итерационен метод. Точното решение може да се получи като граница на редица от последователни приближения. Дадена е системата линейни алгебрични уравнения (СЛАУ) A. където A е матрица с реални коефициенти с размерност, вектор на неизвестните (търсеното решение; корен), b дясна част. = b, A { aij} a a... a a a... a............ a a... a = = i, j= ; =... ; b b b =... b 0.
В разгърнат вид системата е: a + a +... + a = b a + a +... + a = b... a + a +... + a = b. Тя се модифицира във вида C d = +. C { cij} i, j =, c ii = 0, = c ij aij = a, ii d i b i = a, ii 0 ii a за i=,. Привеждането в такъв вид става като първото уравнение се дели на a и всички останали членове се прехвърлят отдясно, второто уравнение се дели на a и т.н. Така от всяко уравнение се изразява неизвестното i от i-тия ред на системата.
Итерационният процес е ( k+ ) ( k) = C + d, k = 0,,... начално приближение. В разгърнат вид имаме:, където ( 0) е произволно ( k+ ) ( k) ( k) = c +... + c + d ( k+ ) ( k) ( k) = c + +... + c + d... ( k+ ) ( k) ( k) = c + c +... + d, k = 0,,... От тук последователно изчисляваме редицата от приближения: ( 0) ( ) ( k),,...,,... Заместваме известната стойност ( k) в дясната част и изчисляваме следващото приближение ( k ) +. Сходимост на метода на простата итерация за СЛАУ Достатъчно условие за сходимост на итерационнния процес при произволно начално приближение ( 0) е поне една норма на матрицата C да е по-малка от, т.е. да е изпълнено поне едно от следните неравенства: 3
C = ma c < i=, ij, C = ma cij < j=, j= i, = C 3 cij. i= j= = < За близостта на приближеното решение ( k) към точното решение * е валидна оценката ( ) ( k) k ( 0) d * C + C. За намиране на минималния брой итерации k, необходими за да се постигне желаната от нас точност ε, е достатъчно да се реши следното неравенство относно k: C ( k) ( 0) d + < ε C или l ε ( 0) d + C k > l C. 4
Задача 4 Да се реши по метода на простата итерация системата: + = 3 3 3 + 5 = ( 3 4 + 0 = 0 ε 3 ( 0) Работете с междинна точност от три знака след десетичната запетая 3 = 0 ), като за начално приближение изберете нулевия вектор ( 0,0,0) =. Решение: С директна проверка се вижда, че точното решение е = (, ;,6; 0,586) Построяваме матрицата C. Делим първото уравнение на, второто на 5 и третото на 0. Изразяваме неизвестните от главния диагонал: 5
= 0,5 0,5,5 3 = 0,6 + 0, 4 + 0, 3 = 0, + 0, 4 + 0 3 0 0,5 0,5 C = 0,6 0 0, 4 0, 0, 4 0 Проверка за сходимост., d,5 = 0, 0. C i=, j= { } = ma c = ma,, 0.5 = ij 0.+ 0.4 + 0 0 + 0.5 + 0.5 0.6 + 0 + 0.4 C j=, i = { } = ma c = ma 0.7, 0.9, 0.9 = 0.9< ij C 3 = c = 0.5+ 0.5+ 0.36+ 0.6+ 0.0+ 0.6 =.9 =.09087 i= j= ij 6
Втората норма е по-малка от и следователно методът на простата итерация е сходящ. 3 Намиране на минималния брой итерации за постигане на зададена точност ε. ( ) Пресмятаме k по формулата ( ) ( ) 0 T 0 = 0,0,0 = 0 k l ε ( 0) d + C > l C. d T ( ) d =.5,0.,0 =,7 C = 0,9 7
k 0,00 l,7 0 + 0,9 9,74097 > = = 9, 4537 l 0, 9 0,0536 ( ) 4 Изпълнение на получения брой итерации. Точките 3 и 4 могат да бъдат заменени с т.н. стоп-критерий: ако ( k) ( k ) ε <, то * ( k) = с точност ε. В координатен вид: ако ( k) ( k ) < ε за i, i i =, то * ( k) = с точност ε. Записваме формулите за пресмятане на проста итерация: ( k+ ) ( k) ( k) = 0,5 0,5 ( k+ ) ( k) ( k) ( k+ ) ( k) ( k) 3,5 = 0,6 + + 0, 4 + 0, = 0, + 0, 4 + 0 8
За начално приближение имаме ( 0) ( ) = 0,0,0 T. Заместваме и получаваме първо приближение (първа итерация): ( ) 3 ( ) ( ) = 0,5*0 0,5*0,5 = 0,6*0+ + 0, 4* 0+ 0, = 0,*0 + 0, 4* 0 + 0 ( ) 3 ( ) ( ) =,5 = 0, = 0 За второ приближение заместваме с полученото ( ) : ( ) 3 = 0,5*0, 0,5*0,5 ( ) ( ) ( ) = ( ) = 0,6*,5 + + 0, 4* 0+ 0, 0,*,5 + 0, 4*0, + 0 ( ) 3 ( ) ( ) =, 4 =, = 0, 3 ( 3) 3 На третата итерация имаме: = 0,5*, 0, 5*0, 3,5 ( 3) ( ) ( 3) = ( ) = 0,6*, 4 + + 0, 4*0, 3+ 0, 0,*, 4 + 0, 4*, + 0 ( 3) 3 ( 3) ( 3) =,065 =,3 = 0,58 и т.н. 9
Резултатите нанасяме в таблица: k ( k) ( k) ( k) 3 ( k+ ) ( k) ( k+ ) ( k) ( k+ ) ( k) 3 3 0 0 0 0 -.5 0, 0,5 0, 0 -.4. 0.3 0, 0,9 0,3 3 -.065.3 0.58 0,335 0,03 0,35 4 -.4.07 0.5593 0,59 0,06 0,007 5 -.445.58 0.5508 0,005 0,087 0,0085 6 -.9634.668 0.587663 0,0478 0,00869 0,036863 7 -.043.587 0.586358 0,040865 0,039408 0,00305 8 -.674.608 0.589 0,006379 0,007999 0,0046767 9 -.07.69 0.585994 0,00604879 0,00367 0,00380375 0 -.54.608 0.58639 0,000840039 0,000777 0,0004459 -.7.64 0.58548 0,00768 0,0006086 0,000759 -.03.68 0.585838 0,00068048 0,00040067 0,00035836 ( ) ( ) = 0.000495698<0.00 ( ) ( ) = 0.00040075<0.00 3 3 ( ) ( ) = 0.00099793<0.00 0
При точност ε = 0,00 със стоп-критерий k =. = (, ;,6; 0,586) T Колко итерации ще са достатъчни за изчисляване на решението на същата система с точност ( ) ( ) ( ) 0 T 0 = 0,0,0 = 0 ε 5 = 0 с втора норма? d T ( ) d =.5,0.,0 =,7 C = 0,9 0, 0000 l,7 0 + 0,9 k > = 36,6 k = 37 l 0,9 ( )
Решаване със система Mathematica
3
4
5
Задача 5 Да се реши по метода на простата итерация системата: ( 4 = + 4 = 6 ε ( 0) 3 + 4 = 3 Работете с междинна точност от шест знака след десетичната запетая 6 = 0 ), като за начално приближение изберете нулевия вектор ( 0,0,0) =. Задача 6 Да се реши по метода на простата итерация системата: 0 + 3 = 3 3 + 5 = 5 3 + 5 = 4 3 Работете с междинна точност от три знака след десетичната запетая, като за начално приближение изберете нулевия вектор. 6