" В отличие от метода хорд, в методе касательных вместо хорды на каждом шаге проводится касательная к кривой y=F(x) при x=x n и ищется точка пересечения касательной с осью абсцисс:

Формула для (n+1) приближения имеет вид:

Если F(a)*F"(a)>0 , x 0 =a , в противном случае x 0 =b .

Итерационный процесс продолжается до тех пор, пока не будет обнаружено, что:

Пример:

Пусть дана задача следующего характера: Уточнить корни уравнения cos(2x)+x-5=0 методом касательных с точностью до 0,00001.

Изначально необходимо определиться с тем, чему равно x0: либо a, либо b. Для этого необходимо выполнить следующие действия:

Найти производную первого порядка от функции f(x)=cos(2x)+x-5. Она будет выглядеть следующим образом: f1(x)=-2sin(2x)+1.

Найти производную второго порядка от функции f(x)=cos(2x)+x-5. Она будет выглядеть следующим образом: f2(x)=-4cos(2x).

В итоге получается следующее:

Так как x0=b, то необходимо выполнить следующие действия:

Заполнить ячейки следующим образом (обратить внимание на названия и номера столбцов при заполнении - они должны быть такими же, как на рисунке):

В ячейку A6 ввести формулу =D5.

Выделить диапазон ячеек B5:E5 и методом протягивания заполнить диапазон ячеек B6:E6.

Выделить диапазон ячеек A6:E5 и методом протягивания заполнить диапазон нижерасположенных ячеек до получения в одной из ячеек столбца E результата (диапазон ячеек A6:E9).

В итоге получаем следующее:

4. Комбинированный метод хорд и касательных

Для того чтобы достичь наиболее точной погрешности, нужно одновременно использовать методы хорд и касательных. "По формуле хорд находят x n+1 , а по формуле касательных - z n+1 . Процесс нахождения приближенного корня прекращается, как только:

В качестве приближенного корня берут значение, равное (11) :"[2 ]

Пусть требуется уточнить корни уравнения cos(2x)+x-5=0 комбинированным методом с точностью до 0,00001.

Для решения такой задачи, используя Excel, необходимо выполнить следующие действия:

    Так как в комбинированном методе необходимо использовать одну из формул хорд и формулу касательных, то для упрощения следует ввести следующие обозначения:

    Для формул хорд обозначить:

Переменная c будет играть роль a или b в зависимости от ситуации.

Остальные обозначения аналогичны приведенным в формулах хорд, только учитывая выше введенные переменные.

    Для формулы касательных обозначить:

Остальные обозначения аналогичны приведенным в формуле касательных, только учитывая выше введенные переменные.

    Найти производную первого порядка от функции f(x)=cos(2x)+x-5. Она будет выглядеть следующим образом: f1(x)=-2sin(2x)+1.

    Найти производную второго порядка от функции f(x)=cos(2x)+x-5. Она будет выглядеть следующим образом: f2(x)=-4cos(2x).

    Заполнить ячейки следующим образом (обратить внимание на названия и номера столбцов при заполнении - они должны быть такими же, как на рисунке):

    В итоге получается следующее:

    В ячейку G1 ввести e, а в G2 ввести число 0,00001.

    В ячейку H1 ввести c, а в H2 ввести число 6, так как c=b (см. ячейку F2).

    В ячейку I1 ввести f(c), а в I2 ввести формулу =COS(2*H2)+H2-5.

    Заполнить ячейки последовательно следующим образом (обратить внимание на названия и номера столбцов при заполнении - они должны быть такими же, как на рисунке):

    В ячейку A6 ввести формулу =E5.

    В ячейку F6 ввести формулу =I5.

    Выделить диапазон ячеек B5:E5 и маркером автозаполнения заполнить диапазон ячеек B6:E6.

    Выделить диапазон ячеек G5:K5 и маркером автозаполнения заполнить диапазон ячеек G6:K6.

    Выделить диапазон ячеек A6:K6 и методом протягивания заполнить все нижестоящие ячейки до получения ответа в одной из ячеек столбца K (диапазон ячеек A6:K9).

В итоге получаем следующее:

Ответ: Корень уравнения cos(2x)+x-5=0 равен 5,32976.

Иванов Иван

При прохождении темы численные методы учащиеся уже умеют работать с электронными таблицами и составлять программы на языке паскаль. Работа комбинированного характера.Расчитана на 40 минут. Цель работы повторить и закрепить навыки паботы с программами EXCEL, ABCPascal. Материал содержит 2 файла. Один содержит теоретический материал, так как он и предлагается ученику. Во 2-м файле пример работы ученика Иванова Ивана.

Скачать:

Предварительный просмотр:

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

Аналитическое решение некоторых уравнений, содержащих, например тригонометрические функции может быть получено лишь для единичных частных случаев. Так, например, нет способа решить аналитически даже такое простое уравнение, как cos x=x

Численные методы позволяют найти приближенное значение корня с любой заданной точностью.

Приближённое нахождение обычно состоит из двух этапов:

1) отделение корней, т.е. установление возможно точных промежутков , в которых содержится только один корень уравнения;

2) уточнение приближённых корней, т.е. доведение их до заданной степени точности.

Мы будем рассматривать решения уравнений вида f(x)=0. Функция f(x) определена и непрерывна на отрезке [а.Ь]. Значение х 0 называется корнем уравнения если f(х 0 )=0

Для отделения корней будем исходить из следующих положений:

  • Если f(a)* f(b] \a, b\ существует, по крайней мере, один корень
  • Если функция y = f(x) непрерывна на отрезке , и f(a)*f(b) и f "(x) на интервале (a, b) сохраняет знак, то внутри отрезка [а, b] существует единственный корень уравнения

Приближённое отделение корней можно провести и графически. Для этого уравнение (1) заменяют равносильным ему уравнением р(х) = ф(х), где функции р(х) и ф(х] более простые, чем функция f(x). Тогда, построив графики функций у = р(х) и у = ф(х), искомые корни получим, как абсциссы точек пересечения этих графиков

Метод дихотомии

Для уточнения корня разделим отрезок [а, b] пополам и вычислим значение функции f(х) в точке x sr =(a+b)/2. Выбираем ту из половин или , на концах которых функция f(x) имеет противоположные знаки.. Продолжаем процесс деления отрезка пополам и проводим то же рассмотрение до тех пор, пока. длина станет меньше заданной точности . В последнем случае за приближённое значение корня можно принять любую точку отрезка (как правило, берут его середину). Алгоритм высокоэффективен, так как на каждом витке (итерации) интервал поиска сокращается вдвое; следовательно, 10 итераций сократят его в тысячу раз. Сложности могут возникнуть с отделением корня у сложных функций.

Для приближенного определения отрезка на котором находится корень можно воспользоваться табличным процессором, построив график функции

ПРИМЕР : Определим графически корень уравнения . Пусть f1(х) = х , a и построим графики этих функций. (График). Корень находится на интервале от 1 до 2. Здесь же уточним значение корня с точностью 0,001(на доске шапка таблицы)

Алгоритм для программной реализации

  1. а:=левая граница b:= правая граница
  2. m:= (a+b)/2 середина
  3. определяем f(a) и f(m)
  4. если f(a)*f(m)
  5. если (a-b)/2>e повторяем, начиная с пункта2

Метод хорд.

Точки графика функции на концах интервала соединяются хордой. Точка пересечения хорды и оси Ох (х*) и используется в качестве пробной. Далее рассуждаем так же, как и в предыдущем методе: если f(x a ) и f(х*) одного знака на интервале, нижняя граница переносится в точку х*; в противном случае – переносим верхнюю границу. Далее проводим новую хорду и т.д.

Осталось только уточнить, как найти х*. По сути, задача сводится к следующей: через 2 точки с неизвестными координатами (х 1 , у 1 ) и (х 2 , у 2 ) проведена прямая; найти точку пересечения этой прямой и оси Ох.

Запишем уравнение прямой по двум точках:

В точке пересечения этой прямой и оси Ох у=0, а х=х*, то есть

Откуда

процесс вычисления приближённых значений продолжается до тех пор, пока для двух последовательных приближений корня х„ и х п _1 не будет выполняться условие abs(xn-x n-1 ) е - заданная точность

Сходимость метода гораздо выше предыдущего

Алгоритм различается только в пункте вычисления серединной точки- пересечения хорды с осью абсцисс и условия останова (разность между двумя соседними точками пересечения)

Уравнения для самостоятельного решения: (отрезок в excel ищем самостоятельно)

  1. sin(x/2)+1=x^2 (х=1,26)
  1. x-cosx=0 (х=0,739)
  1. x^2+4sinx=0 (х=-1,933)
  1. x=(x+1) 3 (х=-2,325)

Дано уравнение F(x)=0 . Это - общий вид нелинейного уравнения с одним неизвестным. Как правило, алгоритм нахождения корня состоит из двух этапов:

1. Отыскание приближенного значения корня или отрезка на оси абсцисс, его содержащего.

2. Уточнение приближенного значения корня до некоторой точности.

