Файл: "Численное решение нелинейных уравнений".pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 11.04.2024

Просмотров: 17

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Министерство образования и науки РФ
ФГБОУ ВО «Тульский государственный университет»
Институт горного дела и строительства
Кафедра “Строительство, строительные материалы и конструкции”
КУРСОВАЯ РАБОТА
по дисциплине
“Информатика” на тему
“Численное решение нелинейных уравнений”
Вариант – № 4-5
Выполнил ст. гр.
Б360812.
Проверил доц. каф. ССМиК
Реунов И.Р.
Теличко В. Г.
Тула 202 2

Теличко В.Г.
Изм
.
№ докум.
Подпись Дата
Лист
2
Курсовая работа
Разраб.
Реунов И.Р.
Пров.
Н. Контр.
Утв.
Численные методы решения нелинейных уравнений
Лит.
Листов
14
ТулГУ, каф.: ССМиК
гр.
Б360812.
Лист
Оглавление
Оглавление…………………………………………………………………………...
2
Цель работы………………………………………………………………………….
3
Задание……………………………………………………………………………….
3
Решение………………………………………………………………………………
7
Вывод………………………………………………………………………………
...13
Список использованной литературы………………………………………………1 4

Лист
Изм
Лист
3
№ докум.
Подпись Дата
Цель работы: целью данной курсовой работы является написание программы на высоком языке программирования (Pascal), которая вычисляет корень уравнения, содержащегося на определённом интервале, границы которого предварительно определяются графическим исследованием уравнения.
Задание 4. Электрическая емкость двух коаксиальных плоских дисков при
L/R<1 рассчитывается по формуле
С = ????
1
????
0
???? [
????????
????
+ ???????? (
16????????
????
) − 1]
где ε
1
- относительная диэлектрическая проницаемость среды, ε
0
=8,85 ∙10
-12
Ф/м, R- радиус дисков, L – расстояние между дисками, π=3,14…
Найти радиус R, удовлетворяющий требуемому значению емкости C, при заданных параметрах ε
1 и L.
Вариант
Параметр
4-5
ε
1 10
L, мм
4
С, пФ
36
Приведем все величины к единой размерности:
Параметр Вариант
4-5
ε
1 10
L, м
4∙10
-3
С, Ф
36∙10
-12

Лист
Изм
Лист
4
№ докум.
Подпись Дата
Теоретическая часть.
Довольно часто в инженерной практике встречаются задачи, связанные с необходимостью отыскания корней нелинейных уравнений. Такие задачи обычно возникают как элементарные составляющие при решении различных технических и научных проблем.
Способ решения нелинейного уравнения определяется его видом. В математике принято подразделять нелинейные уравнения на алгебраические и трансцендентные.
К алгебраическим относят уравнения, в которых функция f(x) является степенным многочленом.
К трансцендентным относят уравнения, содержащие трансцендентные функции, т.е. показательную, логарифмическую, тригонометрические функции.
Для алгебраических уравнений до четвертого порядка включительно известны прямые точные методы решения. Кроме того, количество корней можно определить по степени многочлена, а их характер по знакам коэффициентов этого многочлена.
Для трансцендентных уравнений общих приемов решения кроме приближенных не существует. Количество корней такого уравнения обычно невозможно определить заранее по его виду. Трансцендентное уравнение может не иметь ни одного вещественного корня, иметь счетное количество корней или бесконечное множество корней. Из двух приведенных выше уравнений первое имеет семь вещественных корней, а второе – пять корней.
Во многих практически важных случаях, когда уравнение имеет сложный вид, аналитически его точное решение найти не удается.
Если решение нельзя найти в явном виде, то для отыскания корня используют другие методы. Например, приближенное решение можно получить методом последовательных приближений. Сравнительно легко (но и весьма неточно) корни уравнения определяются графически – достаточно лишь для уравнения f(x) = 0 построить график функции y =f(x) и найти точки пересечения кривой с осью абсцисс, в которых эта функция равна нулю.


Лист
Изм
Лист
5
№ докум.
Подпись Дата
В связи с этим для решения нелинейных уравнений на ЭВМ широко применяются специальные методы, которые относятся к методам вычислительной математики. На их основе создано большое число алгоритмов, различающихся сложностью и эффективностью.
При решении практических задач обычно приходится проводить предварительное исследование уравнения до его решения. Дело в том, что если уравнение не удается решить аналитически, то заранее трудно определить, сколько оно имеет корней и какова их природа − сколько из них комплексных или вещественных, сколько отрицательных или положительных. В ходе предварительного исследования уравнения можно, не вычисляя точных значений всех корней, сразу выбрать из них те, которые представляют наибольший интерес.
Примерное положение корней уравнения f(x)= 0 на числовой оси легко определить, построив график функции y = f(x). Точки пересечения кривой y = f(x) с осью абсцисс, где y = 0, и будут соответствовать искомым корням.
Отделение корней также нередко выполняют с помощью табличного представления зависимости f(x). Для этого формируют таблицу, в которую заносят ряд последовательно расположенных на оси x точек xi и вычисленные в них значения левой части уравнения f(xi).
Затем в таблице выбирают те пары рядом расположенных точек, между которыми функция f(x) меняет свой знак. При этом для обнаружения корня по сути дела используется тот же признак, что и при графическом исследовании− изменение знака функции.
Самым простым способ приближенного решения уравнения является метод половинного деления (метод дихотомии).
Метод включает следующие операции. Вначале на концах исходного отрезка [a,b], содержащего корень, вычисляют значения функции f(a) и f(b).
Затем находят точку, делящую [a,b] на две равные части, по итерационной формуле и вычисляют значение функции в этой точке. Далее по перемене знака функции выбирают ту половину [a,b], в которой расположен корень.

