Решение инженерных задач методами вычислительной математики

Автор работы: Пользователь скрыл имя, 07 Ноября 2017 в 20:01, курсовая работа

Описание работы

В результате выполнения данной курсовой работы были решены два задания.
В первом задании была составлена программа Matlab для решения системы ОДУ методом Рунге-Кутты 4-5 порядка и данная задача была решена стандартным решателем Matlab функцией ode45.
Было проведено сравнение полученных результатов . Погрешности от сравнения занесены в таблицу погрешностей и был создан видеофайл формата AVI с помощью функции VideoWritter, в котором показано движение точки в декартовой системе координат.

Содержание работы

Введение…………………………………………………………………………5
1 Численное решение системы дифференциальных уравнений……………..6
2 Условная минимизация функций нескольких переменных……………….15
Заключение……………………………………………………………………..17
Список использованных источников…………………

Файлы: 1 файл

отчет 24.docx

— 943.15 Кб (Скачать файл)

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

ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

«УТВЕРЖДАЮ»

Зав. кафедрой АиТ, д.т.н., профессор

_________________ М.А. Щербаков

 

ЗАДАНИЕ

на курсовую работу по дисциплине «Математические методы решения инженерных задач»

Тема: «Решение инженерных задач методами вычислительной математики»

ВАРИАНТ 11

Задача № 1.

№ п/п

Система ОДУ

Начальные условия

Окончание расчета

24

0.1

0.0

0.1

5.0


  1. Решить заданную систему обыкновенных дифференциальных уравнений (ОДУ) методом Рунге - Кутты 4-5-го порядка. Для этого разработать собственную программу в Matlab (программа должна быть представлена в виде m-файла), а также решить задачу с помощью решателя Matlab (использовать как эталонное решение).
  2. В разработанной программе реализовать апостериорный выбор шага интегрирования (реализовать алгоритм, приведенный в [4]).
  3. При решении стандартным решателем Matlab, использовать автоматический шаг.
  4. Решение, полученное с помощью разработанной программы, сравнить с эталонным решением в точке . Результаты сравнения представить в виде таблицы относительных погрешностей решения. Сделать выводы о точности решения.
  5. Построить отдельно графики , , , а также трехмерный график движения точки в декартовой системе координат средствами Matlab.
  6. Создать видеофайл решения задачи: движение точки в трехмерной декартовой системе координат (представить на любом носителе).

 

 

 

Задача № 2.

№ п/п

Постановка задачи

Метод решения

24

Метод штрафов


  1. Минимизировать заданную функцию согласно варианту с использованием встроенных функций Matlab.
  2. Составить программу в системе Matlab (расширение файла *.m), реализующую заданный метод условной минимизации [5]. Минимизировать заданную функцию согласно варианту. Если в ходе реализации заданного алгоритма необходимо решать задачу минимизации функции на каждой итерации, то для решения этой задачи использовать стандартную функцию Matlab.
  3. Сравнить результаты, полученные стандартной и разработанной функцией (рассчитать относительную погрешность реализованного метода).
  4. Ввод исходных данных и вывод результатов организовать с использованием Excel.

Проверил к.т.н. доцент                                                      Козлов А.Ю.

 

 

 

Содержание

 

Введение…………………………………………………………………………5

1 Численное решение системы  дифференциальных уравнений……………..6

2 Условная минимизация  функций нескольких переменных……………….15

Заключение……………………………………………………………………..17

Список использованных источников…………………………………………18

Приложения………………………………………………………………………

 

Введение.

 

В результате выполнения данной курсовой работы были решены два задания.

В первом задании была составлена программа Matlab для решения системы ОДУ методом Рунге-Кутты 4-5 порядка и данная задача была решена стандартным решателем Matlab функцией ode45.

Было проведено сравнение полученных результатов . Погрешности от сравнения занесены в таблицу погрешностей и был создан видеофайл формата AVI с помощью функции VideoWritter, в котором показано движение точки в декартовой системе координат.

Во втором задании необходимо минимизировать заданную функцию методом штрафов.

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

Ввод исходных данных и вывод результатов был организован с использованием Excel.

 

  1. Метод Рунге-Кутты 4-го порядка

 

В настоящее время разработано большое число методов численного интегрирования систем дифференциальных уравнений.  К их числу можно отнести метод Рунге-Кутта, явный и неявный методе Эйлера, метод Милна и т.д.

В курсовой работе рассмотрен метод Рунге-Кутты решения ОДУ.

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

В процессе решения задачи оптимизации обычно необходимо найти оптимальные значения некоторых параметров, определяющих данную задачу. При решении инженерных задач их принято называть проектными параметрами. В качестве проектных параметров могут быть, в частности, значения линейных размеров объекта, массы, температуры и т.п. число n проектных параметров x1,x2,…,xn характеризует размерность (и степень сложности) задачи оптимизации.

Выбор оптимального решения или сравнение двух альтернативных решений проводится с помощью некоторой зависимой величины (функции), определяемой проектными параметрами. Эта величина называется целевой функцией (или критерием качества). В процессе решения задачи оптимизации должны быть найдены такие значения проектных параметров, при которых целевая функция имеет минимум (или максимум). Таким образом, целевая функция – это глобальный критерий оптимальности в математических моделях, с помощью которых описываются инженерные или экономические задачи.

