请教矩阵下标转换程序
编了个程序如下:M=2;N=3; fori=1:(M+1)*(N+1) forj=1:(M+1)*(N+1) n(j)=mod(j,N+1)-1; %取模(余) ifn(j)==-1 n(j)=N; end l(i)=mod(i,N+1)-1; if l(i)==-1 l(i)=N; end m(j)=floor((j-n(j))/(N+1)); %取整 k(i)=floor((i-l(i))/(N+1));endend klmn 如图,K是四个下标的矩阵,元素为Kklmn,此时M=2,N=3,K矩阵行、列数为(M+1)*(N+1),此时为12×12阶矩阵,转换为两个下标的矩阵,元素为Kij,i,j=0,1,2…(M+1)*(N+1); k=0,1,2…M; l=0,1,2…N; m=0,1,2…M; n=0,1,2…N。主要就是得到四个下标k、l、m、n同两个下标i、j的关系大家帮我看看,程序有没有问题,谢谢
刚才忘了传矩阵图片
水平有限,直觉很复杂容易出错
建议说明清楚原始问题, 或许有不同途径可达成 ChaChing 发表于 2014-7-14 10:58
水平有限,直觉很复杂容易出错
建议说明清楚原始问题, 或许有不同途径可达成
http://forum.vibunion.com/forum.php?mod=viewthread&tid=132704&page=1#pid767822就是这个帖子,中间一段程序就是这个矩阵下标转换的,因为主要是要得到四个下标同两个下标的关系,因为在下面的调用函数里面就要用到每个k、l、m、n,(每循环一次就要用到一次k、l、m、n),f-1...f-10函数都是k、l、m、n的函数,不太确定这个程序编的有没有问题 ChaChing 发表于 2014-7-14 10:58
水平有限,直觉很复杂容易出错
建议说明清楚原始问题, 或许有不同途径可达成
http://forum.vibunion.com/forum.php?mod=viewthread&tid=132704&page=1#pid767822就是这个帖子,中间一段程序就是这个矩阵下标转换的,因为主要是要得到四个下标同两个下标的关系,因为在下面的调用函数里面就要用到每个k、l、m、n,(每循环一次就要用到一次k、l、m、n),f-1...f-10函数都是k、l、m、n的函数,不太确定这个程序编的有没有问题 klmn所有下标索引改为(i, j) chybeyond 发表于 2014-7-14 15:22
klmn所有下标索引改为(i, j)
OK.............. 我没看太懂你的意思。你的程序里面没有写你的Kklmn这个是怎么形成的。我没太整明白。 zhoupan734 发表于 2014-7-15 10:18
我没看太懂你的意思。你的程序里面没有写你的Kklmn这个是怎么形成的。我没太整明白。
2L附图 zhoupan734 发表于 2014-7-15 10:18
我没看太懂你的意思。你的程序里面没有写你的Kklmn这个是怎么形成的。我没太整明白。
主要想得到k、l、m 、n 四个下标与i 、j两个下标的关系,因为后面程序分别要用到k l m n的数值,每循环一次就要用到一次,这个程序是我的整个程序的一部分,http://forum.vibunion.com/forum.php?mod=viewthread&tid=132704&page=1#pid767822 这个是整个主程序及调用程序,不知道四个下标与两个下标的转换关系有没有问题,请帮我看一下,谢谢
页:
[1]