matlab求广义逆及线性方程组的解

广义逆

    A = [1 2
    0 0
    2 4];
    rref(A)%将矩阵化为最简阶梯形矩阵
    b=[1
    1
    2]
    
format rat %格式化输出
    A1=pinv(A)%广义逆
B=inv(A'*A)*A'
pinv(A)*b%极小范数最小二乘解

 matlab求广义逆及线性方程组的解_第1张图片

    
A = [1 0 0 1;1 1 0 0;0 1 1 0;0 0 1 1];   
  
rref(A)%将矩阵化为最简阶梯形矩阵 
   
 b=[1     0     1     0];     
 format rat %格式化输出     
 x=zeros(4,1); m=A'*b ; n=A'*A; 
 x=n\m

matlab求广义逆及线性方程组的解_第2张图片

A = [1 0 0 1     1 1 0 0     0 1 1 0     0 0 1 1];

b=[1;0;1;0];    

 format rat %格式化输出 %    

[U,S,V]=svd(A,0);

C=V*(inv(S))*U' %A的逆

 x=C*b

线性方程组

matlab求广义逆及线性方程组的解_第3张图片

matlab求广义逆及线性方程组的解_第4张图片

练习 广义逆

A = [1 2 1
    0 1 2];
rref(A)%将矩阵化为最简阶梯形矩阵
%b=[1;0;1;0];
    
format rat %格式化输出
    A1=pinv(A)%广义逆
 g=[1 2 1
    0 1 2];
inv(g*g')
g1=g'*inv(g*g')
a2=g1*h1

你可能感兴趣的:(matlab编程,matlab,广义逆,最小二乘解)