Содержание
Нелинейные уравнения делятся на алгебраические и трансценбертные a_n*x^n+ a_n+1*x^n-1…+a1*x+a0=0
Если ур-е f(x)=0 имеет комплексные корни, то необходимо х представить в виде x=x’+ix’’ (i=√-1), где х – вещественная часть корня, х‘‘ – мнимая часть корня. После группировки вещественных и мнимых частей ур-е f(x)=0 может быть приведено а виду f‘(x‘,х‘‘)+f‘‘(x‘,х‘‘)=0. Т.о. данное соотношение будет =0 тогда, когда и веществ и мнимая часть ф-ции обратятся в 0. Получаем систему двух нелинейных ур-ий.
Численное рушение нелинейных уравнений сост из 2-х этапов:
1) Отделение корней
2) Уточнение корня.
Отделить корень значит указать достаточно узкий интервал, в пределах которого находится единственный корень или указать приближённое значение корня.
Отделение корней опирается на две теоремы Вейерштрасса:
- 1 теорема: если ф-ция f(х) непрерывна на отрезке а,в и на концах этого отрезка принимает значение разных знаков, то на этом отрезке найдётся по крайней мере один корень уравнения f(х)=0.
- 2 теорема: если непрерывная на отрезке ф-ция f(х) является монотонной и на концах отрезка принимает значение разных знаков, то на этом отрезке а,в находится единственный корень. Функция называется монотонной, если её первая производная на отрезке не меняет знак.
Методы отделения корней:
1) табулирование функции;
2) построение графика функции.
Методы уточнения корней
Уточнить корень означает найти его значения с требуемой погрешностью.
1. Метод поразрядного приближения. Метод является обобщением табулирования при отделении корня.
Отрезок а,в разбивается на 10 частей и f(х) табулируется с шагом (в-а)/10. Находится более узкий интервал на кот функция меняет знак. Этот интервал табулируется с шагом ещё в 10 раз.
Метод половинного деления
На каждом шаге интервал нахождения корня уменьшается в 2 раза. Ищется середина отрезка и определяется знак функции в этой точке.
Недостатки метода:
1) проблема определения отрезка на котором функция меняет свой знак. Если на отрезке несколько корней, то заранее нельзя сказать к какому из них сойдётся вычислительный процесс;
2) метод не применим к корням кратной чётности;
3) для корней нечётных, но высокой кратности метод неустойчив и даёт большие ошибки;
4) метод очень медленно сходится.
Алгоритм метода половинного деления:
1. ищем середину отрезка [a,b]
2. находим f(a), f(c), f(b). Если знак фции f(a)=f(c) или f(b)=f(c), то a=с или b=с соответственно.
3. если abs(b-a)>E, тогда продолжаем, иначе ответ=с.
Метод Фридмана
Пусть дан алгебраический многочлен н-степени x^4-7x^3+27x^2-47x+26. Требуется найти корни уравнения. Для этого выделим квадрат 27x^2-47x+26 и делим на коэф при x^2. Получаем x^2-1.74x+0.96. Далее записываем полином 4-ой степени и делим его на x^2-1.74x+0.96. получаем x^2-5.26x+16.881. переписываем данное соотношение в обратном порядке.
Затем, 26-47x+27x^2-7x^3+x^4 делим на 16,881-5,26x+x^2 и получаем 1,540-2,304x+0.790x^2. Вот эту штуковину, что получилась, опять делим на коэф при x^2 и записываем в обратном порядке (уже по нормальному). Получаем x^2-2.916x+1.949. Далее записываем полином 4-ой степени и делим его на x^2-2.916x+1.949 и т.д. завершается этот процесс после того, как в пределах требуемой точности эти коэф-ты перестанут изменяться.
Метод простой итерации
Пусть задан отрезок [а, b] существования одного корня уравнения. Представим исходное уравнение в виде x = fi(x). Если для всех точек z принадлеж [a, b] выполняется условие fi(z) принадл [а,b] и abs(fi(x))<l, то существует единственное решение уравнения x = fi(x) при любом начальном значении корня x0 принадл [a,b]. Этот факт позволяет для решения уравнения f(x)=0 использовать итерационную формулу xi+1 = fi(xi). Вычисления ведутся до тех пор. пока не будет выполнено условие: abs(xi+1-xi)<=E
Пример. Пусть дано ур=4xxx-40xx-56x+20. Требуется найти корень этого ур-я на промеж [a,b] с точностью Е. a=0, b=1, c=0.5, e=0,001. Находим f’(a), f’(c), f’(b) и берём max значение по модулю. Находим Л=1/abs(max f’(х)).
Если f’(х)<0, тогда ‘+‘ иначе в след ур-е записывается ‘–‘. x=x+-Л(4xxx-40xx-56x+20). Дальше находим q1=x’(a), q2=x’(c), q3=x’(b) и выбираем abs(max q).
X0=0.5; X1=x0+-Л(4x0x0x0-40x0x0-56×0+20); Проверяем если abs(x1-x0)<=(1-q)/q*E, то ответ = x1, иначе продолжаем X2=x1+-Л(4x1x1x1-40x1x1-56×1+20)…
Метод Хорд
Пусть на [a,b] функция F(x) меняет знак. F(A)>0, F(b)<0. В данном методе процес итераций состоит в отм, что в качестве приближений к корню уравнения принимаются значения c0,c1… точек пересечения хорды с осью абсцисс. Сначала надохим уравнение хорды АB y-F(a)/F(b)-F(a) = x-a/b-a Для точки пересечения ее с осью абсцисс получим уравнение c0=a- b-a/F(b)-F(a) *F(a). Далее сравнивая знаки F(a) и F(c0) приходим к выводу что корень находится в интервале (а,с0), так как F(a)F(c0)<0 (для данного случая). Отрезок [c0,b] отбрасываем. След итерация состоит в определении нового приближения с1 как точки пересечения хорды АB1 с осью абсцисс и тд. Условие окончания итераций |ck-ck-1|<e.
Метод Зейделя
Метод Зейделя является усовершенстоваванием метода простой итерации. Суть метода: при вычислении значения неизвестной xi^s+1 используется значения неизвестных x1^s+1,…,xi-1^s+1, которые вычислены на s+1 итерации. В случае система реккурентных соотношений имеет следующий вид:
Метод Касательных
Измен. будет та точка в которой знак функции совпадает со знаком её второй производной.
Xi=xi-f(xi)/f’(xi)
Под xi понимается любое ai либо bi в зависимости от того какая из точек конца отрезка является изменяющейся.
Область применения данной формулы f’(xi)≠0. усл. завершения │f(xi-x(i-1)) │<погрешность.
Метод Гаусса
Метод Гаусса состоит и прямого и обратного хода.
На прямом ходе сист. преобразуется к треугольному виду с помощью элементарных преобразований, в котором первое уравнение зависит от n неизвестных, 2-е от n-1, последнее от 1 неизвестной.
На обратном ходе вычисляются значения неизвестных, составляющих решение системы. Для этого значение неизвестной, найденной из последнего ур-ия. подставляют в предпоследнее и находится значение новой неизвестной. Затем обе неизвестный подставляются в 1-е уравнение и находят последнюю неизвестную.