# Plot differential equations with respect to two variables in a 3d plane

8 views (last 30 days)
UserCJ on 26 Apr 2022
Commented: UserCJ on 28 Apr 2022
I have a system of three differential equations and coded as follows.
I have a seperate function "first_term.m" to create the first part of the equation and another function "second_term.m" to create the second part. And then there is another function "add_RHS.m" to combine both these terms and pass it to ModelRHS(t,x,param).
Here's my add_RHS.m function that defines model equations.
if some condition > 0
dxdt(j) = dxdt(j) + first_term ;
end
if some condition < 0
dxdt(j) = dxdt(j) + second_term ;
end
Both these first and second terms consist of and . I need to plot vs vs in a 3D plane. Can someone plese suggest a way to do this? Simulation for this system of differential equations is given below.
editparams; %file that contains parameters
Tend = 100;
Nt = 100;
% Define RHS functions
RHS = @(t,x)RHS(t,x,param);
%Execution-----------------------------------------------------------------
x0 = [0.004, 0.05, 0.1]; %Initial condition
t = linspace(0,Tend,Nt); %TSPAN
[t, A] = ode45(RHS, t, x0);
##### 2 CommentsShowHide 1 older comment
UserCJ on 26 Apr 2022
No, I'm looking more likely for a surface plot.

Davide Masiello on 26 Apr 2022
Edited: Davide Masiello on 26 Apr 2022
UserCJ on 28 Apr 2022
Thanks @Torsten. Yes, I did. It took so long to get in here!

Bruno Luong on 27 Apr 2022
Edited: Bruno Luong on 27 Apr 2022
%editparams; %file that contains parameters
Tend = 10;
Nt = 100;
% Define RHS functions
RHS = @(t,x) sin(t).*x.^2;
%Execution-----------------------------------------------------------------
x0 = rand; %Initial condition
t = linspace(0,Tend,Nt); %TSPAN
[t, x] = ode45(RHS, t, x0);
close all
tgrid = t;
Nx = 60;
xgrid = linspace(min(x),max(x),Nx);
[T,X] = meshgrid(tgrid,xgrid);
DXDT = RHS(T,X);
surf(tgrid,xgrid,DXDT);
hold on
dxdt = RHS(t,x);
plot3(t,x,dxdt,'r','Linewidth',3);
Bruno Luong on 27 Apr 2022
editparams
if some type of edge
if another type of edge
introduce parameters
I would said modify my code to
Do something with your RHS to compute DXDT correctly

R2021b

### Community Treasure Hunt

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

Start Hunting!

Translated by