matlab运行出错 Index exceeds matrix dimensions.

如题所述

第1个回答  2011-11-10
指数超过矩阵的维数,可能是因为运行次数过多,而导致数据重复使用出错的,建议运行 clear 然后重新将原程序粘贴进来运行!
第2个回答  2011-10-31
索引值超出矩阵或向量的范围了,通常是循环控制变量的范围设置不正确引起的。具体的可以粘贴代码分析。追问

代码粘不上来,有点大。可否留个联系方式,邮箱什么的。不胜感激

追答

不用整个代码,就是提示出错的附近的就OK了

追问

还是留个QQ什么的吧,我改半天又有错, 积分错误,我用int编的,
int(k1*sqrt(m11*m22-m2*l1*d2*cos(x(3)-sk)*m2*l1*d2*cos(x(3)-sk))/sqrt(m11),sk,0,u(2));
Error in 'wholesys/S-Function1' while executing M-File S-function 'observer', flag = 3 (output), at time 0. MATLAB error message: Undefined function or variable 'sk'.
observer是我编的S函数

追答

Undefined function or variable 'sk'.变量没有定义

第3个回答  2011-10-31
你定义的矩阵超过设定的维数了
第4个回答  2011-11-11
一般不要轻易用全局变量,将其他VI中的某些控件设置成显示控件输出,让在待显示VI的程序框图中调用其它VI,连接到显示控件就可以了。本回答被提问者采纳
第5个回答  2011-11-04
矩阵下标 越界

MATLAB 中 Index exceeds matrix dimensions.错误
MATLAB 中 Index exceeds matrix dimensions错误,是代码错误造成的,解决方法如下:1、启动MATLAB,新建脚本(Ctrl+N),输入以下代码。2、保存和运行上述脚本,弹出错误对话框。错误信息为:这是默认错误字符串(this is the default error string)。对话框名字为:错误对话框(error dialog)。3、接着...

matlab中index exceeds matrix dimension是什么意思?
Index exceeds matrix dimensions.翻译成中文就是 指数超过矩阵维度。意思就是,你矩阵加入定义的矩阵A是 3乘3的矩阵,你在程序里,写了一个 B=A(4,3);这样的话,Matlab就找不到这第四行第三列的数据,因为你定义的A就三行三列;比如如下代码,你可以试试:M= magic(4);M(6,6)输出的就...

MATLAB 中 Index exceeds matrix dimensions.错误
MATLAB 中 Index exceeds matrix dimensions错误,是代码错误造成的,解决方法如下:1、启动MATLAB,新建脚本(Ctrl+N),输入以下代码。2、保存和运行上述脚本,弹出错误对话框。错误信息为:这是默认错误字符串(this is the default error string)。对话框名字为:错误对话框(error dialog)。3、接着...

...y坐标,提示Index exceeds matrix dimensions.是软件问题?
matlab提示Index exceeds matrix dimensions.的意思是索引超过矩阵的尺寸。出现这个提示,我觉得可能是电脑内存配置偏低。在matlab2016a上可以运行给出的代码。运行结果如下

matlab运行出错 Index exceeds matrix dimensions.
指数超过矩阵的维数,可能是因为运行次数过多,而导致数据重复使用出错的,建议运行 clear 然后重新将原程序粘贴进来运行!

Matlab计算Index exceeds matrix dimensions. 为什么???
你这里面的问题是相乘的时候矩阵维数不匹配 比如这个(3.054+16.7*h*w),h=25,而w为100行100列的矩阵,这样相乘是有问题的,所以就出现Matlab计算Index exceeds matrix dimensions,不知道你的要求,你可以把h改为100行100列的对角线为25的矩阵,即h=h*eye(100,100);再用h*w ...

Matlab错误提示:Index exceeds matrix dimensions.怎么弄呢?_百度知 ...
1、某行只有一个字符(例如本来应该是空行的,但有一个空格);2、fgetl到达文件结尾,会返回-1。这类情况都会导致你遇到的数组越界问题。修改建议:确保不出错的做法是,把 if isempty(Curline)改成 if length(Curline) >= 11其中的数字11根据需要改成你在else分支中需要用到的长度。

...就弹出Index exceeds matrix dimensions.请大神帮忙看看,感激不尽...
1、出错原因:在对 j 的循环里,下面这句:sum(j)=sum(j)+Y;在第一次循环就用到了sum(2),但sum并没有定义,所以会出现数组越界的错误。2、解决方法:由于不知道你的算法和那句“sum(j)=sum(j)+Y”的意图,没法给你更好的建议。如果只是为了让程序运行,在循环外面加一句 sum=zeros(1000...

...程序总是提示“Index exceeds matrix dimensions.”该怎样改程序才能...
t 要初始化为数组,将for前面一句“t(1)=0;”换为“t=zeros(1,mmax);”

matlab中出现这样的提示:Index exceeds matrix dimensions._百度...
这个情况引起的原因只有一个 那就是下标越界。检查你的循环结构吧,有时候循环变量的值经过某些运算之后代入矢量的下表中,就会引起越界。

相似回答
大家正在搜