gfx.math.mat

Matrix linear algebra module

Members

Aliases

DMat
alias DMat(size_t R, size_t C) = Mat!(double, R, C)
Undocumented in source.
DMat2
alias DMat2 = DMat2x2
Undocumented in source.
DMat2x2
alias DMat2x2 = Mat!(double, 2, 2)
Undocumented in source.
DMat2x3
alias DMat2x3 = Mat!(double, 2, 3)
Undocumented in source.
DMat2x4
alias DMat2x4 = Mat!(double, 2, 4)
Undocumented in source.
DMat3
alias DMat3 = DMat3x3
Undocumented in source.
DMat3x2
alias DMat3x2 = Mat!(double, 3, 2)
Undocumented in source.
DMat3x3
alias DMat3x3 = Mat!(double, 3, 3)
Undocumented in source.
DMat3x4
alias DMat3x4 = Mat!(double, 3, 4)
Undocumented in source.
DMat4
alias DMat4 = DMat4x4
Undocumented in source.
DMat4x2
alias DMat4x2 = Mat!(double, 4, 2)
Undocumented in source.
DMat4x3
alias DMat4x3 = Mat!(double, 4, 3)
Undocumented in source.
DMat4x4
alias DMat4x4 = Mat!(double, 4, 4)
Undocumented in source.
FMat
alias FMat(size_t R, size_t C) = Mat!(float, R, C)
Undocumented in source.
FMat2
alias FMat2 = FMat2x2
Undocumented in source.
FMat2x2
alias FMat2x2 = Mat!(float, 2, 2)
Undocumented in source.
FMat2x3
alias FMat2x3 = Mat!(float, 2, 3)
Undocumented in source.
FMat2x4
alias FMat2x4 = Mat!(float, 2, 4)
Undocumented in source.
FMat3
alias FMat3 = FMat3x3
Undocumented in source.
FMat3x2
alias FMat3x2 = Mat!(float, 3, 2)
Undocumented in source.
FMat3x3
alias FMat3x3 = Mat!(float, 3, 3)
Undocumented in source.
FMat3x4
alias FMat3x4 = Mat!(float, 3, 4)
Undocumented in source.
FMat4
alias FMat4 = FMat4x4
Undocumented in source.
FMat4x2
alias FMat4x2 = Mat!(float, 4, 2)
Undocumented in source.
FMat4x3
alias FMat4x3 = Mat!(float, 4, 3)
Undocumented in source.
FMat4x4
alias FMat4x4 = Mat!(float, 4, 4)
Undocumented in source.
IMat
alias IMat(size_t R, size_t C) = Mat!(int, R, C)
Undocumented in source.
IMat2
alias IMat2 = IMat2x2
Undocumented in source.
IMat2x2
alias IMat2x2 = Mat!(int, 2, 2)
Undocumented in source.
IMat2x3
alias IMat2x3 = Mat!(int, 2, 3)
Undocumented in source.
IMat2x4
alias IMat2x4 = Mat!(int, 2, 4)
Undocumented in source.
IMat3
alias IMat3 = IMat3x3
Undocumented in source.
IMat3x2
alias IMat3x2 = Mat!(int, 3, 2)
Undocumented in source.
IMat3x3
alias IMat3x3 = Mat!(int, 3, 3)
Undocumented in source.
IMat3x4
alias IMat3x4 = Mat!(int, 3, 4)
Undocumented in source.
IMat4
alias IMat4 = IMat4x4
Undocumented in source.
IMat4x2
alias IMat4x2 = Mat!(int, 4, 2)
Undocumented in source.
IMat4x3
alias IMat4x3 = Mat!(int, 4, 3)
Undocumented in source.
IMat4x4
alias IMat4x4 = Mat!(int, 4, 4)
Undocumented in source.
Mat2
alias Mat2(T) = Mat2x2!T
Undocumented in source.
Mat2x2
alias Mat2x2(T) = Mat!(T, 2, 2)
Undocumented in source.
Mat2x3
alias Mat2x3(T) = Mat!(T, 2, 3)
Undocumented in source.
Mat2x4
alias Mat2x4(T) = Mat!(T, 2, 4)
Undocumented in source.
Mat3
alias Mat3(T) = Mat3x3!T
Undocumented in source.
Mat3x2
alias Mat3x2(T) = Mat!(T, 3, 2)
Undocumented in source.
Mat3x3
alias Mat3x3(T) = Mat!(T, 3, 3)
Undocumented in source.
Mat3x4
alias Mat3x4(T) = Mat!(T, 3, 4)
Undocumented in source.
Mat4
alias Mat4(T) = Mat4x4!T
Undocumented in source.
Mat4x2
alias Mat4x2(T) = Mat!(T, 4, 2)
Undocumented in source.
Mat4x3
alias Mat4x3(T) = Mat!(T, 4, 3)
Undocumented in source.
Mat4x4
alias Mat4x4(T) = Mat!(T, 4, 4)
Undocumented in source.

Enums

isMat2
eponymoustemplate isMat2(M)

Check whether M is 2x2 matrix

isMat3
eponymoustemplate isMat3(M)

Check whether M is 3x3 matrix

isMat4
eponymoustemplate isMat4(M)

Check whether M is 4x4 matrix

Functions

mat
auto mat(Rows rows)

Build a matrix whose component type and size is inferred from arguments. Arguments must be rows or matrices with consistent column count.

transpose
auto transpose(M mat)

Give the transposed form of a matrix.

Properties

gaussianInverse
M gaussianInverse [@property getter]

Compute the inverse of a matrix with Gaussian elimination method. Complexity O(n3).

Structs

Mat
struct Mat(T, size_t R, size_t C)

Matrix type for linear algebra

Templates

areMat
template areMat(MatSeq...)

Check if all types of MatSeq are instantiation of Mat

areMat
template areMat(size_t R, size_t C, MatSeq...)

Check if all types of MatSeq are instantiation of Mat with R rows and C columns

isMat
template isMat(MatT)

Check whether MatT is a Mat

isMat
template isMat(size_t R, size_t C, MatT)

Check whether MatT is a Mat with R rows and C columns

Meta