Решение алгебраических и дифференциальных уравнений в пакете MatLab
Использование команды plot и fplot при построении графиков. Решение дифференциальных уравнений с использованием классических алгоритмов численных методов Эйлера и Рунге-Кутта четвертого порядка. Построение графика значений по методам дифференцирования.
Рубрика | Математика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 06.04.2014 |
Размер файла | 197,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное учреждение высшего профессионального образования
«Дальневосточный федеральный университет»
ИНЖЕНЕРНАЯ ШКОЛА
Кафедра электроэнергетики и электротехники
КУРСОВАЯ РАБОТА
«Решение алгебраических и дифференциальных уравнений в пакете MatLab»
Студент гр. Б3305зс
Жуков Андрей Николаевич
Руководитель Комлев А.В.
Владивосток 2014
Вариант 22
1 Вычислить с помощью файл - функции значения f1, f2, f3, f4, f5 из командного окна и из фал - программы:
а) задан один входной параметр
Результат f1 вывести в численной (в виде таблицы) и графической формах. При построении графиков использовать команды plot и fplot. Графики должны быть построены на одной координатной плоскости.
Файл - функции; fun.m
function f1 = fun(x)
f1 = log(abs(cos(x)))./log(1+x.^2);
Файл - программа; progrf1.m
clear all; clc;
fprintf('ТАБЛИЦА ЗНАЧЕНИЙ ФУНКЦИИ f1\n');
fprintf('----------------------------\n');
fprintf(' | x | f1 |\n');
fprintf('----------------------------\n');
x=[0.5:0.5:12.0];
f1=fun(x);
v=[x;f1];
fprintf(' | %6.3f | %6.3f |\n',v)
plot(x,f1,'r')
grid on
hold on
fplot('fun', [0.5 12.0])
title('Figure f1');
xlabel('x');
ylabel('f1');
legend('plot', 'fplot',4)
Рисунок 1 График значений f1
б) задано несколько входных параметров
Файл - функции; radf2.m
function f2 = radf2(x,y,z)
f2 = sqrt(2.*x+2*sqrt(y.^2-4))/sqrt(x.^2-4+z+2);
Файл - программа; progrf2.m
clear all; clc;
f2 = radf2(2,4,6)
Результат работы программы;
f2 =1.1688
б) задано несколько выходных параметров
Файл - функции; f345b.m
function [f3, f4, f5] = f(x)
f3 = 2*sqrt(x.^2+1);
f4 = cos(x./2);
f5 = 2*sin(x+1);
Файл - программа; progrf345.m
clear all; clc;
x=13;
[F3, F4, F5]=f345b(x)
Результат работы программы;
F3 = 26.0768, F4 = 0.9766, F5 = 1.9812
2. Решить дифференциальное уравнение двумя способами
а) с использованием классических алгоритмов численных методов Эйлера и Рунге - Кутта 4-го порядка;
Метод Эйлера
Файл - функции; Eiler_13
function[T,Y]=Eiler_13(y0,t0,t1,h)
N=(t1-t0)/h;
t(1)=t0;
y(1)=y0;
for i=1:N
t(i+1)=t(1)+h*i;
y(i+1)=y(i)+h*F13(t(i),y(i));
end;
T=t;
Y=y;
function f=F13(t,y)
a=0.5;
b=0.1;
x=(4/3)*exp(-(a*t));
f=x+b;
Файл - программа; progr13.m
clear all; clc;
h=0.5;
t0=1;
t1=10;
y0=0;
% нахождение численного решения задачи Коши
[T,Y]=Eiler_13(y0,t0,t1,h);
fprintf('ТАБЛИЦА ЗНАЧЕНИЙ по методу Эйлера\n');
fprintf('---------------------------------\n');
fprintf(' | T | Y |\n');
fprintf('---------------------------------\n');
v=[T;Y];
fprintf(' | %4.2f | %4.4f |\n',v);
grid on
hold on
plot(T,Y,'r-')
title('Figure Eiler');
xlabel('T');
ylabel('Y');
Результат работы программы;
Рисунок 2 График значений по методу Эйлера
Метод Рунге - Кутта 4-го порядка;
Файл - функции; rkutta.m
function[T,Y]=rkutta(y0,t0,t1,h)
N=(t1-t0)/h;
t(1)=t0;
y(1)=y0;
for i=2:N+1
t(i)=t(1)+h*(i-1);
k1=h*F13(t(i-1),y(i-1));
k2=h*F13(t(i-1)+h/2,y(i-1)+k1/2);
k3=h*F13(t(i-1)+h/2,y(i-1)+k2/2);
k4=h*F13(t(i-1)+h,y(i-1)+k3);
y(i)=y(i-1)+1/6*(k1+2*k2+2*k3+k4);
end;
T=t;
Y=y;
function f=F13(t,y)
a=0.5;
b=0.1;
x=(4/3)*exp(-(a*t));
f=x+b;
Файл - программа; progrrkutta.m
clear all; clc;
h=0.5;
t0=1;
t1=10;
y0=0;
% нахождение численного решения задачи Коши
[T,Y]=rkutta(y0,t0,t1,h);
fprintf('ТАБЛИЦА ЗНАЧЕНИЙ по методу Рунге-Кутта\n');
fprintf('--------------------------------------\n');
fprintf(' | T | Y |\n');
fprintf('--------------------------------------\n');
v=[T;Y];
fprintf(' | %4.2f | %4.4f |\n',v);
grid on
hold on
plot(T,Y,'r*')
Результат работы программы;
Рисунок 3 График значений по методу Рунге - Кутта
б) с использованием солвера ode45;
Файл - функции; fn.m
function f=fn(t,x)
a=0.5;
b=0.1;
x=(4/3)*exp(-(a*t));
f=x+b;
Файл - программа; progrfn.m
clear all; clc;
[T,Y]=ode45('fn',[1:0.5:10],[0]); %вызов солвера
fprintf('ТАБЛИЦА ЗНАЧЕНИЙ по солверу ode45\n');
fprintf('---------------------------------\n');
fprintf(' | T | Y |\n');
fprintf('---------------------------------\n');
[T,Y]
grid on
hold on
plot(T,Y)
title('Figure ode45');
xlabel('T');
ylabel('Y');
Результат работы программы;
Рисунок 3 График значений по солверу ode45
график дифференциальный уравнение эйлер
Рисунок 4 График значений по методам дифференцирования
Размещено на Allbest.ru
...Подобные документы
Практическое решение дифференциальных уравнений в системе MathCAD методами Рунге—Кутты четвертого порядка для решения уравнения первого порядка, Булирша — Штера - системы обыкновенных дифференциальных уравнений первого порядка и Odesolve и их графики.
лабораторная работа [380,9 K], добавлен 23.07.2012Решение дифференциальных уравнений. Численный метод для заданной последовательности аргументов. Метод Эйлера относиться к численным методам, дающим решение в виде таблицы приближенных значений искомой функции. Применение шаговых методов решения Коши.
дипломная работа [1,2 M], добавлен 16.12.2008Математическое объяснение метода Эйлера, исправленный и модифицированный методы. Блок-схемы алгоритмов, описание, текст и результаты работы программы. Решение обыкновенных дифференциальных (нелинейных) уравнений первого порядка с начальными данными.
курсовая работа [78,1 K], добавлен 12.06.2010Общая характеристика и особенности двух методов решения обычных дифференциальных уравнений – Эйлера первого порядка точности и Рунге-Кутта четвёртого порядка точности. Листинг программы для решения обычного дифференциального уравнения в Visual Basic.
курсовая работа [1,1 M], добавлен 04.06.2010Решение эллиптических и параболических дифференциальных уравнений в частных производных. Суть метода Кранка-Николсона и теории разностных схем для теплопроводности. Построение численных методов с помощью вариационных принципов, описание Matlab и Mathcad.
курсовая работа [1,4 M], добавлен 13.03.2011Численное решение уравнения методом Эйлера и Рунге-Кутта в Excel. Программа на языке Turbo Pascal. Блок-схема алгоритма. Метод Рунге-Кутта для дифференциального уравнения второго порядка. Модель типа "хищник-жертва" с учетом внутривидового взаимодействия.
курсовая работа [391,5 K], добавлен 01.03.2012Формирование системы их пяти уравнений по заданным параметрам, ее решение методом Гаусса с выбором главного элемента. Интерполяционный многочлен Ньютона. Численное интегрирование. Решение нелинейных уравнений. Метод Рунге-Кутта четвертого порядка.
контрольная работа [115,5 K], добавлен 27.05.2013Изучение методов Рунге-Кутты четвертого порядка с автоматическим выбором длины шага интегрирования для решения дифференциальных уравнений. Оценка погрешности и сходимость методов, оптимальный выбор шага. Листинг программы для ЭВМ, результаты, иллюстрации.
курсовая работа [2,9 M], добавлен 14.09.2010Теоретическое обоснование расчетных формул. Задача Коши для дифференциального уравнения первого порядка. Метод Рунге-Кутта. Ломаная Эйлера. Построение схем различного порядка точности. Выбор шага. Апостериорная оценка погрешности. Правило Рунге.
курсовая работа [111,1 K], добавлен 13.11.2011Виды дифференциальных уравнений: обыкновенные, с частными производными, стохастические. Классификация линейных уравнений второго порядка. Нахождение функции Грина, ее применение для решения неоднородных дифференциальных уравнений с граничными условиями.
курсовая работа [4,8 M], добавлен 29.04.2013Основные методы Рунге-Кутта: построение класса расчетных формул. Расчетная формула метода Эйлера. Получение различных методов Рунге-Кутта с погрешностью второго порядка малости при произвольном задавании параметров. Особенности повышения порядка точности.
реферат [78,4 K], добавлен 18.04.2015Решение систем линейных алгебраических уравнений методом исключения Гаусса. Табулирование и аппроксимация функций. Численное решение обыкновенных дифференциальных уравнений. Приближенное вычисление определенных интегралов. Решение оптимизационных задач.
курсовая работа [1,6 M], добавлен 21.11.2013Неизвестная функция, ее производные и независимые переменные - элементы дифференциального уравнения. Семейство численных алгоритмов решения обыкновенных дифференциальных уравнений, их систем. Методы наименьших квадратов, золотого сечения, прямоугольников.
контрольная работа [138,9 K], добавлен 08.01.2016Анализ методов решения систем дифференциальных уравнений, которыми можно описать поведение материальных точек в силовом поле, законы химической кинетики, уравнения электрических цепей. Этапы решения задачи Коши для системы дифференциальных уравнений.
курсовая работа [791,0 K], добавлен 12.06.2010Решение нелинейных уравнений методом касательных (Ньютона), особенности и этапы данного процесса. Механизм интерполирования функции и численное интегрирование. Приближенное решение обыкновенных дифференциальных уравнений первого порядка методом Эйлера.
курсовая работа [508,1 K], добавлен 16.12.2015Предмет и методы изучения дифференциальной векторно-матричной алгебры, ее структура. Векторное решение однородных и неоднородных дифференциальных уравнений. Численное решение векторно-матричных уравнений. Формулы построения вычислительных процедур.
реферат [129,3 K], добавлен 15.08.2009Решение дифференциальных уравнений с разделяющимися переменными, однородных, линейных уравнений первого порядка и уравнений допускающего понижение порядка. Введение функций в решение уравнений. Интегрирование заданных линейных неоднородных уравнений.
контрольная работа [92,7 K], добавлен 09.02.2012Получение точного решения дифференциального уравнения вручную, операторным методом, приближенное решение с помощью рядов (до 5 элемента ряда) на заданном интервале, графическое решение. Относительная и абсолютная погрешность методов Эйлера и Рунге-Кутты.
курсовая работа [990,8 K], добавлен 17.07.2014Решение задачи Коши для дифференциального уравнения. Погрешность приближенных решений. Функция, реализующая явный метод Эйлера. Вычисление погрешности по правилу Рунге. Решение дифференциальных уравнений второго порядка. Условие устойчивости для матрицы.
контрольная работа [177,1 K], добавлен 13.06.2012Основные понятия теории погрешностей. Приближенное решение некоторых алгебраических трансцендентных уравнений. Приближенное решение систем линейных уравнений. Интерполирование функций и вычисление определенных интегралов, дифференциальных уравнений.
методичка [899,4 K], добавлен 01.12.2009