GAMES101笔记 Lecture02 线性代数基础

目录

    • A Swift and Brutal Introduction to Linear Algebra
      • Garphics' Dependencies(图形学的依赖)
        • Basic mathematics(基础的数学)
        • Basic physics(基础的物理)
        • Misc(杂项)
        • And a bit of asethetics(以及一点美学)
      • Vectors(向量)
      • Vector Normalization(向量归一化)
      • Vector Addition(向量求和)
      • Vector Multiplication(向量乘法)
      • Matrices(矩阵)
      • 参考资源

A Swift and Brutal Introduction to Linear Algebra

Garphics’ Dependencies(图形学的依赖)

Basic mathematics(基础的数学)

  • Linear alrebra, calculus, statistics

Basic physics(基础的物理)

  • Optics, Mechanics

Misc(杂项)

  • Signal processing
  • Numerical analysis

And a bit of asethetics(以及一点美学)

Vectors(向量)

GAMES101笔记 Lecture02 线性代数基础_第1张图片

  • 通常写成 a ⃗ \vec a a 或者加粗的a;
  • 或者使用起点或者重点来表示: A B ⃗ = B − A \vec{AB} = B - A AB =BA;
  • 向量最重要的两个属性:长度和方向;
  • 没有绝对的开始的位置;

Vector Normalization(向量归一化)

  • 向量的大小通常写为 ∣ ∣ a ⃗ ∣ ∣ || \vec{a} || ∣∣a ∣∣
  • 单位向量
    • 长度为1的向量
    • 计算一个向量的单位向量: a ^ = a ⃗ / ∣ ∣ a ⃗ ∣ ∣ \hat{a} = \vec{a} / ||\vec{a}|| a^=a /∣∣a ∣∣
    • 用于表示方向

Vector Addition(向量求和)

GAMES101笔记 Lecture02 线性代数基础_第2张图片

  • 几何意义:平行四边形法则 && 三角形法则
  • 代数意义:简单的坐标相加

