generated at
数学

■はじめに
数学の知識を軽くまとめていこうと思います(自分の復習用)

グラフや数直線の描画にはGeogebraを使ってます 。
>
>
>
>
>


■Houdini
簡単な数学をHoudiniで実装するまとめ

■Substance Designer
簡単な数学をSubstance Designerで実装するまとめ

■数学(Houdini)
Houdiniで使いそうな数学用語

■数学復習リンク





■物理学への応用
古典力学:微分方程式
古典電磁気学:ベクトル解析,微分方程式
熱力学:偏微分
振動・波動論:フーリエ解析
量子力学:関数解析,微分方程式

■数学リンク

■内積
>\vec{A} \cdot \vec{B} = |A|・|B| \cdot cos \theta

■外積
>|\vec{A} \times \vec{B}| = |A|・|B| \cdot sin \theta

二倍角の公式

■偶関数
>f(-x) = f(x)を満たすような関数を偶関数と呼ぶ
cos(-\theta) = cos(\theta)となるので、cosは偶関数

■奇関数
>f(-x) = -f(x)を満たすような関数を奇関数と呼ぶ (奇関数はy軸対称)
sin(-\theta) = -sin(\theta)となるので、sinは奇関数

■複素数(虚数単位)
>i ^2 = -1

■クオータニオン(四元数)


xyz軸の回転操作やxyz方向の移動をまとめて表現するような4x4行列 (アフィン変換)
>\begin{pmatrix} x' \\ y' \\ z' \\ w' \end{pmatrix} = \begin{pmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ \end{pmatrix} \begin{pmatrix} x \\ y \\ z \\ w \end{pmatrix}


■ベクトル解析
>【勾配】glad \ \bm{A} = \nabla \bm{A}
>【発散】div \ \bm{A} = \nabla \cdot \bm{A}
>【回転】rot \ \bm{A} = \nabla \times \bm{A}

■ノルム
n次元ベクトル \vec{x} = (x_1, x_2, x_3, \cdots x_n)
以下を L^pノルムと呼ぶ。 ( 1 \leqq p < \infty)
> ||\vec{x}||_p = \sqrt[p]{|x_1|^p + |x_2|^p + |x_3|^p + \cdots |x_n|^p} = (|x_1|^p + |x_2|^p + |x_3|^p + \cdots |x_n|^p) ^ {1/p}

p = 2 の場合は、これはn次元ベクトルの長さになる。
> ||\vec{x}||_2 = \sqrt{{x_1}^2 + {x_2}^2 + {x_3}^2 + \cdots {x_n}^2} = ({x_1}^2 + {x_2}^2 + {x_3}^2 + \cdots {x_n}^2) ^ {1/2}

p = 2, n = 3の場合、 3次元ベクトルの長さになります。
> ||\vec{x}||_2 = \sqrt{{x_1}^2 + {x_2}^2 + {x_3}^2}

■Houdini上でL2ノルムを実装してみる
座標のL2ノルムを計算してみます。
L2ノルムの計算
float x1 = @P.x; float x2 = @P.y; float x3 = @P.z; // L2ノルムの計算 float l = sqrt(x1 * x1 + x2 * x2 + x3 * x3);

len関数を使うと、もっとシンプルに書けます。
L2ノルムの計算
float x1 = @P.x; float x2 = @P.y; float x3 = @P.z; float l = len({x1, x2, x3});
Houdiniのlen関数はベクトルの長さを計算する関数ですが、ベクトルのL2ノルムを計算する関数とも言えそうです。

範囲変換
x_{min} 以上 x_{max} 以下に含まれている x0以上1以下の範囲に変換する計算式 は以下のようになる
> \frac{x-x_{min}}{ x_{max} - x_{min}}

軸対称な関数
>関数f(x), g(x)f(x) + g(x) = 1を満たす時、 y = f(x) と y = g(x) \ は y = 0.5 を軸として対象な形をしている


その他
LaTexの数式で使用されているフォント : Latin Modern