24小时热门版块排行榜    

查看: 1267  |  回复: 3
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

lijunjiexm

铁虫 (小有名气)

[求助] 求助一简单matlab程序的出错问题,谢谢

如下m文件,为什么在命令窗口运行 出现错误提示:
>> A=mesh2d2(10)
??? Index exceeds matrix dimensions.
Error in ==> mesh2d2 at 8
A = sparse (ii(keep), jj(keep), xx(keep));
>>
请大家指点,谢谢!

%%%%%%%%%%%%%%%%%%%%%%%
function A = mesh2d2 (n)
% create an n-by-n 2D mesh for the 2nd difference operator
nn = 1:n^2 ;
ii = [nn-n ; nn-1 ; nn ; nn+1 ; nn+n] ;
jj = repmat (nn, 5, 1) ;
xx = repmat ([-1 -14-1-1]',1, n^2) ;
keep = find (ii >= 1 & ii <= n^2 & jj >= 1 & jj <= n^2) ;
A = sparse (ii(keep), jj(keep), xx(keep));
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

peony1303

金虫 (初入文坛)

【答案】应助回帖

★ ★
余泽成(金币+2): 谢谢参与应助! 2011-11-26 23:43:44
function A = mesh2d2 (n)
% create an n-by-n 2D mesh for the 2nd difference operator
nn = 1:n^2 ;
ii = [nn-n ; nn-1 ; nn ; nn+1 ; nn+n] ;
jj = repmat (nn, 5, 1) ;
xx = repmat ([-1 -14-1-1]',1, n^2) ;
[keep1,keep2]= find (ii >= 1 & ii <= n^2 & jj >= 1 & jj <= n^2) ;
keep=[keep1 keep2];
% A = sparse (ii(keep), jj(keep), xx(keep));
A1 = sparse (ii(keep));
A2 = sparse (jj(keep));
A3 = sparse (xx(keep));
Welcomeyou,welcomeme!!
4楼2011-11-26 23:20:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 4 个回答

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★
余泽成(金币+2): 谢谢参与应助! 2011-11-26 23:43:22
??? Index exceeds matrix dimensions.
下标越界错误

在mesh2d2中的第八行之前,第七行之后的分号去掉
运行一次,把keep这个下标打印出来看,是不是没有find到,keep是0啊
导致在做稀疏矩阵A的时候ii(keep)访问矩阵的0号元素(不存在),因为matlab的矩阵下标从1开始的
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2011-11-26 17:53:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

peony1303

金虫 (初入文坛)

【答案】应助回帖

★ ★
余泽成(金币+2): 谢谢参与应助! 2011-11-26 23:43:34
把最后一行“A = sparse (ii(keep), jj(keep), xx(keep)); ”转换成
A = sparse (ii(keep));
A = sparse (jj(keep));
A = sparse (xx(keep));
再试试看。sparse函数转化只能一个个来吧。

另外,你xx = repmat ([-1 -14-1-1]',1, n^2) ;是想生成2*100个元素的矩阵,不过按照你的程序应该生成5*100矩阵吧。猜测而已。[-1 -14-1-1]应为[-1 -1 4 -1 -1]吧??
Welcomeyou,welcomeme!!
3楼2011-11-26 23:11:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +5 Tide man 2026-08-11 5/250 2026-08-12 09:24 by kangban
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +7 布布和一二 2026-08-10 10/500 2026-08-12 09:12 by 布布和一二
[基金申请] 综述论文作为代表作会不会影响评审专家的印象分? +11 yufeiwaner 2026-08-09 13/650 2026-08-12 08:17 by yufeiwaner
[基金申请] 是这周出结果还是下周出结果? +3 yuleib84 2026-08-11 3/150 2026-08-11 21:53 by jnhyjjm
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +3 majunge000 2026-08-11 4/200 2026-08-11 20:13 by lch2012
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[硕博家园] 读博的好处 +3 lnee 2026-08-11 3/150 2026-08-11 18:10 by 希望我好好的
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 听说今天filecode变了 +26 布布和一二 2026-08-06 49/2450 2026-08-11 13:18 by WH3796
[基金申请] 基金中了 +15 laoda193707 2026-08-06 15/750 2026-08-11 00:11 by jiafei2190
[基金申请] 关于代码变化问题,想知道的进来 +17 且听虎啸 2026-08-07 24/1200 2026-08-10 18:35 by zhangduo2008
[基金申请] 好奇怪的filecode +4 布布和一二 2026-08-08 5/250 2026-08-10 14:20 by 冰心玉壶晴
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 化学口download_prp&amp;fileCode的固定段好像这几天一直没变,有变的大神么? +3 Tide man 2026-08-07 4/200 2026-08-07 22:39 by Tide man
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 7/350 2026-08-07 13:11 by 医学老男孩
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 影响面上的因素 +8 布布和一二 2026-08-05 11/550 2026-08-06 10:41 by 宝贝虫子
信息提示
请填处理意见