- 积分
- 0
- 注册时间
- 2006-2-19
- 仿真币
-
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2010-8-10 15:10:11
|
显示全部楼层
来自 江苏常州
本帖最后由 jinfengshi_2005 于 2010-8-10 15:14 编辑
3# lengyunfeng
首先:1)不知道你到底想干什么。你又是矩阵又是数组的,说矩阵的时候又说是一行的,那不和数组一个意思吗?
A:不好意思,表达的不是很好,我的意思是把T(i):1:H(i)产生的向量放在一个1Xlength(T(i):1:H(i))的矩阵里。而其中T和H是由372个数组成的数组。
2)一个数组对应一个矩阵,你的数组我看到了,你的矩阵呢?U吗?退一步说你的矩阵是U,而你U的第i行是由T(i):1:H(i)所构成,那也才一个矩阵啊,你哪来的372个矩阵呢?退两步说,你只要一个矩阵,那你构成矩阵每一行的数组元素个数都不一样,怎么构成矩阵呢?你见过缺胳膊短腿的矩阵吗?反正我是没见过。
A:你可能误解我的意思了,我的意思就是当i=1时,产生的向量存作为U1,当i=2时,产生的向量存作为U2,依次类推,当i=372时,记作为U372,因为每个向量的列数都不一样,所以并不要把这些产生的向量组成一个这样(U1,U2,......U372)^T的矩阵。
3)你的数组长度自己算的啊?Ft(i)=H(i)-T(i)+1,这里的H和T代表什么意思?照你这句的意思应该是每一个数组的元素是由小(T(i))变到大(H(i))的,那你又何必呢,直接用length函数不完了吗?
A:不好意思,刚刚学Matlab,所以很多功能还不会用,多谢!
4)你的U刚开始定义的时候是没问题的,但是你的后一步我看不懂了,你的语句里用了U(1,31),难道有第2行吗?当然你这样调用单行元素也没错(U(1,31)和U(31)是一个意思),但你的等式左边是一个向量哎,你想把一个向量塞到本来放一个标量的空间里去啊?
A:呵呵,U(1,31)不是这个意思,我以为可以把产生的向量赋值给U,而我的U(1,31),我以为这样一写就表明给U定义了一个一行31列的矩阵。这样就可以把产生的向量放进去了。没想到不是这样的。但是关于这一点,我还是不懂怎么定义一个空的矩阵,然后把产生的向量放进去。
5)最离谱的就是这句U(1,Ft(i))=T(i):1:H(i);,你的Ft(i)到底是干嘛用的?整个语句和你在4)里犯的错误一模一样。再有你的T(i)~H(i)是一个向量,而且按你的意思它们的个数还有一样,不管你想把这个向量按行方向摆还是按列方向摆都是缺胳膊短腿的。
A:那个Ft(i)就是产生向量的长度。从上面的解释你应该知道我想干什么了吧!呵呵
是的,你没讲清楚,很不清楚,而且你的标题也定得与题意不切实际,所以我决定扣你两分。
btw:哥们,你程序有问题请大家帮你改,这没问题,但是起码你也得把自已想干什么弄清楚再来吧?! |
|