I want to plot Vcr as a function of m. In the solution of the program it is obtained that Vcr is
Vcr= 0 1 2 3 4
so something should appear, but I get this (nothing):
I don't know where and how I have to put the function plot in the code to obtain what I want. Here is the code:
close all
s=input('Introduce s(1-40): ');
n=input('Introduce n (1-100): ');
t=1000;
mf=zeros(1,s);
Vf=zeros(s,n);
cf=zeros(s,n,t);
Vcr=zeros(1,s);
Ccr=zeros(1,s);
syms c V m;
F=-m+V+c+i*(m-V-c);
Re=real(F)
Im=imag(F)
for h=1:s
mf(h)=h;
m=mf(h);
for j=1:n
Vf(h,j)=j;
V=Vf(h,j);
PRe=subs(Re) ;
d=0.01 ; %step size
D=20;
Nvec=[1:d:D];
step=length(Nvec);
for g=1:step
cf(h,j,g)=g;
c=cf(h,j,g);
Prec=subs(PRe);
if Prec>-0.0001 && Prec<0.0001
cr=c;
break
else
cf(h,j,g)=cf(h,j,g);
end
end
PImag=subs(Im)
if PImag==-1900
Vcr(1,h)=V;
Ccr(1,h)=c;
else
Vf(h,j)=Vf(h,j);
end
end
end
disp ('Las velocidades de migración son: ')
Ccr
disp('las velocidades criticas son: ' )
Vcr
plot(m,Vcr)
Thank you for your help!

 Réponse acceptée

Purushottama Rao
Purushottama Rao le 4 Mai 2015

0 votes

IN your m-file, m results in a scalar value. Whereas Vcr is an array.
Replace the plot command with plot(1:m,Vcr) or plot(0:m-1,Vcr)

1 commentaire

Lorena Ortiz
Lorena Ortiz le 4 Mai 2015
Thank you Purushottama Rao for your help! Now I get the result that I wanted.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Line Plots dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by