资源描述:
《MATLAB中的矩阵运算函数.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、1,round函数函数简介 调用格式:Y= round(X)在matlab中round也是一个四舍五入函数。对数组A中每个元素朝最近的方向取整数部分,并返回与A同维的整数数组B,对于一个复数参量A,则分别对其实部和虚数朝最近的方向取整数部分,并返回一复数数据B。(1)fix(x):截尾取整.>>fix([3.12-3.12])ans=3 -3(2)floor(x):不超过x的最大整数.(高斯取整)>>floor([3.12-3.12])ans=3 -4(3)ceil(x):大于x的最小整数>>ceil([3.12-3.12])
2、ans=4 -3(4)四舍五入取整>> round(3.12-3.12)ans=0>> round([3.12-3.12])ans=3 -32,reshape函数:重新调整矩阵的行数、列数、维数先给上一段代码:>> a=[123;456;789;101112];>> b=reshape(a,2,6);这段代码的结果是这样的:>>a 1 2 3 4 5 6 7 8 9 10 11 12>>b 1 7 2 8 3 9
3、 4 10 5 11 6 12对于 b=reshape(a,m,n);其中的规律是这样的,先把矩阵a按列拆分,然后拼接成一个大小为m*n的向量。然后对这个向量每隔m间隔取一个元素组成一个向量b_i,之后的向量b_i+1也是这样生成,只不过第一个元素往下移一位。这样做完之后得到m个大小为n的行向量,将这些行向量拼接即可得到矩阵b。3,取模(mod)与取余(rem)通常取模运算也叫取余运算,它们返回结果都是余数.rem和mod唯一的区别在于: 当x和y的正负号一样的时候,两个函数结果是等同的;当x和y的符号不同
4、时,rem函数结果的符号和x的一样,而mod和y一样。 这是由于这两个函数的生成机制不同,rem函数采用fix函数,而mod函数采用了floor函数(这两个函数是用来取整的,fix函数向0方向舍入,floor函数向无穷小方向舍入)。 rem(x,y)命令返回的是x-n.*y,如果y不等于0,其中的n=fix(x./y),而mod(x,y)返回的是x-n.*y,当y不等于0时,n=floor(x./y)例:>> mod(5,2)ans=1 %“除数”是正,“余数”就是正>> mod(-5,2)ans=1>> m
5、od(5,-2)ans=-1 %“除数”是负,“余数‘就是负>> mod(-5,-2)ans=-1 %用rem时,不管“除数”是正是负,“余数”的符号与“被除数”的符号相同>>rem(5,2)ans=1 %“被除数”是正,“余数”就是正>>rem(5,-2) ans=1>>rem(-5,2)ans=-1 %“被除数”是负,“余数”就是负>>rem(-5,-2)ans=-14,size函数size(A)函数是用来求矩阵的大小的,你必须首先弄清楚A到底是什
6、么,大小是多少。比如说一个A是一个3×4的二维矩阵: 1、size(A)%直接显示出A大小 输出:ans=3 4 2、s=size(A)%返回一个行向量s,s的第一个元素是矩阵的行数,第二个元素是矩阵的列数 输出:s=3 4 3、[r,c]=size(A)%将矩阵A的行数返回到第一个输出变量r,将矩阵的列数返回到第二个输出变量c 输出:r=3 c=4 4、[r,c,m]=size(A) 输出:r=3
7、 c=4 m=1也就说它把二维矩阵当作第三维为1的三维矩阵,这也如同我们把n维列向量当作n×1的矩阵一样 5、当a是一个n维行向量时,size(A)把其当成一个1×n的矩阵,因此size(a)的结果是 ans=1 n而不是a的元素个数n 6、size(A,n) 如果在size函数的输入参数中再添加一项n,并用1或2为n赋值,则 size将返回矩阵的行数或列数。其中r=size(A,1)该语句返回的是矩阵A的行数,c=size(A,2)该语句返回的是矩阵A的列数。5,
8、deconv函数求多项式x4+8x3-10除以多项式2x2-x+3的结果[q,r]=deconv([1800-10],[2-13])%q是商,r是余数。数组从后到前表示从〇次项到各高次项的系数6,bitor