Метод касательных решения нелинейных уравнений
Определение корней нелинейного уравнения методом касательных решения нелинейных уравнений. Составление программы на языке программирования Турбо-Паскаль 7.0. Описание сущности метода касательных (метода секущих Ньютона). Результаты выполнения программы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 16.01.2013 |
Размер файла | 825,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Пензенский приборостроительный колледж
Контрольная работа
на тему:
Метод касательных решения нелинейных уравнений
Руководитель курсовой работы: Кривозубова С.А.
Задание принял к исполнению: Ляпин Р.Н.
Ковылкино - 1999 г.
Задание на контрольную работу
Тема: "Метод касательных решения нелинейных уравнений".
Изучить теоретический материал по заданной теме.
Составить блок-схему алгоритма решения задачи.
Написать программу на языке Турбо-Паскаль для решения задачи в общем виде.
Выполнить программу с конкретными значениями исходных данных.
Определить корни уравнения х3 + 0,1 * х2 + 0,4 * х - 1,2 = 0 аналитически и уточнить один из них с точностью до 0,000001 методом касательных
Срок представления работы к защите: 10 мая 1999 г.
Исходные данные для исследования: научная и техническая литература.
Реферат
Контрольная работа содержит: страниц ____, 1 график, 5 источников.
Перечень ключевых понятий: производная, метод касательных, программирование, нелинейное уравнение.
Объект исследования: Корни нелинейного уравнения.
Цель работы: Определение корней нелинейного уравнения.
Методы исследования: изучение работ отечественных и зарубежных авторов по данной теме.
Полученные результаты: изучен метод касательных решения нелинейных уравнений; рассмотрена возможность составления программы на языке программирования Турбо-Паскаль 7.0
Область применения: в работе инженера.
Содержание
- Задание на курсовую работу
- Реферат
- Введение
- 1. Краткое описание сущности метода касательных (метода секущих Ньютона)
- 2. Решение нелинейного уравнения аналитически
- 3. Блок схема программы
- 4. Программа на языке PASCAL 7.0
- 5. Результаты выполнения программы
- Список использованных источников
Введение
Процедура подготовки и решения задачи на ЭВМ достаточно сложный и трудоемкий процесс, состоящий из следующих этапов:
Постановка задачи (задача, которую предстоит решать на ЭВМ, формулируется пользователем или получается им в виде задания).
Математическая формулировка задачи.
Разработка алгоритма решения задачи.
Написание программы на языке программирования.
Подготовка исходных данных.
Ввод программы и исходных данных в ЭВМ.
Отладка программы.
Тестирование программы.
Решение задачи на ЭВМ и обработка результатов.
В настоящей курсовой работе условие задачи дано в математической формулировке, поэтому необходимость в выполнении этапов 1 и 2 отпадает и сразу можно приступить к разработке алгоритма решения задачи на ЭВМ. Под алгоритмом понимается последовательность арифметических и логических действий над числовыми значениями переменных, приводящих к вычислению результата решения задачи при изменении исходных данных в достаточно широких пределах. Таким образом, при разработке алгоритма решения задачи математическая формулировка преобразуется в процедуру решения, представляющую собой последовательность арифметических действий и логических связей между ними. При этом алгоритм обладает следующими свойствами: детерминированностью, означающей, что применение алгоритма к одним и тем же исходным данным должно приводить к одному и том уже результату; массовость, позволяющей получать результат при различных исходных данных; результативностью, обеспечивающей получение результата через конечное число шагов.
нелинейное уравнение программа касательный
Наиболее наглядным способом описания алгоритмов является описание его в виде схем. При этом алгоритм представляется последовательность блоков, выполняющих определенные функции, и связей между ними. Внутри блоков указывается информация, характеризующая выполняемые ими функции. Блоки схемы имеют сквозную нумерацию.
Конфигурация и размеры блоков, а также порядок построения схем определяются ГОСТ 19.002-80 и ГОСТ 19.003-80.
На этапе 4 составляется программа на языке Турбо-Паскаль. При описании программы необходимо использовать характерные приемы программирования и учитывать специфику языка.
В качестве языка программирования выбран язык ПАСКАЛЬ ввиду его наглядности и облегченного понимания для начинающих программистов, а также возможности в дальнейшем использовать для решения более трудных задач.
Этапы алгоритмизации и программирования являются наиболее трудоемкими, поэтому им уделяется большое внимание.
В процессе выполнения курсовой работы студент готовит исходные данные, вводит программу и исходные данные. При работе ввод программы и исходных данных осуществляется с клавиатуры дисплея.
Отладка программы состоит в обнаружении и исправлении ошибок, допущенных на всех этапах подготовки задач к решению на ПЭВМ. Синтаксис ошибки обнаруживается компилятором, который выдает сообщение, указывающее место и тип ошибки.
Обнаружение семантических ошибок осуществляется на этапе тестирования программы, в котором проверяется правильность выполнения программы на упрощенном варианте исходных данных или с помощью контрольных точек или в режиме пошагового исполнения.
Задание при обработке на ЭВМ проходит ряд шагов: компиляцию, редактирование (компоновку) и выполнение.
Обработка результатов решения задачи осуществляется с помощью ЭВМ. Выводимые результаты оформлены в виде, удобном для восприятия.
1. Краткое описание сущности метода касательных (метода секущих Ньютона)
Пусть на отрезке [a; b] отделен корень с уравнения f (x) = 0 и f - функция непрерывна на отрезке [a; b], а на интервале] a; b [существуют отличные от нуля производные f ' и f".
Так как f ' (x) № 0, то запишем уравнение f (x) = 0 в виде:
x = x - (f (x) / f ' (x)) (1)
Решая его методом итераций можем записать:
xn+1 = x n - (f (x n) / f ' (x n)) (2)
Если на отрезке [a; b] f ' (x) * f " (x) > 0, то нул - евое приближение выбираем x0=a. Рассмотрим геометрический смысл метода. Рассмотрим график функции y=f (x). Пусть для определенности f ` (x) > 0 и f " (x) > 0 (рис.1). Проведем касательную к графику функции в точке B (b, f (b)). Ее уравнение будет иметь вид:
y = f (b) + f ' (b) * (x - b)
Полагая в уравнении y = 0 и учитывая что f ' (x) № 0, решаем его относительно x. Получим:
x = b - (f (b) /f ` (b))
Нашли абсциссу x1 точки c1 пересечения касательной с осью ox:
x1 = b - (f (b) - f ' (b))
Проведем касательную к графику функции в точке b1 (x1; f (x1)). Найдем абсциссу x2 точки с2 пересечения касательной с осью Ox:
x2 = x1 - (f (x1) / (f ' (x1))
Вообще:
xk+1 = x k - (f (x k) / f ' (x k)) (3)
Таким образом, формула (3) дает последовательные приближения (xk) корня, получаемые из уравнения касательной, проведенной к графику функции в точке b k (x k; f (x k0) метод уточнения корня c [a; b] уравнения f (x) = 0 с помощью формулы (3) называется методом касательной или методом Ньютона.
Геометрический смысл метода касательных состоит в замене дуги y = f (x) касательной, одной к одной из крайних точек. Начальное приближение x 0 = a или x0 = b брать таким, чтобы вся последовательность приближения х k принадлежала интервалу] a; b [. В случае существования производных f ', f", сохраняющих свои знаки в интервале, за х0 берется тот конец отрезка [a; b], для которого выполняется условие f ' (х0) * f (х0) > 0. Для оценки приближения используется общая формула:
|c-x k-1 | Ј | f (x k+1) /m|, где m = min f ' (x) на отрезке [a; b].
На практике проще пользоваться другим правилом:
Если на отрезке [a; b] выполняется условие 0 < m < | f (x) | и ?e ???заданная точность решения, то неравенство | x k+1-x k| Ј----e-- влечет выполнение неравенства |c-x k-1| Ј----e--.
В этом случае процесс последовательного приближения продолжают до тех пор, пока не выполнится неравенство:
|c-x k-1| Ј----e??
2. Решение нелинейного уравнения аналитически
Определим корни уравнения х3 + 0,1х2 + 0,4х - 1,2 = 0 аналитически. Находим: f (x) = х3 + 0,1х2 + 0,4х - 1,2
f ` (x) = 3х2 + 0,1х + 0,4
f (-1) = - 2,5 < 0f (0) = - 1,2 < 0f (+1) = 0,3 > 0
x |
- ? |
-1 |
0 |
+1 |
+ ? |
|
sign f (x) |
- |
- |
- |
+ |
+ |
Следовательно, уравнение имеет действительный корень, лежащий в промежутке [0; +1].
Приведем уравнение к виду x = j (x), так, чтобы | j ` (x) | <1 при 0 Ј?x Ј +1.
Так как max | f ' (x) | = f ' (+1) = 3 + 0,1 + 0,4 = 3,5 то можно взять R = 2.
Тогда j (x) = x - (f (x) / R) = x - 0,5 х3 - 0,05 х2 - 0,2 х + 0,6 = - 0,5 х3 - 0,05 х2 + 0,8 х + 0,6.
Пусть х0 = 0, тогда х n+1 = j (х n).
Вычисления расположим в таблице.
n |
хn |
х2n |
х3n |
? (хn). |
f (x) |
|
1 |
1 |
1 |
1 |
0,85 |
-0,17363 |
|
2 |
0,85 |
0,7225 |
0,614125 |
0,9368125 |
0,08465 |
|
3 |
0,9368125 |
0,87761766 |
0,822163194 |
0,89448752 |
-0,04651 |
|
4 |
0,89448752 |
0,800107923 |
0,715686552 |
0,917741344 |
0,024288 |
|
5 |
0,917741344 |
0,842249174 |
0,772966889 |
0,905597172 |
-0,01306 |
|
6 |
0,905597172 |
0,820106238 |
0,74268589 |
0,912129481 |
0,006923 |
|
7 |
0,912129481 |
0,83198019 |
0,758873659 |
0,908667746 |
-0,0037 |
|
8 |
0,908667746 |
0,825677072 |
0,750266124 |
0,910517281 |
0,001968 |
|
9 |
0,910517281 |
0,829041719 |
0,754856812 |
0,909533333 |
-0,00105 |
|
10 |
0,909533333 |
0,827250884 |
0,752412253 |
0,910057995 |
0,000559 |
|
11 |
0,910057995 |
0,828205555 |
0,753715087 |
0,909778575 |
-0,0003 |
|
12 |
0,909778575 |
0,827697055 |
0,753021048 |
0,909927483 |
0,000159 |
|
13 |
0,909927483 |
0,827968025 |
0,753390861 |
0,909848155 |
-8,5E-05 |
|
14 |
0,909848155 |
0,827823665 |
0,753193834 |
0,909890424 |
4,5E-05 |
|
15 |
0,909890424 |
0,827900583 |
0,753298812 |
0,909867904 |
-2,4E-05 |
|
16 |
0,909867904 |
0,827859602 |
0,753242881 |
0,909879902 |
1,28E-05 |
|
17 |
0,909879902 |
0,827881437 |
0,753272681 |
0,90987351 |
-6,8E-06 |
|
18 |
0,90987351 |
0,827869803 |
0,753256804 |
0,909876916 |
3,63E-06 |
|
19 |
0,909876916 |
0,827876002 |
0,753265263 |
0,909875101 |
-1,9E-06 |
|
20 |
0,909875101 |
0,827872699 |
0,753260756 |
0,909876068 |
1,03E-06 |
График функции y = х3 + 0,1х2 + 0,4х - 1,2
3. Блок схема программы
4. Программа на языке PASCAL 7.0
program metod_kasatel; {Название программы}
uses Crt; {Модуль дисплейных функций}
var {Блок описаний переменных}
xn,xn1,a,b,c,mx,y0,x0: real;
function f1 (x1: Real): Real; {Основная функция}
begin
f1: = x1*x1*x1* (-0.5) - 0.05*x1*x1+0.8*x1+0.6;
end;
function f2 (x4: Real): Real; {Производная от основной функции}
begin
f2: = x4*x4*x4+0.5*x4*x4+0.1*x4*x4+0.4*x4-1.2;
end;
begin {Начало основного тела программы}
Clrscr; {Очистка экрана перед выполнением программы}
a: =0; b: =1; c: =0.00000001;
Writeln (' От A=',a,' до B=',b); {Вывод на экран}
Writeln (' Погрешность с=',c);
Readln; { Ожидание нажатия клавиши Enter}
xn: =b;
xn1: = f1 (xn);
y0: =f2 (b);
while ABS (y0) >c do {Проверка по точности вычисления корня}
begin {Тело цикла}
xn: =xn1;
xn1: =f1 (xn);
y0: = f2 (xn1);
{Печать промежуточного результата}
Writeln ('xn=',xn,' xn+1=',xn1,' f (xn+1) =',y0);
Readln; { Ожидание нажатия клавиши Enter}
end; {Конец тела цикла}
Writeln ('Конечные значения'); {Печать полученного результата}
Writeln (' xn+1=',xn1,' f (xn+1) =',y0);
Readln; { Ожидание нажатия клавиши Enter}
end. {Конец основного тела программы}
5. Результаты выполнения программы
От A= 0.0000000000E+00 до B= 1.0000000000E+00
Погрешность с= 1.0000000000E-08
От A= 0.0000000000E+00 до B= 1.0000000000E+00
Погрешность с= 1.0000000000E-08
Конечные значения
xn+1= 9.0987573394E-01 f (xn+1) = 6.6920620156E-09
Список использованных источников
1. Алексеев В.Е., Ваулин А.С., Петрова Г.Б. - Вычислительная техника и программирование. Практикум по программированию: Практ. пособие/ - М.: Высш. шк., 1991. - 400 с.
2. Абрамов С.А., Зима Е.В. - Начала программирования на языке Паскаль. - М.: Наука, 1987. - 112 с.
3. Вычислительная техника и программирование: Учеб. для техн. вузов/ А.В. Петров, В.Е. Алексеев, А.С. Ваулин и др. - М.: Высш. шк., 1990 - 479 с.
4. Гусев В.А., Мордкович А.Г. - Математика: Справ. материалы: Кн. для учащихся. - 2-е изд. - М.: Просвещение, 1990. - 416 с.
5. Марченко А.И., Марченко Л.А. - Программирование в среде Turbo Pascal 7.0 - К.: ВЕК+, М.: Бином Универсал, 1998. - 496 с.
Размещено на Allbest.ru
...Подобные документы
Математический алгоритм вычисления корней нелинейного уравнения и его решение методом касательных. Особенности программной реализации решения таких уравнений. Процедура подготовки и решения задачи на ЭВМ, характеристика алгоритма и структуры программы.
курсовая работа [96,6 K], добавлен 02.06.2012Анализ метода касательных (метода секущих Ньютона), аналитическое решение нелинейного уравнения. Описание алгоритма решения задачи, пользовательских идентификаторов, блок-схем, программного обеспечения. Тестирование программы на контрольном примере.
курсовая работа [97,1 K], добавлен 10.01.2014Этапы численного решения нелинейных уравнений заданного вида: отделение (изоляция, локализация) корней уравнения аналитическим или графическим способами, уточнение конкретного выделенного корня методом касательных (Ньютона). Решение в системе MathCad.
курсовая работа [271,6 K], добавлен 22.08.2012Описание методов дихотомии (половинного деления) и касательных. Их применение для решения нелинейных уравнений. Графическое отделение корней. Блок-схемы алгоритмов. Тексты (листинги) программ на языке Delphi. Тестовый пример решения задачи с помощью ЭВМ.
курсовая работа [944,6 K], добавлен 15.06.2013Изучение численных методов решения нелинейных уравнений, используемых в прикладных задачах. Нахождение корня уравнения методом простой итерации и методом касательных (на примере уравнения). Отделение корней графически. Программная реализация, алгоритм.
курсовая работа [1,7 M], добавлен 15.06.2013Изучение методов решения нелинейных уравнений таких как: метод Ньютона, модифицированный метод Ньютона, метод Хорд, метод простых Итераций. Реализация программы для персонального компьютера, которая находит решение нелинейного уравнения разными способами.
практическая работа [321,9 K], добавлен 24.06.2012Разработка с использованием приложения Mathcad алгоритма и программы решения нелинейного уравнения методами касательных, половинного деления и хорд. Решение с помощью ее заданных нелинейных уравнений. Создание графической иллюстрации полученных решений.
курсовая работа [665,7 K], добавлен 22.08.2013Применение методов касательных (Ньютона) и комбинированного (хорд и касательных) для определения корня уравнения. Разработка алгоритма решения и его описание его в виде блок-схем. Тексты программ на языке Delphi. тестовый пример и результат его решения.
курсовая работа [923,7 K], добавлен 15.06.2013Решение нелинейных уравнений методом простых итераций и аналитическим, простым и модифицированным методом Ньютона. Программы на языке программирования Паскаль и С для вычислений по вариантам в порядке указанных методов. Изменение параметров задачи.
лабораторная работа [191,0 K], добавлен 24.06.2008Разработка программы для нахождения корней нелинейных уравнений несколькими методами: методом хорд, касательных, половинного деления, итераций. Реализации программы с помощью системы программирования Delphi 7. Методика работы пользователя с программой.
курсовая работа [1,3 M], добавлен 11.02.2013Разработка проекта по вычислению корней нелинейных уравнений методом итераций, в среде программирования Delphi. Интерфейс программы и ее программный код, визуализация метода. Сравнение результатов решения, полученных в Mathcad 14 и методом итераций.
контрольная работа [1,9 M], добавлен 10.12.2010Сравнительный анализ итерационных методов решения нелинейных алгебраических и трансцендентных уравнений. Простейший алгоритм отделения корней нелинейных уравнений. Метод половинного деления. Геометрический смысл метода Ньютона. Метод простой итерации.
реферат [95,0 K], добавлен 06.03.2011Суть основных идей и методов, особенностей и областей применения программирования для численных методов и решения нелинейных уравнений. Методы итераций, дихотомии и хорд и их использование. Алгоритм метода Ньютона, создание программы и ее тестирование.
курсовая работа [423,0 K], добавлен 17.02.2010Особенности точных и итерационных методов решения нелинейных уравнений. Последовательность процесса нахождения корня уравнения. Разработка программы для проверки решения нелинейных функций с помощью метода дихотомии (половинного деления) и метода хорд.
курсовая работа [539,2 K], добавлен 15.06.2013Обзор существующих методов по решению нелинейных уравнений. Решение нелинейных уравнений комбинированным методом и методом хорд на конкретных примерах. Разработка программы для решения нелинейных уравнений, блок-схемы алгоритма и листинг программы.
курсовая работа [435,8 K], добавлен 15.06.2013Программный продукт, способный решать уравнения с одной переменной методом Ньютона (касательных). Он прост в эксплуатации, имеет интуитивно понятный интерфейс, выстраивает график уравнения, что очень важно для пользователя. Реализация решений в программе.
курсовая работа [169,3 K], добавлен 29.01.2009Особенности решения уравнений с одной переменной методом половинного деления. Оценка погрешности метода простой итерации. Суть решения уравнений в пакете Mathcad. Векторная запись нелинейных систем. Метод Ньютона решения систем нелинейных уравнений.
курсовая работа [2,1 M], добавлен 12.12.2013Решение нелинейного уравнения шаговым методом, методом половинного деления, методом Ньютона и простой итерации с помощью программы Mathcad. Разбиение промежутка на число n интервалов. Условия сходимости корня. Составление программы для решения на С++.
лабораторная работа [207,5 K], добавлен 10.05.2012Методика реализации решения нелинейного уравнения в виде процедуры-подпрограммы следующими методами: хорд, касательных (Ньютона), простой итерации, половинного деления. Основные методы уточнения корней уравнения. Программное решение задачи, алгоритм.
курсовая работа [4,0 M], добавлен 27.03.2011Метод половинного деления как один из методов решения нелинейных уравнений, его основа на последовательном сужении интервала, содержащего единственный корень уравнения. Алгоритм решения задачи. Описание программы, структура входных и выходных данных.
лабораторная работа [454,1 K], добавлен 09.11.2012