На первом этапе применяется шаговый метод отделения корней, на втором - один из методов уточнения (метод половинного деления, метод Ньютона, метод Хорд или метод простой итерации).

Шаговый метод

В качестве примера рассмотрим уравнение x 2 - 11x + 30 = 0. Интервал поиска , шагh = 0,3. Решим его, используя специальные возможности пакета Excel. Последовательность действий (см. рис. 1):

1. Оформить заголовок в строке 1 «Численные методы решения нелинейных уравнений».

2. Оформить заголовок в строке 3 «Шаговый метод».

3. В ячейки A6 и C6 и B6 записать данные по задаче.

4. В ячейки B9 и C9 записать заголовки рядов - соответственно x иF(x).

5. В ячейки B10 и B11 ввести первые два значения аргумента - 3 и 3.3.

6. Выделить ячейки B5-B6 и протащить ряд данных до конечного значения (3,3), убедившись в правильном выстраивании арифметической прогрессии.

7. В ячейку C10 ввести формулу «=B10*B10-11*B10+30».

8. Скопировать формулу на остальные элементы ряда, используя прием протаскивания. В интервале C10:C18 получен ряд результатов вычисления функции F(x). Видно, что функция один раз меняет знак. Корень уравнения расположен в интервале .

9. Для построения графика зависимости F(x) используем Вставка - Диаграмма (тип «Точечная», маркеры соединяются гладкими кривыми).

Метод деления отрезка пополам

В качестве примера рассмотрим уравнение x 2 - 11x + 30 = 0. Интервал поиска , с точностью ε=0.01. Решим его, используя специальные возможности пакета Excel.

1. Ввести в ячейку B21 заголовок «Метод деления отрезков пополам».

2. Ввести в ячейку A23, C23, E23 данные по задачи.

