matlab求助y(i)=minus(i,1).*10^(-9);time(i)=cross_time(i)-y(i);Jee=max(time)-min(time);reason:Error using - Matrix dimensions must agree.应该怎么改

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/24 04:41:17
matlab求助y(i)=minus(i,1).*10^(-9);time(i)=cross_time(i)-y(i);Jee=max(time)-min(time);reason:Errorusin

matlab求助y(i)=minus(i,1).*10^(-9);time(i)=cross_time(i)-y(i);Jee=max(time)-min(time);reason:Error using - Matrix dimensions must agree.应该怎么改
matlab求助
y(i)=minus(i,1).*10^(-9);
time(i)=cross_time(i)-y(i);
Jee=max(time)-min(time);
reason:
Error using -
Matrix dimensions must agree.
应该怎么改

matlab求助y(i)=minus(i,1).*10^(-9);time(i)=cross_time(i)-y(i);Jee=max(time)-min(time);reason:Error using - Matrix dimensions must agree.应该怎么改
本人E文也不咋滴,大致翻译一下这个warning(我猜应该不是报错,只是警告信息):变量m在每次循环时都会改变数组大小,请考虑提前分配好数组大小以提高速度.  在matlab中,改变数组大小(或许叫矩阵大小也许更合适)是很耗时间的工作,所以就有了这行警告,楼主应该在代码开始时没有为m变量做合理的初始化.可以在一开始加一行代码: 恚剑澹颍铮螅ǎ保保埃埃弧⌒Ч俏砀持滴毙校保埃傲械模熬卣螅换蛘哂谩 .恚剑铮睿澹螅ǎ?406100); 为m赋值为1行100列的1矩阵284  然后再运行上面的代码应该就不会有这个warning了.  不过建议楼主在matlab中尽量少用for循环,毕竟matlab中文名叫“矩阵实验室”,对矩阵的操作比for效率要高很多,比如上面的for循环完全可以用 m = m + 1; 来代替,不过前提是m得是一个赋好初值的1行100列的矩阵.