请教关于下标问题
一个很基本的问题,但突然不明白错在哪里,请各位指点:xi=[ 1 2 3 4];
eta=;
a=...
b=...
for I = 1:4
for J = 1:4
w11(I,J) = b/a(xi(I)*xi(J))*(1+eta(I)*eta(J)/3)... (*)
+(1-Pr)*a/2/b*eta(I)*eta(J)*(1+xi(I)*xi(J));
...
end
end
运行的时候它指着(*)这一行说:
??? Subscript indices must either be real positive integers or logicals.
我实在不清楚这样引用出了什么问题,下标都是1:4的正数.
谢谢! b/a(xi(I)*xi(J)),a是函数吗?如果不是,那就漏掉了一个符号 对哦,我不小心漏打了运算符号.竟然还一直都没有看出来,汗~
谢谢! 还是那个循环里面的问题:
for I = 1:4
for J = 1:4
w11(I,J) = b/a*(xi(I)*xi(J))*(1+eta(I)*eta(J)/3)... (*)
+(1-Pr)*a/2/b*eta(I)*eta(J)*(1+xi(I)*xi(J));
...
end
end
说(*)这一行:
??? Index exceeds matrix dimensions.
但是我前面定义的xi和eta都是1*4的数组,下标引用也是到4为止.请教这里会有什么问题?
谢谢!
[ 本帖最后由 shuitumu 于 2006-12-9 18:32 编辑 ]
回复
不太喜欢这种提问方式(遮掩得太严实), 猜测都很难,何况找错误. 找到了一个错误, 即:%%% xi = [-1 1 1 -1];%%%语句,
和%%% xi = Coord(1,i); %%%以及%%%w11(I,J) = b/a*(xi(I)*xi(J))...%%%似乎存在混乱. 原帖由 shuitumu 于 2006-12-9 16:04 发表
一个很基本的问题,但突然不明白错在哪里,请各位指点:
xi=;
eta=;
a=...
b=...
for I = 1:4
for J = 1:4
w11(I,J) = b/a(xi(I)*xi(J))*(1+eta(I)*eta(J)/3)... (*)
...
自己仔细调试一下看看哪个数组的下标越界访问了
页:
[1]