Plotting in for loop by adding second dimension to the variables

1 vue (au cours des 30 derniers jours)
Meva
Meva le 31 Mai 2016
Commenté : Meva le 31 Mai 2016
Hello, I need to plot H,u at times
t=0.1, 0.2, 0.3, ...1
in the same plot over a range of time. I know below code is wrong but how can I fix it?
dt=0.01;
Nx = 101;
Nt= 101;
t=0;
H=zeros(1, Nx);
u=zeros(1, Nx);
for nt=1:Nt % time loop
t=(nt-1)*dt;
for i=1:Nx
H(i) = ...
u(i) = ...
end
for ntstep=1:10
t=(ntstep-1)*10*dt;
newH(ntstep,1:Nx)=H(1:Nx);
newu(ntstep,1:Nx)=u(1:Nx);
end
end
for i=1:10
hold on;
figure (1);
hplot1 = plot(x,newH(i,1:Nx),'lineWidth',1.3);
hold on
hplot1 = plot(x,newu(i,1:Nx),'lineWidth',1.3);
hold on
end
  1 commentaire
Meva
Meva le 31 Mai 2016
Hello,
I have changed the code as below:
dt=0.01;
Nx = 101;
Nt= 101;
t=0;
H=zeros(1, Nx);
u=zeros(1, Nx);
for nt=1:Nt % time loop
t=(nt-1)*dt;
for i=1:Nx
H(i) = ...
u(i) = ...
end
for k=1:10
if k*0.1 == nt
newH(k,1:Nx)=H(1:Nx);
newu(k,1:Nx)=u(1:Nx);
else
continue
end
end
end
for i=1:10
hold on;
figure (1);
hplot1 = plot(x,newH(i,1:Nx),'lineWidth',1.3);
hold on
hplot1 = plot(x,newu(i,1:Nx),'lineWidth',1.3);
hold on
end

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by