关于matlab中ones函数的问题

哪位大神能告诉我ones的M文件代码,不是用open打开的那个,我想知道他是怎么实现的真实程序。先谢谢了

第1个回答  2017-03-17
以下示例供参考:
ONES Ones array.
ONES(N) is an N-by-N matrix of ones.

ONES(M,N) or ONES([M,N]) is an M-by-N matrix of ones.

ONES(M,N,P,...) or ONES([M N P ...]) is an M-by-N-by-P-by-... array of
ones.

ONES(SIZE(A)) is the same size as A and all ones.

ONES with no arguments is the scalar 1.

ONES(M,N,...,CLASSNAME) or ONES([M,N,...],CLASSNAME) is an M-by-N-by-...

array of ones of class CLASSNAME.
由此可以看出,ones的作用是产生全1矩阵,ones(N)是产生一个N*N的全1矩阵,如:
>> ones(3)
ans =
1 1 1
1 1 1
1 1 1
ones(M,N)产生一个M*N的矩阵,如
>> ones(3,4)
ans =
1 1 1 1
1 1 1 1
1 1 1 1

需要注意的是ones(size(A))的用法,size(A)返回的是A的大小参数,如果A是一个3X4的矩阵的话,则返回的参数应该是3 4,所以ones(size(A))产生的矩阵应该是与A大小相同的全1矩阵。
第2个回答  2012-07-06
ones是生成一个单位矩阵,zero是生成一个零矩阵,可以相当于一个空矩阵,用来给变量申请内存,使运算速度快一些,eye是生成一个对角矩阵 ...本回答被提问者采纳
相似回答