Vector Multiplication(向量乘法)

  • Dot product(点乘)

    1. a ⃗ ⋅ b ⃗ = ∣ ∣ a ⃗ ∣ ∣ ∣ ∣ b ⃗ ∣ ∣ c o s θ \vec{a} · \vec{b} = || \vec{a} || || \vec{b} || cos \theta a b =∣∣a ∣∣∣∣b ∣∣cosθ
    2. c o s θ = a ⃗ ⋅ b ⃗ ∣ ∣ a ⃗ ∣ ∣ ∣ ∣ b ⃗ ∣ ∣ cos\theta = \frac{\vec{a} · \vec{b}}{|| \vec{a} || || \vec{b} ||} cosθ=∣∣a ∣∣∣∣b ∣∣a b
    3. 对于单位向量: c o s θ = a ^ ⋅ b ^ cos\theta = \hat{a} · \hat{b} cosθ=a^b^
    4. 性质:
      • a ⃗ ⋅ b ⃗ = b ⃗ ⋅ a ⃗ \vec{a} · \vec{b} = \vec{b} · \vec{a} a b =b a
      • a ⃗ ⋅ ( b ⃗ + c ⃗ ) = a ⃗ ⋅ b ⃗ + a ⃗ ⋅ c ⃗ \vec{a} · (\vec{b} + \vec{c}) = \vec{a} · \vec{b} + \vec{a} · \vec{c} a (b +c )=a b +a c
      • ( k a ⃗ ) ⋅ b ⃗ = a ⃗ ⋅ ( k b ⃗ ) = k ( a ⃗ ⋅ b ⃗ ) (k\vec{a}) · \vec{b} = \vec{a} · (k \vec{b}) = k(\vec{a} · \vec{b}) (ka )b =a (kb )=k(a b )
    5. 分别相乘,然后相加
      • In 2D:
        a ⃗ ⋅ b ⃗ = ( x a y a ) ⋅ ( x b y b ) = x a x b + y a y b \vec{a} \cdot \vec{b}=\left(\begin{array}{l} x_{a} \\ y_{a} \end{array}\right) \cdot\left(\begin{array}{l} x_{b} \\ y_{b} \end{array}\right)=x_{a} x_{b}+y_{a} y_{b} a b =(xaya)(xbyb)=xaxb+yayb
      • In 3D:
        a ⃗ ⋅ b ⃗ = ( x a y a z a ) ⋅ ( x b y b z b ) = x a x b + y a y b + z a z b \vec{a} \cdot \vec{b}=\left(\begin{array}{l} x_{a} \\ y_{a} \\ z_{a} \end{array}\right) \cdot\left(\begin{array}{l} x_{b} \\ y_{b} \\ z_{b} \end{array}\right)=x_{a} x_{b}+y_{a} y_{b} + z_{a} z_{b} a b = xayaza xbybzb =xaxb+yayb+zazb
      1. 作用
        • 计算两个向量的夹角
        • 计算一个向量到另一个向量的投影
        • 测量两个方向离的有多近
        • 分解一个向量,垂直与平行
        • 决定方向朝前or朝后
  • Cross product(叉乘)
    GAMES101笔记 Lecture02 线性代数基础_第3张图片

    1. 两个向量叉乘的结果与两个原始向量正交。
    2. 方向由右手定则决定。
    3. 在构建坐标系时非常有用。
    4. 性质:
      • x ⃗ × y ⃗ = + z ⃗ \vec{x} \times \vec{y} = + \vec{z} x ×y =+z
      • y ⃗ × x ⃗ = − z ⃗ \vec{y} \times \vec{x} = - \vec{z} y ×x =z
      • y ⃗ × z ⃗ = + x ⃗ \vec{y} \times \vec{z} = + \vec{x} y ×z =+x
      • z ⃗ × y ⃗ = − x ⃗ \vec{z} \times \vec{y} = -\vec{x} z ×y =x
      • z ⃗ × x ⃗ = + y ⃗ \vec{z} \times \vec{x} = +\vec{y} z ×x =+y
      • x ⃗ × z ⃗ = − y ⃗ \vec{x} \times \vec{z} = -\vec{y} x ×z =y
      • a ⃗ × b ⃗ = − b ⃗ × a ⃗ \vec{a} \times \vec{b} = -\vec{b} \times \vec{a} a ×b =b ×a
      • a ⃗ × a ⃗ = 0 ⃗ \vec{a} \times \vec{a} = \vec{0} a ×a =0
      • a ⃗ × ( b ⃗ + c ⃗ ) = a ⃗ × b ⃗ + a ⃗ × c ⃗ \vec{a} \times (\vec{b} + \vec{c}) = \vec{a} \times \vec{b} + \vec{a} \times \vec{c} a ×(b +c )=a ×b +a ×c
      • a ⃗ × ( k b ⃗ ) = k ( a ⃗ × b ⃗ ) \vec{a} \times (k \vec{b}) = k(\vec{a} \times \vec{b}) a ×(kb )=k(a ×b )
    5. 向量叉乘的公式:
      • a ⃗ × b ⃗ = ( y a z b − y b z a z a x b − x a z b x a y b − y a x b ) \vec{a} \times \vec{b}=\left(\begin{array}{l} y_{a} z_{b}-y_{b} z_{a} \\ z_{a} x_{b}-x_{a} z_{b} \\ x_{a} y_{b}-y_{a} x_{b} \end{array}\right) a ×b = yazbybzazaxbxazbxaybyaxb
      • 也可以写成矩阵乘法的形式:
        GAMES101笔记 Lecture02 线性代数基础_第4张图片
    6. 作用:
      • 判断左右
      • 判断在里面还是在外面
  • 定义坐标系

    1. 对于表示点、位置很重要
    2. 要求:单位向量、互相垂直(点乘为0,且叉乘结果为另外一轴)
    3. 可以将任意一个向量分解到三个轴上去,各个轴的投影可以利用点积计算。

Matrices(矩阵)

在图形学中,矩阵常用于表示变换:移动,旋转、缩放、错切等。

矩阵乘法不满足交换律—— A B ≠ B A AB \ne BA AB=BA

满足结合律和分配律:

  • ( A B ) C = A ( B C ) (AB)C = A(BC) (AB)C=A(BC)
  • A ( B + C ) = A B + A C A(B+C) = AB + AC A(B+C)=AB+AC
  • ( A + B ) C = A C + B C (A+B)C = AC + BC (A+B)C=AC+BC

矩阵的转置:
GAMES101笔记 Lecture02 线性代数基础_第5张图片

转置的性质:
( A B ) T = B T A T (AB)^{T} = B^{T} A^{T} (AB)T=BTAT

单位矩阵和逆矩阵:
GAMES101笔记 Lecture02 线性代数基础_第6张图片

参考资源

GAMES101 Lecture 02 Review of Linear Algebra

你可能感兴趣的:(笔记,线性代数,计算机图形学,数学)