Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Министерство образования и науки Российской Федерации



МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

 

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

«ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ НЕФТЕГАЗОВЫЙ УНИВЕРСИТЕТ»

 

Институт кибернетики, информатики и связи

Кафедра кибернетических систем

 

МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ ПО САМОСТОЯТЕЛЬНОЙ РАБОТЕ СТУДЕНТОВ И ИЗУЧЕНИЮ ДИСЦИПЛИНЫ «ЧИСЛЕННЫЕ МЕТОДЫ»

 

 

Методические рекомендации по самостоятельной работе студентов и изучению дисциплины «Численные методы» для студентов направления подготовки 220400 «Управление в технических системах»

 

Составитель П.И. Ковалёв

 

 

Тюмень 2013

 

 

ТОЧНЫЕ И ПРИБЛИЖЁННЫЕ ЗНАЧЕНИЯ ВЕЛИЧИН

 

Значения величин, с которыми мы встречаемся в повседневной жизни, отчётах о научных исследованиях, технических документах можно разделить на точные и приближённые. Мы можем сосчитать количество страниц в книге, количество человек в комнате. В Международной системе единиц Си, принятой в октябре 1960 года XI Генеральной конференцией по мерам и весам один сантиметр равен 0,01 метра, а один метр равен 1650763,73 длины волны в вакууме излучения, соответствующего переходу между уровнями 2 p10 и 5 d5 атома криптона-86 [Политехнический словарь.- М.: Издательство «Советская энциклопедия», 1977.- 608с, стр. 285, 595] — в этом предложении все числовые значения величин являются точными. В приложении к книге [Фейнмановские лекции по физике. 1. Современная наука о природе. Законы движения. 2. Пространство. Время. Движение // Р. Фейнман, Р Лейтон, М. Сэндс.- М.: Мир, 1976.- 439 с, стр. 433] приведены значения некоторых физических постоянных: скорость света — 2,997925 · 108 м / c, элементарный заряд (заряд протона) – 1,60210 · 10-19 Кл, атомная единица массы — 1,66043 · 10-27 кг — здесь все значения величин являются приближёнными.

 

Вопрос. Определите, о каких величинах, точных или приближённых, говорится в следующем предложении: «Атомной единицей массы называется 1 / 12 массы изотопа углерода C12».

 

Перечислим несколько причин возникновения приближённых значений величин:

неточность измерительного прибора (при помощи линейки нельзя определить точную длину детали);

неточность вычислительного метода (мы не можем представить обыкновенную дробь 1 / 3 в виде конечной десятичной дроби);

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



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

точного значения измеряемой величины не существует (ускорение свободного падения зависит от широты места и высоты его над уровнем моря, на широте Москвы на уровне моря ускорение свободного падения g = 9,8156 м / c2, стандартное (нормальное) ускорение свободного падения gст = 9,80665 м / с2) и т. д.

 

Иногда приближённое значение величины указывается потому, что нет необходимости знать её точное значение или потому, что через некоторое время точное значение может измениться (в Тюменском государственном нефтегазовом университете обучаются 30 000 студентов — приближённое значение 30 000 заменяет точное значение).

 

 

ПОГРЕШНОСТЬ

 

Абсолютной погрешностью приближённого значения a какой-либо величины v называется разность между её точным значением x и этим приближённым значением. Абсолютная погрешность приближённого значения a обозначается символом Δ (a):

 

Δ (a) = x – a.

 

 

Абсолютная погрешность суммы приближённых значений a, b величины v равна сумме абсолютных погрешностей слагаемых:

 

Δ (a + b) = Δ (a) + Δ (b).

 

Действительно, пусть x, y – точные значения величины v, a, b – соответствующие приближённые значения, тогда

 

x = a + Δ (a),

y = b + Δ (b),

 

Δ (a + b) = (x + y) - (a + b) = (a + Δ (a) + b + Δ (b)) - (a + b) = Δ (a) + Δ (b).

 

 

Относительной погрешностью приближённого значения a величины v называется отношение абсолютной погрешности к приближённому значению. Относительная погрешность приближённого значения a обозначается символом δ (a):

 

δ (a) = Δ (a) / a,

 

Δ (a) = δ (a) ∙ a.

 

Относительная погрешность произведения приближённого значения a величины v на приближённое значение b величины w равно сумме относительных погрешностей сомножителей:

 

δ (a ∙ b) = δ (a) + δ (b).

 

Докажем это утверждение:

 

Δ (a ∙ b) = x ∙ y - a ∙ b = (a + Δ (a)) ∙ (b + Δ (b)) - a ∙ b = a ∙ Δ (b) + b ∙ Δ (a) + Δ (a) ∙ Δ (b);

 

предполагается, что абсолютные погрешности Δ (a), Δ (b) представляют собой малые десятичные дроби, они гораздо меньше единицы, поэтому их произведением в правой части равенства можно пренебречь, тогда

 

δ (a ∙ b) = Δ (a ∙ b) / (a ∙ b) = (a ∙ Δ (b) + b ∙ Δ (a)) / (a ∙ b) = Δ (a) / a + Δ (b) / b = δ (a) + δ (b).

 

Как правило, абсолютную погрешность точно определить невозможно, поэтому оценивают предельную абсолютную погрешность Δпр (a) приближённого значения a, удовлетворяющую неравенству

 

Δпр (a) ≤ | Δ (a) |.

 

Аналогично определяется предельная относительная погрешность:

 

δпр (a) ≤ | δ (a) |.

 

Точное значение x записывают так:

 

x = a ± Δпр (a)

 

или

 

x = a · (1 ± δпр (a)),

 

это означает, что точное значение x удовлетворяет неравенству

 

a - Δпр (a) ≤ x ≤ a + Δпр (a)

 

или неравенству

 

a · (1 - δпр (a)) ≤ x ≤ a · (1 + δпр (a)).

 

Задание. В Политехническом словаре [Политехнический словарь.- М.: Издательство «Советская энциклопедия», 1977.- 608с, стр. 584] приводится такое значение элементарного электрического заряда: (1,6021917 ± 0,0000070) · 10-19 Кл — предельная абсолютная погрешность измерения элементарного электрического заряда составляет 0,7 · 10-24 Кл. Оцените предельную относительную погрешность измерения элементарного электрического заряда.

 

Оценки погрешностей разности и отношения похожи на оценки погрешностей суммы и произведения, однако здесь надо использовать предельные значения погрешностей:

 

Δпр (a - b) = Δпр (a) + Δпр (b),

 

δпр (a / b) = δпр (a) + δпр (b).

 

Для оценки абсолютной погрешности функции f (x) используют понятие производной. Напомним, что производной функции f в точке x называется предел отношения приращения функции к приращению аргумента в этой точке, когда приращение аргумента стремится к нулю. Этот предел обозначается символом (x):

 

f ´(x) = lim (f (x + Δ x) – f (x)) / Δ x

Δ x → 0

 

В том случае, когда приращение функции является малым числом, справедливо приближённое равенство

 

f ´(x) ≈ (f (x + Δ x) – f (x)) / Δ x

 

или

 

 

f (x + Δ x) ≈ f (x) + f ' (x)) Δ x.

 

Δ (f (a)) = f (x) - f (a) = f (a + Δ (a)) - f (a) ≈ f ' (a) Δ (a),

 

Таким образом,

 

Δ (f (a)) = f ' (a) Δ (a).

 

В частности, (xα)' = α xα – 1, следовательно,

 

Δ (a α) = α a α – 1 Δ (a)

 

δ (aα) = α aα – 1 Δ (a) / aα = α Δ (a) / a.

 

Например,

 

Δ (a 1/2) = a – 1/2 Δ (a) / 2

 

δ (a 1/2) = Δ (a) / (2 a ).

 

 

ЗНАЧАЩИЕ ЦИФРЫ

 

Привычной формой представления целых чисел и десятичных дробей является представление с фиксированной запятой: 2,71828 — приближённое значение основания натуральных логарифмов(числа e), 12 - атомный номер углерода и т. п. Представление вещественного числа с плавающей запятой состоит из двух частей: сначала пишут представление целого числа или десятичной дроби с фиксированной запятой, потом ставят знак умножения (точку), за которой следует степень 10. Одно и то же число можно написать по-разному: скорость звука в воздухе при температуре 0° C равна 331 м / c (представление с фиксированной запятой) или 0,331· 103 м / с, 3,31· 102 м / с (представления с плавающей запятой).

 

Значащими цифрами целого числа или десятичной дроби, представленных с фиксированной или с плавающей запятой, называются все цифры (разряды) части с фиксированной запятой, исключая стоящие в ней слева нули: представления значения скорости звука 0,331· 103 м / с, 3,31· 102 м / с, 331 м / с содержат по три значащих цифры: 3, 3 и 1. Значащие цифры подсчитывают слева направо — первая значащая цифра, вторая значащая цифра и т. д.

 

Для простоты мы будем рассматривать неотрицательные числовые значения. Пусть a 0, a 1, …, ak – значащие цифры приближённого значения a величины v (считая слева направо), тогда

 

a = a 0 · 10 n + a 1 · 10 n -1 +...+ ak -1 · 10 n - k

где число n определено однозначно.

 

Говорят, что первые m значащих цифр приближённое значения a являются верными, если

 

10 n - m +1< ω · Δ (a),

 

где ω — заданное положительное число. Когда ω = 1, цифры a 0, a 1, …, am -1 называются верными в широком смысле, а когда ω = 0,5, они называются верными в узком смысле.

 

В качестве примера рассмотрим приближённое значение числа π (отношения длины окружности к её диаметру):

 

π = 3,141 592 653 589 793....

 

[Математическая энциклопедия. Т. 4.- М.: Советская Энциклопедия, 1984.- 1216 стб., стб. 282]. В правой части равенства 16 значащих цифр:

 

π ≈ 3 · 100 + 1·10-1 + 4 · 10-2 + 1 · 10-3 + 5 · 10-4 + 9 · 10-5 + 2 · 10-6 + 6 · 10-7 + 5 · 10-8 + 3 · 10-9 + 5 · 10-10 + 8 · 10-11+ 9 · 10-12 + 7 · 10-13 + 9 · 10-14 + 3 · 10-1 5.

 

Древние египтяне использовали приближённое значение числа π равное 3: 3 = 3 · 100, n = 0, 10n-m+1= 100-m+1 = 10-m+1. Предельная абсолютная погрешность этого приближения составляет 0,142. Чтобы определить количество верных значащих цифр, надо решить неравенство 0,142 < ω 10-m+1. При m = 1 10-m+1 = 100 = 1, 0,142 < 1 и 0,142 < 0,5 · 1, а при m = 2 10-m+1 = 10-2+1 = 10-1 = 0,1, 0,142 > 0,1. Таким образом, цифра 3 является единственной верной цифрой египетского приближённого значения π в узком и в широком смысле.

 

Архимед доказал, что точное значение числа π удовлетворяет следующему неравенству:

 

223 / 71 < π < 22 / 7

 

 

[Веселовский И. Н. Архимед.-М.: Государственное учебно-педагогическое издательство Министерства просвещения РСФСР (Учпедгиз), 1957.- 111 с; стр. 96]. Переведём обыкновенные дроби в десятичные:

 

3,14084 < π < 3,14286.

 

В качестве приближённого значения можно взять среднее арифметическое чисел 3,14084 и 3,14286: π ≈ (3,14084 + 3,14286) / 2 = 3,14184. Предельная абсолютная погрешность этого приближения равна половине разности границ интервала: (3,14286 — 3,14084) / 2 = 0,00101. Приближённое значение числа π содержит 6 значащих цифр, показатель степени n мы уже вычисляли, n = 0. Решаем неравенство

 

0,00101 < ω 10-m+1:

 

m = 3: ω 10-3+1 = ω 0,01,

 

m = 4: ω 10-4+1 = ω 0,001,

 

следовательно, приближённое значение π, которое вычислил Архимед, содержало три верные цифры: 3,14.

 

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

 

Задание. В сочинении «Измерение круга» Архимед приводит два приближённых значения корня квадратного из 3: 1351 / 780 и 265 / 153 [Веселовский И. Н. Архимед.-М.: Государственное учебно-педагогическое издательство Министерства просвещения РСФСР (Учпедгиз), 1957.- 111 с; стр. 92]. Определите их абсолютные и относительные погрешности, а также количество верных значащих цифр.

 

ПАКЕТ MATLAB

 

Пакет прикладных программ MATLAB предоставляет пользователю проблемно-ориентированную инструментальную среду, которая позволяет автоматизировать математические вычисления. В первую очередь этот пакет предназначен для технических расчетов. Среда MATLAB реализована в виде обычного оконного приложения, для её запуска достаточно дважды щёлкнуть левой кнопкой мыши по её значку на экране или выполнить операцию 'открыть' в её контекстном меню. После запуска программы MATLAB на экране появляется главное окно среды; клиентская часть главного окна называется командным окном системы. Символ >> указывает командную строку.

 

Простейшей командой является математическое выражение, состоящее из чисел и знаков математических операций +, -, *, /. Каждое такое выражение среда интерпретирует как команду вычислить его значение; это значение присваивается переменной ans (answer – ответ). Среда выполняет команду после того, как пользователь нажмет клавишу Enter. Пример:

 

>> 3/7

ans=

0,4286

 

среда MATLAB вывела округленный результат вычислений, оставив в нем лишь четыре десятичных разряда. Команда

 

>> format long

 

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

 

>> format short.

 

Пример:

 

>> format long

>> 3/7

ans=

0,428571…

>> format short.

>> 3/7

ans=

0,4286

 

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

 

Пример:

 

>> 3^7

ans=

>> 2^10

ans=

1024.

 

 

Переменные. Значение переменной ans можно использовать в выражениях командной строки, например:

 

>> 3/7

ans=

0,4286

>> 2* ans

ans=

0,8571

 

Операция присваивания, которая обозначается знаком равенства ' = ', позволяет пользователю создавать свои переменные и присваивать им значения выражений:

 

>> х=3/7

х=

0,4286

>> 2 * х

ans=

0,8571

 

Точка с запятой после команды подавляет вывод на экран результатов этой команды:

 

>> a=5;

>> b=18;

>> a*b

ans=

 

Используйте точку с запятой для устранения вывода на экран лишней информации.

Наряду с арифметическими операциями среда MATLAB выполняет операции сравнения, результаты которых обозначаются символами 1 (истина) и 0 (ложь):

отношения 'меньше' и 'больше'

 

>> 3 < 4

ans =

 

>> 3 > 4

ans =

 

отношение 'равняется'

 

>> 3 == 3

ans=

 

>> 1 == 3

ans=

 

отношение 'не равно'

 

>> 3~= 1

ans=

 

>> 3 ~= 3

ans=

0.

 

(значок ' ~ ' читается 'тильда'). Обратите внимание, что символ операции сравнения 'равняется', в отличие от символа операции присваивания, обозначается при помощи двух следующих друг за другом знаков ' = '. Если мы попытаемся использовать один знак ' = ', среда выдаёт сообщение об ошибке:

 

>> 3 = 1

??? 3 = 1

 

Error: The expression to the left of the equals sign is not a valid target for an assignment (Ошибка: Выражение в левой части символа равенства не подходит для присваивания).

 

Нестрогие неравенства: <= (меньше или равно), >= (больше или равно).

 

Операция конъюнкции обозначается символом 'амперсанд' (&), вертикальная палочка (|) обозначакт дизъюнкцию, значок 'тильда' (~) - отрицание:

 

>> (3>4) & (2 > 1)

ans=

 

>> (3>4) | (2 > 1)

ans=

 

>> ~ (3>4)

ans=

 

"Основным типом данных, с которым производится вычисление в среде MATLAB являются конечные десятичные дроби, приближающие с заданной точностью произвольные вещественные числа. Последние в общем случае представимы лишь в виде бесконечных десятичных дробей. Можно сказать, что MATLAB работает с вещественными числами приближённо...

Если операнды и результаты вычислений являются целыми, то, хотя они и представляются в памяти машины так же, как и дробные числа, визуально в командном окне MATLAB они показываются в виде целых чисел" [Мартынов Н.Н., Иванов А.П. MATLAB 5.x. Вычисления, визуализация, программирование.-М.: КУДИЦ-ОБРАЗ, 2000.- 336с.; стр. 9-10]

 

Примеры.

 

>> 4 + 5

ans=

 

>> a = 7

a=

 

>> b = 6

b=

 

>> a * b

ans=

 

>> c = ans - 3

c=

 

Остаток от деления одного натурального числа на другое вычисляется с помощью операции mod:

 

>> mod (17, 3)

ans=

2.

 

Если остаток от деления равен нулю, то частное отображается на экране в виде целого числа:

 

>> a = 54;

>> b = 18;

>> a / b

ans=

3.

 

Для реализации операции целочисленного деления используется функция floor, которая отбрасывает дробную часть десятичной дроби:

>> a = 234;

>> b = 23;

>> floor (a / b)

ans=

10.

 

Перечень чисел, заключённый в квадратные скобки на языке среды MATLAB обозначает массив. Команда

 

>> X = [ 3, 5, 12 ]

 

создаёт массив из трёх элементов, значение первого элемента (элемента с индексом 1) равно 3, значение второго равно 5, значение третьего элемента равно 12. Операция присваивания задаёт имя массива, оно используется для выполнения операций над массивом и его элементами:

 

>> X (1)

X (1) =

>> X (7) = sqr (X (1))

X (7) =

>> X

X =

3 5 12 0 0 0 9

 

Команда X (1) вывела на экран значение первого элемента массива X; выполняя команду X (7) = sqrt (X (1)) среда MATLAB добавляет к массиву X элементы с индексами 4, 5, 6, 7, возводит значение первого элемента массива X в квадрат и присваивает результат – число 9 – седьмому элементу, элементам с индексами 4, 5, 6 присваиваются нулевые значения.

 

Если числа, заключённые в квадратные скобки, отделяются друг от друга не запятой, а точкой с запятой, то полученный массив представляет собой вектор-столбец, его элементы выводятся на экран в виде столбца:

 

>> Y = [ 1; 3; 5; 7 ]

Y =

 

Аргументом функции length служит массив, она возвращает количество его элементов:

 

>> length (X)

ans =

 

>> length (Y)

ans =

 

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

 

>> A = [ 1, 3; 2, 4; 5, 7 ]

 

A =

1 3

2 4

3 5

 

Для завершения работы в среде MATLAB наберите в командной строке команду exit (выход) или щёлкните левой кнопкой мыши по системной кнопке 'закрыть' окна среды MATLAB.

 

Пакет MATLAB требует значительного количества вычислительных и информационных ресурсов, так что его обычно устанавливают на сервере. Пользователь получает доступ к нему с машины-клиента, как правило, это персональная ЭВМ. Машинное время сервера стоит очень дорого, поэтому работа пользователя в интерактивном режиме малоэффективна. Команды среды MATLAB записывают в специальный текстовый файл с расширением «m». Такой файл называется командным файлом, сценарием или m -файлом. Он должен находиться в активной директории среды MATLAB. Имя активной директории выводит на экран команда cd без аргументов, которая запускается в командной строке среды MATLAB.

 

Мы будем создавать командные файлы среды MATLAB в текстовом редакторе операционной системы Windows, который называется блокнот. Текстовый процессор Word для этой цели не подходит так как документ, созданный в среде Word содержит служебную информацию, её среда MATLAB не понимает. Обычно пользователь запускает блокнот, щелкая правой кнопкой мыши по экрану и выбирая в появившемся меню пункт Создать/Текстовый документ.

 

Можно также запустить блокнот с помощью команды

 

Рабочий стол/Пуск/программы/Стандартные/ Блокнот

 

или в окне сеанса MS DOS командой

 

notepad.exe имя_файла.

 

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

 

УЗНАЙТЕ У ПРЕПОДАВАТЕЛЯ ИМЯ ТОЙ ДИРЕКТОРИИ, В КОТОРОЙ СТУДЕНТАМ ВАШЕЙ ГРУППЫ РАЗРЕШАЕТСЯ РАБОТАТЬ С M-ФАЙЛАМИ, ЗАПУСТИТЕ ЭМУЛЯТОР КОМАНДНОЙ СТРОКИ И СОЗДАЙТЕ В НЕЙ ПОДДИРЕКТОРИЮ, НАЗВАНИЕ КОТОРОЙ СОВПАДАЕТ С ВАШЕЙ ФАМИЛИЕЙ, НАПРИМЕР, IVANOV. ЭТО БУДЕТ ВАША ЛИЧНАЯ ДИРЕКТОРИЯ. ПЕРЕХОД В ДРУГИЕ ДИРЕКТОРИИ ПРИВЕДЁТ К СНИЖЕНИЮ ОЦЕНКИ ЗА ЛАБОРАТОРНУЮ РАБОТУ!!!

 

Создайте файл myfile.m, содержащий следующие команды:

 

 

format long

3/7

format short

3/7

 

Сохраните файл myfile.m в папке, которую укажет преподаватель. После этого сделайте эту папку активной директорией среды MATLAB.

 

Например, команда среды MATLAB

 

>> cd

 

выводит на экран

 

C:\Documents and Settings\MATLAB\work,

 

а полное имя папки, указанной преподавателем – D:\mygroup\mydir. Наберите в командной строке среды MATLAB команду

 

cd D:\mygroup\mydir.

 

Если активна директория C:\Documents and Settings\MATLAB\work, а полное имя папки, указанной преподавателем - C:\Documents and settings\users\mygroup\Ivanov, то наберите в командной строке среды MATLAB команду

 

cd..\..\users\mygroup\Ivanov.

 

Можно считать, что, команда cd в нашем случае выполняет переход в родительскую директорию директории work - это директория MATLAB, затем переходит в её родительскую директорию (Documents and Settings), после чего выполняется переход последовательно в директории users, mygroup, Ivanov. На самом деле никаких переходов система не делает - если директория C:\Documents and Settings\MATLAB\work является активной, то конструкция

 

..\..\users\mygroup\Ivanov

 

представляет собой синоним имени C:\Documents and settings\users\mygroup\Ivanov. При другой конфигурации дерева директорий следует изменить аргумент команды cd. Не следует использовать в качестве аргумента команды cd имена папок, состоящие из нескольких слов, поскольку среда неверно их интерпретирует. Если Вы сделали ошибку в имени директории, то в командной строке среды MATLAB появится сообщение об ошибке. Например, пользователь набирает имя несуществующей директории:

 

>> cd abcd

??? Error using ==> cd

cannot CD to abcd (Name is nonexistent or not a directory)

 

После смены активной директории всегда проверяйте, корректность выполнения команды. Наберите в командной строке среды MATLAB команду cd без аргументов - на экране должно появиться имя новой активной директории. Для того, чтобы запустить m -файл, надо набрать его имя (без расширения m) в командной строке среды MATLAB:

 

>> myfile

 

Если Вы всё сделали правильно, то на экране появится десятичное представление дроби 3/7 с разной степенью точности.

 

МИНИСТЕРСТВО ОБРАЗОВАНИЯ и НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО СПЕЦИАЛЬНОГО ОБРАЗОВАНИЯ

«тюменский государственный нефтегазовый университет»

 

ИНСТИТУТ КИБЕРНЕТИКИ ИНФОРМАТИКИ И СВЯЗИ

Кафедра кибернетических систем

 

Направление 220400 – Управление в технических системах

 

ОТЧЁТ О ВЫПОЛНЕННОЙ ЛАБОРАТОРНОЙ РАБОТЕ №1

ПО ДИСЦИПЛИНЕ "ЧИСЛЕННЫЕ МЕТОДЫ"

 

ТЕМА. РЕШЕНИЕ ЛИНЕЙНЫХ, АЛГЕБРАИЧЕСКИХ И ТРАНСЦЕНДЕНТНЫХ УРАВНЕНИЙ

 

Выполнил Иванов А. Б., группа....

___________

 

Проверил Ковалёв П. И.

 

Тюмень 2013

 

Цель лабораторной работы №1.

 

Овладение навыками решения алгебраических и трансцендентных уравнений в среде MATLAB.

 

Задание.

 

Составьте и решите квадратное уравнение в среде MATLAB.

 

Составьте и решите кубическое уравнение в среде MATLAB.

 

Составьте и решите трансцендентное уравнение в среде MATLAB.

 

 

РЕШЕНИЕ КВАДРАТНОГО УРАВНЕНИЯ В СРЕДЕ MATLAB

 

Пример. Требуется решить квадратное уравнение x2 – 5 x + 6 = 0.

 

Решение. Запускаем среду MATLAB. В командной строке вызываем функцию roots:

 

>> roots ([ 1, -5, 6 ])

 

Аргументом функции roots служит массив-строка, образованный коэффициентами многочлена.

 

На экране появляется ответ:

 

ans=

 

 

Задание. Составьте и решите квадратные уравнения:

с двумя отрицательными корнями;

с двумя корнями разных знаков;

с совпадающими положительными корнями;

с совпадающими отрицательными корнями;

с комплексными корнями.

 

Напомним, что если x 1, x 2 – корни уравнения x2 + p x + q = 0, то x 1+ x 2 = - p x 1 x 2 = q (теорема Виета). Пример квадратного уравнения с мнимыми корнями: x2 + 1 = 0.

 

Задание. Приведите пример системы, математическая модель которой представляет собой квадратное уравнение. Исследуйте эту модель аналитическими методами. Решите уравнение в среде MATLAB.

 

РЕШЕНИЕ КУБИЧЕСКОГО УРАВНЕНИЯ В СРЕДЕ MATLAB

 

 

Задание. Составьте и решите несколько кубических уравнений.

 

Задание. Приведите пример системы, математическая модель которой представляет собой кубическое уравнение. Исследуйте эту модель аналитическими методами. Решите уравнение в среде MATLAB.

 

 

РЕШЕНИЕ ТРАНСЦЕНДЕНТНОГО УРАВНЕНИЯ В СРЕДЕ MATLAB

 

Пример. Требуется решить уравнение exp (x) = 2

 

Решение. Преобразуем уравнение так, чтобы в его правой части стоял 0: exp (x) - 2 = 0. Запускаем среду MATLAB. В командной строке вызываем функцию fzero:

 

>> fzero (@(x) exp (x) - 2, 0)

 

Первый аргумент функции fzero описывает функцию, стоящую в левой части уравнения (exp (x) - 2) и называет её аргумент (это делает конструкция @(x)). Второй аргумент функции fzero – начальное приближение. Метод решения уравнения похож на известный метод касательных, решение представляет собой результат последовательности итераций. На экране появляется ответ:

 

ans=

 

0.6931

 

 

(это приближённое значение натурального логарифма числа 2). Выбирая в качестве начальных приближений числа 1, 5, 10, 100 мы получим тот же ответ. Если ввести

 

>> fzero(@(x) exp (x) - 2, 1000)

 

то среда сообщает:

 

Error using ==> fzero

Function value at starting guess must be finite and real:

 

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

 

Среда воспринимает значение exp (1000) как бесконечное.

 

 

Задание. Составьте и решите с помощью функции fzero несколько квадратных уравнений. Опишите поведение среды при различных значениях начального приближения.

 

Задание Оцените наименьшее значение числа k для которого уравнение exp (x) = k x. имеет решение. Объясните вашу стратегию поиска числа k.

 

Если известно, что значения функции f (x) в точках a, b имеют разные знаки, то корень уравнения f (x) = 0, лежащий между a и b находят с помощью вызова функции fzero, вторым аргументом которой служит массив [ a, b ].

 

Задание. Найдите корни нескольких трансцендентных функций, которые принимают значения противоположных знаков на концах числовых интервалов.

 

Задание. Приведите пример системы, математическая модель которой представляет собой трансцендентное уравнение. Исследуйте эту модель аналитическими методами. Решите уравнение в среде MATLAB.

 

МИНИСТЕРСТВО ОБРАЗОВАНИЯ и НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО СПЕЦИАЛЬНОГО ОБРАЗОВАНИЯ

«тюменский государственный нефтегазовый университет»

 

ИНСТИТУТ КИБЕРНЕТИКИ ИНФОРМАТИКИ И СВЯЗИ

Кафедра кибернетических систем

 

Направление 220400 – Управление в технических системах

 

ОТЧЁТ О ВЫПОЛНЕННОЙ ЛАБОРАТОРНОЙ РАБОТЕ №2

ПО ДИСЦИПЛИНЕ "ЧИСЛЕННЫЕ МЕТОДЫ"

 

ТЕМА. ПРИБЛИЖЁННОЕ РЕШЕНИЕ ОБЫКНОВЕННЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ

 

Выполнил Иванов А. Б., группа....

___________

 

Проверил Ковалёв П. И.

 

Тюмень 2013

 

Цель лабораторной работы №2.

 

Овладение навыками исследования детерминированных систем с помощью обыкновенных дифференциальных уравнений в среде MATLAB.

 

Пример. Исследование падения частицы под действием постоянной силы тяжести в безвоздушном пространстве.

 

Задание

 

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

 

Решение задачи

 

Система состоит из частицы, падающей в безвоздушном пространстве. На неё действует сила притяжения Земли.

 

Выберем систему координат так, чтобы плоскость Oxy совпадала с поверхностью Земли, ось Oz была направлена вертикально вверх.

 

Состояние системы в момент времени t описывается её скоростью v (t).

 

Параметры системы:

m – масса частицы;

g – ускорение свободного падения.

 

Начальное значение: скорость частицы в момент времени t = 0 равна v 0.

 

В силу второго закона Ньютона произведение массы частицы на её ускорение совпадает с равнодействующей всех сил, приложенных к частице, сила притяжения Земли пропорциональна массе частицы, коэффициент пропорциональности равен ускорению свободного падения:

 

m dv / dt = - m g (1)

 

(знак 'минус' в правой части указывает, что сила тяжести направлена вниз). Преобразуем уравнение (1) в нормальную форму:

 

dv / dt = - g (2)

 

 

Примечание. Нормальная форма дифференциального уравнения первого порядка имеет вид: dy / dt = f (t, y), где y = y (t) - неизвестная функция аргумента t.

 

Дифференциальное уравнение (2) вместе с начальным условием v (0) = v 0 образует задачу Коши:

 

dv / dt = - g

v (0) = v0 (3)

 

Решение задачи Коши в среде MATLAB.

 

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

 

>> g = 9.82 % м/с2

>> v0 = 1 % м/с

 

 

Примечание. Знак '%' отделяет команду от комментария.

 

Для решения задачи Коши вызовем в командной строке среды MATLAB функцию ode45:

 

>> ode45 (@(t, v) - g, [ 0, 20 ], v0)

 

Первый аргумент функции ode45 задаёт функцию, стоящую в правой части дифференциального уравнениия (f (t, v) = - g) и указывает её аргументы – t и v. В нашем случае независимая переменная t и неизвестная функция v не входят явно в правую часть дифференциального уравнения. Второй аргумент функции ode45 задаёт интервал, на котором среда должна искать значения неизвестной функции, третий аргумент – значение неизвестной функции в левом конце интервала.

 

На экране должен появиться график изменения скорости частицы со временем.

 

Решите задачу, изменяя параметры системы и начальное условие.

 

Вывод

 

Скорость частицы, двигающейся вдоль вертикальной оси в безвоздушном пространстве, с течением времени линейно возрастает.

 

Исследование движения шарика, вдоль вертикальной оси под действием постоянной силы тяжести.

 

Задание. Шарик двигается вдоль вертикальной оси Oz под действием постоянной силы тяжести, сила сопротивления воздуха пропорциональна скорости шарика. Постройте и исследуйте математическую модель системы.

 

Силу сопротивления воздуха вычисляем по формуле Стокса:

 

F = - 6 π η r v,

где:

π – число пи, в среде MATLAB оно обозначается символом pi;

η – коэффициент внутреннего трения (вязкости) среды;

r – радиус шарика;

v – скорость шарика;

знак минус указывает, что сила сопротивления среды направлена противоположно скорости шарика.

 

Коэффициент вязкости воздуха составляет 17.2 · 10-6 Па · с.

 

Масса шарика равна 4 π r 3 ρ / 3, где ρ – плотность материала, из которого изготовлен шарик. Плотность берёзы составляет 700 кг/м3, плотность алюминия - 2700 кг/м3, плотность стали - 7800 кг/м3.

 

Исследование движения шарика в воде вдоль вертикальной оси под действием постоянной силы тяжести

 

Задание. Шарик двигается в воде вдоль вертикальной оси Oz под действием постоянной силы тяжести, сила сопротивления воды пропорциональна скорости шарика. Постройте и исследуйте математическую модель системы.

 

Коэффициент вязкости воды равен 0.00105 Па · с.

 

На шарик действует сила Архимеда, выталкивающая его из воды, она равна 4 π r 3 ρ1 g / 3, g – ускорение свободного падения, ρ1 - плотность воды, ρ1 = 1000 кг/м3.

 

Исследование движения частицы, на которую действует возвращающая сила (гармонического осциллятора)

 

Задание. Частица (материальная точка) двигается без трения вдоль горизонтальной оси Ox под действием возвращающей силы, пропорциональной расстоянию частицы от начала координат. Постройте и исследуйте математическую модель системы.

 

Состояние системы в момент времени t описывается её абсциссой x = x (t), величина действующей на неё возвращающей силы равна c x, c – числовой коэффициент. В силу второго закона Ньютона

 

m d 2 x / dt 2 = - c x

 

(знак минус указывает, что возвращающая сила направлена от частицы к началу координат). Чтобы преобразовать это уравнение в нормальную форму используем переменные x 1, x 2:

x 1 обозначает абсциссу частицы, а x 2 – её скорость. Уравнение движения частицы превращается в систему уравнений:

 

dx 1 / dt = x 2

dx 2 / dt = - c x 1 / m.

 

Правую часть системы уравнений можно представить в виде вектора-столбца. Вызываем функцию ode45:

 

>> ode45 (@(t, x) [ x (2); - c x (1) / m ], [ 0, 20 ], [ x0, v0 ])

 

Начальное условие для дифференциального уравнения второго порядка включает два значения: начальной координаты и начальной скорости частицы. После выполнения команды на экране появляется окно, в котором графики координаты и скорости совмещены на одной схеме. Чтобы вывести отдельно график координаты надо выполнить следующие команды:

 

>> [ T, x ] = ode45 (@(t, x) [ x (2); - c x (1) / m ], [ 0, 20 ], [ x0, v0 ]);

>> plot (T, x (:, 1))

 

график скорости строит другая команда:

 

>> plot (T, x (:, 2))

 

Нелинейное уравнение Ван-дер-Поля

 

Задание. Исследуйте протекание процесса, который описывается нелинейным уравнением Ван-дер-Поля

 

d 2 y / dt 2 = - y + k (1 – y 2) dy / dt

 

y = y (t) - функция, характеризующая состояние системы, k – параметр.

 

Определите при каких значениях параметра k решение уравнения Ван-дер-Поля является периодическим. Для решения уравнения Ван-дер-Поля лучше воспользоваться функцией ode15s.

 

МИНИСТЕРСТВО ОБРАЗОВАНИЯ и НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО СПЕЦИАЛЬНОГО ОБРАЗОВАНИЯ

«тюменский государственный нефтегазовый университет»

 

ИНСТИТУТ КИБЕРНЕТИКИ ИНФОРМАТИКИ И СВЯЗИ

Кафедра кибернетических систем

 

Направление 220400 – Управление в технических системах

 

ОТЧЁТ О ВЫПОЛНЕННОЙ ЛАБОРАТОРНОЙ РАБОТЕ № 3

ПО ДИСЦИПЛИНЕ "ЧИСЛЕННЫЕ МЕТОДЫ"

 

ТЕМА. РЕШЕНИЕ СИСТЕМ ЛИНЕЙНЫХ УРАВНЕНИЙ

 

Выполнил Иванов А. Б., группа....

___________

 

Проверил Ковалёв П. И.

 

Тюмень 2013

 

Цель лабораторной работы № 3.

 

Овладение навыками решения алгебраических и трансцендентных уравнений в среде MATLAB.

 

Задание.

 

Составьте и решите систему линейных уравнений среде MATLAB.

 

РЕШЕНИЕ СИСТЕМЫ ЛИНЕЙНЫХ УРАВНЕНИЙ В СРЕДЕ MATLAB

 

Решение системы линейных уравнений с невырожденной матрицей системы в среде MATLAB

 

Пример. Чтобы решить систему 3-х линейных уравнений с тремя неизвестными:

 

2 x + 4 y + 5 z = 4

4 x + 6 y + 8 z = 9

7 x + y + 6 z = 6

 

введём в командной строке среды MATLAB следующие команды:

 

>> A = [ 2, 4, 5; 4, 6, 8; 7, 1, 6 ]

 

(переменной A присвоено значение матрицы системы)

 

 

>> B = [ 4; 9; 6 ]

 

(переменой B присвоено значение столбца свободных членов)

 

>> X = A \ B

 

(команда вычисляет столбец неизвестных):

 

>> A = [ 2, 4, 5; 4, 6, 8; 7, 1, 6 ]

 

A =

 

2 4 5

4 6 8

7 1 6

 

>> B = [ 4; 9; 6 ]

 

B =

 

 

>> X = A \ B

 

X =

 

7.8333

9.1667

-9.6667

 

Обратите внимание на то, что в матрице системы элементы одной строки отделяются друг от друга запятыми, тогда как элементы разных строк отделяются друг от друга точкой с запятой; элементы столбца свободных членов отделяются друг от друга точкой с запятой.

 

Проверка

 

В командном окне среды MATLAB вводим команду

 

>> A * X - B

 

На экране должен появиться появляется столбец, состоящий из нулей.:

 

ans =

 

 

Задание

 

Составьте и решите систему линейных уравнений. Количество уравнений указывает преподаватель.

 

Решение системы линейных уравнений с вырожденной матрицей системы в среде MATLAB

 

Квадратная матрица называется вырожденной, если её определитель равен нулю. Если две строки квадратной матрицы совпадают или их соответствующие элементы пропорциональны, то матрица вырождена.

 

Задание. Составьте систему n линейных уравнений с n неизвестными, матрица которой вырождена, причём система имеет решение <значение n указывает преподаватель>. Попытайтесь решить её в среде MATLAB. Включите в отчёт описание поведения среды MATLAB.

 

Задание. Составьте систему n линейных уравнений с n неизвестными, матрица которой вырождена, причём система не имеет решений <значение n указывает преподаватель>. Попытайтесь решить её в среде MATLAB. Включите в отчёт описание поведения среды MATLAB.

 

Пример системы трёх линейных уравнений, множество решений которой бесконечно:

 

x + 2 y + 3 z = 4

x + 2 y + 3 z = 4

5 x + 6 y + 7 z = 8

 

Пример системы трёх линейных уравнений, которая не имеет решений:

 

x + 2 y + 3 z = 4

x + 2 y + 3 z = 14

5 x + 6 y + 7 z = 8

 

Задание. Приведите пример системы, математическая модель которой представляет собой систему линейных алгебраических уравнений. Исследуйте эту модель аналитическими методами. Решите систему уравнений в среде MATLAB.

 


Дата добавления: 2015-08-29; просмотров: 20 | Нарушение авторских прав




<== предыдущая лекция | следующая лекция ==>
Выплаты, производимые фондом социального страхования Российской Федерации | Вычислительные методы решения

mybiblioteka.su - 2015-2024 год. (0.202 сек.)