diff --git a/README.md b/README.md index f9d6fe7..40fa730 100644 --- a/README.md +++ b/README.md @@ -13,3 +13,46 @@ The `multrix` command can calculate both dot or cross products if given the resp ## installation The program requires no dependencies other than the nim standard library. Just run `make` in the root of the project and run the executables in `bin`. + +## Math + +### Dot Product + +$$ +\begin{align*} +A \cdot B = +\begin{bmatrix} +a_{11} & a_{12} & \cdots & a_{1n} \\ +a_{21} & a_{22} & \cdots & a_{1n} \\ +\vdots & \vdots & \ddots & \vdots \\ +a_{m1} & a_{m2} & \cdots & a_{mn} \\ +\end{bmatrix} +\cdot +\begin{bmatrix} +b_{11} & b_{12} & \cdots & b_{1p} \\ +b_{21} & b_{22} & \cdots & b_{1p} \\ +\vdots & \vdots & \ddots & \vdots \\ +b_{n1} & b_{n2} & \cdots & b_{np} \\ +\end{bmatrix} += +\begin{bmatrix} +a_{11}b_{11} + \cdots + a_{1n}b_{n1} & a_{11}b_{12} + \cdots + a_{1n}b_{n2} & \cdots & a_{11}b_{1p} + \cdots + a_{1n}b_{np} \\ +a_{21}b_{11} + \cdots + a_{2n}b_{n1} & a_{21}b_{12} + \cdots + a_{2n}b_{n2} & \cdots & a_{21}b_{1p} + \cdots + a_{2n}b_{np} \\ +\vdots & \vdots & \ddots & \vdots \\ +a_{m1}b_{11} + \cdots + a_{mn}b_{n1} & a_{m1}b_{12} + \cdots + a_{mn}b_{n2} & \cdots & a_{m1}b_{1p} + \cdots + a_{mn}b_{np} \\ +\end{bmatrix} +\end{align*} +$$ + +## Cross Product + +$$ +\begin{align*} +\vec{a} \times \vec{b} = +\begin{vmatrix} +i & j & k\\ +a_1 & a_2 & a_3\\ +b_1 & b_2 & b_3 +\end{vmatrix} = (a_2b_3-a_3b_2)i + (a_3b_1-a_1b_3)j+(a_1b_2-a_2b_1)k +\end{align*} +$$