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 | Поиск по сайту:
|