| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 704 人关注过本帖
标题:[求助]我的算法居然使MATLAB无修止地算下去
只看楼主 加入收藏
app21701appp
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2007-5-6
收藏
 问题点数:0 回复次数:3 
[求助]我的算法居然使MATLAB无修止地算下去

我把两个矩中的元素一一对应求平方后再相加再开方。

u1uneven和u1even都是309641*1的非零矩阵,


for i=1:309641
parray=sqrt(u1uneven(i)*u1uneven(i)+u1even(i)*u1even(i));
end


我运行上面程序后结果MATLAB就无修止地算下去,3个多小时都没算完。
大哥大姐能告诉我我错在哪里了吗?
谢谢你们了!!!!!!!!!!
希望你们尽快回复!!很急!!

搜索更多相关主题的帖子: MATLAB 算法 parray sqrt 
2007-06-01 11:58
尘埃122
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:127
专家分:0
注 册:2006-8-31
收藏
得分:0 

如果走循环,超过万次的MATLAB循环 计算会比较费时,不是程序的错误,只是需要优化

你可以用矩阵中数值的计算来求取,那样效率会高些

parray=sqrt(u1uneven.^2+u1uneven.^2);

你直接用这个计算,试试


呵呵,补充:如果你用parray=sqrt(u1uneven(i)*u1uneven(i)+u1even(i)*u1even(i))这个来计算,parray的下标也该随着改变,不然最后的结果都只有一个数值;





2007-06-01 12:43
app21701appp
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2007-5-6
收藏
得分:0 
谢谢版主大哥,我这次的毕业设计是我大学以来第一次也是最后一次编程,所以我很没经验,连MATLAB有些内容都是刚刚学的。谢谢!!!!!!!!!!!!
2007-06-01 12:54
尘埃122
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:127
专家分:0
注 册:2006-8-31
收藏
得分:0 
你这谢得……

呵呵,有事没事常来版里走走


2007-06-01 13:02
快速回复:[求助]我的算法居然使MATLAB无修止地算下去
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032887 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved