필터 지우기
필터 지우기

Subscript indices must either be real positive integers or logicals.

조회 수: 1 (최근 30일)
David
David 2013년 12월 4일
댓글: David 2013년 12월 4일
I am running this code an keep hitting this error when running the code. It occurs in line 36. The suggestions said it is matrix or vector related so i have indexed and called any variable as a constant yet it still occurs.
Pc = 2.74e6;
Tc = 530.3;
count=0;
yellow=0;
T = [100:.1:1000];
Pr = [0.02, 0.50, 1.0, 2.0];
P = Pc.*Pr;
V = 1:length(T);
acen = .333;
R = 8.3145;
b = 0.0778*R*Tc/Pc;
Cp_IG = (1:length(T));
colors = ['y' 'm' 'r' 'c'];
colorindx = 1;
hold on;
for Puse = P
n = 1;
Cp = 1:length(T);
yellow=yellow+1;
for Tuse = T;
a =3.243943838*(1.858281421-0.3727046432e-1*sqrt(Tuse))^2 ;
Vest1 = R*Tuse/Puse;
Vest2 = R*Tuse/(Puse+(a/(Vest1*(Vest1 + b)+b*(Vest1-b))))+b;
while abs((Vest1-Vest2))/Vest1 > .0001
Vest1 = Vest2;
Vest2 = R*Tuse/(Puse+(a/(Vest1*(Vest1 + b)+b*(Vest1-b))))+b;
end
t=abs(Tuse);
V(n) = Vest2;
v=abs(Vest2)
ts=sqrt(t);
count=count+1
if v>.00014;
z= -t*(8.314/(v-0.1251897785e-3)+(.1209032931*(1.858281421-0.3727046432e-1*sqrt(t)))/((v(v+0.1251897785e-3)+0.1251897785e-3)*sqrt(t)))^2/(-8.314*t/(v-0.1251897785e-3)^2+3.243943838*(1.858281421-0.3727046432e-1*sqrt(t))^2*(v+0.1251897785e-3)/(v(v+0.1251897785e-3)+0.1251897785e-3)^2)+t*(8.314000000*ln(v-0.1251897785e-3)-(.40274*(sqrt(t)*atan(89.3763*v+0.55945e-2)-49.8594*atan(89.3763*v+0.55945e-2)))/sqrt(t))-12.253+.8642*t-0.6289e-3*t^2+1.836000000*10^(-7)*t^3;
x= 0;
c= 0;
Cp(n)=z+x+c;
else
Cp(n)=0;
end;
n = n+1;
end;
semilogy(T, Cp, colors(colorindx));
colorindx = colorindx+1;
end;
  댓글 수: 1
Jan
Jan 2013년 12월 4일
Which one is "line 36"? Please do not let us count lines, when you have this information directly available in the error message.

댓글을 달려면 로그인하십시오.

채택된 답변

sixwwwwww
sixwwwwww 2013년 12월 4일
replace line 36 with the following line:
z= -t * (8.314 / ( v - 0.1251897785e-3) + (.1209032931 * (1.858281421 - 0.3727046432e-1 * sqrt(t))) / ((v * (v + 0.1251897785e-3) + 0.1251897785e-3) * sqrt(t)))^2 / (-8.314 * t / (v - 0.1251897785e-3)^2 + 3.243943838 * (1.858281421 - 0.3727046432e-1 * sqrt(t))^2 * (v + 0.1251897785e-3) / (v * (v+0.1251897785e-3)+0.1251897785e-3)^2)+t*(8.314000000*log(v-0.1251897785e-3)-(.40274*(sqrt(t)*atan(89.3763*v+0.55945e-2)-49.8594* atan(89.3763*v+0.55945e-2)))/sqrt(t))-12.253+.8642*t-0.6289e-3*t^2+1.836000000*10^(-7)*t^3;
you were making few syntax mistakes in it

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Modeling에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by