Need help plotting a set of differential equations.
2 views (last 30 days)
Show older comments
Adriel Martinez-Alvarez
on 24 Apr 2017
Commented: Adriel Martinez-Alvarez
on 24 Apr 2017
I would like to know how to plot 2 differential equations for the height for t= 120 seconds where A = 30 in and K = 1.4. The equations are as follows:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/163282/image.png)
1 Comment
John Chilleri
on 24 Apr 2017
You need initial conditions, but I'll attach a version with arbitrary initial conditions in a minute.
Accepted Answer
John Chilleri
on 24 Apr 2017
Hello,
You can use the built-in ode45 function to solve this:
clear all
close all
clc
%
% Initialize time span
tspan = [0 120];
%
% Set initial conditions
init = [1; 1];
%
% Initialize constants
A = 30;
K = 1.4;
%
% Call ode45 to solve differential equations
[tout, hout] = ode45(@hfunctions, tspan, init);
%
% Plot results
figure(1)
hold on
plot(tout,hout(:,1),'r')
plot(tout,hout(:,2),'b')
title('Differential Equations Example')
xlabel('t')
ylabel('h')
legend('h_{tor}','h_{prop}')
where you also have a function in your directory named hfunctions:
function hdot = hfunctions(~,h)
hdot = 1.4*sqrt(h(1))/30;
hdot(2,1) = 1.4*h(2)/30;
end
hfunctions solves for the derivative, that is, htor' and hprop'.
The resulting plot (with my arbitrary initial conditions 1 and 1) is,
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/175605/image.png)
Hope this helps!
More Answers (0)
See Also
Categories
Find more on Ordinary Differential Equations in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!