Лист
Изм
Лист
6
№ докум.
Подпись Дата
Если очередное рассчитанное значение f(x) достаточно близко к нулю, вычисления прекращаются. Иначе процесс половинного деления продолжается.
В настоящее время широко известны специальные математические пакеты, облегчающие решение задач на компьютере. Это, например, системы MATLAB и MathCAD, ориентированные на решение широкого круга математических задач. Они имеют удобный дружественный интерфейс, объектно- ориентированный язык, набор элементарных математических и специальных функций, встроенные графические средства. Рассмотрим их применение для решения нелинейных уравнений.
Благодаря встроенным функциям root, Find и Minerr система MathCAD обеспечивает получение готового решения уравнений без составления программы.
MathCAD освобождает пользователя от необходимости программирования алгоритма решения уравнений.


Лист
Изм
Лист
7
№ докум.
Подпись Дата
Практическая часть.
Составим математическую модель задачи.
Согласно условиям задачи, величины ε
0
, ε1, L, C заданы. Величина π известна.
Нам требуется найти величину R, которая будет зависеть от заданных величин.
Приводим уравнение к стандартному виду f(x)=0:
????(????) = ????
1
????
0
???? [
????????
????
+ ???????? (
16????????
????
) − 1] − ????
Проведем графическое исследование решения уравнения. Решением будет являться корень данного нелинейного уравнения. Для определения примерного положения корней построим график функции с помощью математического пакета Mathcad:
Решим уравнение для первого набора данных.
Листинг программы:

Лист
Изм
Лист
8
№ докум.
Подпись Дата
Анализ графика уравнения показывает, что уравнение имеет один корень, причем корень положительный. Ориентировочное положение корня на отрезке
[0,018;0,022].
Функция определена в области действительных чисел не равных нулю D=(0;+∞)
Приведенный график позволяет провести отделение имеющегося корня, то есть найти на оси х границы отрезков, в каждом из которых располагается не более одного корня.
Для отделения корней используем также табличный способ. Используем пакет
Mathcad.
Анализируя получаем, что значение корня ориентировочно равно 0,02.
То есть R=0.02
Аналогично находим приблизительный решения для остальных наборов данных.
Параметр Вариант
4-5
ε
1 10
L, м
4∙10
-3
С, Ф
36∙10
-12
R,м
0,02
Найдем точные корни.
Решим задачу методом половинного деления или дихотомии.
Описание метода:
Метод половинного деления или дихотомии (дихотомия - сопоставленность или противопоставленность двух частей целого) при нахождении корня уравнения f (x)=0 состоит в делении пополам отрезка [ a; b ] , где находится корень. Затем анализируется изменение знака функции на половинных отрезках, и одна из границ отрезка [ a; b ] переносится в его середину.
Переносится та граница, со стороны которой функция на половине отрезка знака не меняет. Далее процесс повторяется. Итерации прекращаются при выполнении одного из условий: либо длина интервала [ a; b ] становится

Лист
Изм
Лист
9
№ докум.
Подпись Дата меньше заданной погрешности нахождения корня ε , либо функция попадает в полосу шума ε 1 – значение функции сравнимо с погрешностью расчетов.
Пример: дано нелинейное уравнение: f(x)=0
Найти корень уравнения, принадлежащий интервалу [a,b], с заданной точностью
ε.
Для уточнения корня методомполовинногоделения последовательно осуществляем следующие операции:
Делим интервал пополам:
2
b
a
t


, координаты середины отрезка [a,b]
В качестве нового интервала изоляции принимаем ту половину интервала, на концах которого функция имеет разные знаки (рис.4.4).
Для этого: a) Вычисляем значение функции f(x) в точках a и t. b) Проверяем: если f(a)f(t) < 0, то корень находится в левой половине интервала
[a,b] (рис.4.4.а). Тогда отбрасываем правую половину интервала и делаем переприсвоение b=t. c) Если f(a)f(t) < 0 не выполняется, то корень находится в правой половине интервала [a,b] (рис.4.4.б). Тогда отбрасываем левую половину и делаем переприсвоение a=t. В обоих случаях мы получим новый интервал [a,b] в 2 раза меньший предыдущего.
Процесс, начиная с пункта 1, циклически повторяем до тех пор, пока длина интервала [a,b] не станет равной либо меньшей заданной точности, т.е. |b-a|≤ε


