Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Метод итерацийУравнение f (x)=0 представляем в виде x = j (x). Выбираем на отрезке [ a,b ] произвольную точку x 0 в качестве начального приближения и строим последовательность: x 1= j (x 0), x 2= j (x 1) ,..., xn = j (xn -1). Процесс последовательного вычисления чисел xn (n =1,2,3,...) называется методом итераций. Если на отрезке [ a,b ] выполнено условие |j' (x) |≤q< 1, то процесс итераций сходится, т.е. увеличивая n, можно получить приближение, сколь угодно мало отличающееся от истинного значения корня уравнения. Процесс итераций продолжается до тех пор, пока не будет выполнено условие |xn-xn -1 |£ e, где e — заданная точность вычислений. Если q≤0.5, то для прекращения процесса итераций можно пользоваться более простым соотношением |xn-xn -1 |£e. Геометрическая интерпретация метода итераций: Пример: Методом итераций найти корень уравнения f(x)= arcsin(2 x+ 1) -x 2 =0 расположенный на отрезке [-0.5,0] c точностью ε =10-4. Уравнение преобразуем к виду y=j(x) следующим образом: arcsin(2 x +1) =x 2, sin(arcsin(2 x +1)) = sin(x 2), 2 x +1 = sin(x 2), x =0.5(sin(x 2)-1). Значит j (x)= 0.5(sin(x 2)-1), j’ (x)= x cos(x2), | j’ (x) |=|x cos(x 2)|≤0.5 для x Î[ -0.5,0 ]. Метод итераций сходится. Замечание: на каждом этапе необходимо помнить лишь два соседних приближения, поэтому приближение xn обозначим через x, а приближение xn +1через y. Program Iter; {метод итераций} Uses Crt; Const eps=0.0001; Var fx,x,y,delta:Real; n:Integer; Function Fi(z:Real):Real; Begin Fi:=0.5*(sin(z*z)-1) End; Function F(z:Real):Real; Begin F:=2*z+1-sin(z*z); End; Begin Clrscr; Write ('Введите начальное приближение x='); ReadLn (x); n:=0; Repeat y:=Fi(x); delta:=abs(y-x); n:=n+1; x:=y; Until delta<eps; WriteLn('Корень уравнения x=',x:8:4); WriteLn('Проверка f(',x:8:4,')=',f(x):8:5); WriteLn('Количество итераций n=',n); Repeat Until KeyPressed; End.
|