Need help plotting a set of differential equations.

2 visualizzazioni (ultimi 30 giorni)
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:
  1 Commento
John Chilleri
John Chilleri il 24 Apr 2017
You need initial conditions, but I'll attach a version with arbitrary initial conditions in a minute.

Accedi per commentare.

Risposta accettata

John Chilleri
John Chilleri il 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,
Hope this helps!

Più risposte (0)

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by