How to plot for a different initial values at same time
Mostrar comentarios más antiguos
I need help how to plot for a different initial values of v0 at same time.
if
zspan=[0,400];
v0=[1;0.01;0.12;]; % Initial values
% Creating a matrix
zsol = [];
v1sol = [];
v2sol = [];
v3sol = [];
options=odeset('RelTol',1e-2,'AbsTol',1e-6,'Events',@events);
[t,v] = ode45(@(t,v)rhs(t,v), zspan, v0,options);
zsol = [zsol;t];
v1sol = [v1sol;v(:,1)];
v2sol = [v2sol;v(:,2)];
v3sol = [v3sol;v(:,3)];
figure(1)
plot(abs(v1sol),zsol,'r')
xlabel('Volume Flux, V')
ylabel('Height, z')
grid on ;
figure (2)
plot(abs(v2sol),zsol,'g')
xlabel('Momentum Flux, M')
ylabel('Height, z')
grid on ;
function [rho, Nsqr]=density1(z)
%%Data for density with respect to depth
zval= [2 3 5 7 10 15 20 25 30 40 50 60 70 80 90 100 125 150 160 175 200 225 250 275 300 325 350 375 400];
rho1 = [17.2731684 17.1649375 21.43455647 22.4140625 23.86332207 24.3746967 24.70487685 24.6003125 24.8933125 25.42772826 26.03220776 26.439625 26.8151875 26.86830797 27.1949375 27.34406944 27.5551875 27.728625 27.23423729 27.88542857 27.752249049 28.1025 28.2415 28.37 28.05366667 28.6565 28.7755 28.898 29.013];
rho0=29;
g=9.8;
zvala=400-zval;
zvalue=fliplr(zvala);
rho2=fliplr(rho1);
rho3=smoothdata(rho2,'lowess',6);
rho=interp1(zvalue,rho3,z);
rho4=interp1(zvalue,rho3,z+0.1);
Nsqr=(-g./rho0).*(rho4-rho);
end
function parameters=rhs(z,v)
[~,Nsqr]=density1(z);
alpha=0.116;
dV= 2*alpha*sqrt(v(2));
dM= (v(1).*v(3))./v(2);
dF= -Nsqr.*v(1);
parameters=[dV;dM;dF];
end
function [value, terminate, direction] = events(t,v)
value = v(1);
terminate=1;
direction=0;
end
end
Respuesta aceptada
Más respuestas (1)
Morteza Hajitabar Firuzjaei
el 30 de En. de 2018
0 votos
you can name both plot as figure(1)
Morteza Hajitabar Firuzjaei
5 comentarios
Dereje
el 30 de En. de 2018
Morteza Hajitabar Firuzjaei
el 30 de En. de 2018
i don't understand your goal! ask your question clearly
Dereje
el 30 de En. de 2018
Torsten
el 30 de En. de 2018
Call ode45 in a loop, save the results from each run in a cell matrix and plot the results after MATLAB exited the loop.
Best wishes
Torsten.
Dereje
el 30 de En. de 2018
Categorías
Más información sobre Mathematics en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!