Main Page | Modules | Class List | Directories | File List | Class Members | File Members

Fixed Size Matrix/Vector Product
[Fixed Size Matrices, Fixed Size Matrices and Vectors]


Functions

Gan_Matrix22 gan_vec22_outer_s (const Gan_Vector2 *p, const Gan_Vector2 *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector2 gan_mat22_multv2_s (const Gan_Matrix22 *A, const Gan_Vector2 *p)
 Matrix/vector product.
Gan_Vector2 gan_mat22T_multv2_s (const Gan_Matrix22 *A, const Gan_Vector2 *p)
 Matrix/vector product with the matrix transposed.
Gan_SquMatrix22 gan_vec22_outer_sym_s (const Gan_Vector2 *p)
 Returns the outer product of vector with itself.
Gan_Vector2 gan_symmat22_multv2_s (const Gan_SquMatrix22 *A, const Gan_Vector2 *p)
 Matrix/vector product.
Gan_Vector2 gan_ltmat22I_multv2_s (const Gan_SquMatrix22 *A, const Gan_Vector2 *p)
 Computes the product of the inverse of a matrix and a vector.
Gan_Vector2 gan_ltmat22IT_multv2_s (const Gan_SquMatrix22 *A, const Gan_Vector2 *p)
 Computes the product of the inverse transpose of a matrix and a vector.
Gan_Vector2 gan_ltmat22_multv2_s (const Gan_SquMatrix22 *A, const Gan_Vector2 *p)
 Matrix/vector product.
Gan_Vector2 gan_ltmat22T_multv2_s (const Gan_SquMatrix22 *A, const Gan_Vector2 *p)
 Matrix/vector product with the matrix transposed.
Gan_Matrix22 * gan_vec22_outer_q (const Gan_Vector2 *p, const Gan_Vector2 *q, Gan_Matrix22 *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector2 * gan_mat22_multv2_q (const Gan_Matrix22 *A, Gan_Vector2 *p, Gan_Vector2 *q)
 Macro: Matrix/vector product.
Gan_Vector2 * gan_mat22T_multv2_q (const Gan_Matrix22 *A, Gan_Vector2 *p, Gan_Vector2 *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_SquMatrix22 * gan_vec22_outer_sym_q (const Gan_Vector2 *p, Gan_SquMatrix22 *A)
 Macro: Computes the outer product of vector with itself.
Gan_Vector2 * gan_symmat22_multv2_q (const Gan_SquMatrix22 *A, Gan_Vector2 *p, Gan_Vector2 *q)
 Macro: Matrix/vector product.
Gan_Vector2 * gan_ltmat22I_multv2_q (const Gan_SquMatrix22 *A, Gan_Vector2 *p, Gan_Vector2 *q)
 Macro: Computes the product of the inverse of a matrix and a vector.
Gan_Vector2 * gan_ltmat22I_multv2_i (const Gan_SquMatrix22 *A, Gan_Vector2 *p)
 Macro: Computes the product of the inverse of matrix and a vector in-place.
Gan_Vector2 * gan_ltmat22IT_multv2_q (const Gan_SquMatrix22 *A, Gan_Vector2 *p, Gan_Vector2 *q)
 Macro: Computes the product of an inverted transposed matrix and a vector.
Gan_Vector2 * gan_ltmat22IT_multv2_i (const Gan_SquMatrix22 *A, Gan_Vector2 *p)
 Macro: Computes the product of an inverted transposed matrix and a vector in-place.
Gan_Vector2 * gan_ltmat22_multv2_q (const Gan_SquMatrix22 *A, Gan_Vector2 *p, Gan_Vector2 *q)
 Macro: Matrix/vector product.
Gan_Vector2 * gan_ltmat22_multv2_i (const Gan_SquMatrix22 *A, Gan_Vector2 *p)
 Macro: Matrix/vector product.
Gan_Vector2 * gan_ltmat22T_multv2_q (const Gan_SquMatrix22 *A, Gan_Vector2 *p, Gan_Vector2 *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector2 * gan_ltmat22T_multv2_i (const Gan_SquMatrix22 *A, Gan_Vector2 *p)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Matrix22_f gan_vec22f_outer_s (const Gan_Vector2_f *p, const Gan_Vector2_f *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector2_f gan_mat22f_multv2_s (const Gan_Matrix22_f *A, const Gan_Vector2_f *p)
 Matrix/vector product.
Gan_Vector2_f gan_mat22Tf_multv2_s (const Gan_Matrix22_f *A, const Gan_Vector2_f *p)
 Matrix/vector product with the matrix transposed.
Gan_SquMatrix22_f gan_vec22f_outer_sym_s (const Gan_Vector2_f *p)
 Returns the outer product of vector with itself.
Gan_Vector2_f gan_symmat22f_multv2_s (const Gan_SquMatrix22_f *A, const Gan_Vector2_f *p)
 Matrix/vector product.
Gan_Vector2_f gan_ltmat22If_multv2_s (const Gan_SquMatrix22_f *A, const Gan_Vector2_f *p)
 Computes the product of the inverse of a matrix and a vector.
Gan_Vector2_f gan_ltmat22ITf_multv2_s (const Gan_SquMatrix22_f *A, const Gan_Vector2_f *p)
 Computes the product of the inverse transpose of a matrix and a vector.
Gan_Vector2_f gan_ltmat22f_multv2_s (const Gan_SquMatrix22_f *A, const Gan_Vector2_f *p)
 Matrix/vector product.
Gan_Vector2_f gan_ltmat22Tf_multv2_s (const Gan_SquMatrix22_f *A, const Gan_Vector2_f *p)
 Matrix/vector product with the matrix transposed.
Gan_Matrix22_f * gan_vec22f_outer_q (const Gan_Vector2_f *p, const Gan_Vector2_f *q, Gan_Matrix22_f *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector2_f * gan_mat22f_multv2_q (const Gan_Matrix22_f *A, Gan_Vector2_f *p, Gan_Vector2_f *q)
 Macro: Matrix/vector product.
Gan_Vector2_f * gan_mat22Tf_multv2_q (const Gan_Matrix22_f *A, Gan_Vector2_f *p, Gan_Vector2_f *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_SquMatrix22_f * gan_vec22f_outer_sym_q (const Gan_Vector2_f *p, Gan_SquMatrix22_f *A)
 Macro: Computes the outer product of vector with itself.
Gan_Vector2_f * gan_symmat22f_multv2_q (const Gan_SquMatrix22_f *A, Gan_Vector2_f *p, Gan_Vector2_f *q)
 Macro: Matrix/vector product.
Gan_Vector2_f * gan_ltmat22If_multv2_q (const Gan_SquMatrix22_f *A, Gan_Vector2_f *p, Gan_Vector2_f *q)
 Macro: Computes the product of the inverse of a matrix and a vector.
Gan_Vector2_f * gan_ltmat22If_multv2_i (const Gan_SquMatrix22_f *A, Gan_Vector2_f *p)
 Macro: Computes the product of the inverse of matrix and a vector in-place.
Gan_Vector2_f * gan_ltmat22ITf_multv2_q (const Gan_SquMatrix22_f *A, Gan_Vector2_f *p, Gan_Vector2_f *q)
 Macro: Computes the product of an inverted transposed matrix and a vector.
Gan_Vector2_f * gan_ltmat22ITf_multv2_i (const Gan_SquMatrix22_f *A, Gan_Vector2_f *p)
 Macro: Computes the product of an inverted transposed matrix and a vector in-place.
Gan_Vector2_f * gan_ltmat22f_multv2_q (const Gan_SquMatrix22_f *A, Gan_Vector2_f *p, Gan_Vector2_f *q)
 Macro: Matrix/vector product.
Gan_Vector2_f * gan_ltmat22f_multv2_i (const Gan_SquMatrix22_f *A, Gan_Vector2_f *p)
 Macro: Matrix/vector product.
Gan_Vector2_f * gan_ltmat22Tf_multv2_q (const Gan_SquMatrix22_f *A, Gan_Vector2_f *p, Gan_Vector2_f *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector2_f * gan_ltmat22Tf_multv2_i (const Gan_SquMatrix22_f *A, Gan_Vector2_f *p)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector2 gan_mat23_multv2h_s (const Gan_Matrix23 *A, const Gan_Vector2 *p, double h)
 Multiply 2x3 matrix by homogeneous 2-vector.
Gan_Matrix23 gan_vec23_outer_s (const Gan_Vector2 *p, const Gan_Vector3 *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector2 gan_mat23_multv3_s (const Gan_Matrix23 *A, const Gan_Vector3 *p)
 Matrix/vector product.
Gan_Vector3 gan_mat23T_multv2_s (const Gan_Matrix23 *A, const Gan_Vector2 *p)
 Matrix/vector product with the matrix transposed.
Gan_Vector2 * gan_mat23_multv2h_q (const Gan_Matrix23 *A, const Gan_Vector2 *p, double h, Gan_Vector2 *q)
 Macro: Multiply 2x3 matrix by homogeneous 2-vector.
Gan_Matrix23 * gan_vec23_outer_q (const Gan_Vector2 *p, const Gan_Vector3 *q, Gan_Matrix23 *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector2 * gan_mat23_multv3_q (const Gan_Matrix23 *A, Gan_Vector3 *p, Gan_Vector2 *q)
 Macro: Matrix/vector product.
Gan_Vector3 * gan_mat23T_multv2_q (const Gan_Matrix23 *A, Gan_Vector2 *p, Gan_Vector3 *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector2_f gan_mat23f_multv2h_s (const Gan_Matrix23_f *A, const Gan_Vector2_f *p, float h)
 Multiply 2x3 matrix by homogeneous 2-vector.
Gan_Matrix23_f gan_vec23f_outer_s (const Gan_Vector2_f *p, const Gan_Vector3_f *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector2_f gan_mat23f_multv3_s (const Gan_Matrix23_f *A, const Gan_Vector3_f *p)
 Matrix/vector product.
Gan_Vector3_f gan_mat23Tf_multv2_s (const Gan_Matrix23_f *A, const Gan_Vector2_f *p)
 Matrix/vector product with the matrix transposed.
Gan_Vector2_f * gan_mat23f_multv2h_q (const Gan_Matrix23_f *A, const Gan_Vector2_f *p, float h, Gan_Vector2_f *q)
 Macro: Multiply 2x3 matrix by homogeneous 2-vector.
Gan_Matrix23_f * gan_vec23f_outer_q (const Gan_Vector2_f *p, const Gan_Vector3_f *q, Gan_Matrix23_f *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector2_f * gan_mat23f_multv3_q (const Gan_Matrix23_f *A, Gan_Vector3_f *p, Gan_Vector2_f *q)
 Macro: Matrix/vector product.
Gan_Vector3_f * gan_mat23Tf_multv2_q (const Gan_Matrix23_f *A, Gan_Vector2_f *p, Gan_Vector3_f *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector2 gan_mat24_multv3h_s (const Gan_Matrix24 *A, const Gan_Vector3 *p, double h)
 Multiply 2x4 matrix by homogeneous 3-vector.
Gan_Matrix24 gan_vec24_outer_s (const Gan_Vector2 *p, const Gan_Vector4 *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector2 gan_mat24_multv4_s (const Gan_Matrix24 *A, const Gan_Vector4 *p)
 Matrix/vector product.
Gan_Vector4 gan_mat24T_multv2_s (const Gan_Matrix24 *A, const Gan_Vector2 *p)
 Matrix/vector product with the matrix transposed.
Gan_Vector2 * gan_mat24_multv3h_q (const Gan_Matrix24 *A, const Gan_Vector3 *p, double h, Gan_Vector2 *q)
 Macro: Multiply 2x4 matrix by homogeneous 3-vector.
Gan_Matrix24 * gan_vec24_outer_q (const Gan_Vector2 *p, const Gan_Vector4 *q, Gan_Matrix24 *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector2 * gan_mat24_multv4_q (const Gan_Matrix24 *A, Gan_Vector4 *p, Gan_Vector2 *q)
 Macro: Matrix/vector product.
Gan_Vector4 * gan_mat24T_multv2_q (const Gan_Matrix24 *A, Gan_Vector2 *p, Gan_Vector4 *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector2_f gan_mat24f_multv3h_s (const Gan_Matrix24_f *A, const Gan_Vector3_f *p, float h)
 Multiply 2x4 matrix by homogeneous 3-vector.
Gan_Matrix24_f gan_vec24f_outer_s (const Gan_Vector2_f *p, const Gan_Vector4_f *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector2_f gan_mat24f_multv4_s (const Gan_Matrix24_f *A, const Gan_Vector4_f *p)
 Matrix/vector product.
Gan_Vector4_f gan_mat24Tf_multv2_s (const Gan_Matrix24_f *A, const Gan_Vector2_f *p)
 Matrix/vector product with the matrix transposed.
Gan_Vector2_f * gan_mat24f_multv3h_q (const Gan_Matrix24_f *A, const Gan_Vector3_f *p, float h, Gan_Vector2_f *q)
 Macro: Multiply 2x4 matrix by homogeneous 3-vector.
Gan_Matrix24_f * gan_vec24f_outer_q (const Gan_Vector2_f *p, const Gan_Vector4_f *q, Gan_Matrix24_f *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector2_f * gan_mat24f_multv4_q (const Gan_Matrix24_f *A, Gan_Vector4_f *p, Gan_Vector2_f *q)
 Macro: Matrix/vector product.
Gan_Vector4_f * gan_mat24Tf_multv2_q (const Gan_Matrix24_f *A, Gan_Vector2_f *p, Gan_Vector4_f *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector2 * gan_mat33_multv2h_q (const Gan_Matrix33 *A, const Gan_Vector2 *p, double h, Gan_Vector2 *q)
 Multiply 3x3 matrix by homogeneously constructed 3-vector.
Gan_Vector2 gan_mat33_multv2h_s (const Gan_Matrix33 *A, const Gan_Vector2 *p, double h)
 Multiply 3x3 matrix by homogeneously constructed 3-vector.
Gan_Matrix33 gan_mat33_cross_s (const Gan_Vector3 *p)
Gan_Matrix33 gan_vec33_outer_s (const Gan_Vector3 *p, const Gan_Vector3 *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector3 gan_mat33_multv3_s (const Gan_Matrix33 *A, const Gan_Vector3 *p)
 Matrix/vector product.
Gan_Vector3 gan_mat33T_multv3_s (const Gan_Matrix33 *A, const Gan_Vector3 *p)
 Matrix/vector product with the matrix transposed.
Gan_SquMatrix33 gan_vec33_outer_sym_s (const Gan_Vector3 *p)
 Returns the outer product of vector with itself.
Gan_Vector3 gan_symmat33_multv3_s (const Gan_SquMatrix33 *A, const Gan_Vector3 *p)
 Matrix/vector product.
Gan_Vector3 gan_ltmat33I_multv3_s (const Gan_SquMatrix33 *A, const Gan_Vector3 *p)
 Computes the product of the inverse of a matrix and a vector.
Gan_Vector3 gan_ltmat33IT_multv3_s (const Gan_SquMatrix33 *A, const Gan_Vector3 *p)
 Computes the product of the inverse transpose of a matrix and a vector.
Gan_Vector3 gan_ltmat33_multv3_s (const Gan_SquMatrix33 *A, const Gan_Vector3 *p)
 Matrix/vector product.
Gan_Vector3 gan_ltmat33T_multv3_s (const Gan_SquMatrix33 *A, const Gan_Vector3 *p)
 Matrix/vector product with the matrix transposed.
Gan_Matrix33 * gan_mat33_cross_q (const Gan_Vector3 *p, const Gan_Matrix33 *A)
 Macro: Compute vector product matrix.
Gan_Matrix33 * gan_vec33_outer_q (const Gan_Vector3 *p, const Gan_Vector3 *q, Gan_Matrix33 *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector3 * gan_mat33_multv3_q (const Gan_Matrix33 *A, Gan_Vector3 *p, Gan_Vector3 *q)
 Macro: Matrix/vector product.
Gan_Vector3 * gan_mat33T_multv3_q (const Gan_Matrix33 *A, Gan_Vector3 *p, Gan_Vector3 *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_SquMatrix33 * gan_vec33_outer_sym_q (const Gan_Vector3 *p, Gan_SquMatrix33 *A)
 Macro: Computes the outer product of vector with itself.
Gan_Vector3 * gan_symmat33_multv3_q (const Gan_SquMatrix33 *A, Gan_Vector3 *p, Gan_Vector3 *q)
 Macro: Matrix/vector product.
Gan_Vector3 * gan_ltmat33I_multv3_q (const Gan_SquMatrix33 *A, Gan_Vector3 *p, Gan_Vector3 *q)
 Macro: Computes the product of the inverse of a matrix and a vector.
Gan_Vector3 * gan_ltmat33I_multv3_i (const Gan_SquMatrix33 *A, Gan_Vector3 *p)
 Macro: Computes the product of the inverse of matrix and a vector in-place.
Gan_Vector3 * gan_ltmat33IT_multv3_q (const Gan_SquMatrix33 *A, Gan_Vector3 *p, Gan_Vector3 *q)
 Macro: Computes the product of an inverted transposed matrix and a vector.
Gan_Vector3 * gan_ltmat33IT_multv3_i (const Gan_SquMatrix33 *A, Gan_Vector3 *p)
 Macro: Computes the product of an inverted transposed matrix and a vector in-place.
Gan_Vector3 * gan_ltmat33_multv3_q (const Gan_SquMatrix33 *A, Gan_Vector3 *p, Gan_Vector3 *q)
 Macro: Matrix/vector product.
Gan_Vector3 * gan_ltmat33_multv3_i (const Gan_SquMatrix33 *A, Gan_Vector3 *p)
 Macro: Matrix/vector product.
Gan_Vector3 * gan_ltmat33T_multv3_q (const Gan_SquMatrix33 *A, Gan_Vector3 *p, Gan_Vector3 *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector3 * gan_ltmat33T_multv3_i (const Gan_SquMatrix33 *A, Gan_Vector3 *p)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector2_f * gan_mat33f_multv2h_q (const Gan_Matrix33_f *A, const Gan_Vector2_f *p, float h, Gan_Vector2_f *q)
 Multiply 3x3 matrix by homogeneously constructed 3-vector.
Gan_Vector2_f gan_mat33f_multv2h_s (const Gan_Matrix33_f *A, const Gan_Vector2_f *p, float h)
 Multiply 3x3 matrix by homogeneously constructed 3-vector.
Gan_Matrix33_f gan_mat33f_cross_s (const Gan_Vector3_f *p)
Gan_Matrix33_f gan_vec33f_outer_s (const Gan_Vector3_f *p, const Gan_Vector3_f *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector3_f gan_mat33f_multv3_s (const Gan_Matrix33_f *A, const Gan_Vector3_f *p)
 Matrix/vector product.
Gan_Vector3_f gan_mat33Tf_multv3_s (const Gan_Matrix33_f *A, const Gan_Vector3_f *p)
 Matrix/vector product with the matrix transposed.
Gan_SquMatrix33_f gan_vec33f_outer_sym_s (const Gan_Vector3_f *p)
 Returns the outer product of vector with itself.
Gan_Vector3_f gan_symmat33f_multv3_s (const Gan_SquMatrix33_f *A, const Gan_Vector3_f *p)
 Matrix/vector product.
Gan_Vector3_f gan_ltmat33If_multv3_s (const Gan_SquMatrix33_f *A, const Gan_Vector3_f *p)
 Computes the product of the inverse of a matrix and a vector.
Gan_Vector3_f gan_ltmat33ITf_multv3_s (const Gan_SquMatrix33_f *A, const Gan_Vector3_f *p)
 Computes the product of the inverse transpose of a matrix and a vector.
Gan_Vector3_f gan_ltmat33f_multv3_s (const Gan_SquMatrix33_f *A, const Gan_Vector3_f *p)
 Matrix/vector product.
Gan_Vector3_f gan_ltmat33Tf_multv3_s (const Gan_SquMatrix33_f *A, const Gan_Vector3_f *p)
 Matrix/vector product with the matrix transposed.
Gan_Matrix33_f * gan_mat33f_cross_q (const Gan_Vector3_f *p, Gan_Matrix33_f *A)
 Macro: Compute vector product matrix.
Gan_Matrix33_f * gan_vec33f_outer_q (const Gan_Vector3_f *p, const Gan_Vector3_f *q, Gan_Matrix33_f *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector3_f * gan_mat33f_multv3_q (const Gan_Matrix33_f *A, Gan_Vector3_f *p, Gan_Vector3_f *q)
 Macro: Matrix/vector product.
Gan_Vector3_f * gan_mat33Tf_multv3_q (const Gan_Matrix33_f *A, Gan_Vector3_f *p, Gan_Vector3_f *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_SquMatrix33_f * gan_vec33f_outer_sym_q (const Gan_Vector3_f *p, Gan_SquMatrix33_f *A)
 Macro: Computes the outer product of vector with itself.
Gan_Vector3_f * gan_symmat33f_multv3_q (const Gan_SquMatrix33_f *A, Gan_Vector3_f *p, Gan_Vector3_f *q)
 Macro: Matrix/vector product.
Gan_Vector3_f * gan_ltmat33If_multv3_q (const Gan_SquMatrix33_f *A, Gan_Vector3_f *p, Gan_Vector3_f *q)
 Macro: Computes the product of the inverse of a matrix and a vector.
Gan_Vector3_f * gan_ltmat33If_multv3_i (const Gan_SquMatrix33_f *A, Gan_Vector3_f *p)
 Macro: Computes the product of the inverse of matrix and a vector in-place.
Gan_Vector3_f * gan_ltmat33ITf_multv3_q (const Gan_SquMatrix33_f *A, Gan_Vector3_f *p, Gan_Vector3_f *q)
 Macro: Computes the product of an inverted transposed matrix and a vector.
Gan_Vector3_f * gan_ltmat33ITf_multv3_i (const Gan_SquMatrix33_f *A, Gan_Vector3_f *p)
 Macro: Computes the product of an inverted transposed matrix and a vector in-place.
Gan_Vector3_f * gan_ltmat33f_multv3_q (const Gan_SquMatrix33_f *A, Gan_Vector3_f *p, Gan_Vector3_f *q)
 Macro: Matrix/vector product.
Gan_Vector3_f * gan_ltmat33f_multv3_i (const Gan_SquMatrix33_f *A, Gan_Vector3_f *p)
 Macro: Matrix/vector product.
Gan_Vector3_f * gan_ltmat33Tf_multv3_q (const Gan_SquMatrix33_f *A, Gan_Vector3_f *p, Gan_Vector3_f *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector3_f * gan_ltmat33Tf_multv3_i (const Gan_SquMatrix33_f *A, Gan_Vector3_f *p)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector3 gan_mat34_multv3h_s (const Gan_Matrix34 *A, const Gan_Vector3 *p, double h)
 Multiply 3x4 matrix by homogeneous 3-vector.
Gan_Matrix34 gan_vec34_outer_s (const Gan_Vector3 *p, const Gan_Vector4 *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector3 gan_mat34_multv4_s (const Gan_Matrix34 *A, const Gan_Vector4 *p)
 Matrix/vector product.
Gan_Vector4 gan_mat34T_multv3_s (const Gan_Matrix34 *A, const Gan_Vector3 *p)
 Matrix/vector product with the matrix transposed.
Gan_Vector3 * gan_mat34_multv3h_q (const Gan_Matrix34 *A, const Gan_Vector3 *p, double h, Gan_Vector3 *q)
 Macro: Multiply 3x4 matrix by homogeneous 3-vector.
Gan_Matrix34 * gan_vec34_outer_q (const Gan_Vector3 *p, const Gan_Vector4 *q, Gan_Matrix34 *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector3 * gan_mat34_multv4_q (const Gan_Matrix34 *A, Gan_Vector4 *p, Gan_Vector3 *q)
 Macro: Matrix/vector product.
Gan_Vector4 * gan_mat34T_multv3_q (const Gan_Matrix34 *A, Gan_Vector3 *p, Gan_Vector4 *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector3_f gan_mat34f_multv3h_s (const Gan_Matrix34_f *A, const Gan_Vector3_f *p, float h)
 Multiply 3x4 matrix by homogeneous 3-vector.
Gan_Matrix34_f gan_vec34f_outer_s (const Gan_Vector3_f *p, const Gan_Vector4_f *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector3_f gan_mat34f_multv4_s (const Gan_Matrix34_f *A, const Gan_Vector4_f *p)
 Matrix/vector product.
Gan_Vector4_f gan_mat34Tf_multv2_s (const Gan_Matrix34_f *A, const Gan_Vector3_f *p)
 Matrix/vector product with the matrix transposed.
Gan_Vector3_f * gan_mat34_multv3h_q (const Gan_Matrix34_f *A, const Gan_Vector3_f *p, float h, Gan_Vector3_f *q)
 Macro: Multiply 3x4 matrix by homogeneous 3-vector.
Gan_Matrix34_f * gan_vec34f_outer_q (const Gan_Vector3_f *p, const Gan_Vector4_f *q, Gan_Matrix34_f *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector3_f * gan_mat34f_multv4_q (const Gan_Matrix34_f *A, Gan_Vector4_f *p, Gan_Vector3_f *q)
 Macro: Matrix/vector product.
Gan_Vector4_f * gan_mat34Tf_multv2_q (const Gan_Matrix34_f *A, Gan_Vector3_f *p, Gan_Vector4_f *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector3 * gan_mat44_multv3h_q (const Gan_Matrix44 *A, const Gan_Vector3 *p, double h, Gan_Vector3 *q)
 Multiply 4x4 matrix by homogeneously constructed 4-vector.
Gan_Vector3 gan_mat44_multv3h_s (const Gan_Matrix44 *A, const Gan_Vector3 *p, double h)
 Multiply 4x4 matrix by homogeneously constructed 4-vector.
Gan_Matrix44 gan_vec44_outer_s (const Gan_Vector4 *p, const Gan_Vector4 *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector4 gan_mat44_multv4_s (const Gan_Matrix44 *A, const Gan_Vector4 *p)
 Matrix/vector product.
Gan_Vector4 gan_mat44T_multv4_s (const Gan_Matrix44 *A, const Gan_Vector4 *p)
 Matrix/vector product with the matrix transposed.
Gan_SquMatrix44 gan_vec44_outer_sym_s (const Gan_Vector4 *p)
 Returns the outer product of vector with itself.
Gan_Vector4 gan_symmat44_multv4_s (const Gan_SquMatrix44 *A, const Gan_Vector4 *p)
 Matrix/vector product.
Gan_Vector4 gan_ltmat44I_multv4_s (const Gan_SquMatrix44 *A, const Gan_Vector4 *p)
 Computes the product of the inverse of a matrix and a vector.
Gan_Vector4 gan_ltmat44IT_multv4_s (const Gan_SquMatrix44 *A, const Gan_Vector4 *p)
 Computes the product of the inverse transpose of a matrix and a vector.
Gan_Vector4 gan_ltmat44_multv4_s (const Gan_SquMatrix44 *A, const Gan_Vector4 *p)
 Matrix/vector product.
Gan_Vector4 gan_ltmat44T_multv4_s (const Gan_SquMatrix44 *A, const Gan_Vector4 *p)
 Matrix/vector product with the matrix transposed.
Gan_Matrix44 * gan_vec44_outer_q (const Gan_Vector4 *p, const Gan_Vector4 *q, Gan_Matrix44 *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector4 * gan_mat44_multv4_q (const Gan_Matrix44 *A, Gan_Vector4 *p, Gan_Vector4 *q)
 Macro: Matrix/vector product.
Gan_Vector4 * gan_mat44T_multv4_q (const Gan_Matrix44 *A, Gan_Vector4 *p, Gan_Vector4 *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_SquMatrix44 * gan_vec44_outer_sym_q (const Gan_Vector4 *p, Gan_SquMatrix44 *A)
 Macro: Computes the outer product of vector with itself.
Gan_Vector4 * gan_symmat44_multv4_q (const Gan_SquMatrix44 *A, Gan_Vector4 *p, Gan_Vector4 *q)
 Macro: Matrix/vector product.
Gan_Vector4 * gan_ltmat44I_multv4_q (const Gan_SquMatrix44 *A, Gan_Vector4 *p, Gan_Vector4 *q)
 Macro: Computes the product of the inverse of a matrix and a vector.
Gan_Vector4 * gan_ltmat44I_multv4_i (const Gan_SquMatrix44 *A, Gan_Vector4 *p)
 Macro: Computes the product of the inverse of matrix and a vector in-place.
Gan_Vector4 * gan_ltmat44IT_multv4_q (const Gan_SquMatrix44 *A, Gan_Vector4 *p, Gan_Vector4 *q)
 Macro: Computes the product of an inverted transposed matrix and a vector.
Gan_Vector4 * gan_ltmat44IT_multv4_i (const Gan_SquMatrix44 *A, Gan_Vector4 *p)
 Macro: Computes the product of an inverted transposed matrix and a vector in-place.
Gan_Vector4 * gan_ltmat44_multv4_q (const Gan_SquMatrix44 *A, Gan_Vector4 *p, Gan_Vector4 *q)
 Macro: Matrix/vector product.
Gan_Vector4 * gan_ltmat44_multv4_i (const Gan_SquMatrix44 *A, Gan_Vector4 *p)
 Macro: Matrix/vector product.
Gan_Vector4 * gan_ltmat44T_multv4_q (const Gan_SquMatrix44 *A, Gan_Vector4 *p, Gan_Vector4 *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector4 * gan_ltmat44T_multv4_i (const Gan_SquMatrix44 *A, Gan_Vector4 *p)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector3_f * gan_mat44f_multv3h_q (const Gan_Matrix44_f *A, const Gan_Vector3_f *p, float h, Gan_Vector3_f *q)
 Multiply 4x4 matrix by homogeneously constructed 4-vector.
Gan_Vector3_f gan_mat44f_multv3h_s (const Gan_Matrix44_f *A, const Gan_Vector3_f *p, float h)
 Multiply 4x4 matrix by homogeneously constructed 4-vector.
Gan_Matrix44_f gan_vec44f_outer_s (const Gan_Vector4_f *p, const Gan_Vector4_f *q)
 Compute the outer product of two fixed size vectors.
Gan_Vector4_f gan_mat44f_multv4_s (const Gan_Matrix44_f *A, const Gan_Vector4_f *p)
 Matrix/vector product.
Gan_Vector4_f gan_mat44Tf_multv4_s (const Gan_Matrix44_f *A, const Gan_Vector4_f *p)
 Matrix/vector product with the matrix transposed.
Gan_SquMatrix44_f gan_vec44f_outer_sym_s (const Gan_Vector4_f *p)
 Returns the outer product of vector with itself.
Gan_Vector4_f gan_symmat44f_multv4_s (const Gan_SquMatrix44_f *A, const Gan_Vector4_f *p)
 Matrix/vector product.
Gan_Vector4_f gan_ltmat44If_multv4_s (const Gan_SquMatrix44_f *A, const Gan_Vector4_f *p)
 Computes the product of the inverse of a matrix and a vector.
Gan_Vector4_f gan_ltmat44ITf_multv4_s (const Gan_SquMatrix44_f *A, const Gan_Vector4_f *p)
 Computes the product of the inverse transpose of a matrix and a vector.
Gan_Vector4_f gan_ltmat44f_multv4_s (const Gan_SquMatrix44_f *A, const Gan_Vector4_f *p)
 Matrix/vector product.
Gan_Vector4_f gan_ltmat44Tf_multv4_s (const Gan_SquMatrix44_f *A, const Gan_Vector4_f *p)
 Matrix/vector product with the matrix transposed.
Gan_Matrix44_f * gan_vec44f_outer_q (const Gan_Vector4_f *p, const Gan_Vector4_f *q, Gan_Matrix44_f *A)
 Macro: Compute the outer product of two fixed size vectors.
Gan_Vector4_f * gan_mat44f_multv4_q (const Gan_Matrix44_f *A, Gan_Vector4_f *p, Gan_Vector4_f *q)
 Macro: Matrix/vector product.
Gan_Vector4_f * gan_mat44Tf_multv4_q (const Gan_Matrix44_f *A, Gan_Vector4_f *p, Gan_Vector4_f *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_SquMatrix44_f * gan_vec44f_outer_sym_q (const Gan_Vector4_f *p, Gan_SquMatrix44_f *A)
 Macro: Computes the outer product of vector with itself.
Gan_Vector4_f * gan_symmat44f_multv4_q (const Gan_SquMatrix44_f *A, Gan_Vector4_f *p, Gan_Vector4_f *q)
 Macro: Matrix/vector product.
Gan_Vector4_f * gan_ltmat44If_multv4_q (const Gan_SquMatrix44_f *A, Gan_Vector4_f *p, Gan_Vector4_f *q)
 Macro: Computes the product of the inverse of a matrix and a vector.
Gan_Vector4_f * gan_ltmat44If_multv4_i (const Gan_SquMatrix44_f *A, Gan_Vector4_f *p)
 Macro: Computes the product of the inverse of matrix and a vector in-place.
Gan_Vector4_f * gan_ltmat44ITf_multv4_q (const Gan_SquMatrix44_f *A, Gan_Vector4_f *p, Gan_Vector4_f *q)
 Macro: Computes the product of an inverted transposed matrix and a vector.
Gan_Vector4_f * gan_ltmat44ITf_multv4_i (const Gan_SquMatrix44_f *A, Gan_Vector4_f *p)
 Macro: Computes the product of an inverted transposed matrix and a vector in-place.
Gan_Vector4_f * gan_ltmat44f_multv4_q (const Gan_SquMatrix44_f *A, Gan_Vector4_f *p, Gan_Vector4_f *q)
 Macro: Matrix/vector product.
Gan_Vector4_f * gan_ltmat44f_multv4_i (const Gan_SquMatrix44_f *A, Gan_Vector4_f *p)
 Macro: Matrix/vector product.
Gan_Vector4_f * gan_ltmat44Tf_multv4_q (const Gan_SquMatrix44_f *A, Gan_Vector4_f *p, Gan_Vector4_f *q)
 Macro: Matrix/vector product with the matrix transposed.
Gan_Vector4_f * gan_ltmat44Tf_multv4_i (const Gan_SquMatrix44_f *A, Gan_Vector4_f *p)
 Macro: Matrix/vector product with the matrix transposed.

Function Documentation

Gan_Vector2* gan_ltmat22_multv2_i (  const Gan_SquMatrix22 *  A,
Gan_Vector2 *  p
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A, and a vector p, writing the result in-place into $ p \leftarrow A p $ .

Returns:
Pointer to result vector p.

Gan_Vector2* gan_ltmat22_multv2_q (  const Gan_SquMatrix22 *  A,
Gan_Vector2 *  p,
Gan_Vector2 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2 gan_ltmat22_multv2_s (  const Gan_SquMatrix22 *  A,
const Gan_Vector2 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector2_f* gan_ltmat22f_multv2_i (  const Gan_SquMatrix22_f *  A,
Gan_Vector2_f *  p
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A, and a vector p, writing the result in-place into $ p \leftarrow A p $ .

Returns:
Pointer to result vector p.

Gan_Vector2_f* gan_ltmat22f_multv2_q (  const Gan_SquMatrix22_f *  A,
Gan_Vector2_f *  p,
Gan_Vector2_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2_f gan_ltmat22f_multv2_s (  const Gan_SquMatrix22_f *  A,
const Gan_Vector2_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector2* gan_ltmat22I_multv2_i (  const Gan_SquMatrix22 *  A,
Gan_Vector2 *  p
) 
 

Macro: Computes the product of the inverse of matrix and a vector in-place.

Computes the product of the inverse of matrix A and a vector p, writing the result in-place into $ p \leftarrow A^{-1} p $ .

Returns:
Pointer to result vector p.

Gan_Vector2* gan_ltmat22I_multv2_q (  const Gan_SquMatrix22 *  A,
Gan_Vector2 *  p,
Gan_Vector2 *  q
) 
 

Macro: Computes the product of the inverse of a matrix and a vector.

Computes the product of the inverse of matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2 gan_ltmat22I_multv2_s (  const Gan_SquMatrix22 *  A,
const Gan_Vector2 *  p
) 
 

Computes the product of the inverse of a matrix and a vector.

Returns the product $ A^{-1} p $ of the inverse of matrix A and vector p as a new fixed size vector.

Gan_Vector2_f* gan_ltmat22If_multv2_i (  const Gan_SquMatrix22_f *  A,
Gan_Vector2_f *  p
) 
 

Macro: Computes the product of the inverse of matrix and a vector in-place.

Computes the product of the inverse of matrix A and a vector p, writing the result in-place into $ p \leftarrow A^{-1} p $ .

Returns:
Pointer to result vector p.

Gan_Vector2_f* gan_ltmat22If_multv2_q (  const Gan_SquMatrix22_f *  A,
Gan_Vector2_f *  p,
Gan_Vector2_f *  q
) 
 

Macro: Computes the product of the inverse of a matrix and a vector.

Computes the product of the inverse of matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2_f gan_ltmat22If_multv2_s (  const Gan_SquMatrix22_f *  A,
const Gan_Vector2_f *  p
) 
 

Computes the product of the inverse of a matrix and a vector.

Returns the product $ A^{-1} p $ of the inverse of matrix A and vector p as a new fixed size vector.

Gan_Vector2* gan_ltmat22IT_multv2_i (  const Gan_SquMatrix22 *  A,
Gan_Vector2 *  p
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector in-place.

Computes the product of the inverse transpose of matrix A and vector p, writing the result in-place into $ p \leftarrow A^{-{\top}} p $ .

Returns:
Pointer to result vector p.

Gan_Vector2* gan_ltmat22IT_multv2_q (  const Gan_SquMatrix22 *  A,
Gan_Vector2 *  p,
Gan_Vector2 *  q
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector.

Computes the product of the inverse transpose of matrix A and vector p, writing the result into vector $ q = A^{-{\top}} p $ .

Returns:
Pointer to result vector q.

Gan_Vector2 gan_ltmat22IT_multv2_s (  const Gan_SquMatrix22 *  A,
const Gan_Vector2 *  p
) 
 

Computes the product of the inverse transpose of a matrix and a vector.

Returns the product $ A^{-{\top}} p $ of the inverse transpose of matrix A and vector p as a new fixed size vector.

Gan_Vector2_f* gan_ltmat22ITf_multv2_i (  const Gan_SquMatrix22_f *  A,
Gan_Vector2_f *  p
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector in-place.

Computes the product of the inverse transpose of matrix A and vector p, writing the result in-place into $ p \leftarrow A^{-{\top}} p $ .

Returns:
Pointer to result vector p.

Gan_Vector2_f* gan_ltmat22ITf_multv2_q (  const Gan_SquMatrix22_f *  A,
Gan_Vector2_f *  p,
Gan_Vector2_f *  q
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector.

Computes the product of the inverse transpose of matrix A and vector p, writing the result into vector $ q = A^{-{\top}} p $ .

Returns:
Pointer to result vector q.

Gan_Vector2_f gan_ltmat22ITf_multv2_s (  const Gan_SquMatrix22_f *  A,
const Gan_Vector2_f *  p
) 
 

Computes the product of the inverse transpose of a matrix and a vector.

Returns the product $ A^{-{\top}} p $ of the inverse transpose of matrix A and vector p as a new fixed size vector.

Gan_Vector2* gan_ltmat22T_multv2_i (  const Gan_SquMatrix22 *  A,
Gan_Vector2 *  p
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result in-place into $ p = A^{\top} p $ .

Returns:
Pointer to result vector p.

Gan_Vector2* gan_ltmat22T_multv2_q (  const Gan_SquMatrix22 *  A,
Gan_Vector2 *  p,
Gan_Vector2 *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector2 gan_ltmat22T_multv2_s (  const Gan_SquMatrix22 *  A,
const Gan_Vector2 *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector2_f* gan_ltmat22Tf_multv2_i (  const Gan_SquMatrix22_f *  A,
Gan_Vector2_f *  p
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result in-place into $ p = A^{\top} p $ .

Returns:
Pointer to result vector p.

Gan_Vector2_f* gan_ltmat22Tf_multv2_q (  const Gan_SquMatrix22_f *  A,
Gan_Vector2_f *  p,
Gan_Vector2_f *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector2_f gan_ltmat22Tf_multv2_s (  const Gan_SquMatrix22_f *  A,
const Gan_Vector2_f *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector3* gan_ltmat33_multv3_i (  const Gan_SquMatrix33 *  A,
Gan_Vector3 *  p
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A, and a vector p, writing the result in-place into $ p \leftarrow A p $ .

Returns:
Pointer to result vector p.

Gan_Vector3* gan_ltmat33_multv3_q (  const Gan_SquMatrix33 *  A,
Gan_Vector3 *  p,
Gan_Vector3 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector3 gan_ltmat33_multv3_s (  const Gan_SquMatrix33 *  A,
const Gan_Vector3 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector3_f* gan_ltmat33f_multv3_i (  const Gan_SquMatrix33_f *  A,
Gan_Vector3_f *  p
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A, and a vector p, writing the result in-place into $ p \leftarrow A p $ .

Returns:
Pointer to result vector p.

Gan_Vector3_f* gan_ltmat33f_multv3_q (  const Gan_SquMatrix33_f *  A,
Gan_Vector3_f *  p,
Gan_Vector3_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector3_f gan_ltmat33f_multv3_s (  const Gan_SquMatrix33_f *  A,
const Gan_Vector3_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector3* gan_ltmat33I_multv3_i (  const Gan_SquMatrix33 *  A,
Gan_Vector3 *  p
) 
 

Macro: Computes the product of the inverse of matrix and a vector in-place.

Computes the product of the inverse of matrix A and a vector p, writing the result in-place into $ p \leftarrow A^{-1} p $ .

Returns:
Pointer to result vector p.

Gan_Vector3* gan_ltmat33I_multv3_q (  const Gan_SquMatrix33 *  A,
Gan_Vector3 *  p,
Gan_Vector3 *  q
) 
 

Macro: Computes the product of the inverse of a matrix and a vector.

Computes the product of the inverse of matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector3 gan_ltmat33I_multv3_s (  const Gan_SquMatrix33 *  A,
const Gan_Vector3 *  p
) 
 

Computes the product of the inverse of a matrix and a vector.

Returns the product $ A^{-1} p $ of the inverse of matrix A and vector p as a new fixed size vector.

Gan_Vector3_f* gan_ltmat33If_multv3_i (  const Gan_SquMatrix33_f *  A,
Gan_Vector3_f *  p
) 
 

Macro: Computes the product of the inverse of matrix and a vector in-place.

Computes the product of the inverse of matrix A and a vector p, writing the result in-place into $ p \leftarrow A^{-1} p $ .

Returns:
Pointer to result vector p.

Gan_Vector3_f* gan_ltmat33If_multv3_q (  const Gan_SquMatrix33_f *  A,
Gan_Vector3_f *  p,
Gan_Vector3_f *  q
) 
 

Macro: Computes the product of the inverse of a matrix and a vector.

Computes the product of the inverse of matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector3_f gan_ltmat33If_multv3_s (  const Gan_SquMatrix33_f *  A,
const Gan_Vector3_f *  p
) 
 

Computes the product of the inverse of a matrix and a vector.

Returns the product $ A^{-1} p $ of the inverse of matrix A and vector p as a new fixed size vector.

Gan_Vector3* gan_ltmat33IT_multv3_i (  const Gan_SquMatrix33 *  A,
Gan_Vector3 *  p
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector in-place.

Computes the product of the inverse transpose of matrix A and vector p, writing the result in-place into $ p \leftarrow A^{-{\top}} p $ .

Returns:
Pointer to result vector p.

Gan_Vector3* gan_ltmat33IT_multv3_q (  const Gan_SquMatrix33 *  A,
Gan_Vector3 *  p,
Gan_Vector3 *  q
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector.

Computes the product of the inverse transpose of matrix A and vector p, writing the result into vector $ q = A^{-{\top}} p $ .

Returns:
Pointer to result vector q.

Gan_Vector3 gan_ltmat33IT_multv3_s (  const Gan_SquMatrix33 *  A,
const Gan_Vector3 *  p
) 
 

Computes the product of the inverse transpose of a matrix and a vector.

Returns the product $ A^{-{\top}} p $ of the inverse transpose of matrix A and vector p as a new fixed size vector.

Gan_Vector3_f* gan_ltmat33ITf_multv3_i (  const Gan_SquMatrix33_f *  A,
Gan_Vector3_f *  p
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector in-place.

Computes the product of the inverse transpose of matrix A and vector p, writing the result in-place into $ p \leftarrow A^{-{\top}} p $ .

Returns:
Pointer to result vector p.

Gan_Vector3_f* gan_ltmat33ITf_multv3_q (  const Gan_SquMatrix33_f *  A,
Gan_Vector3_f *  p,
Gan_Vector3_f *  q
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector.

Computes the product of the inverse transpose of matrix A and vector p, writing the result into vector $ q = A^{-{\top}} p $ .

Returns:
Pointer to result vector q.

Gan_Vector3_f gan_ltmat33ITf_multv3_s (  const Gan_SquMatrix33_f *  A,
const Gan_Vector3_f *  p
) 
 

Computes the product of the inverse transpose of a matrix and a vector.

Returns the product $ A^{-{\top}} p $ of the inverse transpose of matrix A and vector p as a new fixed size vector.

Gan_Vector3* gan_ltmat33T_multv3_i (  const Gan_SquMatrix33 *  A,
Gan_Vector3 *  p
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result in-place into $ p = A^{\top} p $ .

Returns:
Pointer to result vector p.

Gan_Vector3* gan_ltmat33T_multv3_q (  const Gan_SquMatrix33 *  A,
Gan_Vector3 *  p,
Gan_Vector3 *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector3 gan_ltmat33T_multv3_s (  const Gan_SquMatrix33 *  A,
const Gan_Vector3 *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector3_f* gan_ltmat33Tf_multv3_i (  const Gan_SquMatrix33_f *  A,
Gan_Vector3_f *  p
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result in-place into $ p = A^{\top} p $ .

Returns:
Pointer to result vector p.

Gan_Vector3_f* gan_ltmat33Tf_multv3_q (  const Gan_SquMatrix33_f *  A,
Gan_Vector3_f *  p,
Gan_Vector3_f *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector3_f gan_ltmat33Tf_multv3_s (  const Gan_SquMatrix33_f *  A,
const Gan_Vector3_f *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector4* gan_ltmat44_multv4_i (  const Gan_SquMatrix44 *  A,
Gan_Vector4 *  p
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A, and a vector p, writing the result in-place into $ p \leftarrow A p $ .

Returns:
Pointer to result vector p.

Gan_Vector4* gan_ltmat44_multv4_q (  const Gan_SquMatrix44 *  A,
Gan_Vector4 *  p,
Gan_Vector4 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector4 gan_ltmat44_multv4_s (  const Gan_SquMatrix44 *  A,
const Gan_Vector4 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector4_f* gan_ltmat44f_multv4_i (  const Gan_SquMatrix44_f *  A,
Gan_Vector4_f *  p
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A, and a vector p, writing the result in-place into $ p \leftarrow A p $ .

Returns:
Pointer to result vector p.

Gan_Vector4_f* gan_ltmat44f_multv4_q (  const Gan_SquMatrix44_f *  A,
Gan_Vector4_f *  p,
Gan_Vector4_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector4_f gan_ltmat44f_multv4_s (  const Gan_SquMatrix44_f *  A,
const Gan_Vector4_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector4* gan_ltmat44I_multv4_i (  const Gan_SquMatrix44 *  A,
Gan_Vector4 *  p
) 
 

Macro: Computes the product of the inverse of matrix and a vector in-place.

Computes the product of the inverse of matrix A and a vector p, writing the result in-place into $ p \leftarrow A^{-1} p $ .

Returns:
Pointer to result vector p.

Gan_Vector4* gan_ltmat44I_multv4_q (  const Gan_SquMatrix44 *  A,
Gan_Vector4 *  p,
Gan_Vector4 *  q
) 
 

Macro: Computes the product of the inverse of a matrix and a vector.

Computes the product of the inverse of matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector4 gan_ltmat44I_multv4_s (  const Gan_SquMatrix44 *  A,
const Gan_Vector4 *  p
) 
 

Computes the product of the inverse of a matrix and a vector.

Returns the product $ A^{-1} p $ of the inverse of matrix A and vector p as a new fixed size vector.

Gan_Vector4_f* gan_ltmat44If_multv4_i (  const Gan_SquMatrix44_f *  A,
Gan_Vector4_f *  p
) 
 

Macro: Computes the product of the inverse of matrix and a vector in-place.

Computes the product of the inverse of matrix A and a vector p, writing the result in-place into $ p \leftarrow A^{-1} p $ .

Returns:
Pointer to result vector p.

Gan_Vector4_f* gan_ltmat44If_multv4_q (  const Gan_SquMatrix44_f *  A,
Gan_Vector4_f *  p,
Gan_Vector4_f *  q
) 
 

Macro: Computes the product of the inverse of a matrix and a vector.

Computes the product of the inverse of matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector4_f gan_ltmat44If_multv4_s (  const Gan_SquMatrix44_f *  A,
const Gan_Vector4_f *  p
) 
 

Computes the product of the inverse of a matrix and a vector.

Returns the product $ A^{-1} p $ of the inverse of matrix A and vector p as a new fixed size vector.

Gan_Vector4* gan_ltmat44IT_multv4_i (  const Gan_SquMatrix44 *  A,
Gan_Vector4 *  p
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector in-place.

Computes the product of the inverse transpose of matrix A and vector p, writing the result in-place into $ p \leftarrow A^{-{\top}} p $ .

Returns:
Pointer to result vector p.

Gan_Vector4* gan_ltmat44IT_multv4_q (  const Gan_SquMatrix44 *  A,
Gan_Vector4 *  p,
Gan_Vector4 *  q
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector.

Computes the product of the inverse transpose of matrix A and vector p, writing the result into vector $ q = A^{-{\top}} p $ .

Returns:
Pointer to result vector q.

Gan_Vector4 gan_ltmat44IT_multv4_s (  const Gan_SquMatrix44 *  A,
const Gan_Vector4 *  p
) 
 

Computes the product of the inverse transpose of a matrix and a vector.

Returns the product $ A^{-{\top}} p $ of the inverse transpose of matrix A and vector p as a new fixed size vector.

Gan_Vector4_f* gan_ltmat44ITf_multv4_i (  const Gan_SquMatrix44_f *  A,
Gan_Vector4_f *  p
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector in-place.

Computes the product of the inverse transpose of matrix A and vector p, writing the result in-place into $ p \leftarrow A^{-{\top}} p $ .

Returns:
Pointer to result vector p.

Gan_Vector4_f* gan_ltmat44ITf_multv4_q (  const Gan_SquMatrix44_f *  A,
Gan_Vector4_f *  p,
Gan_Vector4_f *  q
) 
 

Macro: Computes the product of an inverted transposed matrix and a vector.

Computes the product of the inverse transpose of matrix A and vector p, writing the result into vector $ q = A^{-{\top}} p $ .

Returns:
Pointer to result vector q.

Gan_Vector4_f gan_ltmat44ITf_multv4_s (  const Gan_SquMatrix44_f *  A,
const Gan_Vector4_f *  p
) 
 

Computes the product of the inverse transpose of a matrix and a vector.

Returns the product $ A^{-{\top}} p $ of the inverse transpose of matrix A and vector p as a new fixed size vector.

Gan_Vector4* gan_ltmat44T_multv4_i (  const Gan_SquMatrix44 *  A,
Gan_Vector4 *  p
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result in-place into $ p = A^{\top} p $ .

Returns:
Pointer to result vector p.

Gan_Vector4* gan_ltmat44T_multv4_q (  const Gan_SquMatrix44 *  A,
Gan_Vector4 *  p,
Gan_Vector4 *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector4 gan_ltmat44T_multv4_s (  const Gan_SquMatrix44 *  A,
const Gan_Vector4 *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector4_f* gan_ltmat44Tf_multv4_i (  const Gan_SquMatrix44_f *  A,
Gan_Vector4_f *  p
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result in-place into $ p = A^{\top} p $ .

Returns:
Pointer to result vector p.

Gan_Vector4_f* gan_ltmat44Tf_multv4_q (  const Gan_SquMatrix44_f *  A,
Gan_Vector4_f *  p,
Gan_Vector4_f *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector4_f gan_ltmat44Tf_multv4_s (  const Gan_SquMatrix44_f *  A,
const Gan_Vector4_f *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector2* gan_mat22_multv2_q (  const Gan_Matrix22 *  A,
Gan_Vector2 *  p,
Gan_Vector2 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2 gan_mat22_multv2_s (  const Gan_Matrix22 *  A,
const Gan_Vector2 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector2_f* gan_mat22f_multv2_q (  const Gan_Matrix22_f *  A,
Gan_Vector2_f *  p,
Gan_Vector2_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2_f gan_mat22f_multv2_s (  const Gan_Matrix22_f *  A,
const Gan_Vector2_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector2* gan_mat22T_multv2_q (  const Gan_Matrix22 *  A,
Gan_Vector2 *  p,
Gan_Vector2 *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector2 gan_mat22T_multv2_s (  const Gan_Matrix22 *  A,
const Gan_Vector2 *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector2_f* gan_mat22Tf_multv2_q (  const Gan_Matrix22_f *  A,
Gan_Vector2_f *  p,
Gan_Vector2_f *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector2_f gan_mat22Tf_multv2_s (  const Gan_Matrix22_f *  A,
const Gan_Vector2_f *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector2* gan_mat23_multv2h_q (  const Gan_Matrix23 *  A,
const Gan_Vector2 *  p,
double  h,
Gan_Vector2 *  q
) 
 

Macro: Multiply 2x3 matrix by homogeneous 2-vector.

Multiply 2x3 matrix A by 2-vector p expanded to a homogeneous 3-vector by adding third element h, in other words compute and return 2-vector q where

\[ q = A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Returns:
Pointer to the result vector q.

Gan_Vector2 gan_mat23_multv2h_s (  const Gan_Matrix23 *  A,
const Gan_Vector2 *  p,
double  h
) 
 

Multiply 2x3 matrix by homogeneous 2-vector.

Multiply 2x3 matrix A by 2-vector p expanded to a homogeneous 3-vector by adding third element h, in other words compute and return

\[ A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Gan_Vector2* gan_mat23_multv3_q (  const Gan_Matrix23 *  A,
Gan_Vector3 *  p,
Gan_Vector2 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2 gan_mat23_multv3_s (  const Gan_Matrix23 *  A,
const Gan_Vector3 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector2_f* gan_mat23f_multv2h_q (  const Gan_Matrix23_f *  A,
const Gan_Vector2_f *  p,
float  h,
Gan_Vector2_f *  q
) 
 

Macro: Multiply 2x3 matrix by homogeneous 2-vector.

Multiply 2x3 matrix A by 2-vector p expanded to a homogeneous 3-vector by adding third element h, in other words compute and return 2-vector q where

\[ q = A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Returns:
Pointer to the result vector q.

Gan_Vector2_f gan_mat23f_multv2h_s (  const Gan_Matrix23_f *  A,
const Gan_Vector2_f *  p,
float  h
) 
 

Multiply 2x3 matrix by homogeneous 2-vector.

Multiply 2x3 matrix A by 2-vector p expanded to a homogeneous 3-vector by adding third element h, in other words compute and return

\[ A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Gan_Vector2_f* gan_mat23f_multv3_q (  const Gan_Matrix23_f *  A,
Gan_Vector3_f *  p,
Gan_Vector2_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2_f gan_mat23f_multv3_s (  const Gan_Matrix23_f *  A,
const Gan_Vector3_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector3* gan_mat23T_multv2_q (  const Gan_Matrix23 *  A,
Gan_Vector2 *  p,
Gan_Vector3 *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector3 gan_mat23T_multv2_s (  const Gan_Matrix23 *  A,
const Gan_Vector2 *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector3_f* gan_mat23Tf_multv2_q (  const Gan_Matrix23_f *  A,
Gan_Vector2_f *  p,
Gan_Vector3_f *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector3_f gan_mat23Tf_multv2_s (  const Gan_Matrix23_f *  A,
const Gan_Vector2_f *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector2* gan_mat24_multv3h_q (  const Gan_Matrix24 *  A,
const Gan_Vector3 *  p,
double  h,
Gan_Vector2 *  q
) 
 

Macro: Multiply 2x4 matrix by homogeneous 3-vector.

Multiply 2x4 matrix A by 3-vector p expanded to a homogeneous 4-vector by adding third element h, in other words compute and return 2-vector q where

\[ q = A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Returns:
Pointer to the result 2-vector q.

Gan_Vector2 gan_mat24_multv3h_s (  const Gan_Matrix24 *  A,
const Gan_Vector3 *  p,
double  h
) 
 

Multiply 2x4 matrix by homogeneous 3-vector.

Multiply 2x4 matrix A by 3-vector p expanded to a homogeneous 4-vector by adding fourth element h, in other words compute and return

\[ A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Gan_Vector2* gan_mat24_multv4_q (  const Gan_Matrix24 *  A,
Gan_Vector4 *  p,
Gan_Vector2 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2 gan_mat24_multv4_s (  const Gan_Matrix24 *  A,
const Gan_Vector4 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector2_f* gan_mat24f_multv3h_q (  const Gan_Matrix24_f *  A,
const Gan_Vector3_f *  p,
float  h,
Gan_Vector2_f *  q
) 
 

Macro: Multiply 2x4 matrix by homogeneous 3-vector.

Multiply 2x4 matrix A by 3-vector p expanded to a homogeneous 4-vector by adding third element h, in other words compute and return 2-vector q where

\[ q = A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Returns:
Pointer to the result 2-vector q.

Gan_Vector2_f gan_mat24f_multv3h_s (  const Gan_Matrix24_f *  A,
const Gan_Vector3_f *  p,
float  h
) 
 

Multiply 2x4 matrix by homogeneous 3-vector.

Multiply 2x4 matrix A by 3-vector p expanded to a homogeneous 4-vector by adding fourth element h, in other words compute and return

\[ A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Gan_Vector2_f* gan_mat24f_multv4_q (  const Gan_Matrix24_f *  A,
Gan_Vector4_f *  p,
Gan_Vector2_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2_f gan_mat24f_multv4_s (  const Gan_Matrix24_f *  A,
const Gan_Vector4_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector4* gan_mat24T_multv2_q (  const Gan_Matrix24 *  A,
Gan_Vector2 *  p,
Gan_Vector4 *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector4 gan_mat24T_multv2_s (  const Gan_Matrix24 *  A,
const Gan_Vector2 *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector4_f* gan_mat24Tf_multv2_q (  const Gan_Matrix24_f *  A,
Gan_Vector2_f *  p,
Gan_Vector4_f *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector4_f gan_mat24Tf_multv2_s (  const Gan_Matrix24_f *  A,
const Gan_Vector2_f *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Matrix33* gan_mat33_cross_q (  const Gan_Vector3 *  p,
const Gan_Matrix33 *  A
) 
 

Macro: Compute vector product matrix.

Write matrix form of vector product of 3-vector p into 3x3 matrix A. This is written as

\[ A = [p]_{\times} \]

such that for any vector $ x $ ,

\[ A x = p \times x \]

Returns:
Pointer to result matrix A.

Gan_Matrix33 gan_mat33_cross_s (  const Gan_Vector3 *  p  ) 
 

Compute vector product matrix.

Write matrix form of vector product of 3-vector p into 3x3 matrix. This is written as

\[ A = [p]_{\times} \]

such that for any vector $ x $ ,

\[ A x = p \times x \]

Returns:
Result matrix $ [p]_{\times} $ .

Gan_Vector2* gan_mat33_multv2h_q (  const Gan_Matrix33 *  A,
const Gan_Vector2 *  p,
double  h,
Gan_Vector2 *  q
) 
 

Multiply 3x3 matrix by homogeneously constructed 3-vector.

Multiply 3x3 matrix A by 3-vector constructed from 2-vector p by adding h for the homogeneous 3th coordinate. The result is divided by its 3th coordinate to yield a non-homogeneous 2-vector result q. So in summary we have

\[ \left(\begin{array}{c} q \\ 1 \end{array}\right) = \lambda A \left(\begin{array}{c} p \\ h \end{array}\right) \]

from which $ \lambda $ is eliminated, yielding q.

Returns:
Pointer to result 2-vector q.

Gan_Vector2 gan_mat33_multv2h_s (  const Gan_Matrix33 *  A,
const Gan_Vector2 *  p,
double  h
) 
 

Multiply 3x3 matrix by homogeneously constructed 3-vector.

Multiply 3x3 matrix A by 3-vector constructed from 2-vector p by adding h for the homogeneous 3th coordinate. The result is divided by its 3th coordinate to yield a non-homogeneous 2-vector result. So in summary we have

\[ \left(\begin{array}{c} q \\ 1 \end{array}\right) = \lambda A \left(\begin{array}{c} p \\ h \end{array}\right) \]

from which $ \lambda $ is eliminated, yielding q.

Returns:
Result 2-vector q.

Gan_Vector3* gan_mat33_multv3_q (  const Gan_Matrix33 *  A,
Gan_Vector3 *  p,
Gan_Vector3 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector3 gan_mat33_multv3_s (  const Gan_Matrix33 *  A,
const Gan_Vector3 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Matrix33_f* gan_mat33f_cross_q (  const Gan_Vector3_f *  p,
Gan_Matrix33_f *  A
) 
 

Macro: Compute vector product matrix.

Write matrix form of vector product of 3-vector p into 3x3 matrix A. This is written as

\[ A = [p]_{\times} \]

such that for any vector $ x $ ,

\[ A x = p \times x \]

Returns:
Pointer to result matrix A.

Gan_Matrix33_f gan_mat33f_cross_s (  const Gan_Vector3_f *  p  ) 
 

Compute vector product matrix.

Write matrix form of vector product of 3-vector p into 3x3 matrix. This is written as

\[ A = [p]_{\times} \]

such that for any vector $ x $ ,

\[ A x = p \times x \]

Returns:
Result matrix $ [p]_{\times} $ .

Gan_Vector2_f* gan_mat33f_multv2h_q (  const Gan_Matrix33_f *  A,
const Gan_Vector2_f *  p,
float  h,
Gan_Vector2_f *  q
) 
 

Multiply 3x3 matrix by homogeneously constructed 3-vector.

Multiply 3x3 matrix A by 3-vector constructed from 2-vector p by adding h for the homogeneous 3th coordinate. The result is divided by its 3th coordinate to yield a non-homogeneous 2-vector result q. So in summary we have

\[ \left(\begin{array}{c} q \\ 1 \end{array}\right) = \lambda A \left(\begin{array}{c} p \\ h \end{array}\right) \]

from which $ \lambda $ is eliminated, yielding q.

Returns:
Pointer to result 2-vector q.

Gan_Vector2_f gan_mat33f_multv2h_s (  const Gan_Matrix33_f *  A,
const Gan_Vector2_f *  p,
float  h
) 
 

Multiply 3x3 matrix by homogeneously constructed 3-vector.

Multiply 3x3 matrix A by 3-vector constructed from 2-vector p by adding h for the homogeneous 3th coordinate. The result is divided by its 3th coordinate to yield a non-homogeneous 2-vector result. So in summary we have

\[ \left(\begin{array}{c} q \\ 1 \end{array}\right) = \lambda A \left(\begin{array}{c} p \\ h \end{array}\right) \]

from which $ \lambda $ is eliminated, yielding q.

Returns:
Result 2-vector q.

Gan_Vector3_f* gan_mat33f_multv3_q (  const Gan_Matrix33_f *  A,
Gan_Vector3_f *  p,
Gan_Vector3_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector3_f gan_mat33f_multv3_s (  const Gan_Matrix33_f *  A,
const Gan_Vector3_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector3* gan_mat33T_multv3_q (  const Gan_Matrix33 *  A,
Gan_Vector3 *  p,
Gan_Vector3 *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector3 gan_mat33T_multv3_s (  const Gan_Matrix33 *  A,
const Gan_Vector3 *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector3_f* gan_mat33Tf_multv3_q (  const Gan_Matrix33_f *  A,
Gan_Vector3_f *  p,
Gan_Vector3_f *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector3_f gan_mat33Tf_multv3_s (  const Gan_Matrix33_f *  A,
const Gan_Vector3_f *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector3_f* gan_mat34_multv3h_q (  const Gan_Matrix34_f *  A,
const Gan_Vector3_f *  p,
float  h,
Gan_Vector3_f *  q
) 
 

Macro: Multiply 3x4 matrix by homogeneous 3-vector.

Multiply 3x4 matrix A by 3-vector p expanded to a homogeneous 4-vector by adding third element h, in other words compute and return 3-vector q where

\[ q = A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Returns:
Pointer to the result vector q.

Gan_Vector3* gan_mat34_multv3h_q (  const Gan_Matrix34 *  A,
const Gan_Vector3 *  p,
double  h,
Gan_Vector3 *  q
) 
 

Macro: Multiply 3x4 matrix by homogeneous 3-vector.

Multiply 3x4 matrix A by 3-vector p expanded to a homogeneous 4-vector by adding third element h, in other words compute and return 3-vector q where

\[ q = A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Returns:
Pointer to the result vector q.

Gan_Vector3 gan_mat34_multv3h_s (  const Gan_Matrix34 *  A,
const Gan_Vector3 *  p,
double  h
) 
 

Multiply 3x4 matrix by homogeneous 3-vector.

Multiply 3x4 matrix A by 3-vector p expanded to a homogeneous 4-vector by adding fourth element h, in other words compute and return

\[ A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Gan_Vector3* gan_mat34_multv4_q (  const Gan_Matrix34 *  A,
Gan_Vector4 *  p,
Gan_Vector3 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector3 gan_mat34_multv4_s (  const Gan_Matrix34 *  A,
const Gan_Vector4 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector3_f gan_mat34f_multv3h_s (  const Gan_Matrix34_f *  A,
const Gan_Vector3_f *  p,
float  h
) 
 

Multiply 3x4 matrix by homogeneous 3-vector.

Multiply 3x4 matrix A by 3-vector p expanded to a homogeneous 4-vector by adding fourth element h, in other words compute and return

\[ A \left(\begin{array}{c} p \\ h \end{array}\right) \]

Gan_Vector3_f* gan_mat34f_multv4_q (  const Gan_Matrix34_f *  A,
Gan_Vector4_f *  p,
Gan_Vector3_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector3_f gan_mat34f_multv4_s (  const Gan_Matrix34_f *  A,
const Gan_Vector4_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector4* gan_mat34T_multv3_q (  const Gan_Matrix34 *  A,
Gan_Vector3 *  p,
Gan_Vector4 *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector4 gan_mat34T_multv3_s (  const Gan_Matrix34 *  A,
const Gan_Vector3 *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector4_f* gan_mat34Tf_multv2_q (  const Gan_Matrix34_f *  A,
Gan_Vector3_f *  p,
Gan_Vector4_f *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector4_f gan_mat34Tf_multv2_s (  const Gan_Matrix34_f *  A,
const Gan_Vector3_f *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector3* gan_mat44_multv3h_q (  const Gan_Matrix44 *  A,
const Gan_Vector3 *  p,
double  h,
Gan_Vector3 *  q
) 
 

Multiply 4x4 matrix by homogeneously constructed 4-vector.

Multiply 4x4 matrix A by 4-vector constructed from 3-vector p by adding h for the homogeneous 4th coordinate. The result is divided by its 4th coordinate to yield a non-homogeneous 3-vector result q. So in summary we have

\[ \left(\begin{array}{c} q \\ 1 \end{array}\right) = \lambda A \left(\begin{array}{c} p \\ h \end{array}\right) \]

from which $ \lambda $ is eliminated, yielding q.

Returns:
Pointer to result 3-vector q.

Gan_Vector3 gan_mat44_multv3h_s (  const Gan_Matrix44 *  A,
const Gan_Vector3 *  p,
double  h
) 
 

Multiply 4x4 matrix by homogeneously constructed 4-vector.

Multiply 4x4 matrix A by 4-vector constructed from 3-vector p by adding h for the homogeneous 4th coordinate. The result is divided by its 4th coordinate to yield a non-homogeneous 3-vector result. So in summary we have

\[ \left(\begin{array}{c} q \\ 1 \end{array}\right) = \lambda A \left(\begin{array}{c} p \\ h \end{array}\right) \]

from which $ \lambda $ is eliminated, yielding q.

Returns:
Result 3-vector q.

Gan_Vector4* gan_mat44_multv4_q (  const Gan_Matrix44 *  A,
Gan_Vector4 *  p,
Gan_Vector4 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector4 gan_mat44_multv4_s (  const Gan_Matrix44 *  A,
const Gan_Vector4 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector3_f* gan_mat44f_multv3h_q (  const Gan_Matrix44_f *  A,
const Gan_Vector3_f *  p,
float  h,
Gan_Vector3_f *  q
) 
 

Multiply 4x4 matrix by homogeneously constructed 4-vector.

Multiply 4x4 matrix A by 4-vector constructed from 3-vector p by adding h for the homogeneous 4th coordinate. The result is divided by its 4th coordinate to yield a non-homogeneous 3-vector result q. So in summary we have

\[ \left(\begin{array}{c} q \\ 1 \end{array}\right) = \lambda A \left(\begin{array}{c} p \\ h \end{array}\right) \]

from which $ \lambda $ is eliminated, yielding q.

Returns:
Pointer to result 3-vector q.

Gan_Vector3_f gan_mat44f_multv3h_s (  const Gan_Matrix44_f *  A,
const Gan_Vector3_f *  p,
float  h
) 
 

Multiply 4x4 matrix by homogeneously constructed 4-vector.

Multiply 4x4 matrix A by 4-vector constructed from 3-vector p by adding h for the homogeneous 4th coordinate. The result is divided by its 4th coordinate to yield a non-homogeneous 3-vector result. So in summary we have

\[ \left(\begin{array}{c} q \\ 1 \end{array}\right) = \lambda A \left(\begin{array}{c} p \\ h \end{array}\right) \]

from which $ \lambda $ is eliminated, yielding q.

Returns:
Result 3-vector q.

Gan_Vector4_f* gan_mat44f_multv4_q (  const Gan_Matrix44_f *  A,
Gan_Vector4_f *  p,
Gan_Vector4_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector4_f gan_mat44f_multv4_s (  const Gan_Matrix44_f *  A,
const Gan_Vector4_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector4* gan_mat44T_multv4_q (  const Gan_Matrix44 *  A,
Gan_Vector4 *  p,
Gan_Vector4 *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector4 gan_mat44T_multv4_s (  const Gan_Matrix44 *  A,
const Gan_Vector4 *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector4_f* gan_mat44Tf_multv4_q (  const Gan_Matrix44_f *  A,
Gan_Vector4_f *  p,
Gan_Vector4_f *  q
) 
 

Macro: Matrix/vector product with the matrix transposed.

Computes the product of the transpose of a matrix A and a vector p, writing the result into vector $ q = A^{\top} p $ .

Returns:
Pointer to result vector q.

Gan_Vector4_f gan_mat44Tf_multv4_s (  const Gan_Matrix44_f *  A,
const Gan_Vector4_f *  p
) 
 

Matrix/vector product with the matrix transposed.

Returns the product $ A^{\top} p $ of the transpose of matrix A and vector p.

Gan_Vector2* gan_symmat22_multv2_q (  const Gan_SquMatrix22 *  A,
Gan_Vector2 *  p,
Gan_Vector2 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2 gan_symmat22_multv2_s (  const Gan_SquMatrix22 *  A,
const Gan_Vector2 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector2_f* gan_symmat22f_multv2_q (  const Gan_SquMatrix22_f *  A,
Gan_Vector2_f *  p,
Gan_Vector2_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector2_f gan_symmat22f_multv2_s (  const Gan_SquMatrix22_f *  A,
const Gan_Vector2_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector3* gan_symmat33_multv3_q (  const Gan_SquMatrix33 *  A,
Gan_Vector3 *  p,
Gan_Vector3 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector3 gan_symmat33_multv3_s (  const Gan_SquMatrix33 *  A,
const Gan_Vector3 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector3_f* gan_symmat33f_multv3_q (  const Gan_SquMatrix33_f *  A,
Gan_Vector3_f *  p,
Gan_Vector3_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector3_f gan_symmat33f_multv3_s (  const Gan_SquMatrix33_f *  A,
const Gan_Vector3_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector4* gan_symmat44_multv4_q (  const Gan_SquMatrix44 *  A,
Gan_Vector4 *  p,
Gan_Vector4 *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector4 gan_symmat44_multv4_s (  const Gan_SquMatrix44 *  A,
const Gan_Vector4 *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Vector4_f* gan_symmat44f_multv4_q (  const Gan_SquMatrix44_f *  A,
Gan_Vector4_f *  p,
Gan_Vector4_f *  q
) 
 

Macro: Matrix/vector product.

Computes the product of a matrix A and a vector p, writing the result into vector $ q = A p $ .

Returns:
Pointer to result vector q.

Gan_Vector4_f gan_symmat44f_multv4_s (  const Gan_SquMatrix44_f *  A,
const Gan_Vector4_f *  p
) 
 

Matrix/vector product.

Returns the product $ A p $ of a matrix A and a vector p

Gan_Matrix22* gan_vec22_outer_q (  const Gan_Vector2 *  p,
const Gan_Vector2 *  q,
Gan_Matrix22 *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix22 gan_vec22_outer_s (  const Gan_Vector2 *  p,
const Gan_Vector2 *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_SquMatrix22* gan_vec22_outer_sym_q (  const Gan_Vector2 *  p,
Gan_SquMatrix22 *  A
) 
 

Macro: Computes the outer product of vector with itself.

Computes and returns $ A = p p^{\top} $ .

Gan_SquMatrix22 gan_vec22_outer_sym_s (  const Gan_Vector2 *  p  ) 
 

Returns the outer product of vector with itself.

Computes $ p p^{\top} $ and returns the matrix result.

Gan_Matrix22_f* gan_vec22f_outer_q (  const Gan_Vector2_f *  p,
const Gan_Vector2_f *  q,
Gan_Matrix22_f *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix22_f gan_vec22f_outer_s (  const Gan_Vector2_f *  p,
const Gan_Vector2_f *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_SquMatrix22_f* gan_vec22f_outer_sym_q (  const Gan_Vector2_f *  p,
Gan_SquMatrix22_f *  A
) 
 

Macro: Computes the outer product of vector with itself.

Computes and returns $ A = p p^{\top} $ .

Gan_SquMatrix22_f gan_vec22f_outer_sym_s (  const Gan_Vector2_f *  p  ) 
 

Returns the outer product of vector with itself.

Computes $ p p^{\top} $ and returns the matrix result.

Gan_Matrix23* gan_vec23_outer_q (  const Gan_Vector2 *  p,
const Gan_Vector3 *  q,
Gan_Matrix23 *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix23 gan_vec23_outer_s (  const Gan_Vector2 *  p,
const Gan_Vector3 *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_Matrix23_f* gan_vec23f_outer_q (  const Gan_Vector2_f *  p,
const Gan_Vector3_f *  q,
Gan_Matrix23_f *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix23_f gan_vec23f_outer_s (  const Gan_Vector2_f *  p,
const Gan_Vector3_f *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_Matrix24* gan_vec24_outer_q (  const Gan_Vector2 *  p,
const Gan_Vector4 *  q,
Gan_Matrix24 *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix24 gan_vec24_outer_s (  const Gan_Vector2 *  p,
const Gan_Vector4 *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_Matrix24_f* gan_vec24f_outer_q (  const Gan_Vector2_f *  p,
const Gan_Vector4_f *  q,
Gan_Matrix24_f *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix24_f gan_vec24f_outer_s (  const Gan_Vector2_f *  p,
const Gan_Vector4_f *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_Matrix33* gan_vec33_outer_q (  const Gan_Vector3 *  p,
const Gan_Vector3 *  q,
Gan_Matrix33 *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix33 gan_vec33_outer_s (  const Gan_Vector3 *  p,
const Gan_Vector3 *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_SquMatrix33* gan_vec33_outer_sym_q (  const Gan_Vector3 *  p,
Gan_SquMatrix33 *  A
) 
 

Macro: Computes the outer product of vector with itself.

Computes and returns $ A = p p^{\top} $ .

Gan_SquMatrix33 gan_vec33_outer_sym_s (  const Gan_Vector3 *  p  ) 
 

Returns the outer product of vector with itself.

Computes $ p p^{\top} $ and returns the matrix result.

Gan_Matrix33_f* gan_vec33f_outer_q (  const Gan_Vector3_f *  p,
const Gan_Vector3_f *  q,
Gan_Matrix33_f *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix33_f gan_vec33f_outer_s (  const Gan_Vector3_f *  p,
const Gan_Vector3_f *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_SquMatrix33_f* gan_vec33f_outer_sym_q (  const Gan_Vector3_f *  p,
Gan_SquMatrix33_f *  A
) 
 

Macro: Computes the outer product of vector with itself.

Computes and returns $ A = p p^{\top} $ .

Gan_SquMatrix33_f gan_vec33f_outer_sym_s (  const Gan_Vector3_f *  p  ) 
 

Returns the outer product of vector with itself.

Computes $ p p^{\top} $ and returns the matrix result.

Gan_Matrix34* gan_vec34_outer_q (  const Gan_Vector3 *  p,
const Gan_Vector4 *  q,
Gan_Matrix34 *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix34 gan_vec34_outer_s (  const Gan_Vector3 *  p,
const Gan_Vector4 *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_Matrix34_f* gan_vec34f_outer_q (  const Gan_Vector3_f *  p,
const Gan_Vector4_f *  q,
Gan_Matrix34_f *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix34_f gan_vec34f_outer_s (  const Gan_Vector3_f *  p,
const Gan_Vector4_f *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_Matrix44* gan_vec44_outer_q (  const Gan_Vector4 *  p,
const Gan_Vector4 *  q,
Gan_Matrix44 *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix44 gan_vec44_outer_s (  const Gan_Vector4 *  p,
const Gan_Vector4 *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_SquMatrix44* gan_vec44_outer_sym_q (  const Gan_Vector4 *  p,
Gan_SquMatrix44 *  A
) 
 

Macro: Computes the outer product of vector with itself.

Computes and returns $ A = p p^{\top} $ .

Gan_SquMatrix44 gan_vec44_outer_sym_s (  const Gan_Vector4 *  p  ) 
 

Returns the outer product of vector with itself.

Computes $ p p^{\top} $ and returns the matrix result.

Gan_Matrix44_f* gan_vec44f_outer_q (  const Gan_Vector4_f *  p,
const Gan_Vector4_f *  q,
Gan_Matrix44_f *  A
) 
 

Macro: Compute the outer product of two fixed size vectors.

Computes outer product of vectors p & q, writing the result into matrix $ A = p q^{\top} $ .

Returns:
Pointer to result matrix A.

Gan_Matrix44_f gan_vec44f_outer_s (  const Gan_Vector4_f *  p,
const Gan_Vector4_f *  q
) 
 

Compute the outer product of two fixed size vectors.

Returns the outer product $ p q^{\top} $ of two vectors p and q.

Gan_SquMatrix44_f* gan_vec44f_outer_sym_q (  const Gan_Vector4_f *  p,
Gan_SquMatrix44_f *  A
) 
 

Macro: Computes the outer product of vector with itself.

Computes and returns $ A = p p^{\top} $ .

Gan_SquMatrix44_f gan_vec44f_outer_sym_s (  const Gan_Vector4_f *  p  ) 
 

Returns the outer product of vector with itself.

Computes $ p p^{\top} $ and returns the matrix result.


Generated on Sat May 21 23:52:53 2005 by  doxygen 1.4.3