3. В области B25:H25 оформить заголовок таблицы (ряд B - левая граница отрезка «a», ряд C - середина отрезка «x», ряд D - правая граница отрезка «b», ряд E - значение функции на левой границе отрезка «F(a)», ряд F - значение функции на середине отрезка «F(x)», ряд G - произведение «F(a)*F(x)», ряд H - проверка достижения точности « ê F(x)ê <е».

4. Ввести первоначальные значения концов отрезка: в ячейку B26 «4.8», в ячейку D26 «5.1».

5. Ввести в ячейку C26 формулу «=(B26+D26)/2».

6. Ввести в ячейку E26 формулу «=B26*B26-11*B26+30».

7. Ввести в ячейку F26 формулу «=C26*C26-11*C26+30».

8. Ввести в ячейку G26 формулу «=E26*F26».

9. Ввести в ячейку H26 формулу «=ЕСЛИ(ABS(F26)<0.01; ² корень² )».

1 0. Выделить область B21:H21 и протащить ее по вертикали вплоть до появления в ряду H сообщения «корень» (ячейка H29, H30).

Метод касательных (Ньютона)

1. Ввести в ячейку J23 заголовок «Метод касательной (Ньютона)».

2. Ввести в ячейку L23 текст «е=», а в ячейку M23 значение точности «0.00001».

3. В области K25:N25 оформить заголовок таблицы (ряд K - значение аргумента «x», ряд L - значение функции «F(x)», ряд M - производная функции «F ¢ (x)», ряд N - проверка достижения точности «ê F(x)ê <е».

4. В ячейку K26 ввести первоначальное значение аргумента «-2».

5. Ввести в ячейку L26 формулу «=K26*K26*K26+2*K26*K26+3*K26+5».

6. Ввести в ячейку M26 формулу «=3*K26*K26+4*K26+3».

7. Ввести в ячейку N26 формулу «=ЕСЛИ(ABS(L26)<$M$23;"корень")».

8. Ввести в ячейку K27 формулу «=K26-L26/M26».

9. Выделить область L27:N27 и протащить ее по вертикали вплоть до появления в ряду N сообщения «корень» (ячейка N30).

Метод хорд

В качестве примера рассмотрим уравнение x 3 +2x 2 +3x+5= 0. Точность ε=0.01. Решим его, используя специальные возможности пакета Excel.

1. Ввести в ячейку B32 заголовок «Метод хорд».

2. Ввести в ячейку C34 текст «е=», а в ячейку E34 значение точности «0.00001».

3. В области B36:D36 оформить заголовок таблицы (ряд B - значение аргумента «x», ряд C - значение функции «F(x)», ряд D - проверка достижения точности « ê F(x)ê <е».

4. В ячейку B37 и B38 ввести первоначальное значение аргумента «-2» и. «-1»

5. Ввести в ячейку С37 формулу «=B37*B37*B37+2*B37*B37+3*B37+5».

6. Ввести в ячейку D37 формулу «=ЕСЛИ(ABS(B38-B37)<$D$34;"корень")».

7. Ввести в ячейку B39 формулу «=B38-C38*(B38-B37)/(C38-C37)».

8. Выделить область C39:D39 и протащить ее по вертикали вплоть до появления в ряду D сообщения «корень» (ячейка D43).

Метод простой итерации

В качестве примера рассмотрим уравнение x 2 - 11x + 30 = 0. Интервал поиска , с точностьюe =0,05.

1. Ввести в ячейку K32 заголовок «Метод простой итерации»

2. Ввести в ячейку N34 текст «е=», а в ячейку O34 значение точности «0,05».

3. Выбрать функцию j (x), удовлетворяющую условию сходимости. В нашем случае такой функцией является функция S(x)=(x*x+30)/11.

4. В области K38:N38 оформить заголовок таблицы (ряд K - значение аргумента «x», ряд L - значение функции «F(x)», ряд M - значение вспомогательной функции «S(x)», ряд N - проверка достижения точности « ê F(x)ê <е».

5. В ячейку K39 ввести первоначальное значение аргумента «4.8».

6. Ввести в ячейку L39 формулу «=K39*K39-11*K39+30».

7. Ввести в ячейку M39 формулу «=(K39*K39+30)/11».

8. Ввести в ячейку N39 формулу «=ЕСЛИ(ABS(L39)<$O$34;"корень")».

9. Ввести в ячейку K40 формулу «=M39».

1 0. Скопировать ячейки L39:N39 в ячейки L40:N40.

1 1 . Выделить область L40:N40 и протащить ее по вертикали вплоть до появления в ряду N сообщения «корень» (ячейка N53).

Рис.1 Решение нелинейных уравнений в среде Excel

n Пример 2.3. Найти корни уравнения

x - tg(x)= 0. (2.18)

Первый этап решения (этап отделения корней ) был реализован в разделе 2.1 (пример 2.2). Искомый корень уравнения находится на отрезке x Î, что и видно на графике (рис. 2.9).

Рис.2.9. Этап отделения корней

Этап уточнения корня реализуем средствами Excel. Продемонстрируем это на примере метода половинного деления . Схемы расчетов для методов касательных и хорд мало чем отличаются от приведенной ниже схемы.

Последовательность действий:

1. Подготовим таблицу, как показано на рис.2.10 и введем значения a , b , ε соответственно в ячейки В3, В4, В5.

2. Заполним первую строку таблицы:

D4=0 номер итерации;

Е4=В3, F4=B4, для вычисления f(a): G4=E4-TAN(E4),

Аналогично, в ячейки H4, I4, J4 введем формулы для вычисления соответственно f (b ), x n =(a+b )/2 и f (x n );

В ячейке К4 вычислим длину отрезка [a , b ]: K4=ABS(E4-F4).

3. D5=D4+1, для формирования номера итерации.

4. В ячейки E5, F5 введем формулы для формирования концов вложенных отрезков в соответствии с алгоритмом, изложенным в разделе 2.2.1:

E5=ЕСЛИ(J4*H4<0;I4;E4);

F5=ЕСЛИ(J4*H4>0;I4;F4).

5. Выделим ячейки G4:K4 и скопируем их вниз на одну строку .

6. Выделим ячейки D5:K5 и скопируем их вниз до конца таблицы.

Рис.2.10. Схема решения нелинейного уравнения методом бисекции

Деление отрезков продолжаем до тех пор, пока длина последнего не станет меньше заданного ε, т.е. до тех пор, пока не выполнится условие .

Чтобы сделать наглядным окончание итерационного процесса, воспользуемся Условным форматированием

Условное форматирование – это форматирование выделенных ячеек на основе некоторого критерия, в результате чего произойдет цветовое оформление ячеек, содержимое которых удовлетворяет заданному условию (в нашем случае ).

Для этого выполним следующие действия:

Выделим ячейки последнего столбца (К) расчетной схемы (рис.2.10), где будет задаваться критерий окончания итерационного процесса;

Выполним команду


Главная\Стили\ Условное форматирование;

Рис.2.11. Окно условного форматирования

В появившемся окне (рис.2.11) выберем строку:

Правила выделения ячеек \ Меньше;

В левой части появившегося диалогового окна Меньше (рис.2.12) зададим значение, которое будем использовано в качестве критерия (в нашем примере это адрес ячейки B5, где находится значение ε ).

Рис.2.12. Диалоговое окно Меньше

В правой части окна Меньше выберем цвет, которым будут окрашены ячейки, отвечающие заданному условию; и нажмем кнопку ОК.

В результате такого форматирования ячейки столбца К, значения которых меньше 0.1, тонированы, рис.2.10.

Таким образом, за приближенное значение корня уравнения x- tg(x)= 0 с точностью e=0.1принимается 3-я итерация, т.е. x * »4.46875 . Для e=0.01 - x * » 4.49609 (6-я итерация).

Решение нелинейных уравнений с использованием надстройки «Подбор параметра»

Решение нелинейных уравнений можно реализовать в приложении MS Excel с использованием надстройки Подбор параметра, где реализуется некоторый итерационный процесс.

Найдем корни рассмотренного выше уравнения (2.18).

За нулевое приближение решения уравнения, как это видно из рис.2.13, можно принять х 0 =4 или х 0 =4,5.

Последовательность действий

1. Подготовим таблицу, как показано на рис.2.13. В ячейку А2 введем некоторое значение х 0 (например х 0 =4) из ОДЗ функции y=f(x). Это будет начальным приближением для итерационного процесса, реализуемого приложением Подбор параметра.

2. Ячейка В2 является изменяемой ячейкой в процессе работы надстройки. Введем в нее это значение х 0 , а в ячейке С3 вычислим значение функции f(x n) для этого приближения.

3. Выберем команду:

Данные \ Работа с данными \ Анализ «что-если»\ Подбор параметра.

4. В окне «Подбор параметра»сделаем установки, как показано на рис.2.13 и нажмем кнопку ОК.

Рис.2.13. Решение нелинейного уравнения с помощью надстройки «Подбор параметра»

Если все было проделано правильно, то в ячейке В2 (рис.2.13) будет получено приближенное значение корня нашего уравнения.

Проделайте все эти операции ещё раз с другим значением начального приближения, например х 0 =4,5.

Контрольные вопросы

1. Какое уравнение называется нелинейным. Что является решением нелинейного уравнения.

2. Геометрическая интерпретация решения нелинейного уравнения.

3. Методы решения нелинейного уравнения (прямые и итерационные), в чем разница.

4. Два этапа численного решения нелинейного уравнения. Какие задачи ставятся на первом и втором этапах.

5. Первый этап решения нелинейного уравнения. Как выбирается нулевое приближение (нулевая итерация).

6. Построение итерационной последовательности. Понятие сходимости итерационной последовательности. Нахождение приближенного значения корня нелинейного уравнения с точностью ε.

7. Геометрическая интерпретация численных методов решения нелинейного уравнения: половинного деления, Ньютона (касательных), хорд.


Глава 3.

Задание: дано нелинейного уравнения f(x) = 0 на заданном отрезке . Требуется средствами табличного процессора Excel найти корни данного уравнения методом касательных с использованием циклических ссылок.

x-x 3 +1=0 a=1 b=2

Решение:

Найдем корень нелинейного уравнения в табличном процессоре Excel методом касательных с использованием циклических ссылок. Для нахождения корня будем использовать формулу:

Для включения режима циклических вычислений в Excel 2003 в меню Сервис/Параметры/вкладка Вычисления следует поставить флажок Итерации и флажок выбора вида ведения вычислений: автоматически. В MS Excel 2010 следует зайти в меню Файл/Параметры/Формулы и поставить флажок в поле "Включить итеративные вычисления" :


Найдем производную функции f(x)=x-x 3 +1

f’(x)=1-3x 2
В ячейку А3 введем значение а =1, ячейку В3 введем формулу расчета текущего значения х: =ЕСЛИ(B3=0;A3;B3-(B3-СТЕПЕНЬ(B3;3)+1)/(1-3*СТЕПЕНЬ(B3;2)))
В ячейку С3 введем формулу для контроля значения f(x): =B3-СТЕПЕНЬ(B3;3)+1.
Получим корень уравнения в ячейке В3 х=1,325.

Введем начальное приближение в ячейку А3 =2. Но для того чтобы вычисления были правильные, недостаточно изменить число в ячейке А3 и запустить процесс вычислений. Потому что в этом случае вычисления продолжаться с последнего вычисленного ранее значения. Это значение, в ячейке В3, необходимо обнулить, для этого можно заново записать туда формулу или просто выбрать ячейку с формулой и дважды щелкнуть мышью на ней. После этого поставить курсор на ячейку с формулой и нажать клавишу Enter для запуска процесса итерационных вычислений.