matlab分析矩阵与线性变换

  • 把变换矩阵 A A A 看作两个二维列向量的组合 A = [ α 1 , α 2 ] A=[\alpha_1,\alpha_2] A=[α1,α2] α 1 , α 2 \alpha_1,\alpha_2 α1,α2 称作此变换的基向量, A = [ 1 0.25 0 1 ] A=\begin{bmatrix} 1&0.25\\ 0&1 \end{bmatrix} A=[100.251]的基向量为 α 1 = [ 1 0 ] \alpha_1=\begin{bmatrix} 1\\ 0\end{bmatrix} α1=[10] α 2 = [ 0.25 1 ] \alpha_2=\begin{bmatrix} 0.25\\ 1\end{bmatrix} α2=[0.251],对于任意点 x = [ a b ] x=\begin{bmatrix} a\\ b\end{bmatrix} x=[ab] 相乘表示两个基向量的线性组合
    y = A ∗ x = [ α 1 , α 2 ] [ a b ] = a α 1 + b α 2 = a [ 1 0 ] + b [ 0.25 1 ] = [ a + 0.25 b b ] y=A*x=[\alpha_1,\alpha_2]\begin{bmatrix} a\\ b\end{bmatrix}=a\alpha_1+b\alpha_2=a\begin{bmatrix} 1\\ 0\end{bmatrix}+b\begin{bmatrix} 0.25\\ 1\end{bmatrix}=\begin{bmatrix} a+0.25b\\ b\end{bmatrix} y=Ax=[α1,α2][ab]=aα1+bα2=a[10]+b[0.251]=[a+0.25bb]
  • 行列式的几何意义是两个基向量所构成平行四边形的面积,新图形变换后的面积的倍数等于行列式的绝对值,负数代表图形翻转
    d e t ( A ) = d e t ( [ 1 0.25 0 1 ] ) = 1 det(A)=det(\begin{bmatrix} 1&0.25\\ 0&1 \end{bmatrix})=1 det(A)=det([100.251])=1
x1 = [0;0];
x2 = [1;0];
x3 = [1;1];
x4 = [0;1];
x = [x1,x2,x3,x4,x1];
A = [1 0.25;0 1];
y = A * x;
plot(x(1,:),x(2,:), 'b')
hold on
plot(y(1,:),y(2,:),'r')
axis([0 1.5 0 1.5])
grid on

在这里插入图片描述

  • 旋转的效果 A = [ 0.866 − 0.5 0.5 0.866 ] A=\begin{bmatrix} 0.866&-0.5\\ 0.5&0.866 \end{bmatrix} A=[0.8660.50.50.866]
x1 = [0;0];
x2 = [1;0];
x3 = [1;1];
x4 = [0;1];
x = [x1,x2,x3,x4,x1];
A = [0.866 -0.5;0.5 0.866];
y = A * x;
plot(x(1,:),x(2,:), 'b')
hold on
plot(y(1,:),y(2,:),'r')
axis([-1 1.5 0 1.5])
grid on

猜你喜欢

转载自blog.csdn.net/xiong_xin/article/details/107117032