АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Plot(t,x),grid,title('Пример 3.1'),legend('X1','X2')

Решение обыкновенных дифференциальных уравнений в MATLAB.

Для решения обыкновенных дифференциальных уравнений (ODE) могут быть применены численные методы, которые в MATLAB реализованы в специальных функциях-решателях:ode45, ode23, ode113.

 

Общий порядок программирования:

1) Создается М-функция с описанием правых частей дифференциальных уравнений;

2) Создается М-сценарий с выбранным решателем;

 

Пример 1. Решить следующую систему обыкновенных дифференциальных уравнений с заданными начальными условиями:

% Программа решения примера 1

% Создаем М-функцию под именем dif31.m

function dx31=dif31(t,x);

dx31=[-x(1)+2;2*x(1)^2-0.5*x(2)];

% Создаем М-сценарий под именем ddd45_31.m

% Сценарий решения с помощью ode45

T=[0 15]; % Интервал интегрирования

x0=[10;5]; % Начальные условия

[t,x]=ode45('dif31',T,x0); %t, x — выходные переменные решателя ode45

plot(t,x),grid,title('Пример 3.1'),legend('X1','X2')

 

% Изменить начальные условия:

% Изменить интервал интегрирования: от 0 до 20, от 0 до 7.

% Вывести графические результаты с различным начертанием координат

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

 

Пример 2. Решить следующую систему линейных дифференциальных уравнений с заданными начальными условиями:

% Создаем М-функцию с именем dif32.m

function f=dif32(t,x); % t, x — входные переменные для М-функции

f=[-3*x(1)+10;x(1)-2*x(2);4*x(2)-x(3)];

 

%Создаем М-сценарий под именем ddd45_32

% Сценарий решения примера 2

T=[0,12];

x0=[0;0;0]; % x0 — вектор начальных условий

[t,x]=ode45('dif32',T,x0);


1 | 2 | 3 | 4 | 5 | 6 | 7 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)