КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Нелинейных уравнений
Решение алгебраических и Нелинейные уравнения вида F(х)=0 принято называть алгебраическими, если они содержат только алгебраические функции и трансцендентными, если они содержат другие функции (тригонометрические, показательные, логарифмические и т. д.). Корнем уравнения f(х)=0, где f(х) - функция непрерывная и дифференцируемая на отрезке [а,b] и в граничных точках, называется всякое число c, принадлежащее отрезку [а,b], такое, что f(с)=0. Процесс нахождения корней состоит из двух этапов: отделения корней и уточнения значения корней на отрезках отделения с заданной точностью. Отделением корней называется процесс выделения из области определения функции f отрезков [а,b], в каждом из которых содержится один и только один корень уравнения f(х)=0. Корни уравнения могут находиться на интервалах, определяемых переменой знака функции, между критическими точками. К критическим относятся точки, в которых производная от функции f(х) обращается в нуль, а также граничные точки (см. также раздел 3). В электронной таблице отделение корней можно выполнить путем табулирования функции с некоторым, достаточно малым, шагом. Областями отделения корней будут значения аргументов, между которыми происходит смена знака функции. Под уточнением значения корня с заданной точностью h понимают сужение границ отрезка [а,b] до длины, не превосходящей h. Уточнение значения корня на отрезке отделения осуществляется различными методами одномерной поисковой оптимизации: простых итераций, деления отрезка пополам, касательных, хорд, наискорейшего спуска и др. Для уточнения значения корня в Excel могут применяться все названные методы. В настоящем пособии рассмотрены три метода:
- простое табулирование; - метод простых итераций; - метод Ньютона (метод касательных). Метод простого табулирования не имеет ограничений, но малоэффективен, требует большого числа ручных операций. Условием окончания процедуры поиска является достижение функцией f(х) заданного значения: f(xi)<е, - где е - заданные требования к точности поиска корня. Метод простых итераций более эффективен. Он сходится, если f'(х)<0. Для его реализации необходимо функцию f(x)=0 преобразовать к рекуррентному виду xi+1=j(xi ) (6.16) Табулировать необходимо правую часть выражения (2.1). Для первой формулы в качестве аргумента используется начальное приближение Хо (как правило, одна из границ отрезка отделения), для последующих формул - значение корня на предыдущем шаге, т. е. f(xi). Начальное приближение выбирается произвольно. Условие окончания процедуры вычисления j(xi+1)- j(xi)<e. Метод Ньютона самый эффективный метод. Он обеспечивает сходимость за минимальное число шагов. Однако этот метод накладывает серьезные ограничения на вид функции. Функция должна быть дважды дифференцируема. Для поиска корня в этом методе, также как и в методе простых итераций, составляется рекуррентная формула: xi+1=xi - f(xi)/f'(xi). (6.17) Табулировать необходимо правую часть выражения. Начальное приближение выбирается на одной из границ отрезка отделения корня. В качестве начального приближения xо выбирается граница b, если f'(x)*f"(x)>0, и граница а, если f'(x)*f"(x)<0. Для первой формулы в качестве аргумента используется начальное приближение xо, для последующих формул - значение корня на предыдущем шаге, т. е. f(xi). Условием окончания процедуры уточнения корня является достижение функцией значения меньше заданного - f(xi+1)<=e. Приближенное значение производных можно вычислить численно с помощью формул (6.6), (6.7): Значение Dх можно принять в интервале от 0.0001 до 0.00001
Все указанные методы могут быть реализованы с помощью функций пользователя, разработанных с помощью встроенного языка программирования Visual Basic for Application (VBA).
Пример 6.6. Пример отделения и уточнения корня Пусть требуется найти корни уравнения y=2^x+2x-5 с точностью 0,001. Загрузите электронную таблицу. 1. Отделите корни уравнения. Для этой цели протабулируйте функцию на значительном отрезке с большим шагом и зафиксируйте границы смены знака функции. После нескольких шагов получим отрезок отделения [1.28 – 1.285]. Выберите шаг 0,0005 и протабулируейте функцию вновь. Получен новый интервал где функция меняет свой знак [1,283; 1,2835] (Листинг 6.15). На границе отрезка при x=1.283 значение функции равно 0,000555. То есть функция меньше заданной точности. Эту точку и примем в качестве значения корня заданной функции. Результат: х=1.283, f(x)=0,000555
2. Уточним значение корня на отрезке отделения [1.283; 1.2835] методом итераций: - напишем рекуррентную формулу. В заданном выражении это обеспечивается просто путем переноса второго слагаемого в левую часть уравнения и делением на коэффициент при неизвестной: x=(5-2^x)/2 (6.18)
- запишите в ячейку C11 формулу (6.18). В качестве х примите значение функции на левой границе отрезка отделения, то есть 1.28 (ячейка D4); - запишите в ячейку С12 формулу (6.18), но в качестве х примите значение ячейки С11, то есть значение корня на предыдущем шаге; - запишите в ячейку D12 формулу ABS(xi-xi+1); - скопируйте формулы из ячеек C12, D12 в нижележащие ячейки, пока в колонке D не будет выполнено требование к разности двух смежных значений аргументов. Результат: x=1.282742, f(x)= 0,001505. 3. Уточним значение корня на отрезке отделения [1.283; 1.2835] методом Ньютона: - найдем первую производную для заданного выражения f’(x)=(2* 2^x* LN(2)+2) (6.19)
xi+1=xi-(2^xi+2xi-5)/ (2* 2^xi* LN(2)+2) (6.20) - запишите в ячейку E11 формулу (6.20). В качестве х примите значение функции на левой границе отрезка отделения, то есть 1,28 (ячейка F4); - запишите в ячейку E12 формулу (6.20), но в качестве х примите значение ячейки E11, то есть значение корня на предыдущем шаге; - запишите в ячейку F11 формулу (f(xi), со ссылкой на ячейку Е11; - скопируйте формулы из ячеек Е12 и F11 в нижележащие ячейки, пока в колонке F не будет выполнено требование к точности значения функции. Результат: x=1,283141; f(x)= -3,5E-05 Из приведенных примеров наглядно видно, что метод Ньютона (метод касательных) обеспечивает гораздо более быструю сходимость, чем метод простых итераций.
Дата добавления: 2014-01-06; Просмотров: 292; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |