Лекция 1

Въведение

1. Въвеждане на грешка от закръгляване. Винаги като се използват компютри ще има грешка. Например при метод на Гаус заменяме обикновенните дроби с десетични (1/3 -> 0.333). Опасни действия в компютърни изчисления. Пример: Деление на нула, деление на малко число - тогава става натрупване на страшни грешки.

		точно 0.99; прибл. 1; грешка 0.01;
делим на 10: 	    0.099	0.1		0.001
делим на 0.001	990	1000		10

затова, напр. при метод на Гаус избраме да делим на най-голямото по модул число.

Трябва да се пазим от появата на грешка, но невинаги е възможно, например при входни експериментални данни.

Внимание: Да се пазим от делене на малки числа.
Пример: Когато работим по формули на Крамер и имаме детерминанта = 0. За да проверим - заместваме с резултата в изходната задача.

Умножаване с големи числа също е опасно - еквивалентно на деление на малки числа.

2. Числени методи се делят на методи на алгебрата и методи на анализа. 
- Алгебра: f(x)=0 (уравнения); Ax=b (СЛАУ). Методите за решаване на СЛАУ се делят на две части: точни (Гаус, Гаус-Жордан) и приближени. Точни методи - много трудоемки; пример: намиране на детерминанта по формули на Крамер. Плюсове на точни методи - за доказателства.
Не можем да решаваме всичко с един и същ метод - пример за френския ключ. Затова учим няколко видове методи и разглеждаме техните предимства и недостатъци. 
- Анализ: 
	* приближаване на функции
	* приближаване на функционали - числено диференциране, числено интегриране, решаване на ДУ

Софтуер: По желание. Демонстрациите се правят с пакета Mathematica. Не е достатъчно да имаме програма, трябва да се знае как да се управлява.

Решаване на уравнения

f(x)=0, x*- корен; Търсим корена на два етапа:
1. Локализация на корена: намиране на интервал [a,b], в който се съдържа корена ;
2. Уточняване с точност eps: x(wilde) \in [a,b]: |x(wilde)- x| <= eps.

За уточняване има методи, а за локализация няма стандартна процедура.

-локализация - да се намери интервал, в краищата на който  функцията има различни знаци, ако знаем, че функцията е непрекъсната. Графично представяне.  Функцията може да има и повече от един корен при изпълнение на това условие.
При различни знаци в краищата имаме условието f(a).f(b)<0. Ако в краищата имаме еднакви знаци нямаме гаранция за наличие на корен. Може да има, може и да няма.  Графично представяне.

Варианти за локализация:
	* този, който има нужда да се реши уравнението да каже къде очаква да има корен
	* графика на функцията - да внимаваме и да гледаме осите и числата, които пише по осите

Пример с Mathematica:..........................................гледаме стойностите по оста Oy  AxesOrigin

*Решаваме уравнението (x^5)-7x+8 = 0. Със сигурност ще има корен, защото е от нечетна степен. f(-infinity) = -inf; f(inf) = inf. Но подобни интервали са неприложими. Затова прилагаме метод за табулиране на функция:

кодът за табулирането и визуализацията са от мен:
begin_me

f[x_]:= (x^5)-7x +8;
x = {0,1,-1,2,-2};
y =f[x]

TableForm[{x,f[x]},TableHeadings->{{"x", "f(x)"}, None}]

n=Length[x];
points = Table[{x[[i]],y[[i]]},{i,1,n}];
ListPlot[points, PlotStyle->{PointSize[0.03],Red}]

end_me

избираме най-малкия интервал, който отговаря на условието за локализация f(a).f(b)<0. В случая [-2,-1]

Plot[f[x],{x,-2,-1}]

за да сме сигурни, че пресича абсцисната ос:

Plot[f[x],{x,-2,-1},AxesOrigin->{0,0}]

begin_me:
за да не ни изглежда отрязана графиката, можем като първи елемент на списъка в AxesOrigin да сложим някой от краищата на интервала, в който сме локализирали:с

Plot[f[x],{x,-2,-1}, AxesOrigin->{-1,0}]

Plot[f[x],{x,-2,-1}, AxesOrigin->{-2,0}]

end_me

Методи за уточняване на корен:
	- метод на разполовяване (на упражнения)
	- метод на хордите
	- метод на допирателните (Нютон). Нютон е смятал много практични задачи, затова за него е било важно да се смята бързо. Важно за Нютон - неговите методи винаги са по-бързи. Аналогично за Коши при ДУ. Основно преимущество - най-бърз. 
	
	Интересно е, обаче, и кои са недостатъците.
	
Важно! Да се разбере каква е разликата между различните методи - основно в скоростта.

Метод на разполовяването

Общ преглед на метода. Графично представяне.

Метод на хордите

Графично представяне. Обща идея за метода гометрично. Хорда е отсечка, която свързва две точки от графиката. Чертаем хордата, свързваща точките (a, f(a)) и  (b, f(b)). Обозначаваме точките на графиката от вида (x, f(x)). Получаваме редицата x0, x1, x2, ..., които се приближават към корена x*.

Извеждане на формулата чрез уравнение на хорда. Минаваме през намиране на x1. По аналогия изписваме формулата за x_{n+1}.

Записваме теоремата:
Ако са изпълнени условията
1) f(a).f(b) < 0
2) f’ и f’’ са с постоянни знаци в [a,b]
3) x0: f(x0).f’’ <0; p: f(p).f’’ >0
то редицата x0, x1, x2,... то ф-ла (1)(ф-ла за x_{n+1} - итерационен процес) клони монотонно към единствения корен x* в [a,b] и е в сила оценка за грешката (вж. ръководството); 

Въведени са направо Mk, mk. 
Забележка за минимума и максимума според знака на втората производна. 
Изпъкнала отдолу/отгоре... зависи от определенията => “усмихната”, “намръщена”
M1=max{|f’(a)|,|f’(b)|}
m1=max{|f’(a)|,|f’(b)|}
горното е в сила, защото втората производна е с постоянен знак.

Определяне на x0 и p:
Изреждаме вариантите (общо 4) за знаците на f’ , f’’
	* с изписване аналитично на знаците и изводите според 3) от теоремата
	* с графично представяне на случаите
Пример за сбъркан избор на началната и постоянната точка - геометрично