МЕТОДИЧЕСКИЕ УКАЗАНИЯ для практических занятий по дисциплине «Численные методы» для студентов 3 курса (специальность Программирование в компьютерных системах
ДЕПАРТАМЕНТ ОБРАЗОВАНИЯ, НАУКИ И МОЛОДЕЖНОЙ ПОЛИТИКИ ВОРОНЕЖСКОЙ ОБЛАСТИ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ БЮДЖЕТНОЕ УЧРЕЖДЕНИЕ СРЕДНЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ ВОРОНЕЖСКОЙ ОБЛАСТИ
«СЕМИЛУКСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИКО-ЭКОНОМИЧЕСКИЙ КОЛЛЕДЖ»
М.Д. Евдокимова
методические указания
для практических занятий
по дисциплине «Численные методы»
для студентов 3 курса
(специальность 230115 Программирование в компьютерных системах)
Семилуки , 2014
Одобрено методическим советом ГОБУ СПО ВО «СГТЭК»
Автор-составитель: Евдокимова М.Д., преподаватель ГОБУ СПО ВО «СГТЭК»
Учебное пособие содержит указания для практических занятий по «Численные методы», являющейся профессиональной дисциплиной. Методические указания составлены в соответствии с рабочей программой по дисциплине «Численные методы» и предназначены для студентов 3-го курса, обучающихся по специальности 230115 Программирование в компьютерных системах
© Евдокимова М.Д., 2014
©ГОБУ СПО ВО «СГТЭК» Оглавление
стр
Введение
5
Оценка практических работ обучающихся
7
Общая классификация ошибок
7
Раздел 1. Действия над приближенными числами
9
Практическое занятие №1 «Использование основных численных методов решения математических задач. Вычисление погрешностей результатов арифметических действий»
9
Раздел 2. Численные методы решения основных математических задач
17
Практическое занятие №2 «Решение алгебраических и трансцендентных уравнений приближенными методами (метод половинного деления): разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
17
Практическое занятие №3 «Решение алгебраических и трансцендентных уравнений приближенными методами (метод хорд и касательных): разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
21
Практическое занятие №4 «Решение систем линейных алгебраических уравнений методом Гаусса: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
26
Практическое занятие №5 «Решение систем линейных алгебраических уравнений приближенными методами: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
35
Практическое занятие №6 «Составление интерполяционных формул Лагранжа и Ньютона: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
45
Практическое занятие №7 «Интерполирование сплайнами: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
49
Практическое занятие №8 «Вычисление интегралов при помощи формул Ньютона-Котеса: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
55
Практическое занятие №9 «Вычисление интегралов при помощи формул Гаусса: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
62
Практическое занятие №10 «Нахождение решений обыкновенных дифференциальных уравнений с использованием методов Эйлера: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
66
Приложение 1 Практическое занятие №2
74
Приложение 2 Практическое занятие №3
77
Приложение 3 Практическое занятие №4
80
Приложение 4 Практическое занятие №5
89
Приложение 5 Практическое занятие №6
93
Приложение 6 Практическое занятие №7
96
Приложение 7 Практическое занятие №8
101
Приложение 8 Практическое занятие №10
105
Литература
109
Введение
Методические указания к выполнению практических занятий по дисциплине «Численные методы» предназначены для закрепления теоретических знаний, полученных на лекциях, а также для овладения студентами умений и навыков применять эти знания при самостоятельной работе.
Перечень практических занятий соответствует рабочей программе по дисциплине «Численные методы»
Выполнение студентами практических работ по дисциплине проводится с целью:
- закрепления полученных теоретических знаний по дисциплине;
- углубления теоретических знаний в соответствии с заданной темой;
- формирования умений решать практические задачи;
- развития самостоятельности, ответственности и организованности;
- формирования активных умственных действий студентов, связанных с поисками рациональных способов выполнения заданий;
- подготовки к экзамену.
Методические указания выполняют функцию управления самостоятельной работой студента, поэтому каждое занятие имеет унифицированную структуру, включающую определение целей занятия, оснащения занятия, порядок выполнения работы, а также задания и контрольные вопросы для закрепления темы.
Содержание заданий практической работы ориентировано на подготовку студентов к освоению профессиональных модулей ОПОП по специальности 230115 Программирование в компьютерных системах и овладению профессиональными компетенциями:
ПК 1.7.в Осуществлять разработку кода программного продукта для решения вычислительных задач, учитывая необходимую точность получаемого результата.
ПК 2.5.в Реализовывать основные численные подходы к решению математических задач при работе в базе данных;
ПК 3.7.в Осуществлять разработку тестовых сценариев при решения основных математических задач.
В процессе освоения дисциплины у студентов должны формироваться общие компетенции:
ОК 1. Понимать сущность и социальную значимость своей будущей профессии, проявлять к ней устойчивый интерес.
ОК 2. Организовывать собственную деятельность, выбирать типовые методы и способы выполнения профессиональных задач, оценивать их эффективность и качество.
ОКЗ. Принимать решения в стандартных и нестандартных ситуациях и нести за них ответственность.
ОК 4. Осуществлять поиск и использование информации, необходимой для эффективного выполнения профессиональных задач, профессионального и личностного развития.
ОК 5. Использовать информационно-коммуникационные технологии в профессиональной деятельности.
ОК 6. Работать в коллективе и команде, эффективно общаться с коллегами, руководством, потребителями.
ОК 7. Брать на себя ответственность за работу членов команды (подчиненных), результат выполнения заданий.
ОК 8. Самостоятельно определять задачи профессионального и личностного развития, заниматься самообразованием, осознанно планировать повышение квалификации.
ОК 9. Ориентироваться в условиях частой смены технологий в профессиональной деятельности.
ОК 10. Исполнять воинскую обязанность, в том числе с применением полученных профессиональных знаний (для юношей).
В результате освоения учебной дисциплины обучающийся должен
уметь:
использовать основные численные методы решения математических задач;
разрабатывать алгоритмы и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата.
знать:
методы хранения чисел в памяти ЭВМ и действия над ними, оценку точности вычислений, т.е. действия над приближенными числами;
методы решения основных математических задач – интегрирования, дифференцирования, решения линейных и трансцендентных уравнений и систем уравнений с помощью ЭВМ.
В методических указаниях приведены теоретический (справочный) материал в соответствии с темой занятия, обращение к которому поможет выполнить задания практической занятия.
Организация выполнения и контроля практических занятий по дисциплине «Численные методы» является подготовительным этапом к сдаче экзамена по данной дисциплине.
Нормы оценки знаний, умений и навыков обучающихся
Оценка практических работ обучающихся
Ответ оценивается отметкой «5», если:
работа выполнена полностью;
в логических рассуждениях и обосновании решения нет пробелов и ошибок;
в решении нет математических ошибок (возможна одна неточность, описка, которая не является следствием незнания или непонимания учебного материала).
Отметка «4» ставится в следующих случаях:
работа выполнена полностью, но обоснования шагов решения недостаточны (если умение обосновывать рассуждения не являлось специальным объектом проверки);
допущены одна ошибка или есть два – три недочёта в выкладках, рисунках, чертежах или графиках (если эти виды работ не являлись специальным объектом проверки).
Отметка «3» ставится, если:
допущено более одной ошибки или более двух – трех недочетов в выкладках, чертежах или графиках, но обучающийся обладает обязательными умениями по проверяемой теме.
Отметка «2» ставится, если:
допущены существенные ошибки, показавшие, что обучающийся не обладает обязательными умениями по данной теме в полной мере.
Отметка «1» ставится, если:
работа показала полное отсутствие у обучающегося обязательных знаний и умений по проверяемой теме или значительная часть работы выполнена не самостоятельно.
Учитель может повысить отметку за оригинальный ответ на вопрос или оригинальное решение задачи, которые свидетельствуют о высоком математическом развитии обучающегося; за решение более сложной задачи или ответ на более сложный вопрос, предложенные обучающемуся дополнительно после выполнения им каких-либо других заданий
Общая классификация ошибок
При оценке знаний, умений и навыков учащихся следует учитывать все ошибки (грубые и негрубые) и недочёты.
Грубыми считаются ошибки:
незнание определения основных понятий, законов, правил, основных положений теории, незнание формул, общепринятых символов обозначений величин, единиц их измерения;
незнание наименований единиц измерения;
неумение выделить в ответе главное;
неумение применять знания, алгоритмы для решения задач;
неумение делать выводы и обобщения;
неумение читать и строить графики;
неумение пользоваться первоисточниками, учебником и справочниками;
потеря корня или сохранение постороннего корня;
отбрасывание без объяснений одного из них;
равнозначные им ошибки;
вычислительные ошибки, если они не являются опиской;
логические ошибки.
К негрубым ошибкам следует отнести:
неточность формулировок, определений, понятий, теорий, вызванная неполнотой охвата основных признаков определяемого понятия или заменой одного - двух из этих признаков второстепенными;
неточность графика;
нерациональный метод решения задачи или недостаточно продуманный план ответа (нарушение логики, подмена отдельных основных вопросов второстепенными);
нерациональные методы работы со справочной и другой литературой;
неумение решать задачи, выполнять задания в общем виде.
Недочетами являются:
нерациональные приемы вычислений и преобразований;
небрежное выполнение записей, чертежей, схем, графиков.
Раздел 1. Основные понятия и принципы моделирования
Практическое занятие №1
«Использование основных численных методов решения математических задач. Вычисление погрешностей результатов арифметических действий»
Цель занятия:
закрепить умения вычислять погрешности результатов арифметических действий;
закрепить умения определять количество верных цифр в числе, вычислять относительные и абсолютные погрешности.
Теоретический материал и методические указания к выполнению заданий
Приближение числа. Погрешности приближённых значений чисел
Пусть X-точное значение некоторой величины, x - наилучшее приближение этой величины.
Определение: Абсолютной погрешностью ех приближенного значения числа Х называется модуль разности между точным числом Х его приближенным значением х, т.е.
ех = (Х-х (.
Определение: Число х называется приближённым значением точного числа Х с точностью до (х, если абсолютная погрешность приближённого значения a не превышает (х, т.е. (Х-х (( (х .
Определение: Число (х называется границей абсолютной погрешности приближённого значения числа х.
Число (х на практике стараются подобрать как можно меньше и простое по записи.
Из неравенства (1) найдём границы, в которых заключено точное значение числа Х:
х - (х ( Х ( х + (х.
НГх= х - (х - нижняя граница приближения величины Х.
ВГх= х +(х - верхняя граница приближения величины Х.
Определение: Относительной погрешностью 13 EMBED Equation.3 1415 приближенного числа х числа Х называется отношение абсолютной погрешности (х этого приближения к числу х, т.е.
13 EMBED Equation.3 1415
Если первая значащая цифра в относительной погрешности 13 EMBED Equation.3 1415 меньше 5, то граница относительной погрешности определяется из неравенства 13 EMBED Equation.3 1415, где n- количество верных цифр.
Вычисление погрешностей арифметических действий
х#у
·(х#у)
·(х#у)
х+у
13 EMBED Equation.3 1415x+13 EMBED Equation.3 1415y
13 EMBED Equation.3 1415
х-у
13 EMBED Equation.3 1415x+13 EMBED Equation.3 1415y
13 EMBED Equation.3 1415
ху
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
х/у
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
Оценка погрешностей значений функций
f(x)
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equati
·
·
·
·–
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·–EMBED Equation.3 1415
arccos x
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
arctg x
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
Способы приближенных вычислений по заданной формуле
Вычисление по правилам подсчета цифр
При вычислении данным методом явного учёта погрешностей не ведётся, правила подсчёта цифр показывают лишь, какое количество значащих цифр или десятичных знаков в результате можно считать надёжными.
Правила метода:
При сложении и вычитании приближенных чисел следует считать верными столько десятичных знаков после запятой, сколько их в приближенном данном с наименьшим числом знаков после запятой.
При умножении и делении приближенных чисел нужно выбрать число с наименьшим количеством значащих цифр и округлить остальные числа так, чтобы в них было лишь на одну значащую цифру больше, чем в наименее точном числе.
При определении количества верных цифр в значениях функций от приближённых значений аргумента следует грубо оценить значение модуля производной функции. Если это значение не превосходит единицы или близко к ней, то в значении функции можно считать верными столько знаков после запятой, сколько их имеет значение аргумента. Если же модуль производной функции превосходит единицу, то количество верных десятичных знаков в значении функции меньше, чем в аргументе на величину, равную разряду оценки производной.
В записи промежуточных результатов следует сохранять на одну цифру больше, чем описано в правилах 1-3. В окончательном результате эта запасная цифра округляется.
Правила подсчёта цифр носят оценочный характер, но практическая надёжность этих правил достаточно высока.
При исследовании данного метода используется расчётная таблица – расписка формул.
Пример: Вычислить значение функции 13 EMBED Equation.3 1415, а = 2,156, b = 0,927.
а
2,156
пояснения при подсчете верных цифр
b
0,927
13 EMBED Equation.3 1415
8,637
13 EMBED Equation.3 1415 = 8,63652,
оценим производную (13 EMBED Equation.3 1415)’ = 13 EMBED Equation.3 1415, значит (используя правило 3), надо сохранить на один знак меньше, чем в значении аргумента + 1 запасная цифра.
13 EMBED Equation.3 1415
0,9628
13 EMBED Equation.3 1415 = 0,9628083,
оценим производную 13 EMBED Equation.3 1415, (используя правило 3) сохраняем три цифры как в аргументе + 1 запасная цифра.
13 EMBED Equation.3 1415+13 EMBED Equation.3 1415
9,600
13 EMBED Equation.3 1415+13 EMBED Equation.3 1415=8,637+0,9628=9,5998,
(по правилу 1)результат округляется до трёх знаков после запятой, т.е. 9,600.
13 EMBED Equation.3 1415
0,8593
13 EMBED Equation.3 1415,
(по правилу 2) результат округляем до трех цифр, как аргумент + 1 запасная цифра.
13 EMBED Equation.3 1415
3,0153
13 EMBED Equation.3 1415,
(используя правило 1)округляем результат до трех цифр + 1 запасная цифра.
13 EMBED Equation.3 1415
1,1037
13 EMBED Equation.3 1415,
оценим производную 13 EMBED Equation.3 1415, (используя правило 3) сохраняем три цифры как в аргументе + 1 запасная цифра.
A
8,698
13 EMBED Equation.3 1415,
при округлении результата использовали правило 2.
А
8,70
8-запасная цифра,
По правилу 4, запасная цифра в окончательном результате округляется 13 EMBED Equation.3 1415
Вычисление со строгим учётом предельных абсолютных погрешностей
Этот метод предусматривает использование правил вычисления предельных абсолютных погрешностей. При пооперационном учете ошибок промежуточные результаты, так же как и их погрешности, заносятся в специальную таблицу, состоящую из двух параллельно заполняемых частей – для результатов и их погрешностей. В таблице приведены пошаговые вычисления со строгим учетом предельных абсолютных погрешностей по той же формуле, что и в предыдущем примере, и в предположении, что исходные данные a и b имеют предельные абсолютные погрешности 13 EMBED Equation.3 1415, т.е. у a и b все цифры верны.
Промежуточные результаты вносятся в таблицу после округления до одной запасной цифры; значения погрешностей для удобства округляются (с возрастанием!) до двух значащих цифр. Проследим ход вычислений на одном этапе.
Пример: Вычислить значение функции 13 EMBED Equation.3 1415, а = 2,156, b = 0,927.
а
b
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415+13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
a+13 EMBED Equation.3 1415
ln(a+13 EMBED Equation.3 1415)
A
2,156
0,927
8,637
0,9628
9,603
0,860
3,016
1,104
8,70
13 EMBED Equation.3 1415 а
13 EMBED Equation.3 1415 b
13 EMBED Equation.3 1415(13 EMBED Equation.3 1415)
13 EMBED Equation.3 1415(13 EMBED Equation.3 1415)
13 EMBED Equation.3 1415(13 EMBED Equation.3 1415+13 EMBED
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·Используя калькулятор, имеем 13 EMBED Equation.3 1415.
При вычислении предельных абсолютных погрешностей используем таблицу 1.2. 13 EMBED Equation.3 1415.
Судя по ее величине, в полученном значении экспоненты в строгом смысле верны два знака после запятой. Округляем это значение с одной запасной цифрой:13 EMBED Equation.3 1415 и вносим его в таблицу.
При этом возникает погрешность округления: 8,637-8,63652=0,00048.
Вслед за этим вычисляем полную погрешность полученного результата (погрешность действия плюс погрешность округления: 0,0044+0,00048=0,0049), которую так же вносим в таблицу.
Все последующие действия выполняем аналогично с применением соответствующих формул для предельных абсолютных погрешностей.
Округляя окончательный результат до последней верной в строгом смысле цифры, а так же округляя погрешность до соответствующих разрядов результата, окончательно получаем: А = 8,7 13 EMBED Equation.3 14150,1.
Вычисления по методу строго учёта предельных абсолютных погрешностей можно выполнить на компьютере с помощью программы. Если не производить пооперационного учёта движения вычислительной ошибки, то достаточно вычислить значение предельной абсолютной погрешности окончательного результата, а затем произвести его округление.
Вычисление по методу границ
Если нужно иметь абсолютно гарантированные границы возможных значений вычисляемой величины, используют специальный метод вычислений – метод границ.
Пусть f(x, y) – функция непрерывная и монотонная в некоторой области допустимых значений аргументов x и y. Нужно получить её значение f(a, b), где a и b – приближенные значения аргументов, причем достоверно известно, что
13 EMBED Equation.3 1415; 13 EMBED Equation.3 1415.
Здесь НГ, ВГ - обозначение соответственно нижней и верхней границ значений параметров. Итак, вопрос состоит в том, чтобы найти строгие границы значения (a, b) при известных границах значений a и b.
Допустим, что функция f(x, y) возрастает по каждому из аргументов x и y. Тогда
13 EMBED Equation.3 1415.
Пусть теперь f(x, y) возрастает по аргументу x и убывает по аргументу y. Тогда будет строго гарантировано неравенство
13 EMBED Equation.3 1415.
Рассмотрим указанный принцип на примере основных арифметических действий. Пусть 13 EMBED Equation.3 1415. Тогда очевидно, что
13 EMBED Equation.3 1415.
Точно так же для функции 13 EMBED Equation.3 1415(она по x возрастает, а по y убывает) имеем
13 EMBED Equation.3 1415.
Аналогично для умножения и деления:
13 EMBED Equation.3 1415
Вычисляя по методу границ с пошаговой регистрацией промежуточных результатов, удобно использовать обычную вычислительную таблицу, состоящую из двух строк – отдельно для вычисления НГ и ВГ результата (по этой причине метод границ называют ещё методом двоичных вычислений). При выполнении промежуточных вычислений и округлении результатов используются все рекомендации правил подсчёта цифр с одним важным дополнением: округление нижних границ ведётся по недостатку, а верхних по – избытку. Окончательные результаты округляются по этому же правилу до последней верной цифры.
Пример: Вычислить значение функции 13 EMBED Equation.3 1415, а = 2,156, b = 0,927.
Нижняя и верхняя границы значений a и b определены из условия, что в исходных данных а = 2,156 и b = 0, 927 все цифры верны (13 EMBED Equation.3 1415,
т.е. 2,1555 < a < 2,1565; 0,9265 < b < 0,9275.
а
b
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415+13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
a+13 EMBED Equation.3 1415
ln(a+13 EMBED Equation.3 1415)
A
НГ
2,1555
0,9265
8,63220
0,96255
9,59475
0,85840
3,01434
1,10338
8,6894
ВГ
2,1565
0,9275
8,64084
0,96307
9,60391
0,86026
3,01676
1,10419
8,7041
Таким образом, результат вычислений значения А по методу границ имеет вид 8,6894 < А < 8,7041.
По результатам вычислений получаем
13 EMBED Equation.3 1415
что дает А = 8,69713 EMBED Equation.3 14150,008, или при записи верными цифрами, А=8,713 EMBED Equation.3 14150,01.
Задания практического занятия №1
Задание 1.
Вычислите с помощью МК значение величины Z при заданны значениях параметров a, b и c, использую «ручные» расчетные таблицы для пошаговой регистрации результатов вычислений, тремя способами:
по правилам подсчета цифр;
с систематическим учетом границ абсолютных погрешностей;
по способу границ.
Сравните полученные результаты между собой, прокомментируйте различие методов вычислений и смысл полученных числовых значений.
В результате выполнения практической работы необходимо сделать обоснованный вывод о целесообразности и эффективности использования тех или иных методов и средств вычислений.
Номер варианта
Z
a
b
c
1
13 EMBED Equation.3 1415
3,4
6,22
0,149
2
13 EMBED Equation.3 1415
4,05
6,723
0,03254
3
13 EMBED Equation.3 1415
0,7219
135,347
0,013
4
13 EMBED Equation.3 1415
3,672
4,63
0,0278
5
13 EMBED Equation.3 1415
1,24734
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·–
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
Контрольные вопросы
Что такое абсолютная погрешность приближенного значения величины?
Что такое относительная погрешность приближенного значения величины?
Какое влияние на погрешность арифметических действий оказывают погрешности исходных данных?
В какой зависимости находится абсолютная погрешность значения функции одной переменной от абсолютной погрешности значения аргумента?
Какова последовательность действий на каждом промежуточном этапе расчетной таблицы в вычислениях по правилам подсчета цифр с пооперационным учетом ошибок? на заключительном этапе?
Какова последовательность действий на каждом промежуточном этапе расчетной таблицы в вычислениях по методу строгого учета предельных погрешностей с пооперационным учетом ошибок? на заключительном этапе?
Как вычисляются предельные погрешности результата при использовании методики итоговой оценки ошибки вычислений?
В чем основное отличие метода границ от вычислений по методу строгого учета границ погрешностей?
Какова последовательность действий на каждом промежуточном этапе расчетной таблицы в вычислениях по методу границ с пооперационным учетом ошибок? на заключительном этапе?
Раздел 2. Численные методы решения основных математических задач
Практическое занятие №2
«Решение алгебраических и трансцендентных уравнений приближенными методами (метод половинного деления): разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
Цель занятия:
закрепить умения отделять корни алгебраических уравнений;
закрепить умения решать алгебраические уравнений приближенными методами (метод половинного деления, метод хорд, метод касательных);
разработать алгоритм и программ для решения вычислительных задач методом половинного деления, учитывая необходимую точность получаемого результата.
Теоретический материал и методические указания к выполнению заданий
Постановка задачи решения уравнений
Пусть имеется уравнение вида f(x)=0 , где f(x) - алгебраическая или трансцендентная функция.
Решить такое уравнение – значит установить, имеет ли оно корни, сколько корней, и найти значения корней (с указанной точностью). Ограничимся обсуждением методов поиска лишь действительных корней, не затрагивая проблему корней комплексных.
Отделение корней алгебраических и трансцендентных уравнений
Решение указанной задачи начинается с отделения корней, т.е. с установления:
количества корней;
наиболее «тесных» промежутков, каждый из которых содержит только один корень.
Следует отметить, что универсальных приемов решения этой задачи, пригодных для любых уравнений, не существует.
Тем не менее, отделение корней во многих случаях можно произвести графически.
Упростим задачу, заменив уравнение f(x)=0 равносильным ему уравнением f1(x)= f2(x).
В этом случае строятся графики функций f1(x) и f2(x), а потом на оси х отмечаются отрезки, локализующие абсциссы точек пересечения этих графиков.
При решении задачи об отделении корней бывают полезными следующие очевидные положения:
Если непрерывная на отрезке [a;b] функция f(x) принимает на его концах значения разных знаков (т.е. f(a). f(b)<0), то уравнение (2.1) имеет на этом отрезке, по меньшей мере, один корень.
Если функция f(x) к тому же еще и монотонна, то корень на отрезке [a;b] единственный.
Пример: Для графического отделения корней уравнения 13 EMBED Equation.3 1415преобразуем его к равносильному уравнению 13 EMBED Equation.3 1415 и отдельно построим графики функций 13 EMBED Equation.3 1415.
Из графика вполне очевидно, что уравнение имеет единственный корень
· и этот корень находится на отрезке [1;1,5].
Вычислим для проверки значения функции 13 EMBED Equation.3 1415на концах отрезка [1;1,5]: f(1)=0.909298; f(1,5)= -0,264344. Как видно, корень на отрезке [1;1,5] действительно имеется.
Рассмотренный прием позволяет при желании сузить отрезок, полученный графическим способом.
Так, в нашем примере, имеем f(1,3)=0,253138>0, так что отрезком, на котором находится корень, можно считать[1,3;1,5].
Метод половинного деления
Пусть уравнение f(x)=0 имеет на отрезке [a;b] единственный корень, причем функция f(x) на этом отрезке непрерывна. Разделим отрезок [a;b] пополам точкой с=(a+b)/2. Если f(c)
·0(что практически наиболее вероятно), то возможны два случая: f(x) меняет знак либо на отрезке [a;с] (рис 1), либо на отрезке [с;b] (рис 2).
Рис 1. – функция f(x) меняет знак на отрезке [a;c] Рис 2. – функция f(x) меняет знак на отрезке [c;b]
Выбирая в каждом случае тот из отрезков, на котором функция меняет знак, и продолжая процесс половинного деления дальше, можно дойти до сколь угодно малого отрезка, содержащего корень уравнения.
Метод половинного деления требует утомительных ручных вычислений, однако он легко реализуется с помощью программы на компьютере.
Пример решения уравнений методом половинного деления
Пример: Найти корень уравнения 13 EMBED Equation.3 1415 на отрезке [1,3;1,5] с точностью до 10-3.
Решение: Уравнение 13 EMBED Equation.3 1415 имеет единственный корень на отрезке [1,3;1,5]
Уточним корень уравнения: Найдем середину отрезка [1,3;1,5]: 13 EMBED Equation.3 1415.
Определим, на каком из полученных отрезков [1,3;1,4] и [1,4;1,5] функция 13 EMBED Equation.3 1415меняет свой знак.
1) [1,3;1,4]: 13 EMBED Equation.3 1415 2) [1,4;1,5]: 13 EMBED Equation.3 1415
Значит, корень уравнения находится на отрезке [1,3;1,4].
Проверим, достигается ли заданная точность решения 10-3:
13 EMBED Equation.3 1415, точность не достигнута.
Разделим отрезок [1,3;1,4] пополам точкой 13 EMBED Equation.3 1415.
Определим, на каком из полученных отрезков [1,3;1,35] и [1,35;1,4] функция 13 EMBED Equation.3 1415меняет свой знак.
1) [1,3;1,35]: 13 EMBED Equation.3 14152) [1,35;1,4]: 13 EMBED Equation.3 1415
Значит, корень уравнения находится на отрезке [1,35;1,4].
Проверим, достигается ли заданная точность решения 10-3:
13 EMBED Equation.3 1415, точность не достигнута.
Снова разделим отрезок [1,35;1,4] пополам точкой 13 EMBED Equation.3 1415.
Определим, на каком из полученных отрезков [1,35;1,375] и [1,375;1,4] функция 13 EMBED Equation.3 1415меняет свой знак.
1) [1,35;1,375]: 13 EMBED Equation.3 1415
2) [1,375;1,4]: 13 EMBED Equation.3 1415
Значит, корень уравнения находится на отрезке [1,375;1,4].
Проверим, достигается ли заданная точность решения 10-3:
13 EMBED Equation.3 1415, точность не достигнута.
Продолжая делить отрезок пополам и проверять знаки функции на новых промежутках, до тех пор, пока не будет достигнута нужная точность решения, получим:
Решение уравнения с точностью 10-3: х=1,399.
Здания практического занятия №2
Задание 1. Отделите корни заданного уравнения, пользуясь графическим методом.
Задание 2. По методу половинного деления вычислите один корень заданного уравнения с точностью 10-3.
а) с помощью «ручной» расчетной таблицы и калькулятора;
б) с помощью программы для компьютера.
Сопоставьте и прокомментируйте полученные результаты.
Номер варианта
Уравнение
Пояснения
1
13 EMBED Equation.3 1415
-
2
13 EMBED Equation.3 1415
-
3
13 EMBED Equation.3 1415
При х<10
4
13 EMBED Equation.3 1415
При х>-10
5
13 EMBED Equation.3 1415
При х<5
6
13 EMBED Equation.3 1415
-
7
13 EMBED Equation.3 1415
-
8
13 EMBED Equation.3 1415
-
9
13 EMBED Equation.3 1415
-
10
13 EMBED Equation.3 1415
-
11
13 EMBED Equation.3 1415
-
12
13 EMBED Equation.3 1415
-
13
13 EMBED Equation.3 1415
-
14
13 EMBED Equation.3 1415
-
15
13 EMBED Equation.3 1415
-
Контрольные вопросы
Что означает «решить уравнение аналитически» и «решить уравнение численно»?
В чем заключается задача отделения корней?
В чем состоит основная идея метода половинного деления?
Может ли метод половинного деления дать точное значение корня уравнения?
Практическое занятие №3
«Решение алгебраических и трансцендентных уравнений приближенными методами (метод хорд и касательных): разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
Цель занятия:
закрепить умения отделять корни алгебраических уравнений;
закрепить умения решать алгебраические уравнений приближенными методами (метод хорд и касательных);
разработать алгоритм и программ для решения вычислительных задач методом хорд и касательных, учитывая необходимую точность получаемого результата.
Теоретический материал и методические указания к выполнению заданий
Постановка задачи решения уравнений
Пусть имеется уравнение вида f(x)=0 , где f(x) - алгебраическая или трансцендентная функция.
Решить такое уравнение – значит установить, имеет ли оно корни, сколько корней, и найти значения корней (с указанной точностью). Ограничимся обсуждением методов поиска лишь действительных корней, не затрагивая проблему корней комплексных.
Наряду с методом половинного деления существуют и другие, более сложные и более эффективные итерационные методы. Прежде всего, к ним относится группа методов, которые связаны с именем Ньютона. Рассмотрим два из них – метод касательных и метод хорд.
Оба метода основаны на следующем приеме.
Пусть уравнение f(x)=0 имеет единственный корень на отрезке [a;b]. Преобразуем его к равносильному уравнению
13 EMBED Equation.3 1415 (2.3)
где13 EMBED Equation.3 1415 - любая функция, определенная на отрезке [a;b] и не обращающаяся на нем в нуль. Осуществляя различными способами выбор 13 EMBED Equation.3 1415, можно получить, в частности, и указанные методы.
Метод касательных
Пусть в (2.3) 13 EMBED Equation.3 1415. Таким образом, итерационная последовательность строится с помощью рекуррентного соотношения
13 EMBED Equation.3 1415 (2.4)
Функция f(x) удовлетворяет следующим условиям:
1) Является дважды дифференцируемой на отрезке [a;b];
2) Обе производные – первая и вторая – не меняют знак на этом отрезке, т.е. функция F(x) монотонна и не меняет характер выпуклости.
В таком ситуации за х0 берется тот конец отрезка [a;b], на котором функция f(x) и ее вторая производная имеют одинаковые знаки, т.е. выполняется условие 13 EMBED Equation.3 1415.
На каждом шаге построения итерационной последовательности буде проверять точность достижения корня с помощью неравенства:
13 EMBED Equation.3 1415. (2.5)
Рассмотренный метод называется методом касательных потому, что если обратиться к графической иллюстрации , то точка х1, определяемая по формуле (2.4) при n=0, есть точка пересечения касательной, проведенной к графику y=f(x) в точке с абсциссой , определяемой предыдущим членом последовательности, с осью абсцисс.
Каждому следующему члену итерационной последовательности (2.4) соответствует точка пересечения касательной, проведенной к графику y=f(x) в точке с абсциссой х0, с осью абсцисс.
Пример решения уравнений методом касательных
Пример: Уточнить корень уравнения 13 EMBED Equation.3 1415 на отрезке [1,3;1,5] методом касательных с точностью до 1.13 EMBED Equation.3 1415.
Решение: Формула (2.4) в нашем примере имеет вид
13 EMBED Equation.3 1415,
т.к . производная 13 EMBED Equation.3 1415.
Для определения точки 13 EMBED Equation.3 1415 найдем знаки 13 EMBED Equation.3 1415и 13 EMBED Equation.3 1415на концах отрезка [1,3;1,5]:
f (1, 3) = 0, 515501 - 0, 262363 = 0, 253137>0,
f (1, 5) = 0, 14112 - 0,405465 = - 0, 26435<0,
f” (1, 3) = -2,062 + 0,591716 = -1, 4703<0,
f” (1, 5) = -0, 56448 + 0, 4444 = - 0, 12<0.
Таким образом, 13 EMBED Equation.3 1415.
Вычислим несколько членов итерационной последовательности «ручным» способом:
13 EMBED Equation.3 1415
Сделаем проверку (2.5) точности достижения корня:
13 EMBED Equation.3 1415 13 EMBED Equation.3 1415, значит 13 EMBED Equation.3 141513 EMBED Equation.3 1415
13 EMBED Equation.3 1415- требуемая точность не достигнута.
13 EMBED Equation.3 1415
Снова проверка:
13 EMBED Equation.3 1415- требуемая точность достигнута.
Корень уравнения х1= 1, 399429 .
Метод хорд
Реализуя метод касательных, при каждой итерации необходимо вычислить значение не только функции f(x), но и ее производной f’(х). Однако есть вариант метода Ньютона, в котором можно ограничиться вычислением только значений f(x), что иногда упрощает вычислительный алгоритм.
Если положить в (2.3) 13 EMBED Equation.3 1415, а в качестве с взять тот конец промежутка [a;b], на котором 13 EMBED Equation.3 1415, то приходим к итерационному методу:
13 EMBED Equation.3 1415, (2.6)
называемому методом хорд (или методом секущих).
В качестве х0 в этом случае следует принять тот конец промежутка [a;b], который остался после выбора с (т.е. если c=a, то x0=b или наоборот). Далее последовательность строится по формуле (2.6).
Оценка степени приближения к корню возможна с помощью неравенства (2.5).
На рисунке проиллюстрирован геометрический смысл метода.
В данном случае c=b, x0=a, х1 соответствует точке пересечения хорды, соединяющей концы кривой, с осью абсцисс. Далее находится точка на кривой с абсциссой х1, проводится следующая хорда и т.д.
Пример решения уравнений методом касательных
Пример: Уточнить корень уравнения 13 EMBED Equation.3 1415 на отрезке [1,3;1,5] методом хорд с точностью до 1.13 EMBED Equation.3 1415.
Решение: Точка с выбирается так же, как и точка х0 в предыдущем примере, т.е. с=1,5. Будем приближать точку х0= а = 1, 3.
13 EMBED Equation.3 1415
Проверим, достигнута ли заданная точность.
13 EMBED Equation.3 1415- требуемая точность не достигнута.
Найдём следующее приближение:
13 EMBED Equation.3 1415
Проверим точность:
13 EMBED Equation.3 1415- требуемая точность достигнута
Итак, корень уравнения х=1, 39941.
Задания практического занятия №3
Задание 1. Отделите корни заданного уравнения, пользуясь графическим методом. (см. практическое занятие №2)
Задание 2. По методу хорд вычислите один корень заданного уравнения с точностью 10-3.
а) с помощью «ручной» расчетной таблицы и калькулятора;
б) с помощью программы для компьютера.
Задание 3. По методу касательных вычислите один корень заданного уравнения с точностью 10-3.
а) с помощью «ручной» расчетной таблицы и калькулятора;
б) с помощью программы для компьютера.
Сопоставьте и прокомментируйте полученные результаты.
Номер варианта
Уравнение
Пояснения
1
13 EMBED Equation.3 1415
-
2
13 EMBED Equation.3 1415
-
3
13 EMBED Equation.3 1415
При х<10
4
13 EMBED Equation.3 1415
При х>-10
5
13 EMBED Equation.3 1415
При х<5
6
13 EMBED Equation.3 1415
-
7
13 EMBED Equation.3 1415
-
8
13 EMBED Equation.3 1415
-
9
13 EMBED Equation.3 1415
-
10
13 EMBED Equation.3 1415
-
11
13 EMBED Equation.3 1415
-
12
13 EMBED Equation.3 1415
-
13
13 EMBED Equation.3 1415
-
14
13 EMBED Equation.3 1415
-
15
13 EMBED Equation.3 1415
-
Контрольные вопросы
Дайте общее описание метода касательных?
Дайте общее описание метода хорд?
Нарисуйте геометрические схемы методов касательных и хорд.
Запишите формулы для построения итерационных последовательностей для каждого метода.
Как проверяется требуемая точность в методах?
Практическое занятие №4
«Решение систем линейных алгебраических уравнений методом Гаусса: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
Цель занятия:
закрепить усвоение теоретического материала по данной теме через решение упражнений;
закрепить умения решать системы линейных уравнений методом Гаусса;
закрепить умения находить значения определителя системы методом Гаусса;
закрепить умения находить обратную матрицу методом Гаусса.
Теоретический материал и методические указания к выполнению заданий
Системы линейных алгебраических уравнений
Множество прикладных и чисто математических задач приводят к необходимости решения систем линейных алгебраических уравнений (С.Л.А.У). Без преувеличения можно утверждать, что это одна из важнейших задач вычислительной математики.
Значимость задачи породила целый ряд методов ее решения. Среди этих методов есть универсальные и специализированные (т.е. применимые лишь к системам, имеющим некоторые специальные свойства). Методы отличаются друг от друга эффективностью, требованиями к объемам машинной памяти (при реализации на ЭВМ), закономерностями накопления ошибок в ходе расчетов. Не существует одного метода, который можно было бы во всех случаях предпочесть всем остальным, и поэтому знакомство с некоторыми методами является обязательным для квалифицированного вычислителя.
Итак, перед нами система n линейных алгебраических уравнений с n неизвестными: 13 EMBED Equation.3 1415 (2.7)
Запись ее в такой форме достаточно громоздка. Будем использовать матричную форму записи, совершенно равносильную (2.7): AХ=B,
где 13 EMBED Equation.3 1415
Методы решения С.Л.А.У. вида (2.7) можно разделить на два класса: точные и итерационные.
К точным методам относятся:
1. метод определителей (метод Крамера), хорошо известный из курса линейной алгебры;
2. матричное решение: X=A-1В (если известна обратная матрица);
3. различные варианты метода исключения неизвестных (метод Гаусса).
Чаще всего такие методы реализуются на ЭВМ, и в процессе вычислений ошибки определения и погрешности арифметических действий неизбежно. В силу этого название «точный» не соответствует действительности.
К итерационным методам относятся приближённые методы решения С.Л.А.У., основанные на применении принципа сжимающих отображений (метод Зейделя, метод простой итерации).
Метод Гаусса решения систем уравнений
Под названием «метод Гаусса» фигурирует группа методов, объединенных идеей последовательного исключения неизвестных. Наиболее популярным является метод, основанный на так называемой схеме единственного деления; этот метод имеет также и ряд модификаций.
Сам по себе метод Гаусса относится к точным методам. Это означает, что если точно выполнять все требуемые действия, получено точное решение, поскольку погрешность метода в данном случае равна нулю.
Будем считать матрицу системы (2.7) невырожденной, т.е. ее определитель не равен нулю.
Рассмотрим алгоритм, который получил название схемы единственного деления.
Подвергнем систему (3.1) следующим преобразованиям.
Считая, что 13 EMBED Equation.3 1415(ведущий элемент), разделим на 13 EMBED Equation.3 1415 коэффициенты первого уравнения: 13 EMBED Equation.3 1415 (2.8)
Используя уравнение (2.8), легко исключить неизвестное x13 EMBED Equation.3 1415 из остальных уравнений системы (достаточно из каждого уравнения вычесть уравнение (1), умноженное на соответствующий коэффициент при x13 EMBED Equation.3 1415).
Над остальными уравнениями системы совершим аналогичное преобразование: выберем из их числа уравнение с ведущим элементом и исключим с его помощью из остальных уравнений неизвестное 13 EMBED Equation.3 1415.
Повторяя этот процесс, получим систему с треугольной матрицей:
13 EMBED Equation.3 1415 (2.9)
Из системы (2.9) последовательно находим значения неизвестных 13 EMBED Equation.3 1415
Отметим, что последовательное исключение неизвестных называется прямым ходом метода Гаусса. Нахождение значений неизвестных – обратным ходом.
Пример: Решить систему линейных уравнений:
13 EMBED Equation.3 1415
Решение: Запишем расширенную матрицу системы:
13 EMBED Equation.3 1415
Так как, 13 EMBED Equation.3 1415, разделим элементы первой строки на 2,34. Затем из элементов второй строки вычтем элементы первой, умноженные на 8,04, а из элементов третьей - вычтем элементы первой, умноженные на 3,92.
13 EMBED Equation.3 1415.
Теперь элементы второй строки разделим на 19,685. И умножая их на (-0,938), вычтем из элементов третьей строки.
13 EMBED Equation.3 1415.
Элементы третьей строки, разделим на 29,732.
13 EMBED Equation.3 1415.
Получаем треугольную матрицу. Решая ее, начиная с последней строки, найдем значения неизвестных:
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415
Так как в процессе решения выполнялись округления, то решение содержит вычислительную ошибку.
Определение: Значение разностей между свободных элементов исходной системы и результатами подстановки в уравнения системы найденных значений неизвестных называется невязками.
В рассмотренном примере невязки имеют следующие значения:
13 EMBED Equation.3 1415
Следует заметить, что по величине невязок нельзя судить о погрешностях результатов, но можно уточнить решение системы, вычислив поправки для найденных значений неизвестных.
3. Вычисление определителей матриц
Приступая к рассмотрению процесса решения системы линейных уравнений методом Гаусса, делается оговорка, что система невырожденная, т.е. её определитель отличен от нуля.
Вычисление определителя может представлять и самостоятельный интерес, т.к. такая задача нередко встречается в высшей математике.
Рассмотрим алгоритм вычисления определителя в связи с решением с.л.а.у. методом Гаусса по схеме единственного деления.
Обозначим определитель системы через D.
Что происходит с ним на каждом шаге реализации метода Гаусса?
1) 13 EMBED Equation.3 1415;
2)13 EMBED Equation.3 1415;
n)13 EMBED Equation.3 1415.
Матрица коэффициентов при неизвестных системы, полученная в результате - треугольная, с единицами по главной диагонали. Поэтому её определитель равен 1.
Практический вывод:
Если необходимо вычислить определитель некоторой квадратной матрицы, надо решить систему уравнений с этой матрицей и произвольной правой частью и воспользоваться формулой:13 EMBED Equation.3 1415.
4. Применение метода Гаусса для вычисления обратной матрицы
Схема единственного деления может использоваться также и для вычисления элементов матрицы 13 EMBED Equation.3 1415, обратной для невырожденной матрицы A. По определению, 13 EMBED Equation.3 1415,где E – единичная матрица.
Представим искомую матрицу 13 EMBED Equation.3 1415и единичную матрицу Е в виде совокупности векторов-столбцов. В такой записи соотношение 13 EMBED Equation.3 1415 предстанет в виде совокупности из n систем линейных уравнений вида 13 EMBED Equation.3 1415.
Решение каждой системы дает соответствующий столбец обратной матрицы.
Расширив таблицу схемы единственного деления, можно проиллюстрировать получение обратной матрицы рассмотренным методом.
5. Пример нахождения обратной матрицы методом Гаусса
Пример: Дана матрица
13 EMBED Equation.3 1415
Найти обратную матрицу, пользуясь схемой единственного деления.
Решение:
Запишем данную и единичную матрицы в одну, и применим, к ним одновременно, элементарные преобразования схемы единственного деления:
13 EMBED Equation.3 1415
Так как, 13 EMBED Equation.3 1415, разделим элементы первой строки на 2,34. Затем из элементов второй строки вычтем элементы первой, умноженные на 8,04, а из элементов третьей - вычтем элементы первой, умноженные на 3,92.
13 EMBED Equation.3 1415.
Теперь элементы второй строки разделим на 19,685. И умножая их на (-0,938), вычтем из элементов третьей строки.
13 EMBED Equation.3 1415.
Элементы третьей строки, разделим на 29,732.
13 EMBED Equation.3 1415.
Из элементов второй строки вычтем элементы третьей, умноженные на 2,0401.
13 EMBED Equation.3 1415.
Из элементов первой строки вычтем элементы третьей, умноженные на (-4,9615).
13 EMBED Equation.3 1415.
Из элементов первой строки вычтем элементы второй, умноженные на (-1,7991).
13 EMBED Equation.3 1415.
Матрица, полученная справа и является искомой обратной матрицей:
13 EMBED Equation.3 1415.
Сделаем прямую проверку:
13 EMBED Equation.3 1415
Поскольку вычисления матрицы 13 EMBED Equation.3 1415велись с округлением, то наличие невязок, отражённых в матрице 13 EMBED Equation.3 1415, является естественным.
Задания практического занятия №3
Задание 1
Дана система трех линейных уравнений с тремя неизвестными:
13 EMBED Equation.3 1415
Решить систему методом Гаусса:
а) используя «ручную» схему единственного деления:
расчеты выполняйте с тремя знаками после запятой (с применением калькулятора);
подставьте найденные решения в исходную систему, вычислите невязки и сравните полученные решения;
выбрав ведущие элементы схемы единственного деления, найдите значения определителя системы;
для матрицы системы, по схеме единственного деления, найдите обратную матрицу.
б) с помощью программы для ЭВМ с пооперационным учетом ошибок.
Задание 2
Решите систему, используя одно из инструментальных средств (MS Excel). Сопоставьте найденное решение с решениями, полученными при выполнении задания 1.
Контрольные вопросы
Какие методы решения с.л.а.у. вы знаете?
В чем заключается прямой и обратный ход в схеме единственного деления?
На чем основываются подходы к организации контроля вычислений в прямом ходе, обратном ходе?
На чем основываются алгоритмы вычисления определителя по методу Гаусса?
Каким образом схема единственного деления может использоваться для вычисления обратной матрицы?
Номер варианта
i
ai1
ai2
ai3
bi
1
1
2
3
0,21
0,30
0,60
-0,45
0,25
-0,35
-0,20
0,43
-0,25
1,91
0,32
1,83
2
1
2
3
-3
0,5
0,5
0,5
-6,0
0,5
0,5
0,5
-3
-56,5
-100
-210
3
1
2
3
0,45
-
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
·
Решение системы уравнений методом Гаусса - MS Office Excel
Для того чтобы решить данную систему уравнений в Excel, нужно выполнить следующие действия:
Заполнить ячейки следующим образом (обратить внимание на названия и номера столбцов при заполнении - они должны быть такими же, как на рисунке):
В ячейку E1 ввести текст Контрольные суммы, а в F1 – Строчные суммы.
В ячейку E2 ввести формулу =СУММ(A2:D2) (для подсчета контрольных сумм) и методом протягивания заполнить ячейки E3, E4.
После этого необходимо выполнить "Прямой ход" - преобразование исходной системы к системе с треугольной матрицей, на главной диагонали которой стоят единицы. Для этого нужно выполнить следующие действия:
Чтобы коэффициент при x1 равнялся 1, нужно в ячейку A5 ввести формулу =A2/$A$2, затем методом протягивания скопировать ее в ячейки B5:D5.
Над столбцом контрольных сумм необходимо выполнить те же действия, что и над коэффициентами при неизвестных, следовательно в ячейку E5 нужно ввести формулу =E2/$A$2.
В ячейку F6 ввести формулу =СУММ(A5:D5) (для подсчета строчных сумм).
В ячейку A6 ввести формулу =A3-$A$3*A5 (для обнуления коэффициента при x1 во втором уравнении системы), заполнить этой формулой методом протягивания диапазон ячеек B6:E6.
В ячейку A7 ввести формулу =A4-A5*$A$4 (для обнуления коэффициента при x1 в третьем уравнении системы), заполнить этой формулой методом протягивания диапазон ячеек B7:E7.
В ячейку B8 ввести формулу =B6/$B$6, заполнить этой формулой методом протягивания диапазон ячеек C8:E8.
В ячейку B9 ввести формулу =B7-B8*$B$7, заполнить этой формулой методом протягивания диапазон ячеек C9:E9.
В ячейку C10 ввести формулу =C9/$C$9, скопировать эту формулу в диапазон ячеек D10:E10.
Формулой из ячейки F5 методом протягивания заполнить ячейки F6:F10 (следует обратить внимание на то, что значения в столбцах строчных и контрольных сумм попарно равны).
После этого необходимо выполнить "Обратный ход" - последовательное нахождение значений x3, x2, x1. Для этого нужно выполнить следующие действия:
В ячейки C11, B12, A13 ввести единицы.
В ячейку D11 ввести формулу =D10 и скопировать ее в ячейку E11.
В ячейку F11 ввести формулу =A11+B11+C11+D11.
В ячейку D12 ввести формулу =D8-C8*D11.
В ячейку E12 ввести формулу =E8-C8*E11.
В ячейку D13 ввести формулу =D5-C5*D11-B5*D12.
В ячейку E13 ввести формулу =E5-C5*E11-B5*E12.
Формулу из ячейки F11 скопировать диапазон ячеек F12:F13.
Таким образом, получены x3, x2, x1. Для проверки правильности решения задачи необходимо выполнить следующие действия:
Диапазон ячеек A15:A18 последовательно заполнить следующими словами: проверка, 1 уравнение, 2 уравнение, 3 уравнение.
В ячейку C16 ввести формулу =A2*$D$13+B2*$D$12+C2*$D$11, затем скопировать ее в диапазон ячеек C17:C18.
Нужно обратить внимание, что полученный результат в ячейках C17:C18 полностью совпадает с ячейками D2:D4, следовательно, задача решена верно.
Таким образом, получаем следующее:
Ответ: x1=3.333, x2 =3.561, x3 =3.782.
Практическое занятие №5
«Решение систем линейных алгебраических уравнений приближенными методами: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
Цель занятия:
закрепить усвоение теоретического материала по данной теме через решение упражнений;
закрепить умения решать системы линейных уравнений приближенными методами(метод простой итерации, метод Зейделя).
Теоретический материал и методические указания к выполнению заданий
1. Метод простой итерации
Как отмечалось ранее, итерационные методы используются для решения уравнений и систем любой природы. Рассмотрим, как это делается применительно к системам линейных алгебраических уравнений.
Приведём систему линейных алгебраических уравнений (2.7)
13 EMBED Equation.3 1415
к равносильной ей системе вида x=Ax:
13 EMBED Equation.3 1415 (2.10)
В сокращенной форме: 13 EMBED Equation.3 1415.
О системе (2.10) говорят, что она «приведена к нормальному виду».
Правая часть системы определяет отображение 13 EMBED Equation.3 1415 (2.11),
переводящее точку 13 EMBED Equation.3 1415 в точку 13 EMBED Equation.3 1415. Используя отображения (2.11) и выбрав начальную точку13 EMBED Equation.3 1415 можно построить итерационную последовательность точек.
Если отображение F является сжимающим, то эта последовательность сходится и её предел является решением системы (2.10) а, следовательно, и решением исходной системы (2.7).
Замечание: Отображение является сжимающим, если расстояние между образами меньше, чем расстояние между исходными точками.
Для отображения (2.11) необходимым и достаточным условием сжимаемости является следующее: 13 EMBED Equation.3 1415, (2.12), т.е. максимальная из сумм модулей коэффициентов при неизвестных в правой части системы (2.10), взятых по столбцам, должен быть меньше 1.
Практическая схема решения с.л.у. методом простой итерации
С.л.у. (2.7) необходимо привести к нормальному виду (2.10).
Для обеспечения сходимости итерационной последовательности необходимо, чтобы коэффициенты 13 EMBED Equation.3 1415 при неизвестных в правой части системы были существенно меньше 1.
Этого можно достичь, если исходную систему (2.7) с помощью равносильных преобразований привести к системе, у которой абсолютная величина коэффициентов, стоящих на главной диагонали, больше абсолютных величин каждого из других коэффициентов, стоящих при неизвестных в соответствующих уровнях (такую систему называют системой с преобладающими диагональными коэффициентами). Если теперь разделить все уравнения на соответствующие диагональные коэффициенты и выразить из каждого уравнения неизвестное с коэффициентом, равным 1, будет получена система (2.10), у которой все 13 EMBED Equation.3 1415.
Для проверки точности решения используем условие (2.12).
2. Пример решения систем линейных уравнений методом простой итерации
Пример: Решить систему линейных уравнений
13 EMBED Equation.3 1415
методом простой итерации с точностью 13 EMBED Equation.3 1415.
Решение:
Построим систему с преобладающими диагональными коэффициентами.
В качестве 1-ого уравнения возьмем 2-ое, в качестве 3-его уравнения – 1-ое, в качестве 2-ого уравнения – сумму 1-го и 2-го уравнений:
13 EMBED Equation.3 1415
Разделим каждое из полученных уравнений на диагональный коэффициент и, выразим из каждого уравнения диагональные элементы:
13 EMBED Equation.3 1415
Проверку условия сходимости (2.12) и точности решения осуществим с помощью программы.
3. Метод Зейделя
Будем снова рассматривать систему линейных уравнений (2.7) и эквивалентную ей систему (2.10).
При решении системы (2.10) методом простой итерации каждый шаг итерационного процесса состоит в переходе от уже имеющегося приближения значений неизвестных к новому (очередному) приближению.
Обозначим элементы имеющегося приближения через 13 EMBED Equation.3 1415, а элементы очередного (вычисляемого) приближения через 13 EMBED Equation.3 1415 .
Вычислительные формулы имеют вид:
13 EMBED Equation.3 1415
Основная идея метода Зейделя состоит в том, что на каждом шаге итерационного процесса при вычислении значения 13 EMBED Equation.3 1415 учитываются уже полученные значения13 EMBED Equation.3 1415. Выпишем соответствующие вычислительные формулы:
13 EMBED Equation.3 1415
Справедливо следующее утверждение:
Если для матрицы коэффициентов системы (2.10) выполняется условие (2.12), то итерационный процесс метода Зейделя сходится к решению системы при любом выборе начального приближения 13 EMBED Equation.3 1415.
Преимущество этого метода состоит в том, что он обеспечивает более быструю схожесть, чем метод простой итерации.
Пример:
№
Матрица системы
Правая часть
1
0,401
0,301
0,000
0,000
0,122
-0,029
-0,500
-0,018
0,000
-0,253
0,000
-0,050
-1,400
-0,039
-0,988
0,000
0,000
-0,007
-2,300
-2,082
Решение:
Метод прогонки
Решим систему линейных уравнений методом прогонки.
Он является модификацией метода Гаусса для частного случая системы уравнений с трехдиагональной матрицей, которые имеют следующий вид:
[ Cкачайте файл, чтобы посмотреть картинку ]
13 EMBED Equation.3 1415
Заданная система имеет трехдиагональную матрицу четвертого порядка и ее можно решать методом прогонки.
Из вида систему следует, что 13 EMBED Equation.3 1415. Следовательно система имеет единственное решение и для ее решения можно применить метод прогонки.
Прямой ход прогонки.
Вычислим прогоночные коэффициенты:
Вычислим знаменатель
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415
Обратный ход прогонки.
Находим значения неизвестных:
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
Ответ: 13 EMBED Equation.3 1415
Итерационный метод
Метод Гаусса-Зейделя
Решим систему методом Гаусса-Зейделя
13 EMBED Equation.3 1415
Запишем исходную систем
·у в виде:
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
В качестве начальных приближений возьмем нули, т.е. примем
x2(0) = x3(0)= x4(0)= 0.
Найдем значения неизвестных на первой итерации:
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
Далее произведем вторую итерацию:
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
Проверим точность:
13 EMBED Equation.3 1415
Точность не достигнута.
Произведем третью итерацию:
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
Проверим точность:
13 EMBED Equation.3 1415
Точность не достигнута.
Произведем четвертую итерацию:
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
Проверим точность:
13 EMBED Equation.3 1415
Точность достигнута.
Решение системы с точностью 0,001:
13 EMBED Equation.3 1415
Сравнение результатов
Метод
Х1
Х2
Х3
Х4
Гаусса-Зейделя
-0,060
0,486
0,663
0,903
Прогонки
-0,060
0,486
0,663
0,907
Задания практического занятия №5
Решить систему линейных уравнений, коэффициенты которой приведены в таблице заданий методами прогонки, итерационным методом. Предварительно привести систему к треугольному виду.
Решить систему на ЭВМ с помощью этих методов систему уравнений сравнить результаты.
Вариант
Матрица системы
Правая часть
1
-1,700
0,003
0,000
0,000
0,681
0,002
0,800
0,001
0,000
0,480
0,000
-0,002
-0,100
0,030
-0,802
0,000
0,000
-0,003
-1,600
-1,007
Матрица системы
Правая часть
2
-3,000
0,001
0,000
0,000
1,514
-0,011
2,100
0,520
0,000
1,478
0,000
0,005
1,200
0,600
1,083
0,000
0,000
-0,010
-0,300
-1,007
Матрица системы
Правая часть
3
4,300
0,217
0,000
0,000
2,663
0,100
-3,400
-0,207
0,000
2,778
0,000
0,090
2,500
0,197
2,533
0,000
0,000
0,080
-1,600
1,928
Матрица системы
Правая часть
4
-5,600
0,268
0,000
0,000
4,032
0,147
4,700
0,271
0,000
4,313
0,000
-0,150
-3,800
0,274
4,235
0,000
0,000
0,153
2,900
3,797
Матрица системы
Правая часть
5
-8,200
0,370
0,000
0,000
7,559
0,234
7,300
5,600
0,000
8,175
0,000
0,260
-0,340
0,422
8,421
0,000
0,000
0,268
5,500
8,322
Матрица системы
Правая часть
6
9,500
0,422
0,000
0,000
9,719
0,278
8,601
0,459
0,000
10,500
0,000
0,315
7,700
0,496
10,915
0,000
0,000
0,351
6,803
10,978
Матрица системы
Правая часть
7
10,800
-0,576
0,000
0,000
12,143
0,321
9,900
7,300
0,000
13,089
0,000
0,369
9,000
-6,060
13,674
0,000
0,000
0,416
8,100
13,897
Матрица системы
Правая часть
8
-1,100
0,528
0,000
0,000
14,830
0,365
0,113
0,536
0,000
15,941
0,000
-0,423
1,031
0,534
16,969
0,000
0,000
0,481
-0,570
17,081
Матрица системы
Правая часть
9
13,400
0,581
0,000
0,000
17,782
-0,408
12,500
-0,650
0,000
19,593
0,000
0,477
-11,600
0,781
19,974
0,000
0,000
0,546
10,700
20,528
Матрица системы
Правая часть
10
30,300
0,153
0,000
0,000
80,168
0,975
-29,400
0,011
0,000
83,578
0,000
0,117
-2,500
1,660
86,609
0,000
0,000
10,700
27,600
89,278
Матрица системы
Правая часть
11
0,161
0,332
0,000
0,000
86,814
0,109
-0,301
-0,150
0,000
90,358
0,000
-0,060
0,171
0,051
19,861
0,000
0,000
0,145
-0,298
93,502
Матрица системы
Правая часть
12
13,400
0,581
0,000
0,000
17,782
-0,408
12,500
-0,650
0,000
19,593
0,000
0,477
-11,600
0,781
19,974
0,000
0,000
0,546
10,700
20,528
Контрольные вопросы
Каким образом система линейных уравнений преобразуется к итерационному виду?
Как сформулировать условие сходимости итерационного процесса
Как привести исходную систему линейных уравнений к системе с преобладающими диагональными элементами?
Постройте блок-схему решения системы линейных уравнений методом простой итерации.
В чем состоит отличие метода Зейделя от аналогичного процесса простой итерации?
Постройте блок-схему решения системы линейных уравнений методом Зейделя.
Практическое занятие №6
«Составление интерполяционных формул Лагранжа и Ньютона: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
Цель занятия:
закрепить усвоение теоретического материала по данной теме через решение упражнений;
закрепить умения составлять интерполяционные формулы Лагранжа.
Теоретический материал и методические указания к выполнению заданий
1. Постановка задачи аппроксимации функций
В вычислительной математике нередки случаи, когда одну функцию приходится заменять другой, более другой и удобной для дальнейшей работы. Такую задачу называют аппроксимацией функций.
Поводом для аппроксимации функции может послужить, в частности, табличный способ её задания. Предположим, что результате некоторого эксперимента для конечного набора значений 13 EMBED Equation.3 1415 величины x из отрезка [a;b]: 13 EMBED Equation.3 1415
получен набор значений 13 EMBED Equation.3 1415 величины у (таблица 3.1).
таблица 3.1
x
x13 EMBED Equation.3 1415
x13 EMBED Equation.3 1415
x13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
F(x)
y13 EMBED Equation.3 1415
y13 EMBED Equation.3 1415
y13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
Допустим, существует функциональная зависимость y=F(x).
Необходимо задать F(x) аналитически.
Точки 13 EMBED Equation.3 1415называют узлами аппроксимации.
Классический подход к численному решению подобных задач заключается в том, чтобы, опираясь на информацию о функции F, по некоторому алгоритму подобрать аппроксимирующую функцию G, в определенном смысле «близкую» к F.
Чаще всего задача аппроксимации решается с помощью многочленов. Вычисления значений многочлена легко автоматизировать, производная и интеграл от многочлена, в свою очередь, также являются многочленами.
Для оценки «близости» функций выбирают тот или иной критерий согласия.
Для функций, заданных таблично, достаточно распространенным является критерий Чебышева, который определяет расстояние13 EMBED Equation.3 1415 между аппроксимируемой и аппроксимирующей функциями как максимум величины отклонения между этими функциями в узлах: 13 EMBED Equation.3 1415 (3.1)
Если 13 EMBED Equation.3 1415=0, т.е. 13 EMBED Equation.3 1415(в узлах значения совпадают), то соответствующий способ аппроксимации называют интерполяцией, а процедуру вычисления значений F(x) с помощью G(x) в точках, не являющихся узлами сетки, - интерполированием.
Часто процедура аппроксимации связана с другим критерием согласия:
13 EMBED Equation.3 1415.
Применяемый на его основе способ аппроксимации называется методом наименьших квадратов.
2. Существование и единственность интерполяционного многочлена
Пусть известны значения некоторой функции F(x):
x
x13 EMBED Equation.3 1415
x13 EMBED Equation.3 1415
x13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
F(x)
y13 EMBED Equation.3 1415
y13 EMBED Equation.3 1415
y13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
Будем решать задачу интерполирования этой функции с помощью построения интерполяционного многочлена n-ой степени.
13 EMBED Equation.3 1415 (3.2)
который в узлах 13 EMBED Equation.3 1415 принимает значения 13 EMBED Equation.3 1415
13 EMBED Equation.3 1415 (3.3)
Условия интерполяции (3.3) приводят к системе из (n+1) линейных уравнений с (n+1) неизвестными – коэффициентами многочлена:
13 EMBED Equation.3 1415 (3.4)
Решая эту с.л.у. относительно 13 EMBED Equation.3 1415 получим аналитическое выражение многочлена (3.2).
Система (3.4) всегда будет иметь единственное решение, поскольку ее определитель не будет равен нулю. Отсюда и вытекает существование и единственность решения системы (3.4) и, следовательно, многочлена (3.2).
Интерполяция стандартно производится многочленами, степень которых на единицу меньше числа узлов.
3. Интерполяционный многочлен Лагранжа
Пусть функция F(x) задана таблицей (3.1).
Построим многочлен Ln(x), степень которого не выше, чем n, и для которого выполнены условия интерполяции
13 EMBED Equation.3 1415 (3.5)
Будем искать Ln(x) в виде
13 EMBED Equation.3 1415 (3.6),
где 13 EMBED Equation.3 1415- многочлен степени n, причем
13 EMBED Equation.3 1415 (3.7).
Очевидно, что требования (3.7) с учётом (3.6) вполне обеспечивает выполнение условий (3.5). Многочлен 13 EMBED Equation.3 1415составим следующим образом:
13 EMBED Equation.3 1415 (3.8)
13 EMBED Equation.3 1415- коэффициент, значение которого найдем из первой части условия (3.7):
13 EMBED Equation.3 1415
Подставим 13 EMBED Equation.3 1415 в (3.8) и далее с учётом (3.6) получим:
13 EMBED Equation.3 1415 (3.9)
Это и есть интерполяционный многочлен Лагранжа.
По таблице исходной функции F формула (3.9) позволяет довольно просто составить «внешний вид» многочлена.
Пример: Построить интерполяционный многочлен для функции, заданной таблицей значений:
х
1
3
4
F(x)
12
4
6
Решение:
Из таблицы следует, что n=2 (на 1 меньше, чем узлов).
13 EMBED Equation.3 1415
По формуле (3.9) получаем:
13 EMBED Equation.3 1415
Таким образом, интерполяционный многочлен для заданной функции имеет вид 13 EMBED Equation.3 1415
Построим график13 EMBED Equation.3 1415 и точки в одной координатной плоскости.
Задания практического занятия №6
Задание 1. По заданной таблице значений функции
х
х0
х1
х2
х3
у
у0
у1
у2
у3
составить формулу интерполяционного многочлена Лагранжа. Построить его график и отметить на нем узловые точки.
Задание 2. Вычислить с помощью калькулятора одно значение заданной функции для промежуточного значения аргумента с помощью интерполяционного многочлена Лагранжа и оценить погрешность интерполяции.
Задание 3. Составить программу вычисления значения функции в точке, используя интерполяционный многочлен Лагранжа.
Задание 4. Сравнить результаты заданий 2 и 3.
Таблица 1
Вариант
х0
х1
х2
х3
у0
у1
у2
у3
х
1
-1
0
3
4
-3
5
2
-6
3,8
2
2
3
5
6
4
1
7
2
3,5
3
0
2
3
5
-1
-4
2
-8
0,5
4
7
9
13
15
2
-2
3
-4
4,8
5
-3
-1
3
5
7
-1
4
-6
4,1
6
1
2
4
7
-3
-7
2
8
3,9
7
-1
-1
2
4
4
9
1
6
3,3
8
2
4
5
7
9
-3
6
-2
4,0
9
-4
-2
0
3
2
8
5
10
2,9
10
-1
1,5
3
5
4
-7
1
-8
5,3
11
2
4
7
8
-1
-6
3
12
4,1
12
-9
-7
-4
-1
3
-3
4
-9
7,6
13
0
1
4
6
7
-1
8
2
4,4
14
-8
-5
0
2
9
-2
4
6
2,5
15
-7
-5
-4
-1
4
-4
5
10
5,2
Контрольные вопросы
В каких случаях может потребоваться аппроксимация функции?
Какими критериями пользуются для определения «близости» функции?
На чем основывается доказательство существования и единственности интерполяционного многочлена для таблично заданной функции?
В какой форме строится интерполяционный многочлен Лагранжа?
Практическое занятие №7
«Интерполирование сплайнами: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
Цель занятия:
закрепить умения интерполировать функцию сплайнами и находить ее значение в заданной точке.
Овладение вычислительными методами и практическими методами оценки погрешности вычислений.
Приобретение умений и навыков при программировании и отладке вычислительных задач на компьютере
Теоретический материал и методические указания к выполнению заданий
Интерполяция сплайнами
При большом количестве узлов интерполяции сильно возрастает степень интерполяционных многочленов, что делает их неудобными для вычислений.
Высокой степени многочлена можно избежать, разбив отрезок интерполяции на несколько частей, с последующим построением на каждой части самостоятельного интерполяционного многочлена.
Однако такое интерполирование наталкивается на существенный недостаток: в точках стыка разных интерполяционных многочленов бывает разрывной их первая производная.
В этом случае удобно пользоваться особым видом кусочно-полиномиальной интерполяции - интерполяции сплайнами.
Суть этого подхода заключается в следующем:
Определение: Функция Sm (x) называется интерполяционным сплайном порядка m для функции f(x), заданной таблицей:
x
x13 EMBED Equation.3 1415
x13 EMBED Equation.3 1415
x13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
y
y13 EMBED Equation.3 1415
y13 EMBED Equation.3 1415
y13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
если:
на каждом отрезке [xi ; xi+1] (i=0,,n-1) S(x) является многочленом порядка m;
S(x) и её производная до (m-1)-го порядка включительно непрерывны на [x0 ; xn];
S(xi)=yi (i=0,,n) - непосредственно условие интерполяции.
Остановимся на построении наиболее популярных в практике аппроксимации функций кубических сплайнов.
По определению кубический сплайн S(x) можно представить в виде
13 EMBED Equation.3 1415 (3.17)
Где каждый из 13 EMBED Equation.3 1415 - многочлен третьей степени:
13 EMBED Equation.3 1415 . (3.18)
Коэффициенты 13 EMBED Equation.3 1415 найдем из условия: 13 EMBED Equation.3 1415, т.е.
13 EMBED Equation.3 1415 (3.19)
Условие непрерывности S(x) в каждом узле приводит к равенствам:
13 EMBED Equation.3 1415
В развернутом виде с учетом формулы (3.18) эти равенства примут вид:
13 EMBED Equation.3 1415 (3.20)
Введем обозначения: 13 EMBED Equation.3 1415
Понижая в равенстве (3.20) индекс на единицу (меняем i на i-1) и, учитывая (3.19), получим:
13 EMBED Equation.3 1415 (3.21)
Условие непрерывности первой производной кубического сплайна сводится к требованию 13 EMBED Equation.3 1415
Тогда дифференцируя формулу (3.18) и используя, введите обозначения, получим:
13 EMBED Equation.3 1415 13 EMBED Equation.3 1415) (3.22)
Из условия непрерывности второй производной: 13 EMBED Equation.3 1415получим:
13 EMBED Equation.3 1415 13 EMBED Equation.3 1415) (3.23)
Составим систему из равенств (3.21)-(3.23) и, решив её, найдем коэффициенты 13 EMBED Equation.3 1415.
Однако, для однозначной ее разрешимости добавим условия непрерывности на концах отрезка: 13 EMBED Equation.3 1415, 13 EMBED Equation.3 1415 т.е.
13 EMBED Equation.3 1415 (3.24)
В результате получаем систему уравнений:
13 EMBED Equation.3 1415
Последовательно, исключая переменные получим
13 EMBED Equation.3 1415 (3.25)
(это уравнение содержит лишь неизвестные 13 EMBED Equation.3 1415).
13 EMBED Equation.3 1415 (3.26)
(это уравнение содержит лишь неизвестные 13 EMBED Equation.3 1415).
13 EMBED Equation.3 1415 (3.27)
(это уравнение содержит лишь неизвестные 13 EMBED Equation.3 1415).
Построив кубический сплайн, найдем оценку погрешности интерполяции:
13 EMBED Equation.3 1415,
где 13 EMBED Equation.3 1415 - промежуток интерполяции.
Пример построения кубического сплайна для функции y=f(x), заданной таблично
Пример: Построить кубический сплайн для функции y=f(x), заданной таблицей:
13 EMBED Equation.3 1415
-1
0
1
2
13 EMBED Equation.3 1415
1/2
1
2
4
с дополнительным условием: 13 EMBED Equation.3 1415. Найти с помощью S(x) значения функции при x=0,3. (Заметим, что в основу таблицы положена функция у =2x).
Решение: 13 EMBED Equation.3 1415 (т.к. не используется в функциях) и 13 EMBED Equation.3 1415 (т.к. из условия (3.24):13 EMBED Equation.3 1415).
Шаг таблицы 13 EMBED Equation.3 1415.
из (3.25) получаем:
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
Из (3.26) имеем:
13 EMBED Equation.3 1415 ,
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415.
Из (3.27) имеем:
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415.
из формулы (3.28) получаем:
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415 13 EMBED Equation.3 1415.
13 EMBED Equation.3 1415,13 EMBED Equation.3 1415
13 EMBED Equation.3 1415, 13 EMBED Equation.3 1415
Следовательно, сплайн S(x) построен:
13 EMBED Equation.3 1415
Найдем его значение при x=0,3:
Заметим, что 0,313 EMBED Equation.3 1415[0;1], поэтому используем многочлен 13 EMBED Equation.3 1415:
13 EMBED Equation.3 1415.
Отметим для сопоставления с той же точностью значение функции, положенной в основу данного примера:13 EMBED Equation.3 1415.
Интерполяция сплайнами сопряжена с немалым объемом вычислительной работы. Весьма необычна и форма окончательного результата, ибо сплайн имеет различные представления на различных частичных отрезках интерполяции. Это осложняет доступ к значениям сплайна в каждой конкретной точке, так как предполагает, прежде всего, поиск параметров, определяющих соответствующую форму сплайна. Эти трудности легко предотвратимы при использовании компьютера, так как упорядоченное хранение всех необходимых параметров организовать нетрудно, а выполнение однотипных процедур по вычислению параметров сплайна и его значений может быть обеспечено специальными процедурами.
Задания практического занятия №7
Задание 1. По заданной таблице значений функции
х
х0
х1
х2
х3
у
у0
у1
у2
у3
вычислить коэффициенты и составить формулы кубического сплайна.
Задание 2. Результат интерполирования проверить путем вычисления значений сплайна в узловых точках.
Задание 3. Составить программу вычисления значения функции в точке, используя интерполяцию сплайнами.
Задание 4. Сравнить результаты заданий 1 и 5.
Таблица 1
Вариант
х0
х1
х2
х3
у0
у1
у2
у3
х
1
-1
0
1
2
-3
5
2
-6
3,8
2
2
3
4
5
4
1
7
2
3,5
3
0
2
4
6
-1
-4
2
-8
0,5
4
7
9
11
13
2
-2
3
-4
4,8
5
-3
-1
1
3
7
-1
4
-6
4,1
6
1
2
3
4
-3
-7
2
8
3,9
7
-1
1
3
5
4
9
1
6
3,3
8
2
4
6
7
9
-3
6
-2
4,0
9
-4
-2
0
2
2
8
5
10
2,9
10
-1
0
1
2
4
-7
1
-8
5,3
11
2
4
6
8
-1
-6
3
12
4,1
12
-9
-7
-5
-3
3
-3
4
-9
7,6
13
0
1
2
3
7
-1
8
2
4,4
14
-8
-7
-6
-5
9
-2
4
6
2,5
15
-7
-5
-3
-1
4
-4
5
10
5,2
Контрольные вопросы:
Как ставится задача интерполяции?
Какие виды интерполяции вы знаете?
В чем суть и геометрический смысл линейной интерполяции?
Как выглядит оценка точности при интерполировании многочленом?
Что можно сказать об оценке погрешности при решении задачи интерполирования непрерывной функции, если не накладывать на нее никаких дополнительных ограничений?
Что такое сплайн-интерполяция и в чем ее суть?
Какие трудности возникают при интерполировании сплайнами?
Практическое занятие №8
«Вычисление интегралов при помощи формул Ньютона-Котеса: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
Цель занятия:
закрепить усвоение теоретического материала по данной теме через решение упражнений;
закрепить умения приближенно вычислять интегралы при помощи формул Ньютона-Котеса (формула прямоугольников, формула трапеций, формула парабол (Симпсона));
Теоретический материал и методические указания к выполнению заданий
Подстановка задачи численного интеграла
При вычислении определенного интеграла
13 EMBED Equation.3 1415 ,
где f(x) - функция непрерывная на отрезке [a,b] используется формула Ньютона - Лейбница:
13 EMBED Equation.3 1415 (4.1)
Однако бывают случаи, когда первообразную F(x) нельзя найти, или не всегда удается довести вычисления до числового значения. Иногда подынтегральная функция может быть задана таблично или графиком, поэтому формула (4.1) не исчерпывает практических приемов вычисления интегралов.
На практике часто применяют различные методы приближенного (численного) интегрирования.
Определение: Формулы, используемые для приближенного вычисления интегралов, называют квадратурными формулами.
Простой прием построения квадратурных формул состоит в том, что подынтегральная функция f(x) заменяется на отрезке [a;b] интерполяционным многочленом Лагранжа Ln(x), и тогда:
13 EMBED Equation.3 1415 . (4.2)
Подобный подход удобен тем, что он приводит к алгоритмам, легко реализуемым на компьютере, и позволяющим получать результат с точностью, достаточной для широкого круга практических приложении.
Метод прямоугольников
Для вычисления определенного интеграла 13 EMBED Equation.3 1415 отрезок [a;b] разбивают на n криволинейную трапецию, заменяют прямоугольником с основанием 13 EMBED Equation.3 1415, и высотой 13 EMBED Equation.3 1415 соответственно.
Данный подход к решению задачи дает площадь криволинейной трапеции, т.е. значение определенного интеграла с недостатком
13 EMBED Equation.3 1415. (4.5)
Формула (4.5) называется формулой прямоугольников с недостатком.
Аналогично можно получить формулу для вычисления определенного интеграла с избытком.
13 EMBED Equation.3 1415 (4.6)
Формула (4.6) называется формулой прямоугольников с избытком.
где значение
13 EMBED Equation.3 1415 13 EMBED Equation.3 1415. (4.7)
Пример: Вычислить по формуле прямоугольников интеграл
13 EMBED Equation.3 1415 (n=5).
Решение:
Имеем a=0, 13 EMBED Equation.3 1415 , 13 EMBED Equation.3 1415.
Тогда 13 EMBED Equation.3 1415
Вычислим значение функции по формуле (4.7):
13 EMBED Equation.3 1415
Применяя формулу прямоугольника с недостатком (4.2) получим
13 EMBED Equation.3 1415
Вычислим данный интеграл по формуле Ньютона - Лейбница и сравним результаты:
13 EMBED Equation.3 1415
Относительная погрешность вычисления:
13 EMBED Equation.3 1415.
Метод трапеций
Геометрический смысл этого метода практического вычисления определенного интеграла состоит в том, что нахождение площади криволинейной трапеции заменяется нахождением площади приблизительно равновеликой прямолинейной трапеции.
13 EMBED Equation.3 1415 (4.8)
Для повышения точности результата разобьём фигуру на n частей, а затем суммируем площади получившихся трапеций:
13 EMBED Equation.3 1415 (4.9)
где 13 EMBED Equation.3 1415.
Формула (4.9) называется формулой трапеций.
Пример: По формуле трапеции вычислить интеграл
13 EMBED Equation.3 1415 (n=5).
Решение: Имеем a=0, b=5, 13 EMBED Equation.3 1415, 13 EMBED Equation.3 1415.
Вычислим промежуточные значения функции в узлах:
13 EMBED Equation.3 1415
Тогда по формуле трапеций (4.9) имеем:
13 EMBED Equation.3 1415.
Метод парабол
Замена подынтегральной функции f(x) параболой, проходящей через точки Mi(xi ; yi), (i=0,1,2) позволяет получать более точное значение определенного интеграла.
Если считать, что n - четное (n=2m), то получим:
13 EMBED Equation.3 1415 (4.10)
где 13 EMBED Equation.3 1415.
Формула (4.10) называется формулой парабол или формулой Симпсона.
Для оценки погрешности формулы Симпсона применяется формула
13 EMBED Equation.3 1415, (4.11)
Как следует из оценки, формула Симпсона, оказывается точной для многочленов до 3-ей степени включительно. Так как для этих случаев производная 4-го порядка равна 0.
Формула Симпсона обладает повышенной точностью по сравнению с формулой трапеций, это обозначает, что для достижения той же точности, что и в формуле трапеций, в ней можно брать меньшее число n - отрезков разбиения. Последнее обстоятельство весьма важно для вычислений. Поскольку основное время затрачивается на нахождение значений функции в узлах. Укажем простой практический прием, позволяющий прогнозировать требуемое число отрезков разбиения по заданной точности13 EMBED Equation.3 1415.
13 EMBED Equation.3 1415, (4.12)
Пример: Вычислить интеграл по формуле парабол
13 EMBED Equation.3 1415, (n=10).
Решение: Значения подынтегральной функции в узловых точках запишем в таблицу:
xi
13 EMBED Equation.3 1415
0
0
0,1
0,0019966
0,2
0,0079467
0,3
0,0531936
0,4
0,0623068
0,5
0,2397124
0,6
0,2032711
0,7
0,6313333
0,8
0,4591078
0,9
1,2689896
1
0,841478
Подставим найденные значения в формулу Симпсона, учитывая, что h=0,1:
13 EMBED Equation.3 1415
В данном случае легко вычислить «точное» значение этого интеграла, пользуясь формулой Ньютона - Лейбница
13 EMBED Equation.3 1415.
Как видим, результат, полученный с помощью приближенной формулы парабол, дает высокую точность.
Задания практического занятия №8
Задание 1.
Вычислить интеграл от заданной функции f(x) на отрезке [a;b] при делении отрезка на 10 равных частей тремя способами:
по формуле прямоугольников;
по формуле трапеций;
по формуле Симпсона;
Сравнить точность полученных результатов.
Задание 2.
С помощью программ на компьютере вычислить значение интеграла заданной функции на отрезке [a;b]:
по формуле прямоугольников;
по формуле трапеций;
по формуле Симпсона.
Задание 3.
Вычислить интеграл вручную по формуле Ньютона-Лейбница
Сравнить полученные результаты с результатами, полученными при выполнении задания 1 и 2.
Таблица 1
Вариант
f(x)
a
b
1
13 EMBED Equation.3 1415
1
2
2
13 EMBED Equation.3 1415
1
2
3
13 EMBED Equation.3 1415
2
3
4
13 EMBED Equation.3 1415
1
2
5
13 EMBED Equation.3 1415
1.2
2.2
6
13 EMBED Equation.3 1415
0.5
1.5
7
13 EMBED Equation.3 1415
2
3
8
13 EMBED Equation.3 1415
3
4
9
13 EMBED Equation.3 1415
1
2
10
13 EMBED Equation.3 1415
-1
0
11
13 EMBED Equation.3 1415
-0.5
0.5
12
13 EMBED Equation.3 1415
0,1
1,1
13
13 EMBED Equation.3 1415
0.2
1.2
14
13 EMBED Equation.3 1415
1.5
2.5
15
13 EMBED Equation.3 1415
0.1
1.1
Контрольные вопросы
Почему формула Ньютона-Котеса может оказаться непригодной для реального вычисления определенного интеграла?
Как связаны задачи численного интегрирования и интерполирования?
Чем объясняется название формулы прямоугольников?
Чем объясняется название формулы трапеций?
В чем выражается преимущества формулы Симпсона перед формулой трапеций?
Каким образом при использовании формулы парабол можно рассчитать требуемое число отрезков разбиения для достижения заданной точности интегрирования 13 EMBED Equation.3 1415?
Практическое занятие №9
«Вычисление интегралов при помощи формул Гаусса: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
Цель занятия:
закрепить усвоение теоретического материала по данной теме через решение упражнений;
получить умения приближенно вычислять интегралы при помощи формул Ньютона-Котеса (формулаГаусса);
Теоретический материал и методические указания к выполнению заданий
Квадратные формулы Гаусса
Существует подход к построению квадратурных формул, в котором главную роль играет выбор узлов для интерполирования подынтегральной функции, называемый методом Гаусса.
При получении квадратных формул Гаусса в исходном интеграле выполняется замена переменной, переводящая интеграл по отрезку [a;b] в интеграл по отрезку [-1;1].
13 EMBED Equation.3 1415или 13 EMBED Equation.3 1415 (4.13)
Тогда
13 EMBED Equation.3 1415 (4.14)
Последний интеграл обозначим 13 EMBED Equation.3 1415и можно далее, развивать метод Гаусса применительно к нему.
Для разъяснения существа метода Гаусса будем использовать простейшую (линейную) интерполяцию подынтегральной функции:
Если в качестве узлов интерполяции взять концы отрезка [-1;1], то различие в площадях криволинейной трапеции, ограниченной сверху кривой 13 EMBED Equation.3 1415и «обычной» трапеции, ограниченной сверху прямой, проведённой через концы указанной кривой, фиксировано видом функции 13 EMBED Equation.3 1415.
Однако, если сделать узлы интерполяции «подвижными», то можно выбрать их таким образом, чтобы разность между площадями криволинейной и «обычной» трапеции была значительно меньше.
Более того, можно сделать эти площади равными 13 EMBED Equation.3 1415, т.е. аппроксимировать интеграл точно, но для этого необходимо определить точки 13 EMBED Equation.3 1415.
Сформулируем задачу следующим образом:
Выбрать значения 13 EMBED Equation.3 1415 так, чтобы площадь трапеции, ограниченной сверху прямой, проходящей через точки13 EMBED Equation.3 1415, была равна интегралу от любого многочлена некоторой (наивысшей возможной) степени.
Так как положение точек 13 EMBED Equation.3 1415 определяют четыре координаты, то это многочлен может определяться максимум четырьмя коэффициентами, т.е. является многочленом третьей степени.
13 EMBED Equation.3 1415 (4.15)
Легко установить, что уравнение прямой, проходящей через точки 13 EMBED Equation.3 1415 имеет вид: 13 EMBED Equation.3 1415, (4.16)
где 13 EMBED Equation.3 1415.
Будем выбирать 13 EMBED Equation.3 1415так, чтобы равенство
13 EMBED Equation.3 1415 (4.17)
имело место при любых 13 EMBED Equation.3 1415.
Вычисляя значения 13 EMBED Equation.3 1415, получим:
Если взять узлами линейной интерполяции числа13 EMBED Equation.3 1415 (4.18) ,то интеграл, вычисленный по формуле13 EMBED Equation.3 1415,точно совпадает с интегралом от любого многочлена третьей степени.
Вычислив интеграл по указанной формуле с учётом (4.18), получим
13 EMBED Equation.3 1415 (4.19)
Формула (4.19) и называется квадратурной формулой Гаусса.
С учетом формулы (4.14) формула Гаусса примет вид:
13 EMBED Equation.3 1415 (4.20)
Оценка погрешности вычисления интеграла по формуле (4.19) проводится по формуле:
13 EMBED Equation.3 141513 EMBED Equation.3 1415 (4.21)
Для повышения точности результата отрезок [a;b] разделим на n частей и применим формулу (4.20) на каждом из них.
Получим формулу для вычисления интеграла:
13 EMBED Equation.3 1415 (4.22)
Формула для оценки погрешности примет вид:
13 EMBED Equation.3 1415 (4.23)
Пример: Вычислить интеграл 13 EMBED Equation.3 1415 по формуле Гаусса при n = 10.
Решение: Имеем a = 0, b = 1, 13 EMBED Equation.3 1415.
Тогда 13 EMBED Equation.3 1415.
Составим таблицу значений, входящих в формулу (4.22)
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
0
0,02113249
0,078868
0,00000944
0,00049005
0,1
0,121132249
0,178868
0,00177304
0,00569215
0,2
0,22113249
0,278868
0,01072537
0,02140672
0,3
0,32113249
0,378868
0,03255086
0,05309115
0,4
0,42113249
0,478868
0,07250071
0,10566206
0,5
0,52113249
0,578868
0,13520907
0,18331848
0,6
0,62113249
0,678868
0,22452206
0,28938023
0,7
0,72113249
0,778868
0,34334373
0,42614496
0,8
0,82113249
0,878868
0,49350196
0,59476723
0,9
0,92113249
0,978868
0,67563779
0,795162236
1,0
13 EMBED Equation.3 1415
Подставляя найденное значение суммы значений функции yi , в формулу (4.22) получим:
13 EMBED Equation.3 1415.
Задания практического занятия №9
Задание 1.
Вычислить интеграл по формуле Гаусса от заданной функции f(x) на отрезке [a;b] при делении отрезка на 10 равных частей. Вычисления провести в Excel.
Задание 2.
Сравнить полученный результат с результатами, полученными на практическом занятии №8.
Результаты оформить в таблицу:
Метод интегрирования
Значение интеграла
Метод прямоугольников
Метод трапеций
Метод парабол
Метод Гаусса
Задание 3.
Сделать вывод о точности методов.
Таблица 1
Вариант
f(x)
a
b
1
13 EMBED Equation.3 1415
1
2
2
13 EMBED Equation.3 1415
1
2
3
13 EMBED Equation.3 1415
2
3
4
13 EMBED Equation.3 1415
1
2
5
13 EMBED Equation.3 1415
1.2
2.2
6
13 EMBED Equation.3 1415
0.5
1.5
7
13 EMBED Equation.3 1415
2
3
8
13 EMBED Equation.3 1415
3
4
9
13 EMBED Equation.3 1415
1
2
10
13 EMBED Equation.3 1415
-1
0
11
13 EMBED Equation.3 1415
-0.5
0.5
12
13 EMBED Equation.3 1415
0,1
1,1
13
13 EMBED Equation.3 1415
0.2
1.2
14
13 EMBED Equation.3 1415
1.5
2.5
15
13 EMBED Equation.3 1415
0.1
1.1
Контрольные вопросы
На какой идее основывается построение квадратурных формул Гаусса?
Запишите формулу Гаусса.
Как строятся квадратурные формулы Гаусса, какова их по- грешность (остаточный член)?
Практическое занятие №10
«Нахождение решений обыкновенных дифференциальных уравнений с использованием методов Эйлера: разработка алгоритма и программы для решения вычислительных задач, учитывая необходимую точность получаемого результата»
Цель занятия:
закрепить усвоение теоретического материала по данной теме через решение упражнений;
получить умения приближенно находить решение обыкновенного дифференциального уравнения первого порядка методом Эйлера, методом Рунге-Кутта.
Теоретический материал и методические указания к выполнению заданий
Численные методы решения дифференциальных уравнений.
Постановка задач
Простейшим обыкновенным дифференциальным уравнением является уравнение первого порядка, разрешенное относительно производной:
y’=f(x,y) (5.1)
Эта задача известна, как задача Коши: найти решение уравнения (5.1) в виде функции y(x), удовлетворяющей начальному условию
y(x0) = y0. (5.2)
Геометрически это означает, что требуется найти интегральную кривую y=y(x), проходящую через заданную точку М0 (x0,y0), при выполнении равенства (5.1).
Существует несколько классов дифференциальных уравнений 1-го порядка, для которых решение может быть найдено аналитически. Но даже для таких уравнений решение не всегда удается довести до вида y=y(x). Многие же дифференциальные уравнения, к которым приводят математические модели реальных процессов, не могут быть решены аналитически. По этой причине разработаны многочисленные методы приближенного решения дифференциальных уравнений.
Эти методы подразделяются на 3 основные группы:
аналитические методы, применения которых дает приближенное решение дифференциальных уравнений в виде формулы;
графические методы, дающие приближенное решение в виде графика;
численные методы, когда искомая функция получается в виде таблицы.
Метод Эйлера
В основе метода ломанных Эйлера лежит идея графического построения решения дифференциального уравнения. Однако этот метод дает одновременно и способ нахождения искомой функции в численной (табличной) форме.
Пусть дано уравнение (5.1) с начальным условием (5.2), т.е. поставлена раздача Коши.
Вначале найдем простейшим способом приближенное значение решения в некоторой точке 13 EMBED Equation.3 1415, где h – достаточно малый шаг.
Заметим, что уравнение (5.1) совместно с начальным условием (5.2) задают направление касательной к искомой интегральной кривой в точке М13 EMBED Equation.3 1415(x13 EMBED Equation.3 1415,y13 EMBED Equation.3 1415). Двигаясь вдоль этой касательной, получим приближенное значение решения в точке х13 EMBED Equation.3 1415:
13 EMBED Equation.3 1415 (5.3)
Аналогично, найдем приближенное значение решения в точке 13 EMBED Equation.3 1415, и т.д.
Продолжая эту идею, построим систему равностоящих точек 13 EMBED Equation.3 1415, i=0,..,n.
Получение таблицы значений искомой функции y(x) по методу Эйлера заключается в циклическом применении пары формул:
13 EMBED Equation.3 1415 (5.4)
Геометрическая иллюстрация метода Эйлера:
Рис 5.1 Построение ломаной Эйлера
Вместо кривой в реальности получается совокупность прямых – ломаная Эйлера.
Методы численного интегрирования дифференциальных уравнений, в которых решение получается от одного узла к другому, называются пошаговыми.
Метод Эйлера – простейший пошаговый метод.
Отметим, что оценка погрешности метода при таком элементарном рассмотрении невозможна даже на первом шаге. Кроме того, особенностью любого пошагового метода является то, что, начиная со второго шага, исходное значение y13 EMBED Equation.3 1415 в формуле (5.4) само является приближенным, т.е. погрешность на каждом шаге систематически возрастает.
Наиболее используемым методом оценки точности, как метода Эйлера, так и других пошаговых методов приближенного численного интегрирования обыкновенных дифференциальных уравнений является способ двойного прохождения заданного отрезка с шагом h и с шагом h/2. Совпадение соответствующих десятичных знаков в полученных двумя способами результатах дает основание считать их верными.
Пример: Решить методом Эйлера дифференциальное уравнение 13 EMBED Equation.3 1415c начальным условием y(0) = 1,3 на отрезке [0;1] применив h=0,2.
Решение: Имеем 13 EMBED Equation.3 1415.
Составим таблицу значений функции f(x,y) с шагом h и h/2.
x
yi (h=0.2)
yi (h=0.1)
0
1.3
1.3
0.1
1.33
0.2
1.35
1.38
0.3
1.46
0.4
1.52
1.56
0.5
1.68
0.6
1.77
1.82
0.7
1.98
0.8
2.09
2.15
0.9
2.33
1
2.47
2.53
При составлении таблицы проводились следующие вычисления:
Если h=0,2:
х0=0, у0=1,3 из начального условия;
х1=0,1,
13 EMBED Equation.3 1415
х2=0,2,
13 EMBED Equation.3 1415
И т.д.
Аналогичные вычисления проводились и для h=0,1.
Таким образом, приближенное решение уравнения получаем в виде таблицы. Построим ломаную Эйлера для h=0,2 и h=0,1 в одной системе координат.
Метод Рунге-Кутта
Если к методу Эйлера подойти другим путем, не используя геометрических построений, то необходимо рассматривать производные функции f(x,y) и раскладывать эту функцию в степенной ряд. Но нахождение производных не является стандартной задачей, применяемой при решении математических задач систем программирования.
Альтернативный путь открывает метод Рунге-Кутта, названный по имени его создателей.
Основная идея метода Рунге-Кутта такова: вместо использования в формулах частных производных функции f(x,y) использовать лишь саму эту функцию, но на каждом шаге вычислять ее значение в нескольких точках.
На практике соблюдается некоторый компромисс между высоким порядком формул и их громоздкостью с одной стороны, и объемом вычислений по ним для достижения заданной точности, с другой. Запишем самую распространяемую формулу Рунге-Кутта четвертого порядка:13 EMBED Equation.3 1415
13 EMBED Equation.3 1415, (5.5)
13 EMBED Equation.3 1415 (5.6)
Общий недостаток методов Рунге-Кутта – отсутствие простых способов оценки погрешности метода. Погрешность на одном шаге оценить сравнительно не трудно, гораздо труднее оценить накопление погрешностей на протяжении многих шагов. Широко используемый на практике для этих методов способ контроля точности – двойной счет: вычисляем решение дифференциального уравнение с шагом h и h/2 , а потом сравниваем полученные результаты.
Пример: Решить дифференциальное уравнение 13 EMBED Equation.3 1415 на отрезке 13 EMBED Equation.3 1415 с начальным условием у(0)=1 и шагом h=0.05.
Решение: Сначала решим это уравнение аналитически:
13 EMBED Equation.3 1415- уравнение с разделяющимися переменными.
13 EMBED Equation.3 1415,
13 EMBED Equation.3 1415
Применим начальное условие 13 EMBED Equation.3 1415, получим:
13 EMBED Equation.3 1415
Таким образом, частное решение данного уравнения, удовлетворяющее заданному начальному условию:
13 EMBED Equation.3 1415.
Пользуясь этой формулой, можно получить таблицу «точного» решение уравнения.
Найдем приближенное решение дифференциальное уравнение по методу Рунге-Кутта. Проведем последовательные вычисления по формулам (5.5), (5.6):
Имеем: f(x,y)=y(1-x), 13 EMBED Equation.3 1415=0, 13 EMBED Equation.3 1415=1, h=0.05. Тогда
13 EMBED Equation.3 1415
Подставим найденные значения в формулу (5.5):
13 EMBED Equation.3 1415
Поскольку вычисления достаточно громоздки и трудоемки, то численные решения заданного уравнения можно найти с помощью программы на компьютере.
Для сравнения результатов построим таблицу, в которой укажем численные решения, полученные по методу Эйлера, методу Рунге-Кутта и «точное решение».
Х
У
метод Эйлера
метод Рунге-Кутта
«точное решение»
0,00
0,05
0,10
0,15
0,20
0,25
0,30
0,35
0,40
0,45
0,50
1
1,05
1,0999
1,1494
1,1982
1,2462
1,2929
1,3381
1,3816
1,4231
1,4622
1
1,0499
1,0997
1,1488
1,1972
1,2445
1,2905
1,3348
1,3771
1,4173
1,4550
1
1,0499
1,0997
1,1488
1,1972
1,2445
1,2905
1,3348
1,3771
1,4173
1,4550
Из таблицы видно, что результаты, получения по методу Рунге-Кутта практически совпадают с «точным» решением уравнения, в отличие от соответствующих значений, полученных по методу Эйлера.
Задания практического занятия №10
Задание 1.
Решить задачу Коши для дифференциального уравнения y’=f(x,y) на отрезке [a;b] при заданном начальном условии y(a)=y0 и шаге интегрирования h методом Эйлера:
а) с применением «ручных» вычислений с шагом 2h.
б) с помощью программы для компьютера с шагом h.
в) Свести результаты вычислений в одну таблицу и сопоставить точность полученных значений функции. Пользуясь таблицей, сделать ручную прикидку графика интегральной кривой на бумаге.
Задание 2
Решить задачу Коши для дифференциального уравнения y’=f(x,y) на отрезке [a;b] при заданном начальном условии y(a)=y0 методом Рунге-Кутта с помощью программы для компьютера с шагом h и с шагом h/2.
На основе результатов двойного счета сделать вывод о точности полученного решения.
Задание 3
Найти точное решение задачи Коши.
Таблица 1
Вариант
f(x)
a
b
y0
h
1
13 EMBED Equation.3 1415
3
5
1
0.2
2
13 EMBED Equation.3 1415
2.6
4.6
1
0.2
3
13 EMBED Equation.3 1415
0
2
0
0.2
4
13 EMBED Equation.3 1415
1
3
1
0.2
5
13 EMBED Equation.3 1415
0
2
0
0.2
6
13 EMBED Equation.3 1415
1
3
1
0.2
7
13 EMBED Equation.3 1415
0.5
2.5
0
0.2
8
13 EMBED Equation.3 1415
0.2
2.2
1
0.2
9
13 EMBED Equation.3 1415
1
3
2
0.2
10
13 EMBED Equation.3 1415
3
5
1
0.2
11
13 EMBED Equation.3 1415
0.2
2.4
1
0.2
12
13 EMBED Equation.3 1415
1
3
0
0.2
13
13 EMBED Equation.3 1415
2.6
4,6
2
0.2
14
13 EMBED Equation.3 1415
1.5
3,5
0
0.2
15
13 EMBED Equation.3 1415
2.1
4.1
0
0.2
Контрольные вопросы
Что является решением дифференциального уравнения?
На какие группы подразделяются приближенные методы решения дифференциальных уравнений?
В какой форме получается приближенное решение дифференциального уравнения по методу Эйлера?
В чем основная идея метода Рунге-Кутта?
В чем отличие одношаговых методов Эйлера и Рунге-Кутта?
Приложение 1 Практическое занятие №2
Блок схема алгоритма метода половинного деления:
13 SHAPE \* MERGEFORMAT 1415
Программа реализации метода половинного деления
для уточнения корня уравнения f(x)=0 на отрезке [a;b] с точностью eps
{ Практическое занятие №2 Метод деления пополам
Выполнил студент 3 курса гр. Ф.И.О.}
Program metod_polov_deltnia;
Label M,M1;
Var c,d,e,x,y,z:Real;
k:Integer;
Begin
Write('Введите с='); ReadLn(c);
Write('Введите d='); ReadLn(d);
Write('Введите е='); ReadLn(e);
z:=cos(1.1*x)/sin(1.1*x)-2*x; {впишите свою функцию}
k:=0;
M: x:=(c+d)/2;
If (d-c)/2<=e then
Begin
WriteLn('x=',x);
WriteLn('k=',k);
GOTO M1;
End
else
Begin
y:=exp(x*Ln(5))-6*x+3;
k:=k+1;
If y*z>0 then
Begin
c:=x; z:=y;
GOTO M;
End
else
Begin
d:=x;
GOTO M;
End;
End;
M1: End.
Приложение 2 Практическое занятие №3
Блок схема алгоритма метода касательных:
13 SHAPE \* MERGEFORMAT 1415
Программа реализации метода касательных
для уточнения корня уравнения f(x)=0 на отрезке [a;b] с точностью eps
{ Практическое занятие №3 Метод касательных
Выполнил студент 3 курса гр. Ф.И.О.}
Program metod_Newton;
Label M,M1;
Var c,d,e,x,y,z:real;
k:Integer;
Begin
Write('Введите с='); ReadLn(c);
Write('Введите d='); ReadLn(d);
Write('Введите е='); ReadLn(e);
x:=(c+d)/2;
k:=0;
M: z:=( cos(1.1*x)/sin(1.1*x)-2*x)/( -(1.1/(sin(1.1*x)*sin(1.1*x))+2)) ; {впишите 13 EMBED Equation.3 1415}
y:=x-z;
If abs(y-x)<=e then
Begin
WriteLn('y=',y);
WriteLn('k=',k);
GOTO M1;
End
else
Begin
x:=y;
k:=k+1;
GOTO M;
End;
M1: End.
Приложение 3 Практическое занятие №4
Укрупнённая схема алгоритма (блок-схема) метода Гаусса
Алгоритмы отдельных блоков метода
Блок 2. С помощью двух вложенных циклов с управляющими переменными i=1,n и j=1,k организуем ввод коэффициентов ai,j и свободных членов bi исходной системы. Для того, чтобы в дальнейшем можно было выполнить в блоке 9 проверку результата, в алгоритме предусмотрено сохранение значений ai,j и bi исходной системы с помощью переприсвоений: cij=aij и di=bi
Блок 3. Организуем цикл по k, внутри которого производится вычисление по всем шагам прямого хода. Последний п-й шаг прямого хода выводим из цикла.
Блок 4. На каждом шаге прямого хода выполняем поиск ненулевого ведущего элемента.
Блок 5 - шаг прямого хода. На каждом шаге прямого хода проводим исключение неизвестных путём преобразования коэффициентов и свободных членов системы по полученным ранее рекуррентным формулам.
Блок 6. В этом блоке выведем из цикла по k последний шаг прямого хода, т.к. на этом шаге не нужны преобразования коэффициентов и свободных членов, а реализуется только одно вычисление : xn=bn/an,n
Блок 7 - обратный ход. В процессе обратного хода метода Гаусса из системы треугольного вида последовательно в обратном порядке в цикле по i=(n-1),1,-1 находим неизвестные системы по рекуррентной формуле : bi= bi - xj.ai,j , i=(n-1),1, j=(n+1),n.
Блок 9 - проверка результата. В этом блоке подставляя значения полученных неизвестных в исходную систему и используя сохранённые значения коэффициентов системы ci,j и свободных членов di, проводим проверку решения задачи по формуле
Блок 9 в алгоритме метода Гаусса рекомендуется использовать только в процессе отладки метода.
Программа реализации метода Гаусса решения систем линейных уравнений
{ Практическое занятие №4
Решение системы линейных уравнений и вычисление определителя по простой схеме Гаусса
Выполнил студент 3 курса гр. Ф.И.О.}
program Gauss;
uses crt;
const n=3; {порядок системы}
type T=real;
var a:array[1..n,1..n+1] of T;
x:array[1..n] of T;
da:array[1..n,1..n+1] of real;
dx:array[1..n] of real;
r,g,det:T;
dr,dg,ddet:real;
m,k,i,j:integer;
function ds(da,db:real):real; {погрешность суммы(разности)}
begin ds:=da+db
end;
function dpr(a,b:T; da,db:real):real; {погрешность произведения}
begin dpr:=abs(a)*db+abs(b)*da
end;
function dch(a,b:T; da,db:real):real; {погрешность частного}
begin dch:=da/abs(b)+db*abs(a)/(b*b)
end;
begin
m:=n; {ввод расширенной матрицы системы}
for k:=1 to n do for j:=1 to n+1 do
begin writeln('введите a[',k,',',j,']');
read (a[k,j]);
end;
{вывод элементов расширенной матрицы системы - для контроля правильности ввода}
writeln('расширенная матрица системы');
for k:=1 to n do
begin for j:=1 to n+1 do write (a[k,j]:12:4,' ');
writeln
end;
{ввод абсолютных погрешностей элементов расширенной матрицы - для контроля правильности ввода}
for k:=1 to n do for j:=1 to n+1 do
begin writeln('введите da[',k,',',j,']');
read (da[k,j])
end;
{вывод абсолютных погрешностей элементов расширенной матрицы - для контроля правильности ввода}
writeln; writeln('абсолютные погрешности элементов расширенной матрицы');
for k:=1 to n do
begin for j:=1 to n+1 do write (da[k,j]:12,' ');
writeln
end;
det:=1.0; {подготовка к вычислению определителя}
{начало 'прямого хода' метода Гаусса}
dr:=0; ddet:=0;
for k:=1 to n do
begin det:=det*a[k,k];
ddet:=dpr(det,a[k,k],ddet,da[k,k]);
for j:=k+1 to n+1 do
begin a[k,j]:=a[k,j]/a[k,k];
da[k,j]:=dch(a[k,j],a[k,k],da[k,j],da[k,k])
end;
for i:=k+1 to n do
for j:=k+1 to n+1 do
begin r:=a[k,j]*a[i,k];
dr:=dpr(a[k,j],a[i,k],da[k,j],da[i,k]);
a[i,j]:=a[i,j]-r;
da[i,j]:=ds(da[i,j],dr)
end;
end;
if m<0 then m:=0;
writeln; writeln('определитель системы=', det:7:m);
writeln (' предельная абс.погрешность значения опреднлителя=',ddet:10);
{начало 'обратного хода' метода Гаусса}
x[n]:=a[n,n+1]; dx[n]:=da[n,n+1];
for k:=n-1 downto 1 do
begin r:=0; dr:=0;
for j:=n downto k+1 do
begin g:=a[k,j]*x[j];
dg:=dpr(a[k,j],x[j],da[k,j],dx[j]);
r:=r+g;
dr:=ds(dr,dg);
end;
x[k]:=a[k,n+1]-r;
dx[k]:=ds(da[k,n+1],dr);
end;
writeln;writeln ('результат решения системы');
for i:=1 to n do
begin
if m<0 then m:=0;
write ('x[',i,']=',x[i]:7:m,' ')
end;
writeln;writeln ('предельная абс.погрешность результата');
for i:=1 to n do write('dx[',i,']=',dx[i]:10,' ');
repeat until keypressed
end.
Приложение 4 Практическое занятие №5
Листинг программы
{Метод прогонки}
program progonka;
var i,j:integer;
var e:real;
var a:array[1..10,1..10] of real;
var x,b, ai, bi, ci, di, Aii, Bii:array[1..10] of real;
begin
for j:=1 to 4 do begin
writeln('введите 4 значения строкиj=',j,'матрицы А');
readln(a[j,1], a[j,2], a[j,3], a[j,4]);
end;
writeln('введите 4 значения столбца правой части b ');
readln(b[1], b[2], b[3], b[4]);
for i:=1 to 4 do
begin
if i=1 then ai[i]:=0 else ai[i]:=a[i,i-1];
bi[i]:=a[i,i];
if i=4 then ci[i]:=0 else ci[i]:=a[i,i+1];
di[i]:=b[i];
end;
Aii[1]:=-ci[1]/bi[1];
Bii[1]:=di[1]/bi[1];
for i:=2 to 4 do
begin
e:=ci[i]*Aii[i-1]+bi[i];
Aii[i]:=-ci[i]/e;
Bii[i]:=(di[i]-ai[i]*Bii[i-1])/e;
end;
for i:=4 downto 1 do begin
x[i]:=Aii[i]*x[i+1]+Bii[i];
writeln('решение линейной системы методом прогонки’);
writeln('x1=',x[1],' x2=',x[2],'x3=',x[3],'x4=',x[4]);
end;
end.
Листинг программы
{ Решение системы методом Гаусса-Зейделя }
program SLAU2;
label 1,2,3;
const n=4;
var a:array [1..n,1..n] of real;
b,x:array [1..n] of real;
i,j,k,m:integer;
e,s,d,d1,c:real;
begin
{ Ввод исходных данных }
for i:=1 to n do
begin
writeln (Введите коэффициенты уравнения’,i);
for j:=1 to n do read (a[i,j]);
writeln (Введите свободный член уравнения’,i);
read (b[i]);
end;
writeln ('Введите точность');readln (e);
writeln ('Введите допустимое кол-во итераций');readln (m);
for i:=2 to n do x[i]:=0;
{ Решение системы }
k:=1;
repeat
d1:=0;
for i:=1 to n do
begin
s:=0;
for j:=1 to n do
begin
if i=j then goto 1;
s:=s+a[i,j]*x[j];
1: end;
c:=(b[i]-s)/a[i,i];
d:=abs(c-x[i]);
if d1
x[i]:=c;
end;
k:=k+1;
if k>m then goto 2;
until d1
{ Вывод результатов }
writeln (решение системы’);
for i:=1 to n do write (x[i]:8:4);
writeln; goto 3;
2: writeln ('Количество итераций выше допустимого');
3:end.
Приложение 5 Практическое занятие №6
Блок схема алгоритма интерполяции функции многочлена Лагранжа
Программа реализации построения интерполяционного многочлена Лагранжа
{ Практическое занятие №6
Интерполяционный многочлен Лагранжа
выполнил студент гр. Ф.И.О. }
program Lagrang;
uses crt;
type mus=array[0..10] of real;
label 1;
var x,y:mus; n,i,j:integer;
a,m,f:real;
begin
clrscr;
writeln('Задайте степень многочлена');
readln(n);
writeln('Введите значение аргумента, для которого');
writeln('требуется найти значение функции');
readln(a);
writeln('Введите значения х,у через пробел');
for i:=0 to n do read(x[i],y[i]);
f:=0;
for i:=0 to n do
begin
j:=0;
m:=1;
1: if i=j then inc(j);
if j<=n then
begin
m:=m*(a-x[j])/(x[i]-x[j]);
inc(j); goto 1;
end;
m:=y[i]*l;
f:=f+m;
end;
writeln('При а=',a:5:2,' f(',a:5:2,')=',f:5:2);
readkey;
end.
Приложение 6 Практическое занятие №7
Блок схема метода интерполяции сплайнами
Программа реализации построения интерполяционного сплайна
{ Практическое занятие №7 Интерполяционный сплайн
выполнил студент гр. 3 курса
Ф.И.О. }
program intspline;
const maxn=50;
type vec=array[0..maxn] of real;
var i,n:integer;
x3,y:real;
x,f,a,b,c,d:vec;
procedure sy(il,ir: integer; a,b,d: vec; var c: vec);
var i,j,l:integer;
r: real;
begin
l:=il+1;
for i:=l to ir do begin
r:=b[i]/d[i-1];
d[i]:=d[i]-r*a[i-1];
c[i]:=c[i]-r*c[i-1]
end;
c[ir]:=c[ir]/d[ir];
for i:=1 to ir do begin
j:=ir-i+il;
c[j]:=(c[j]-a[j]*c[j+1])/d[j]
end
end;
procedure spl(n: integer; x,f: vec; var x0,y0: real);
var i,i0:integer;
r,t: real;
a,b,c,d: vec;
begin
for i:=1 to n do b[i]:=x[i]-x[i-1];
i0:=1;
for i:=2 to n do if abs(x0-x[i])<=abs(x0-x[i0]) then i0:=i;
writeln('i0= ',i0);
for i:=1 to n-1 do
begin
d[i]:=2*(b[i]+b[i+1]);
a[i]:=b[i+1];
c[i]:=6*((f[i+1]-f[i])/b[i+1]-(f[i]-f[i-1])/b[i])
end;
sy(1,n-1,a,b,d,c); c[0]:=0; c[n]:=0;
r:=(x[i0]-x0); t:=(x0-x[i0-1]);
y0:=(c[i0-1]*r*r*r+c[i0]*t*t*t)/(6*b[i0]);
y0:=y0+(f[i0-1]/b[i0]-c[i0-1]*b[i0]/6)*r;
y0:=y0+(f[i0]/b[i0]-c[i0]*b[i0]/6)*t
end;
begin
writeln('введите количество пар элементов таблицы');
readln(n);
writeln('Введите значения х,f через пробел');
for i:=0 to n-1 do read(x[i],f[i]);
writeln('введите точку х3'); readln(x3);
spl(n,x,f,x3,y);
writeln('x3=',x3,' f(x3)=',y);
end.
Приложение 7 Практическое занятие №8
Программа реализации вычисления интегралов по формуле прямоугольников
{ Практическое занятие №8
Вычисление интегралов при помощи формул Ньютона-Котеса.
Выполнил студент 3 курса гр. Ф.И.О.}
Программа реализации вычисления интегралов по формуле трапеций
{ Практическое занятие №8
Вычисление интегралов при помощи формул Ньютона-Котеса.
Выполнил студент 3 курса гр. Ф.И.О.}
Программа реализации вычисления интегралов по формуле Симпсона
{ Практическое занятие №8
Вычисление интегралов при помощи формул Ньютона-Котеса.
Выполнил студент 3 курса гр. Ф.И.О.}
program simpson;
uses crt;
const n=10;
type mas=array[0..n] of real;
var y:mas; a,b,S,Integral,h,x:real; i:integer;
begin
clrscr;
writeln('Введите границы отрезка интегрирования:');
readln(a,b);
writeln('Задайте величину шага интегрирования:');
readln(h);
x:=a;
for i:=0 to n do
begin
y[i]:={введите свою функцию}
x:=x+h;
end;
S:=(y[0]-y[n])/2;
i:=1;
repeat
S:=S+(2*y[i]+y[i+1]);
i:=i+2;
until i>=n;
Integral:=2*(b-a)*S/(3*n);
writeln('Значение интеграла: I=',Integral:11:9);
readkey;
end.
Приложение 8 Практическое занятие №10
Блок схема метода Эйлера решения дифференциальных уравнений:
Блок схема метода Рунге-Кутта решения дифференциальных уравнений:
Программа реализации метода Эйлера решения дифференциальных уравнений
{ Практическое занятие №10
Метод Эйлера решения дифференциальных уравнений
Выполнил студент 3 курса гр. Ф.И.О.}
program Euler;
uses crt;
var x,y,h,b:real;
function f(x1,y1:real):real;
begin
f:={введите свою функцию}
end;
begin
clrscr;
writeln('Введите через пробел начальные значения х и у: ');
readln(x,y);
writeln('Введите величину шага интегрирования h: ');
readln(h);
writeln('Введите абсциссу правого конца отрезка b: ');
readln(b);
writeln('Таблица значений искомой функции: ');
writeln(' x ',' y ');
repeat
writeln(x:3:1,' ',y:4:2);
y:=y+h*f(x,y);
x:=x+h;
until x>=b+h/2;
repeat until keypressed
end.
Программа реализации метода Рунге-Кутта решения дифференциальных уравнений
{ Практическое занятие №10
Метод Рунге-Кутта решения дифференциальных уравнений
Выполнил студент 3 курса гр. Ф.И.О.}
program runge_kutta4;
uses crt;
var x,y,h,b,z:real; i,n:integer; r1,r2,r3,r4:real;
function f(x1,y1:real):real;
begin
f:={введите свою функцию}
end;
begin
clrscr;
writeln('Задайте начальные значения: ');
read(x,y);
writeln('Укажите шаг интегрирования: ');
read(h);
writeln('и правую границу отрезка интегрирования: ');
read(b);
repeat
writeln(x:3:2,' ',y:4:4);
r1:=h*f(x,y);
r2:=h*f(x+h/2,y+r1/2);
r3:=h*f(x+h/2,y+r2/2);
r4:=h*f(x+h,y+r3);
y:=y+(r1+2*r2+2*r3+r4)/6;
x:=x+h;
until x>=b+h/2;
end.
Литература
Основные источники
Партыка Т.Л., Попов И.И. Математические методы. – М.: ФОРУМ : ИНФРА-М, 2012.
Агальцов В.П., Волдайская И.В.. Математические методы в программировании: Учебник.- М.: ФОРУМ: ИНФРА-М, 2008.
Дополнительные источники
Фомин Г.П. Математические методы и модели в коммерческой деятельности: Учебник. – М.: Финансы и статистика, 2008.
Попов А.М. Экономико-математические методы и модели :учебник.-М.: Юрайт, 2012
Интернет-ресурсы
Единое информационно-образовательное пространство колледжа NetSchool. Форма доступа: http://sgtek.ru
Информационно-справочная система «В помощь студентам». Форма доступа: http://window.edu.ru
Информационно-справочная система. Форма доступа: [ Cкачайте файл, чтобы посмотреть ссылку ].
Информационно-справочная система. Форма доступа: [ Cкачайте файл, чтобы посмотреть ссылку ]
13 PAGE \* MERGEFORMAT 14115
Конец
Вывод: x, k
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
нет
да
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
нет
Да
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
Ввод: c, d, e13 EMBED Equation.3 1415
начало
начало
Ввод: c, d,
· cccccc13 EMBED Equation.3 141513 EMBED Equation.3 141513 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
13 EMBED Equation.3 1415
нет
13 EMBED Equation.3 1415
Конец
Рисунок 4321Root EntryEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation Nativeл 3 1л 3 2Equation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation Nativeл 4 6Equation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeРисунок 1Рисунок 2Equation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeC:\Users\MAX\AppData\Local\Opera\Opera\Численные методы (интернет)\Решение систем уравнений\ВВМ_ Занятие 5_ Решение систем линейных алгебраических уравнений прямыми методами_ Теоретическая справка.files\image031.gifimage031.gif (1935 bytes)Equation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation Native0Equation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation Nativekл13 1Equation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation Nativeл 14 1л 15 1Equation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation Nativeл 17 1Equation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeРисунок 63Рисунок 65Рисунок 66Рисунок 67Рисунок 180Рисунок 185Рисунок 186Рисунок 212Equation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeEquation NativeЗаголовок 1Заголовок 2Заголовок 4Заголовок 5Заголовок 7Заголовок 915