Решение обыкновенного дифференциального уравнения 2-го порядка
Автор: Andrey99 • Сентябрь 9, 2018 • Курсовая работа • 884 Слов (4 Страниц) • 668 Просмотры
Федеральное государственное автономное
Образовательное учреждение
Высшего образования
«СИБИРСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»
Политехнический институт
Кафедра «Электротехнические комплексы и системы»
КУРСОВАЯ РАБОТА
По дисциплине «компьютерные технологии»
Вариант
«Решение обыкновенного дифференциального уравнения 2-го порядка»
Руководитель ___________ В.В. Шевченко
Студент гр. ФЭ17-03Б ___________
Красноярск 2018
СОДЕРЖАНИЕ
1. Задание;
2. Решение дифференциального уравнения в Matlab;
2.1) Программы и их описания;
3. Решение дифференциального уравнения в среде SimuLink;
3.1) Составление схемы в Simulink;
3.2) Схема решения дифференциального уравнения;
4. Результат;
1.Задание.
y’’+sin(y’• y)+t2=1 – обыкновенное дифференциальное уравнение в соответствии с вариантом.
- Построить модель для дифференциального уравнения в SimuLink;
- Выбрать начальное значение времени t0 и начальное значение функции y0, для которых существует решение уравнения;
- Найти приращение d для начального значения функции y0 так, чтобы можно было получить 20 различных решений уравнения с начальными данными: y0i=y0+i*d, y’0, i=0,…,19;
- Составить массив данных в виде таблицы, где каждая строка состоит из 20-ти первых значений численного решения;
- Отобразить эти данные в графическом окне Matlab;
- Изменить свойства отображенных чисел так, чтобы выделилась буква «V», заданная по варианту;
2. Решение дифференциального уравнения в Matlab.
2.1 Программы и их описания:
Для начала разрешаем исходное уравнение относительно старшей производной. В частности, для исходного уравнения: y’’+sin(y’• y)+t2=1, получаем: y’’=-sin(y’• y)-t2+1
Далее для решения дифференциального уравнения в Matlab, нужно создать m- файл (myFunc.m), в котором создадим функцию с нашим дифференциальным уравнением. y(2) – это численное значение y’ при t, y(1) – это численное значение y при t.
[pic 1]
Создадим второй файл, в котором будет находится основная программа.
В начале программы задаем начальные условия для y1 и приращение d, а также создаем нулевую матрицу размерностью 20х20.
[pic 2]
Решение дифференциального уравнения выполняем командой ode45 @myFunc – ссылка на функцию с нашим уравнением;
Основной код программы находится в цикле, в котором переменная i меняется от 1 до 20 включительно.[pic 3]
[0,10] – отрезок на котором решается уравнение;
[y1,y2] – начальные условия y’(0) и y’’(0) соответственно;
T – матрица строка с переменными х;
Y –матрица строка с численным решением нашего дифференциального уравнения.
Переменная i – номер строки в нашей матрице с результатами решения дифференциального уравнения.
В конце элементы матрицы «х» меняются на решения дифференциального уравнения, каждый «i-ый» на оси Ox и все элементы на оси Oy.
...