Как решить связанное дифференциальное уравнение в Matlab с помощью ode45

У меня есть два дифференциальных уравнения: da/dt=a(.3/a^3+.7)^1/2 и dτ/dt=1/a. Начальные условия: t=0; а = 1 и т = 0 соответственно. Как я могу решить уравнения в Matlab? Мне нужно рассчитать различные значения a, t и τ, а также построить график τ против a. Благодарю.

1 ответ

Это довольно просто.

Сначала напишите функцию для реализации вашего дифференциального уравнения и сохраните его с именем файла, соответствующим имени функции:

function dy = my_ode(t,y)
dy(1) = y(1)*(0.3/y(1)^3 + 0.)^(1/2); % a
dy(2) = 1/dy(1); % tau

Затем в MATLAB, позвоните ode45 решай со своей функцией

[t,y] = ode45(@my_ode,[0 10],[1; 0]);

Это результат:

введите описание изображения здесь

Другие вопросы по тегам