matlab 矩阵基础运算

来源:互联网 发布:助创cms众筹系统源码 编辑:程序博客网 时间:2024/05/18 00:18

%基础运算,A为矩阵,B为向量

det(A)%求矩阵A行列式的值

trace(A)%求A对角元素之和

orth(A)%A的正交空间,矩阵A的正交空间Q满足QTQ=I,且矩阵Q与A具有相同的列基底,Matlab中用函数orth()来计算正交空间Q

rref(A)%A的简化梯形形式

norm(B)或者norm(B,2)%求B的2阶范数

norm(B,1)%求B的1阶范数

norm(B,inf)%求B的无穷阶范数

rank(A)%求A的秩,矩阵中线性无关的列(行)向量个数,称为列(行)秩

X=A\B%左除,用来解AX=B,若B=0,且rank(A)小于A的行数,那么该齐次方程组有非零解

X=A/B%右除,用来解XA=B

null(A)%求A的化零矩阵,对于非满秩矩阵A,若存在矩阵Z使得AZ=0且ZZ=I,则称 矩阵Z为矩阵A的化零矩阵

A(:,2)%矩阵A的第二列全部元素

A(1:2,2)%矩阵A的第二列的前两行元素

%假设A为m行n列

A(n*k+l)可以访问A的第k+1列l行元素

矩阵,数组下标均是从0开始,这一点与python和C不一样

A=pascal(4)
R=chol(A)
RTR%Cholesky分解是把对称正定矩阵表示成上三角矩阵的转置与其本身的乘积,即:A=RTR,在Matlab中用函数chol来计算Cholesky分解
[L1,U1]=LU(A)
L1*U1%LU分解是将任意一个方正A分解成为一个交换下三角矩阵L和一个上三角矩阵U的乘积,A=LU,在Matlab中用函数lu来计算LU分解

[U,S,V]=SVD(A)%奇异值分解就是将 的矩阵A分解为U*S*V,其中U为m*m      的酉矩阵,V为 n*n的酉矩阵,S为 m*n的矩阵,并可以表示如下:

s=(^,0;0,0),r=rank(A),

%矩阵的特征值与特征向量 在MATLAB中,计算矩阵A的特征值和特征向量的函数是eig(A),常用的调用格式有如下3种
E=eig(A)%格式1,求矩阵A的全部特征值,构成向量E。
[V,D]=eig(A)%格式2求矩阵A的全部特征值,构成对角阵D,并求A的特征向量构成V的列向量。
[V,D]=eig(A,‘nobalance’)%格式3,与第2种格式类似,但第2种格式中先对A作相似变换后求矩阵A的特征值和特征向量,而格式3直接求矩阵A的特征值和特征向量。

%将迪卡尔坐标系中(1,1,1)分别转换到球坐标系和极坐标中。
[THETA,PHI,R]=cart2sph(1,1,1);
P= [THETA,PHI,R];
[THETA,PHI,Z]=cart2pol(1,1,1);
Q= [THETA,PHI,Z];
R=[P;Q];

%计算矩阵A每个元素的正弦,其中元素值的单位为弧度。
Y=sin(A);

%计算矩阵A每个元素的正指数和对数,其中元素值的单位为弧度。

Y=exp(A);
Y1=log2(abs(A));



eg:

1.1

>> A=[1 1 1 1 1;3 2 1 1 -3;0 1 2 2 6;5 4 3 3 -1];
>> format rat
>> B=null(A , ′r′) %求基础解系

B =   
1 1 5
-2 -2 -6
1 0 0
0 1 0
0 0 1

>>syms k1k2k3 %定义符号参数
>>X=k1*B(:,1)+k2*B(:,2)+k3*B(:,3)

X=
[ k1+k2+5*k3]
[ -2*k1-2k2-6k3]
[ k1]
[ k2]
[ k3]

为方程组的通解,其中k1,k2,k3为任意实数

1.2>> A=[1 1 1 1 1;3 2 1 1 -3;0 1 2 2 6;5 4 3 3 -1];
>> format rat
>> B=null(A , ′r′) %求齐次方程组的基础解系

ZR = null(A,'r')

ZR =
-2 -3
1 0
0 1

A*ZR

ans =

0 0
0 0
0 0

1.3

.



2,求向量x=[1,2,3,4,5]和y=[3,0,5,2,2]间的距离
x=[1,2,3,4,5];
y=[3,0,5,2,2];
norm(x,1); %1-范式
norm(x,inf);%∞—范数
norm(x);
e=x-y;
norm(e);

,3,两向量夹角

>> a=[1,2,3;2,3,4;5,6,7]



a =


     1     2     3
     2     3     4
     5     6     7


>> b=[11,12,13;14,15,16;17,18,19]


b =


    11    12    13
    14    15    16
    17    18    19


>> subspace(a,b)%像空间几何中,两个向量的夹角,向量与平面的夹角,两个平面的夹角等都属于子空间夹角问题的范畴。只是这里的subspace函数能够求解任意维的两个子空间的夹角。不局限于三维空间。


ans =


    0.2810

4.用求特征值的方法解方程。 3x5-7x4+5x2+2x-18=0

>> p=[3,-7,0,5,2,-18];
>> A=compan(p)


A =


    2.3333         0   -1.6667   -0.6667    6.0000
    1.0000         0         0         0         0
         0    1.0000         0         0         0
         0         0    1.0000         0         0
         0         0         0    1.0000         0


>> x1=eig(A)


x1 =


   2.1837          
   1.0000 + 1.0000i
   1.0000 - 1.0000i
  -0.9252 + 0.7197i
  -0.9252 - 0.7197i


>> x2=roots(p)


x2 =


   2.1837          
   1.0000 + 1.0000i
   1.0000 - 1.0000i
  -0.9252 + 0.7197i
  -0.9252 - 0.7197i



0 0
原创粉丝点击