With theta1(0)=0.1, theta2(0)=0.3, theta3(0)=0.2 , I have to plot the solution in the range of [0.1] all in one graph.
I have no idea how to do this:
diff(theta1)=1+sin(theta2-theta1);
diff(theta2)=1+sin(theta1-theta2)+sin(theta3-theta2);
diff(theta3)=1+sin(theta2-theta3);
ezplot(
Please help

 Réponse acceptée

Ameer Hamza
Ameer Hamza le 4 Nov 2020
Modifié(e) : Ameer Hamza le 4 Nov 2020
Use ode45() for estimating a numerical solution
IC = [0.1, 0.3, 0.2];
tspan = [0 1];
[t, thetas] = ode45(@odeFun, tspan, IC);
plot(t, thetas);
legend({'\theta_1', '\theta_2', '\theta_3'}, 'FontSize', 16, 'Location', 'best');
function dthetas = odeFun(t, thetas)
theta1 = thetas(1);
theta2 = thetas(2);
theta3 = thetas(3);
dtheta1 = 1+sin(theta2-theta1);
dtheta2 = 1+sin(theta1-theta2)+sin(theta3-theta2);
dtheta3 = 1+sin(theta2-theta3);
dthetas = [dtheta1; dtheta2; dtheta3];
end

Plus de réponses (0)

Catégories

En savoir plus sur Programming dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by