| 查看: 1088 | 回复: 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)); |
» 猜你喜欢
遇见不省心的家人很难过
已经有18人回复
退学或坚持读
已经有25人回复
博士延得我,科研能力直往上蹿
已经有4人回复
免疫学博士有名额,速联系
已经有14人回复
面上基金申报没有其他的参与者成吗
已经有4人回复
多组分精馏求助
已经有6人回复
» 本主题相关价值贴推荐,对您同样有帮助:
求matlab求解一个方程组的问题
已经有6人回复
求助使用MATLAB计算绿色叶片的覆盖度的问题
已经有24人回复
求助Matlab解方程问题
已经有6人回复
【求助】弱弱的问一下Matlab数据提取的问题
已经有5人回复
【求助】初学matlab 请教一个很简单的问题 非常感谢高手们
已经有3人回复
【求助】向各位大侠求助matlab求解微分方程组遇到的一个问题
已经有21人回复
【求助】大家看看,matlab安装过程的截图,找出错
已经有14人回复
【求助】MATLAB多个mat中 数据画图问题
已经有7人回复
【求助】问一个关于matlab中legend的问题
已经有11人回复
【答案】应助回帖
★ ★
余泽成(金币+2): 谢谢参与应助! 2011-11-26 23:43:34
余泽成(金币+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]吧?? |

3楼2011-11-26 23:11:33
libralibra
至尊木虫 (著名写手)
骠骑将军
- 程序强帖: 40
- 应助: 817 (博后)
- 金币: 12914.1
- 红花: 64
- 帖子: 2238
- 在线: 287.3小时
- 虫号: 696514
- 注册: 2009-02-05
- 专业: 计算机软件

2楼2011-11-26 17:53:51
【答案】应助回帖
★ ★
余泽成(金币+2): 谢谢参与应助! 2011-11-26 23:43:44
余泽成(金币+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)); |

4楼2011-11-26 23:20:31













回复此楼