Автор работы: Пользователь скрыл имя, 19 Декабря 2011 в 13:05, курсовая работа
Решение нелинейных уравнений является сложной задачей. Не существует методов, которые гарантировали бы успех решения любой такой задачи.
Для отдельных уравнений, наибольшую проблему представляет задача отделения решений (корней).
ВВЕДЕНИЕ 3
1.Теоретический обзор 4
1.1 Определение, виды решения нелинейного уравнения 4
1.2 Метод простых итераций 4
2.Реализация алгоритма 7
3.Разработка интерфейса 8
4.Результаты 11
ЗАКЛЮЧЕНИЕ 12
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ 13
ПРИЛОЖЕНИЯ А 14
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
1.Теоретический
обзор
1.1 Определение,
виды решения нелинейного
1.2 Метод простых
итераций
2.Реализация
алгоритма
3.Разработка
интерфейса
4.Результаты
ЗАКЛЮЧЕНИЕ
СПИСОК ИСПОЛЬЗУЕМОЙ
ЛИТЕРАТУРЫ
ПРИЛОЖЕНИЯ
А
ВВЕДЕНИЕ
Решение нелинейных уравнений является сложной задачей. Не существует методов, которые гарантировали бы успех решения любой такой задачи.
Для отдельных уравнений, наибольшую проблему представляет задача отделения решений (корней).
Цель работы: решить нелинейное уравнение методом простой итерации и реализовать данный метод в среде программирования Delphi.
Достижение поставленной цели потребовало решение следующих задач:
Объект исследования – процесс решения нелинейных уравнений методом простой итерации.
Предмет исследования – вычислительный алгоритм метода простой итерации в Delphi.
Методы исследования:
1.Теоретический обзор.
1.1
Определение, виды решения
Под нелинейными уравнениями понимаются алгебраические и трансцендентные уравнения вида:F(X)=0 , где х- действительное число, F(X)- нелинейная функция
Решить
уравнение это значит найти такое
x, при котором уравнение
1.Метод перебора.
2.Метод половинного деления.
3.Метод хорд.
4.Метод касательных.
5.Метод хорд-касательных.
6.Метод
итераций.
1.2
Метод простых итераций
Рассмотрим
подробнее метод простых
При решении нелинейного уравнения методом итераций воспользуемся записью уравнения в виде
x=f(x).
Задаются начальное значение аргумента x0 и точность ε. Первое приближение решения x1 находим из выражения x1=f(x0), второе - x2=f(x1) и т.д. В общем случае i+1 приближение найдем по формуле :
xi+1
=f(xi).
Указанную процедуру повторяем пока |f(xi)|>ε. Условие сходимости метода итераций |f'(x)|<1.
Пока
|f(xi)|> ε
xi+1 =f(xi) Для применения метода простой итерации следует исходное уравнение преобразовать к виду, удобному для итерации . Это преобразование можно выполнить различными способами. Функция называется итерационной функцией. Расчетная формула метода простой итерации имеет вид:
. Теорема о сходимости метода простой итерации. Пусть в некоторой - окрестности корня функция дифференцируема и удовлетворяет неравенству , где - постоянная . Тогда независимо от выбора начального приближения из указанной - окрестности итерационная последовательность не выходит из этой окрестности, метод сходится со скоростью
геометрической последовательности и
справедлива оценка погрешности:
,
. Критерий
окончания итерационного использовать более простой критерий окончания итераций: . Ключевой момент в применении метода простой итерации состоит в иквивалентном преобразовании уравнения. Способ, при котором выполнено условие сходимости метода простой итерации, состоит в следующем: исходное уравнение приводится к виду . Предположим дополнительно, что производная знакопостоянна и на отрезке [a,b]. Тогда при выборе итерационного параметра метод сходится и значение
. |
2.Реализация алгоритма
-
+
Блок-схема
1 – Решение нелинейного
3.Разработка
интерфейса
Сначала создадим главное окно программы, без которой нам никак нельзя обойтись. Обозначим на ней «ввод», «решение», «график» и «заставка». Это окно будет являться опорным пунктом для наших дальнейших действий. Обозначим его как Form1
Рисунок
1 – Form1
Далее, создадим другие «формы» для
последующей работы, на которые в
дальнейшем просто будем ссылаться:
окно ввода данных – Form 2,
Рисунок
2- Form 2
Окно вывод результата решения уравнения – Form 3,
Рисунок
3- . Form 3
Окно для визуализации метода итераций – Form 4,
Теперь, после того как мы создали все необходимые формы , можем приступать к создании программного кода , в котором будем ссылаться на каждую из них. В этом коде нам необходимо будет:
4.Результаты
Пример 1.
Программа решает уравнение Fn:=ln(x)+1.8.
Ввели начальные данные Х0=4, Е=1
Получили ответ 3,18629436111989
Пример 2.
Программа решает уравнение Fn:=ln(x)+10.
Ввели начальные данные Х0=4, Е=1
Получили ответ 12,5203068033037
ЗАКЛЮЧЕНИЕ
В процессе создания курсовой работы были решены нелинейные уравнения методом простой итерации, а также был реализован данный метод в Delphi.
Достижением поставленной цели потребовало решение следующих задач:
Этот метод отличается от других тем, что по сравнению с другими методами, он является одним из наиболее простых методов определения корней системы нелинейных уравнений.
Анализ результатов показывает, что программы работают правильно и верно находят корни нелинейных уравнений с заданой точностью.
СПИСОК
ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ
ПРИЛОЖЕНИЯ
А
program Project1;
uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {Form2},
Unit3 in 'Unit3.pas' {Form3},
Unit4 in 'Unit4.pas' {Form4},
Unit5 in 'Unit5.pas' {Form5},
Unit6 in 'Unit6.pas' {Form6};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3);
Application.CreateForm(TForm4, Form4);
Application.CreateForm(TForm5, Form5);
Application.CreateForm(TForm6, Form6);
Application.Run;
end.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, StdCtrls, Buttons;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
ПРОДОЛЖЕНИЕ
ПРИЛОЖЕНИЯ А
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
procedure N2Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unit3, Unit4, Unit5;
{$R *.dfm}
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Информация о работе Решение нелинейных уравнений методом итерации