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

Plot(t1,x1(:,1),'r'),grid,,hold on,plot(t2,x2(:,1),'k'),

legend('x1','x1-a1'),title('Ур-е Ван-дер-Поля.a1=[0.5,0.000001]')

 

% Поскольку система уравнений Ван-дер-Поля имеет взаимозависимые координаты, то интегрирование осуществляется практически с наименьшей погрешностью, т.е. с 0.000001

 

Задание к примеру 3.

— Применить скаляр абсолютной погрешности: 0.3, 0.1, 0.01.

— Вывести график по 2-й координате.

 

 

3. Интегрирование дифференциальных уравнений с параметрами.

 

Пример 4. Проинтегрировать однородную систему нелинейных дифференциальных уравнений с четырьмя параметрами k1, k2, k3, a:

 

при следующих начальных условиях:

Целью является анализ решений при различных параметрах, входящих в систему.

% Создадим М-функцию под именем dif44 с ключевым словом flag

function f66=dif66(t,x,flag,k1,k2,k3,a);

switch flag % Начало процедуры описания правых частей дифуравнений

case '' % Состояние flag с опциями по умолчанию

f66=[k1*x(2)*x(3);k2*(x(1)+a)*x(3);k3*x(2)*x(1)];

end % Окончание описания правых частей дифуравнений с опциями по умолчанию

 

% Создадим М-сценарий под именем syst44 для решателя ode23 c опциями по умолчанию

% и введения параметров

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

tt=[0,25]; % Интервал интегрирования

k1=input('k1=')%2.333; % Можно также k1=2.333;

k2=input('k2=')%-0.7789; % Можно также k2=-0.7789;

k3=input('k3=')%-0.7888; % Можно также k3=-0.7888;

a=input('a=')%-0.1; % Можно также a=-0.1;

[t,x]=ode23('dif66',tt,x0,[],k1,k2,k3,a);


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

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



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