> 其他 >
请高手指教:matlab中 循环语句中X(8,:,
人气:432 ℃ 时间:2020-05-21 14:10:40
解答
冒号在MATLAB里基本上两种意思:(1)对于矩阵,冒号表示该维度上的所有元素.A=1 2 34 5 67 8 9A(1,:)表示A的第一行,所有列.A(1,:)=[ 1 2 3 ](2)在循环语句中,冒号表示“从什么开始,间隔多少,到什么”for i=0 :2 :10...首先感谢您的回答,我也从您说的第二点考虑过。可我还是不太明白这里冒号的位置刚好是在“间隔量”的位置上。。。。是代表什么意思呢??i 是之前已经定好的循环步数。x也是定义好的0矩阵, x=zeros(17,1,samples) for i=2:1:samples....v=v(i)+(x(8,:,i)*v(i));难道说是代表任何步长??不是的。这里的冒号是我说的第一个意思。现在你的x是一个三维矩阵,你可以理解为x是一个长方体,长宽高分别是17,1,sample,然后每个1*1*1的小立方体里面,存放着矩阵的一个元素。见图。那x(8,:,i)就是取出这个长方体的长里面的第8小格,宽里面的所有小格,高里面的第i小格所对应的那些元素。而由于你的宽里面总共就只有1。所以此处不是“那些元素”而是“那个元素”,只有1个!可想而知,如果宽的总数不是1,那么取出的将是这个长方体的一个细长条,往里延伸的,想象一下.************************************冒号的两种用法其实很好区分,写在for里面,就是第二种意义,表现为“用冒号隔开数字”。写在矩阵的括号里面,就是第一种意义,表现为“把冒号当数字使用,用逗号隔开数字(或冒号)”。
推荐
猜你喜欢
© 2024 79432.Com All Rights Reserved.
电脑版|手机版