В курсовой работе решена задача интегрирования системы ОДУ методом Рунге-Кутты, осуществлена условная минимизация функции нескольких переменных заданным методом. Все задачи решены с использованием программы Matlab с представлением необходимой графической и табличной информации.

 

1 Численное решение  системы дифференциальных уравнений

 

1.1 Метод Рунге-Кутты

 

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

Конкретная прикладная задача может приводить к дифференциальному уравнению любого порядка или системе уравнений любого порядка. Однако обыкновенные дифференциальные уравнения n-го порядка можно с помощью замены свести к эквивалентной системе n уравнений первого порядка.

Различают три основных типа задач для решения обыкновенных дифференциальных уравнений: задачи Коши, краевые задачи и задачи на собственные значения. В этой курсовой работе рассмотрим метод решения задач Коши.

Пусть задано дифференциальное уравнение первого порядка в виде

 

        (1)

 

и начальное условие

 

.       (2)

 

Задача Коши состоит в том, чтобы найти функцию y=y(x), являющуюся решением уравнения (1) и удовлетворяющую условию (2).

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

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

Приближенные методы – это методы, в которых решение получается как придел некоторой последовательности.

Численные методы – это алгоритмы вычисления приближенных значений искомого решения на некоторой выбранной сетке значений аргумента. Решение при этом получается в виде таблицы.

Одним из наиболее точных методов является метод Рунге-Кутты. Классический метод Рунге-Кутты описывается системой следующих пяти соотношений:

                           (3)

 

Где

 

                                                   (4)

 

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

Отличительной чертой методов Рунге-Кутты является то, что при вычислении следующей точки xm+1,ym+1 используется информация только о точке xm ,ym , но не предыдущих. В методах второго порядка и выше приходится вычислять значение функции в одной или нескольких промежуточных точках.

 

1.2 Выбор шага  интегрирования

 

При численном решении задач Коши для ОДУ и систем ОДУ шаг численного решения можно выбирать апостериорно и априорно. В обоих случаях первоначальное значение шага h задается.

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

Пусть e - заданная точность численного решения, и пусть h – первоначально выбранный шаг. Тогда алгоритм дальнейшего выбора шага следующий.

1. Выбранным методом на  отрезке  ,  решается задачи Коши с шагом h с получением значения .

2. Тем же методом с  шагом  решается задачи Коши с получением и .

3. Анализируется неравенство

 

.      (5)

 

Если неравенство (5) удовлетворяется, то значение шага численного интегрирования на следующем шаге увеличивается вдвое по сравнению с первоначально выбранным шагом, т.е. становится равным 2h, и алгоритм повторяется, начиная с п.1.

4.  Если неравенство (5) не выполняется, то счет ведется  с шагом  , начиная с отрезка и после получения значения анализируется неравенство

 

.

 

Если оно удовлетворяется, то дальнейший счет ведется с шагом и т.д.

При априорном выборе шага расчет ведется с первоначально выбранным шагом h с получением функции , , и с шагом с получением функции , Затем анализируется неравенство

 

.      (6)

 

Если оно выполнено, то решение , , принимается за истинное, в противном случае расчет повторяется с шагом и сравниваются по норме (6) функции и и т.д.

 

 

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

 

Для решения системы ОДУ методом Рунге-Кутты в Matlab применим функцию [t,Y,te,ye,ie]=ode45(@div,tspan,Y0,options) [2].

Текст программы приведен в Приложении А.1.

Результат решения системы ОДУ представлен на рисунках 1-3.

Результат решения системы ОДУ представлен на рисунках 1-3.

Рисунок 1 – Изменение переменной x

Рисунок 2 – Изменение переменной y

Рисунок 3 – Изменение переменной z

 

Результат решения системы ОДУ стандартным и собственным решателем в декартовой системе координат представлен на рисунке 4.

Рисунок 4 – Движение точки

 

В таблице 1 представлена сравнительная оценка решения задачи различными решателями.

Таблица 1 - Сравнительная оценка решения задачи различными решателями

Стандартный решатель

Разработанный решатель

D, %

x(2.5)

0.1437925 

0.1331757 

7,38

y(2.5)

2.0678235

2.0727059 

0,24

z(2.5)

3.9969419

3.9859800

0,27


Как видно из таблицы, погрешность решения задачи разработанным решателем не превышает 7,38%.

Для создания видеофайла решения задачи применим функцию videoobj = VideoWriter('v24','MPEG-4').

 

 

2 Условная минимизация  функций нескольких переменных

 

2.1 Алгоритм метода штрафов

 

Шаг 1. Задать начальную точку ; начальное значение параметра штрафа ; число для увеличения параметра; малое число для остановки алгоритма. Положить .

Шаг 2. Составить вспомогательную функцию

 

.

 

Шаг 3. Найти точку безусловного минимума функции по с помощью какого-либо метода (нулевого, первого или второго порядка):

 

.

 

При этом задать все требуемые выбранным методом параметры. В качестве начальной точки взять . Вычислить .

Шаг 4. Проверить условие окончания:

а) если , процесс поиска закончить:

 

,
;

 

б) если , положить: , , и перейти к шагу 2.

 

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

 

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

Информация о работе Решение инженерных задач методами вычислительной математики