Лист
Изм
Лист
10
№ докум.
Подпись Дата
Блок-схема метода половинного деления:
Текст программы:
Для решения задачи используется программа PascalABC.Net
7
,
4 031
,
0 1
031
,
0 1
ln
031
,
0 1
031
,
0 1
,7 17
)
(
2






























R
R
R
R
R
R
F
program dihotomia;
const e0=
0.00000000000885
; pi=
3.1415
;
type mat=array [
1
] of
double
;
function F(x,e12,L2,C2:
real
):
real
;
begin
F:=e0*e12*x*((pi*x)/L2+ln((
16
*pi*x)/L2)-
1
)-C2;
end;
var a,b,d,x,e, e11,L1,C1:
real
; e1,L,C: mat; i:
integer
;
begin
e1[
1
]:=
1
;
L[
1
]:=
0.001
;
C[
1
]:=
0.0000000001
; e:=
0.00000000000000001
;

Лист
Изм
Лист
11
№ докум.
Подпись Дата write(
'введите номер набора i='
); readln(i); write(
'введите a='
); readln(a); write(
'введите b='
); readln(b); e11:=e1[i];L1:=L[i];C1:=C[i];
repeat
d:=(a+b)/
2
;
if F(a,e11,L1,C1)*F(d,
11
,L1,C1)<=
0
then b:=d
else a:=d;
until abs(b-a)2
; writeln(
'R='
,x:
0
:
15
);
end.
Запускаем программу для пятого набора a:=0.018 и b:=0.022, получаем корень
R= 0.02005664.
Метод половинного деления позволяет сравнительно быстро и с заданной точностью находить корень нелинейного уравнения.
Сравним полученные решения с решениями, полученными с помощью математического пакета Mathcad.
Номер набора
5
Pascal
0.020056
Mathcad 0,02
Для решения подобного рода задач можно использовать также табличный процессор Microsoft Excel.
Запусти табличный процессор. Введем начальные данные:
Формула определяющая уравнение будет следующей:
=$B$1*B$2*$B8*(($B$5*$B8)/B$3+LN((16*$B$5*$B8)/B$3)-1)-B$4

Лист
Изм
Лист
12
№ докум.
Подпись Дата
Используем инструмент подбор параметра:
Получаем искомые значения.
Ответ:
Номер набора
5
R, м
0,02

Лист
Изм
Лист
13
№ докум.
Подпись Дата
Вывод: Были получены корни уравнения тремя различными способами: с помощью программы PascalABC методом половинного деления, с помощью математического пакета Mathcad, с помощью табличного процессора Microsoft
Excel. Всеми способами получили корни, которые одинаковы с точностью
0,00001. Все способы дают решения с необходимой точностью, однако для исключения потери корней, необходимо провести анализ решения.

Лист
Изм
Лист
14
№ докум.
Подпись Дата
Список использованной литературы.
1. Додж М. Эффективная работа в Microsoft Excel 2000/ М. Додж, К.Стинсон.–
СПб.: Питер, 2002. – 1056с.
2. Биллиг В.А. VBA и Office 97. Офисное программирование/ В.А. Биллиг, М.И.
Дехтярь.– М.: Издательский отдел «Русская Редакция» ТОО «Channel Trading
Ltd.», 1998.– 720 с.
3. Курицкий Б. Поиск оптимальных решений средствами Excel 7.0.–СПб.: BHV
– Санкт-Петербург, 1997.– 384с.
4. Гетц К. Программирование в Microsoft Office. Полное руководство по VBA/ К.
Гетц, М. Джилберт.– Киев: Издательская группа BHV, 1999.–768 с.
5. Гарнаев А.Ю. Excel, VBA, Internet в экономике и финансах.– СПб.:BHV –
Санкт-Петербург, 2001.– 816 с.
6. Петруцос Э. Visual Basic 6 и VBA для профессионалов/ Э. Петруцос, К. Хау.–
СПб.: Питер, 2000.– 432 с.
7. Карпов Б. Microsoft Office 2000: справочник.– СПб.: Питер, 2000.–498 с.
8. Гусева О.Л. Практикум по Excel/ О.Л. Гусева, Н.Н. Миронова.– М.:Финансы и статистика, 1997.– 160 с.
9. Турчак Л.И. Основы численных методов: Учеб. пособие.– М.: Наука; Гл. ред. физ.-мат. лит., 1987.– 320 с.
10. Мудров А.Е. Численные методы для ПЭВМ на языках Бейсик, Фортран и
Паскаль.– Томск: МП «Раско», 1991.– 272 с.
11. Тынкевич М.А. Численные методы анализа: Учеб. пособие.– Кемерово,
1997.– 123 с.

1>