|
Classes |
struct | Gan_Matrix33_f |
| Structure definition for single precision 3x3 matrix. More...
|
struct | Gan_SquMatrix33_f |
| Structure definition for square single precision 3x3 matrix. More...
|
Defines |
#define | GAN_REP1_AS(a, b, p1) (a p1 b) |
#define | GAN_REP1_A(a, p1) (a p1) |
#define | GAN_REP1_A_C(a, b) GAN_REP1_A(a,b,x) |
#define | GAN_FREP1_A(a, b, p1, q1) (a p1 b q1) |
#define | GAN_FREP1_A_C(a, b, p1) GAN_FREP1_A(a,b,x,p1) |
#define | GAN_REP1_ABS(a, b, c, p1, q1) (a p1 b q1 c) |
#define | GAN_REP1_AAS(a, b, c, p1) GAN_REP1_ABS(a,b,c,p1,p1) |
#define | GAN_REP1_AAS_C(a, b, c) GAN_REP1_AAS(a,b,c,x) |
#define | GAN_REP1_AB(a, b, p1, q1) (a p1 b q1) |
#define | GAN_REP1_AA(a, b, p1) GAN_REP1_AB(a,b,p1,p1) |
#define | GAN_REP1_AA_C(a, b) GAN_REP1_AA(a,b,x) |
#define | GAN_REP1_ABCS(a, b, c, d, p1, q1, r1) (a p1 b q1 c r1 d) |
#define | GAN_REP1_ABC(a, b, c, p1, q1, r1) (a p1 b q1 c r1) |
#define | GAN_REP1_AAA(a, b, c, p1) GAN_REP1_ABC(a,b,c,p1,p1,p1) |
#define | GAN_REP1_AAA_C(a, b, c) GAN_REP1_AAA(a,b,c,x) |
#define | GAN_REP1_OP_AB(a, b, p1, q1, op) (a p1 b q1) |
#define | GAN_REP1_OP_AA(a, b, p1, op) GAN_REP1_OP_AB(a,b,p1,p1,op) |
#define | GAN_REP1_OP_AA_C(a, b, op) GAN_REP1_OP_AA(a,b,x,op) |
#define | GAN_REP2_AS(a, b, p1, p2) (a p1 b, a p2 b) |
#define | GAN_REP2_A(a, p1, p2) (a p1, a p2) |
#define | GAN_REP2_AS_C(a, b) GAN_REP2_AS(a,b,x,y) |
#define | GAN_REP2_A_C(a) GAN_REP2_A(a,x,y) |
#define | GAN_FREP2_A(a, b, p1, p2, q1, q2) (a p1 b q1, a p2 b q2) |
#define | GAN_FREP2_A_C(a, b, p1, p2) GAN_FREP2_A(a,b,x,y,p1,p2) |
#define | GAN_REP2_AB(a, b, p1, p2, q1, q2) (a p1 b q1, a p2 b q2) |
#define | GAN_REP2_AA(a, b, p1, p2) GAN_REP2_AB(a,b,p1,p2,p1,p2) |
#define | GAN_REP2_AA_C(a, b) GAN_REP2_AA(a,b,x,y) |
#define | GAN_REP2_ABS(a, b, c, p1, p2, q1, q2) (a p1 b q1 c, a p2 b q2 c) |
#define | GAN_REP2_AAS(a, b, c, p1, p2) GAN_REP2_ABS(a,b,c,p1,p2,p1,p2) |
#define | GAN_REP2_AAS_C(a, b, c) GAN_REP2_AAS(a,b,c,x,y) |
#define | GAN_REP2_AB(a, b, p1, p2, q1, q2) (a p1 b q1, a p2 b q2) |
#define | GAN_REP2_AA(a, b, p1, p2) GAN_REP2_AB(a,b,p1,p2,p1,p2) |
#define | GAN_REP2_AA_C(a, b) GAN_REP2_AA(a,b,x,y) |
#define | GAN_REP2_ABCS(a, b, c, d, p1, p2, q1, q2, r1, r2) (a p1 b q1 c r1 d, a p2 b q2 c r2 d) |
#define | GAN_REP2_ABC(a, b, c, p1, p2, q1, q2, r1, r2) (a p1 b q1 c r1, a p2 b q2 c r2) |
#define | GAN_REP2_AAA(a, b, c, p1, p2) GAN_REP2_ABC(a,b,c,p1,p2,p1,p2,p1,p2) |
#define | GAN_REP2_AAA_C(a, b, c) GAN_REP2_AAA(a,b,c,x,y) |
#define | GAN_REP2_OP_AB(a, b, p1, p2, q1, q2, op) (a p1 b q1 op a p2 b q2) |
#define | GAN_REP2_OP_AA(a, b, p1, p2, op) GAN_REP2_OP_AB(a,b,p1,p2,p1,p2,op) |
#define | GAN_REP2_OP_AA_C(a, b, op) GAN_REP2_OP_AA(a,b,x,y,op) |
#define | GAN_REP3_AS(a, b, p1, p2, p3) (a p1 b, a p2 b, a p3 b) |
#define | GAN_REP3_AS_C(a, b) GAN_REP3_AS(a,b,x,y,z) |
#define | GAN_REP3_A(a, p1, p2, p3) (a p1, a p2, a p3) |
#define | GAN_REP3_A_C(a) GAN_REP3_A(a,x,y,z) |
#define | GAN_FREP3_A(a, b, p1, p2, p3, q1, q2, q3) (a p1 b q1, a p2 b q2, a p3 b q3) |
#define | GAN_FREP3_A_C(a, b, p1, p2, p3) GAN_FREP3_A(a,b,x,y,z,p1,p2,p3) |
#define | GAN_REP3_ABS(a, b, c, p1, p2, p3, q1, q2, q3) (a p1 b q1 c, a p2 b q2 c, a p3 b q3 c) |
#define | GAN_REP3_AAS(a, b, c, p1, p2, p3) GAN_REP3_ABS(a,b,c,p1,p2,p3,p1,p2,p3) |
#define | GAN_REP3_AAS_C(a, b, c) GAN_REP3_AAS(a,b,c,x,y,z) |
#define | GAN_REP3_AB(a, b, p1, p2, p3, q1, q2, q3) (a p1 b q1, a p2 b q2, a p3 b q3) |
#define | GAN_REP3_AA(a, b, p1, p2, p3) GAN_REP3_AB(a,b,p1,p2,p3,p1,p2,p3) |
#define | GAN_REP3_AA_C(a, b) GAN_REP3_AA(a,b,x,y,z) |
#define | GAN_REP3_ABCS(a, b, c, d, p1, p2, p3, q1, q2, q3, r1, r2, r3) (a p1 b q1 c r1 d, a p2 b q2 c r2 d, a p3 b q3 c r3 d) |
#define | GAN_REP3_ABC(a, b, c, p1, p2, p3, q1, q2, q3, r1, r2, r3) (a p1 b q1 c r1, a p2 b q2 c r2, a p3 b q3 c r3) |
#define | GAN_REP3_AAA(a, b, c, p1, p2, p3) GAN_REP3_ABC(a,b,c,p1,p2,p3,p1,p2,p3,p1,p2,p3) |
#define | GAN_REP3_AAA_C(a, b, c) GAN_REP3_AAA(a,b,c,x,y,z) |
#define | GAN_REP3_OP_AB(a, b, p1, p2, p3, q1, q2, q3, op) (a p1 b q1 op a p2 b q2 op a p3 b q3) |
#define | GAN_REP3_OP_AA(a, b, p1, p2, p3, op) GAN_REP3_OP_AB(a,b,p1,p2,p3,p1,p2,p3,op) |
#define | GAN_REP3_OP_AA_C(a, b, op) GAN_REP3_OP_AA(a,b,x,y,z,op) |
#define | GAN_FREP33_A(a, b, p1, p2, p3, q1, q2, q3, r11, r12, r13, r21, r22, r23, r31, r32, r33) |
#define | GAN_FREP33_A_C(a, b, r11, r12, r13, r21, r22, r23, r31, r32, r33) GAN_FREP33_A(a,b,x,y,z,x,y,z,r11,r12,r13,r21,r22,r23,r31,r32,r33) |
#define | GAN_REP33_ABCS(a, b, c, d, p1, p2, p3, q1, q2, q3, r1, r2, r3, s1, s2, s3, t1, t2, t3, u1, u2, u3) |
#define | GAN_REP33_ABC(a, b, c, p1, p2, p3, q1, q2, q3, r1, r2, r3, s1, s2, s3, t1, t2, t3, u1, u2, u3) |
#define | GAN_REP33_AAAS(a, b, c, d, p1, p2, p3, q1, q2, q3) GAN_REP33_ABCS(a,b,c,d,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3) |
#define | GAN_REP33_AAA(a, b, c, p1, p2, p3, q1, q2, q3) GAN_REP33_ABC(a,b,c,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3) |
#define | GAN_REP33_ABS(a, b, c, p1, p2, p3, q1, q2, q3, r1, r2, r3, s1, s2, s3) |
#define | GAN_REP33_AB(a, b, p1, p2, p3, q1, q2, q3, r1, r2, r3, s1, s2, s3) |
#define | GAN_REP33_AAS(a, b, c, p1, p2, p3, q1, q2, q3) GAN_REP33_ABS(a,b,c,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3) |
#define | GAN_REP33_AA(a, b, p1, p2, p3, q1, q2, q3) GAN_REP33_AB(a,b,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3) |
#define | GAN_REP33_AS(a, b, p1, p2, p3, q1, q2, q3) |
#define | GAN_REP33_A(a, p1, p2, p3, q1, q2, q3) |
#define | GAN_REP33_AS_C(a, b) GAN_REP33_AS(a,b,x,y,z,x,y,z) |
#define | GAN_REP33_AAS_C(a, b, c) GAN_REP33_AAS(a,b,c,x,y,z,x,y,z) |
#define | GAN_REP33_AAAS_C(a, b, c, d) GAN_REP33_AAAS(a,b,c,d,x,y,z,x,y,z) |
#define | GAN_REP33_A_C(a) GAN_REP33_A(a,x,y,z,x,y,z) |
#define | GAN_REP33_AA_C(a, b) GAN_REP33_AA(a,b,x,y,z,x,y,z) |
#define | GAN_REP33_AAA_C(a, b, c) GAN_REP33_AAA(a,b,c,x,y,z,x,y,z) |
#define | GAN_REP33_AAT(a, b, p1, p2, p3, q1, q2, q3) |
#define | GAN_REP33_AAT_C(a, b) GAN_REP33_AAT(a,b,x,y,z,x,y,z) |
#define | GAN_FREP33L_A(a, b, p1, p2, p3, q1, q2, q3, r11, r21, r22, r31, r32, r33) |
#define | GAN_FREP33L_A_C(a, b, r11, r21, r22, r31, r32, r33) GAN_FREP33L_A(a,b,x,y,z,x,y,z,r11,r21,r22,r31,r32,r33) |
#define | GAN_REP33L_ABCS(a, b, c, d, p1, p2, p3, q1, q2, q3, r1, r2, r3, s1, s2, s3, t1, t2, t3, u1, u2, u3) |
#define | GAN_REP33L_ABC(a, b, c, p1, p2, p3, q1, q2, q3, r1, r2, r3, s1, s2, s3, t1, t2, t3, u1, u2, u3) |
#define | GAN_REP33L_AAAS(a, b, c, d, p1, p2, p3, q1, q2, q3) GAN_REP33L_ABCS(a,b,c,d,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3) |
#define | GAN_REP33L_AAA(a, b, c, p1, p2, p3, q1, q2, q3) GAN_REP33L_ABC(a,b,c,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3) |
#define | GAN_REP33L_ABS(a, b, c, p1, p2, p3, q1, q2, q3, r1, r2, r3, s1, s2, s3) |
#define | GAN_REP33L_AB(a, b, p1, p2, p3, q1, q2, q3, r1, r2, r3, s1, s2, s3) |
#define | GAN_REP33L_AAS(a, b, c, p1, p2, p3, q1, q2, q3) GAN_REP33L_ABS(a,b,c,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3) |
#define | GAN_REP33L_AA(a, b, p1, p2, p3, q1, q2, q3) GAN_REP33L_AB(a,b,p1,p2,p3,q1,q2,q3,p1,p2,p3,q1,q2,q3) |
#define | GAN_REP33L_AS(a, b, p1, p2, p3, q1, q2, q3) |
#define | GAN_REP33L_A(a, p1, p2, p3, q1, q2, q3) |
#define | GAN_REP33L_AS_C(a, b) GAN_REP33L_AS(a,b,x,y,z,x,y,z) |
#define | GAN_REP33L_AAS_C(a, b, c) GAN_REP33L_AAS(a,b,c,x,y,z,x,y,z) |
#define | GAN_REP33L_AAAS_C(a, b, c, d) GAN_REP33L_AAAS(a,b,c,d,x,y,z,x,y,z) |
#define | GAN_REP33L_A_C(a) GAN_REP33L_A(a,x,y,z,x,y,z) |
#define | GAN_REP33L_AA_C(a, b) GAN_REP33L_AA(a,b,x,y,z,x,y,z) |
#define | GAN_REP33L_AAA_C(a, b, c) GAN_REP33L_AAA(a,b,c,x,y,z,x,y,z) |
#define | GAN_FREP33L_A_C(a, b, r11, r21, r22, r31, r32, r33) GAN_FREP33L_A(a,b,x,y,z,x,y,z,r11,r21,r22,r31,r32,r33) |
#define | GAN_ST33F_FILL(A, t, XX, YX, YY, ZX, ZY, ZZ) |
#define | GAN_ST33F_IDENT(A, t) |
#define | GAN_MAT33F_MULT1D(a, b, c, p1, p2, p3, q1, q2, q3) |
#define | GAN_MAT33TF_MULT1D(a, b, c, p1, p2, p3, q1, q2, q3) |
#define | GAN_SYM33F_MULT1D(a, b, c, p1, p2, p3, q1, q2, q3) |
#define | GAN_LOW33F_MULT1D(a, b, c, p1, p2, p3, q1, q2, q3) |
#define | GAN_LOW33IF_MULT1D(a, b, c, p1, p2, p3, q1, q2, q3) |
#define | GAN_UPP33F_MULT1D(a, b, c, p1, p2, p3, q1, q2, q3) |
#define | GAN_UPP33IF_MULT1D(a, b, c, p1, p2, p3, q1, q2, q3) |
#define | GAN_ST33F_ZERO(A, t) |
#define | GAN_ST33F_COPY(A, B, t) |
#define | GAN_ST33F_SCALE(A, a, B, t) |
#define | GAN_ST33F_DIVIDE(A, a, B, t) |
#define | GAN_ST33F_NEGATE(A, B, t) |
#define | GAN_ST33F_ADD(A, B, C, t) |
#define | GAN_ST33F_SUB(A, B, C, t) |
#define | GAN_MATTYPE Gan_Matrix33_f |
#define | GAN_MATRIX_TYPE Gan_Matrix_f |
#define | GAN_SQUMATRIX_TYPE Gan_SquMatrix_f |
#define | GAN_VECTOR_TYPE Gan_Vector_f |
#define | GAN_MAT_ELEMENT_TYPE GAN_FLOAT |
#define | GAN_REALTYPE float |
#define | GAN_FWRITE_LENDIAN gan_fwrite_lendian_f32 |
#define | GAN_FREAD_LENDIAN gan_fread_lendian_f32 |
#define | GAN_VECTYPE1 Gan_Vector3_f |
#define | GAN_VECTYPE2 Gan_Vector3_f |
#define | GAN_MATTYPEL Gan_Matrix33_f |
#define | GAN_MATTYPER Gan_Matrix33_f |
#define | GAN_SQUMATTYPEL Gan_SquMatrix33_f |
#define | GAN_SQUMATTYPER Gan_SquMatrix33_f |
#define | GAN_MAT_FPRINT gan_mat33f_fprint |
#define | GAN_MAT_PRINT gan_mat33f_print |
#define | GAN_MAT_FSCANF gan_mat33f_fscanf |
#define | GAN_MAT_FWRITE gan_mat33f_fwrite |
#define | GAN_MAT_FREAD gan_mat33f_fread |
#define | GAN_MAT_ZERO_Q gan_mat33f_zero_q |
#define | GAN_MAT_ZERO_S gan_mat33f_zero_s |
#define | GAN_MAT_COPY_Q gan_mat33f_copy_q |
#define | GAN_MAT_COPY_S gan_mat33f_copy_s |
#define | GAN_MAT_SCALE_Q gan_mat33f_scale_q |
#define | GAN_MAT_SCALE_I gan_mat33f_scale_i |
#define | GAN_MAT_SCALE_S gan_mat33f_scale_s |
#define | GAN_MAT_DIVIDE_Q gan_mat33f_divide_q |
#define | GAN_MAT_DIVIDE_I gan_mat33f_divide_i |
#define | GAN_MAT_DIVIDE_S gan_mat33f_divide_s |
#define | GAN_MAT_NEGATE_Q gan_mat33f_negate_q |
#define | GAN_MAT_NEGATE_I gan_mat33f_negate_i |
#define | GAN_MAT_NEGATE_S gan_mat33f_negate_s |
#define | GAN_MAT_UNIT_Q gan_mat33f_unit_q |
#define | GAN_MAT_UNIT_I gan_mat33f_unit_i |
#define | GAN_MAT_UNIT_S gan_mat33f_unit_s |
#define | GAN_MAT_ADD_Q gan_mat33f_add_q |
#define | GAN_MAT_ADD_I1 gan_mat33f_add_i1 |
#define | GAN_MAT_ADD_I2 gan_mat33f_add_i2 |
#define | GAN_MAT_INCREMENT gan_mat33f_increment |
#define | GAN_MAT_ADD_S gan_mat33f_add_s |
#define | GAN_MAT_SUB_Q gan_mat33f_sub_q |
#define | GAN_MAT_SUB_I1 gan_mat33f_sub_i1 |
#define | GAN_MAT_SUB_I2 gan_mat33f_sub_i2 |
#define | GAN_MAT_DECREMENT gan_mat33f_decrement |
#define | GAN_MAT_SUB_S gan_mat33f_sub_s |
#define | GAN_VEC_OUTER_Q gan_vec33f_outer_q |
#define | GAN_VEC_OUTER_S gan_vec33f_outer_s |
#define | GAN_MAT_MULTV_Q gan_mat33f_multv3_q |
#define | GAN_MAT_MULTV_S gan_mat33f_multv3_s |
#define | GAN_MATT_MULTV_Q gan_mat33Tf_multv3_q |
#define | GAN_MATT_MULTV_S gan_mat33Tf_multv3_s |
#define | GAN_MAT_LMULTMT_Q gan_mat33f_lmultm33T_q |
#define | GAN_MAT_LMULTMT_S gan_mat33f_lmultm33T_s |
#define | GAN_MAT_RMULTM_Q gan_mat33f_rmultm33_q |
#define | GAN_MAT_RMULTM_S gan_mat33f_rmultm33_s |
#define | GAN_MAT_RMULTMT_Q gan_mat33f_rmultm33T_q |
#define | GAN_MAT_RMULTMT_S gan_mat33f_rmultm33T_s |
#define | GAN_MAT_LMULTMT_SYM_Q gan_mat33f_lmultm33T_sym_q |
#define | GAN_MAT_LMULTMT_SYM_S gan_mat33f_lmultm33T_sym_s |
#define | GAN_MAT_RMULTMT_SYM_Q gan_mat33f_rmultm33T_sym_q |
#define | GAN_MAT_RMULTMT_SYM_S gan_mat33f_rmultm33T_sym_s |
#define | GAN_MAT_SLMULTT_Q gan_mat33f_slmultT_q |
#define | GAN_MAT_SLMULTT_S gan_mat33f_slmultT_s |
#define | GAN_MAT_SRMULTT_Q gan_mat33f_srmultT_q |
#define | GAN_MAT_SRMULTT_S gan_mat33f_srmultT_s |
#define | GAN_MAT_LMULTS_Q gan_mat33f_lmults33_q |
#define | GAN_MAT_LMULTS_S gan_mat33f_lmults33_s |
#define | GAN_MAT_RMULTS_Q gan_mat33f_rmults33_q |
#define | GAN_MAT_RMULTS_S gan_mat33f_rmults33_s |
#define | GAN_SYMMATL_LRMULT_Q gan_symmat33f_lrmultm33T_q |
#define | GAN_SYMMATL_LRMULT_S gan_symmat33f_lrmultm33T_s |
#define | GAN_SYMMATR_LRMULT_Q gan_symmat33f_lrmultm33_q |
#define | GAN_SYMMATR_LRMULT_S gan_symmat33f_lrmultm33_s |
#define | GAN_MAT_LMULTL_Q gan_mat33f_lmultl33_q |
#define | GAN_MAT_LMULTL_S gan_mat33f_lmultl33_s |
#define | GAN_MAT_LMULTL_I gan_mat33f_lmultl33_i |
#define | GAN_MAT_LMULTLI_Q gan_mat33f_lmultl33I_q |
#define | GAN_MAT_LMULTLI_S gan_mat33f_lmultl33I_s |
#define | GAN_MAT_LMULTLI_I gan_mat33f_lmultl33I_i |
#define | GAN_MAT_LMULTLT_Q gan_mat33f_lmultl33T_q |
#define | GAN_MAT_LMULTLT_S gan_mat33f_lmultl33T_s |
#define | GAN_MAT_LMULTLT_I gan_mat33f_lmultl33T_i |
#define | GAN_MAT_LMULTLIT_Q gan_mat33f_lmultl33IT_q |
#define | GAN_MAT_LMULTLIT_S gan_mat33f_lmultl33IT_s |
#define | GAN_MAT_LMULTLIT_I gan_mat33f_lmultl33IT_i |
#define | GAN_MAT_RMULTL_Q gan_mat33f_rmultl33_q |
#define | GAN_MAT_RMULTL_S gan_mat33f_rmultl33_s |
#define | GAN_MAT_RMULTL_I gan_mat33f_rmultl33_i |
#define | GAN_MAT_RMULTLI_Q gan_mat33f_rmultl33I_q |
#define | GAN_MAT_RMULTLI_S gan_mat33f_rmultl33I_s |
#define | GAN_MAT_RMULTLI_I gan_mat33f_rmultl33I_i |
#define | GAN_MAT_RMULTLT_Q gan_mat33f_rmultl33T_q |
#define | GAN_MAT_RMULTLT_S gan_mat33f_rmultl33T_s |
#define | GAN_MAT_RMULTLT_I gan_mat33f_rmultl33T_i |
#define | GAN_MAT_RMULTLIT_Q gan_mat33f_rmultl33IT_q |
#define | GAN_MAT_RMULTLIT_S gan_mat33f_rmultl33IT_s |
#define | GAN_MAT_RMULTLIT_I gan_mat33f_rmultl33IT_i |
#define | GAN_MAT_SUMSQR_Q gan_mat33f_sumsqr_q |
#define | GAN_MAT_SUMSQR_S gan_mat33f_sumsqr_s |
#define | GAN_MAT_FNORM_Q gan_mat33f_Fnorm_q |
#define | GAN_MAT_FNORM_S gan_mat33f_Fnorm_s |
#define | GAN_MAT_FROM_MAT_Q gan_mat33f_from_matf_q |
#define | GAN_MAT_FROM_MAT_S gan_mat33f_from_matf_s |
#define | GAN_MAT_FROM_SQUMAT_Q gan_mat33f_from_squmatf_q |
#define | GAN_MAT_FROM_SQUMAT_S gan_mat33f_from_squmatf_s |
#define | GAN_SQUMAT_FROM_SQUMAT_Q gan_squmat33f_from_squmatf_q |
#define | GAN_SQUMAT_FROM_SQUMAT_S gan_squmat33f_from_squmatf_s |
#define | GAN_SQUMAT_IDENT_Q gan_mat33f_ident_q |
#define | GAN_SQUMAT_IDENT_S gan_mat33f_ident_s |
#define | GAN_SQUMAT_TPOSE_Q gan_mat33f_tpose_q |
#define | GAN_SQUMAT_TPOSE_S gan_mat33f_tpose_s |
#define | GAN_SQUMAT_TPOSE_I gan_mat33f_tpose_i |
#define | GAN_MAT_SADDT_Q gan_mat33f_saddT_q |
#define | GAN_MAT_SADDT_S gan_mat33f_saddT_s |
#define | GAN_SQUMAT_INVERT gan_mat33f_invert |
#define | GAN_SQUMAT_INVERT_Q gan_mat33f_invert_q |
#define | GAN_SQUMAT_INVERT_S gan_mat33f_invert_s |
#define | GAN_SQUMAT_INVERT_I gan_mat33f_invert_i |
#define | GAN_SQUMAT_ADJOINT_Q gan_mat33f_adjoint_q |
#define | GAN_SQUMAT_ADJOINT_S gan_mat33f_adjoint_s |
#define | GAN_SQUMAT_ADJOINTT_Q gan_mat33f_adjointT_q |
#define | GAN_SQUMAT_ADJOINTT_S gan_mat33f_adjointT_s |
#define | GAN_SQUMAT_DET_Q gan_mat33f_det_q |
#define | GAN_SQUMAT_DET_S gan_mat33f_det_s |
#define | GAN_SQUMAT_TRACE_Q gan_mat33f_trace_q |
#define | GAN_SQUMAT_TRACE_S gan_mat33f_trace_s |
#define | GAN_MATTYPE Gan_SquMatrix33_f |
#define | GAN_MATRIX_TYPE Gan_SquMatrix_f |
#define | GAN_SQUMATRIX_TYPE Gan_SquMatrix_f |
#define | GAN_VECTOR_TYPE Gan_Vector_f |
#define | GAN_MAT_ELEMENT_TYPE GAN_FLOAT |
#define | GAN_REALTYPE float |
#define | GAN_FWRITE_LENDIAN gan_fwrite_lendian_f32 |
#define | GAN_FREAD_LENDIAN gan_fread_lendian_f32 |
#define | GAN_VECTYPE1 Gan_Vector3_f |
#define | GAN_VECTYPE2 Gan_Vector3_f |
#define | GAN_FIXED_MATRIX_TYPE GAN_SYMMETRIC_MATRIX33_F |
#define | GAN_MAT_FPRINT gan_symmat33f_fprint |
#define | GAN_MAT_PRINT gan_symmat33f_print |
#define | GAN_MAT_FSCANF gan_symmat33f_fscanf |
#define | GAN_MAT_FWRITE gan_symmat33f_fwrite |
#define | GAN_MAT_FREAD gan_symmat33f_fread |
#define | GAN_MAT_ZERO_Q gan_symmat33f_zero_q |
#define | GAN_MAT_ZERO_S gan_symmat33f_zero_s |
#define | GAN_MAT_COPY_Q gan_symmat33f_copy_q |
#define | GAN_MAT_COPY_S gan_symmat33f_copy_s |
#define | GAN_MAT_SCALE_Q gan_symmat33f_scale_q |
#define | GAN_MAT_SCALE_S gan_symmat33f_scale_s |
#define | GAN_MAT_SCALE_I gan_symmat33f_scale_i |
#define | GAN_MAT_DIVIDE_Q gan_symmat33f_divide_q |
#define | GAN_MAT_DIVIDE_S gan_symmat33f_divide_s |
#define | GAN_MAT_DIVIDE_I gan_symmat33f_divide_i |
#define | GAN_MAT_NEGATE_Q gan_symmat33f_negate_q |
#define | GAN_MAT_NEGATE_S gan_symmat33f_negate_s |
#define | GAN_MAT_NEGATE_I gan_symmat33f_negate_i |
#define | GAN_MAT_UNIT_Q gan_symmat33f_unit_q |
#define | GAN_MAT_UNIT_S gan_symmat33f_unit_s |
#define | GAN_MAT_UNIT_I gan_symmat33f_unit_i |
#define | GAN_MAT_ADD_Q gan_symmat33f_add_q |
#define | GAN_MAT_ADD_I1 gan_symmat33f_add_i1 |
#define | GAN_MAT_ADD_I2 gan_symmat33f_add_i2 |
#define | GAN_MAT_INCREMENT gan_symmat33f_increment |
#define | GAN_MAT_ADD_S gan_symmat33f_add_s |
#define | GAN_MAT_SUB_Q gan_symmat33f_sub_q |
#define | GAN_MAT_SUB_I1 gan_symmat33f_sub_i1 |
#define | GAN_MAT_SUB_I2 gan_symmat33f_sub_i2 |
#define | GAN_MAT_DECREMENT gan_symmat33f_decrement |
#define | GAN_MAT_SUB_S gan_symmat33f_sub_s |
#define | GAN_MAT_MULTV_Q gan_symmat33f_multv3_q |
#define | GAN_MAT_MULTV_S gan_symmat33f_multv3_s |
#define | GAN_MAT_SUMSQR_Q gan_symmat33f_sumsqr_q |
#define | GAN_MAT_SUMSQR_S gan_symmat33f_sumsqr_s |
#define | GAN_MAT_FNORM_Q gan_symmat33f_Fnorm_q |
#define | GAN_MAT_FNORM_S gan_symmat33f_Fnorm_s |
#define | GAN_SQUMAT_IDENT_Q gan_symmat33f_ident_q |
#define | GAN_SQUMAT_IDENT_S gan_symmat33f_ident_s |
#define | GAN_SQUMAT_INVERT gan_symmat33f_invert |
#define | GAN_SQUMAT_INVERT_Q gan_symmat33f_invert_q |
#define | GAN_SQUMAT_INVERT_S gan_symmat33f_invert_s |
#define | GAN_SQUMAT_INVERT_I gan_symmat33f_invert_i |
#define | GAN_SQUMAT_DET_Q gan_symmat33f_det_q |
#define | GAN_SQUMAT_DET_S gan_symmat33f_det_s |
#define | GAN_SQUMAT_TRACE_Q gan_symmat33f_trace_q |
#define | GAN_SQUMAT_TRACE_S gan_symmat33f_trace_s |
#define | GAN_VEC_OUTER_SYM_Q gan_vec33f_outer_sym_q |
#define | GAN_VEC_OUTER_SYM_S gan_vec33f_outer_sym_s |
#define | GAN_SYMMAT_CHOLESKY gan_symmat33f_cholesky |
#define | GAN_SYMMAT_CHOLESKY_Q gan_symmat33f_cholesky_q |
#define | GAN_SYMMAT_CHOLESKY_S gan_symmat33f_cholesky_s |
#define | GAN_SYMMAT_CHOLESKY_I gan_symmat33f_cholesky_i |
#define | GAN_MATTYPE Gan_SquMatrix33_f |
#define | GAN_MATRIX_TYPE Gan_SquMatrix_f |
#define | GAN_SQUMATRIX_TYPE Gan_SquMatrix_f |
#define | GAN_VECTOR_TYPE Gan_Vector_f |
#define | GAN_MAT_ELEMENT_TYPE GAN_FLOAT |
#define | GAN_REALTYPE float |
#define | GAN_FWRITE_LENDIAN gan_fwrite_lendian_f32 |
#define | GAN_FREAD_LENDIAN gan_fread_lendian_f32 |
#define | GAN_VECTYPE1 Gan_Vector3_f |
#define | GAN_VECTYPE2 Gan_Vector3_f |
#define | GAN_SQUMATTYPEL Gan_SquMatrix33_f |
#define | GAN_SQUMATTYPER Gan_SquMatrix33_f |
#define | GAN_FIXED_MATRIX_TYPE GAN_LOWER_TRI_MATRIX33_F |
#define | GAN_MAT_FPRINT gan_ltmat33f_fprint |
#define | GAN_MAT_PRINT gan_ltmat33f_print |
#define | GAN_MAT_FSCANF gan_ltmat33f_fscanf |
#define | GAN_MAT_FWRITE gan_ltmat33f_fwrite |
#define | GAN_MAT_FREAD gan_ltmat33f_fread |
#define | GAN_MAT_ZERO_Q gan_ltmat33f_zero_q |
#define | GAN_MAT_ZERO_S gan_ltmat33f_zero_s |
#define | GAN_MAT_COPY_Q gan_ltmat33f_copy_q |
#define | GAN_MAT_COPY_S gan_ltmat33f_copy_s |
#define | GAN_MAT_SCALE_Q gan_ltmat33f_scale_q |
#define | GAN_MAT_SCALE_S gan_ltmat33f_scale_s |
#define | GAN_MAT_SCALE_I gan_ltmat33f_scale_i |
#define | GAN_MAT_DIVIDE_Q gan_ltmat33f_divide_q |
#define | GAN_MAT_DIVIDE_S gan_ltmat33f_divide_s |
#define | GAN_MAT_DIVIDE_I gan_ltmat33f_divide_i |
#define | GAN_MAT_NEGATE_Q gan_ltmat33f_negate_q |
#define | GAN_MAT_NEGATE_S gan_ltmat33f_negate_s |
#define | GAN_MAT_NEGATE_I gan_ltmat33f_negate_i |
#define | GAN_MAT_UNIT_Q gan_ltmat33f_unit_q |
#define | GAN_MAT_UNIT_S gan_ltmat33f_unit_s |
#define | GAN_MAT_UNIT_I gan_ltmat33f_unit_i |
#define | GAN_MAT_ADD_Q gan_ltmat33f_add_q |
#define | GAN_MAT_ADD_I1 gan_ltmat33f_add_i1 |
#define | GAN_MAT_ADD_I2 gan_ltmat33f_add_i2 |
#define | GAN_MAT_INCREMENT gan_ltmat33f_increment |
#define | GAN_MAT_ADD_S gan_ltmat33f_add_s |
#define | GAN_MAT_SUB_Q gan_ltmat33f_sub_q |
#define | GAN_MAT_SUB_I1 gan_ltmat33f_sub_i1 |
#define | GAN_MAT_SUB_I2 gan_ltmat33f_sub_i2 |
#define | GAN_MAT_DECREMENT gan_ltmat33f_decrement |
#define | GAN_MAT_SUB_S gan_ltmat33f_sub_s |
#define | GAN_MAT_MULTV_Q gan_ltmat33f_multv3_q |
#define | GAN_MAT_MULTV_S gan_ltmat33f_multv3_s |
#define | GAN_MAT_MULTV_I gan_ltmat33f_multv3_i |
#define | GAN_MATT_MULTV_Q gan_ltmat33Tf_multv3_q |
#define | GAN_MATT_MULTV_S gan_ltmat33Tf_multv3_s |
#define | GAN_MATT_MULTV_I gan_ltmat33Tf_multv3_i |
#define | GAN_MAT_SRMULTT_Q gan_ltmat33f_srmultT_q |
#define | GAN_MAT_SRMULTT_S gan_ltmat33f_srmultT_s |
#define | GAN_MAT_SRMULTT_I gan_ltmat33f_srmultT_i |
#define | GAN_MAT_SLMULTT_Q gan_ltmat33f_slmultT_q |
#define | GAN_MAT_SLMULTT_S gan_ltmat33f_slmultT_s |
#define | GAN_MAT_SLMULTT_I gan_ltmat33f_slmultT_i |
#define | GAN_MAT_SUMSQR_Q gan_ltmat33f_sumsqr_q |
#define | GAN_MAT_SUMSQR_S gan_ltmat33f_sumsqr_s |
#define | GAN_MAT_FNORM_Q gan_ltmat33f_Fnorm_q |
#define | GAN_MAT_FNORM_S gan_ltmat33f_Fnorm_s |
#define | GAN_SQUMAT_IDENT_Q gan_ltmat33f_ident_q |
#define | GAN_SQUMAT_IDENT_S gan_ltmat33f_ident_s |
#define | GAN_SQUMATI_MULTV_Q gan_ltmat33If_multv3_q |
#define | GAN_SQUMATI_MULTV_S gan_ltmat33If_multv3_s |
#define | GAN_SQUMATI_MULTV_I gan_ltmat33If_multv3_i |
#define | GAN_SQUMATIT_MULTV_Q gan_ltmat33ITf_multv3_q |
#define | GAN_SQUMATIT_MULTV_S gan_ltmat33ITf_multv3_s |
#define | GAN_SQUMATIT_MULTV_I gan_ltmat33ITf_multv3_i |
#define | GAN_SQUMAT_INVERT gan_ltmat33f_invert |
#define | GAN_SQUMAT_INVERT_Q gan_ltmat33f_invert_q |
#define | GAN_SQUMAT_INVERT_S gan_ltmat33f_invert_s |
#define | GAN_SQUMAT_INVERT_I gan_ltmat33f_invert_i |
#define | GAN_SQUMAT_DET_Q gan_ltmat33f_det_q |
#define | GAN_SQUMAT_DET_S gan_ltmat33f_det_s |
#define | GAN_SQUMAT_TRACE_Q gan_ltmat33f_trace_q |
#define | GAN_SQUMAT_TRACE_S gan_ltmat33f_trace_s |
#define | GAN_MATTYPE Gan_SquMatrix33_f |
#define | GAN_MATRIX_TYPE Gan_SquMatrix_f |
#define | GAN_SQUMATRIX_TYPE Gan_SquMatrix_f |
#define | GAN_VECTOR_TYPE Gan_Vector_f |
#define | GAN_MAT_ELEMENT_TYPE GAN_FLOAT |
#define | GAN_REALTYPE float |
#define | GAN_MAT_FPRINT gan_ltmat33Tf_fprint |
#define | GAN_MAT_PRINT gan_ltmat33Tf_print |
#define | GAN_MAT_FSCANF gan_ltmat33Tf_fscanf |
#define | GAN_FIXED_MATRIX_TYPE GAN_LOWER_TRI_MATRIX33_F |
#define | gan_ltmat33Tf_fwrite gan_ltmat33f_fwrite |
#define | gan_ltmat33Tf_fread gan_ltmat33f_fread |
Typedefs |
typedef Gan_Matrix33_f | Gan_Matrix33_f |
| Structure definition for single precision 3x3 matrix.
|
typedef Gan_SquMatrix33_f | Gan_SquMatrix33_f |
| Structure definition for square single precision 3x3 matrix.
|
Enumerations |
enum | Gan_SquMatrix33Type_f { GAN_SYMMETRIC_MATRIX33_F,
GAN_LOWER_TRI_MATRIX33_F
} |
| Square matrix type, for setting and checking in debug mode.
|
Functions |
Gan_Matrix33_f * | gan_mat33f_fill_q (Gan_Matrix33_f *A, float XX, float XY, float XZ, float YX, float YY, float YZ, float ZX, float ZY, float ZZ) |
| Macro: Fill 3x3 matrix with values.
|
Gan_Matrix33_f * | gan_mat33f_cross_q (const Gan_Vector3_f *p, Gan_Matrix33_f *A) |
| Macro: Compute vector product matrix.
|
void | gan_mat33f_get_rows_q (const Gan_Matrix33_f *A, Gan_Vector3_f *p, Gan_Vector3_f *q, Gan_Vector3_f *r) |
| Macro: Extract rows of 3x3 matrix.
|
void | gan_mat33f_get_cols_q (const Gan_Matrix33_f *A, Gan_Vector3_f *p, Gan_Vector3_f *q, Gan_Vector3_f *r) |
| Macro: Extract columns of 3x3 matrix.
|
Gan_Matrix22_f * | gan_mat33f_get_m22tl_q (const Gan_Matrix33_f *A, Gan_Matrix22_f *B) |
| Macro: Extract top-left 2x2 part of 3x3 matrix.
|
Gan_Vector2_f * | gan_mat33f_get_v2tr_q (const Gan_Matrix33_f *A, Gan_Vector2_f *p) |
| Macro: Extract top part of right hand column of 3x3 matrix.
|
void | gan_mat33f_get_parts_q (const Gan_Matrix33_f *A, Gan_Matrix22_f *B, Gan_Vector2_f *p, Gan_Vector2_f *q, float *s) |
| Macro: Extract parts of 3x3 matrix.
|
Gan_Matrix33_f * | gan_mat33f_set_parts_q (Gan_Matrix33_f *A, const Gan_Matrix22_f *B, const Gan_Vector2_f *p, const Gan_Vector2_f *q, float s) |
| Macro: Build a 3x3 matrix from parts.
|
Gan_Matrix33_f * | gan_mat33f_set_cols_q (Gan_Matrix33_f *A, const Gan_Vector3_f *p, const Gan_Vector3_f *q, const Gan_Vector3_f *r) |
| Macro: Build 3x3 matrix from 3-vector columns.
|
Gan_Matrix33_f * | gan_mat33f_set_rows_q (Gan_Matrix33_f *A, const Gan_Vector3_f *p, const Gan_Vector3_f *q, const Gan_Vector3_f *r) |
| Macro: Build 3x3 matrix from 3-vector rows.
|
Gan_Matrix33_f * | gan_mat33f_ident_q (Gan_Matrix33_f *A) |
| Macro: Fill fixed size square matrix with identity.
|
Gan_Matrix33_f * | gan_mat33f_tpose_q (Gan_Matrix33_f *A, Gan_Matrix33_f *B) |
| Macro: Transpose fixed size square matrix.
|
Gan_SquMatrix33_f * | gan_mat33f_saddT_q (const Gan_Matrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Add matrix to its own transpose.
|
Gan_Matrix33_f * | gan_mat33f_invert_q (Gan_Matrix33_f *A, Gan_Matrix33_f *B) |
| Macro: Invert fixed size square matrix.
|
Gan_Matrix33_f * | gan_mat33f_invert_i (Gan_Matrix33_f *A) |
| Macro: Invert fixed size square matrix in-place.
|
float | gan_mat33f_det_q (const Gan_Matrix33_f *A) |
| Macro: Determinant of square matrix.
|
float | gan_mat33f_trace_q (const Gan_Matrix33_f *A) |
| Macro: Trace of square matrix.
|
Gan_Matrix33_f * | gan_mat33f_zero_q (const Gan_Matrix33_f *A) |
| Macro: Fill fixed size matrix with zero.
|
Gan_Matrix33_f * | gan_mat33f_copy_q (Gan_Matrix33_f *A, Gan_Matrix33_f *B) |
| Macro: Copy fixed size matrix.
|
Gan_Matrix33_f * | gan_mat33f_scale_q (Gan_Matrix33_f *A, float a, Gan_Matrix33_f *B) |
| Macro: Scale fixed size matrix.
|
Gan_Matrix33_f * | gan_mat33f_scale_i (Gan_Matrix33_f *A, float a) |
| Macro: Scale fixed size matrix.
|
Gan_Matrix33_f * | gan_mat33f_divide_q (Gan_Matrix33_f *A, float a, Gan_Matrix33_f *B) |
| Macro: Divide fixed size matrix by scalar.
|
Gan_Matrix33_f * | gan_mat33f_divide_i (Gan_Matrix33_f *A, float a) |
| Macro: Divide fixed size matrix by scalar.
|
Gan_Matrix33_f * | gan_mat33f_negate_q (Gan_Matrix33_f *A, Gan_Matrix33_f *B) |
| Macro: Negate fixed size matrix.
|
Gan_Matrix33_f * | gan_mat33f_negate_i (Gan_Matrix33_f *A) |
| Macro: Negate fixed size matrix.
|
Gan_Matrix33_f * | gan_mat33f_unit_i (Gan_Matrix33_f *A) |
| Macro: Scale matrix to unit norm.
|
Gan_Matrix33_f * | gan_mat33f_add_q (Gan_Matrix33_f *A, Gan_Matrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Add two fixed size matrices.
|
Gan_Matrix33_f * | gan_mat33f_add_i1 (Gan_Matrix33_f *A, Gan_Matrix33_f *B) |
| Macro: Add two fixed size matrices.
|
Gan_Matrix33_f * | gan_mat33f_add_i2 (Gan_Matrix33_f *A, Gan_Matrix33_f *B) |
| Macro: Add two fixed size matrices.
|
Gan_Matrix33_f * | gan_mat33f_increment (Gan_Matrix33_f *A, Gan_Matrix33_f *B) |
| Macro: Increment a fixed size vector by another.
|
Gan_Matrix33_f * | gan_mat33f_sub_q (Gan_Matrix33_f *A, Gan_Matrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Subtract two fixed size matrices.
|
Gan_Matrix33_f * | gan_mat33f_sub_i1 (Gan_Matrix33_f *A, Gan_Matrix33_f *B) |
| Macro: Subtract two fixed size matrices.
|
Gan_Matrix33_f * | gan_mat33f_sub_i2 (Gan_Matrix33_f *A, Gan_Matrix33_f *B) |
| Macro: Subtract two fixed size matrices.
|
Gan_Matrix33_f * | gan_mat33f_decrement (Gan_Matrix33_f *A, Gan_Matrix33_f *B) |
| Macro: Decrement a fixed size vector by another.
|
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_Matrix33_f * | gan_mat33f_lmultm33T_q (Gan_Matrix33_f *A, const Gan_Matrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Left-multiply a matrix by the transpose of another matrix.
|
Gan_Matrix33_f * | gan_mat33f_rmultm33_q (Gan_Matrix33_f *A, const Gan_Matrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Right-multiply a matrix by another matrix.
|
Gan_Matrix33_f * | gan_mat33f_rmultm33T_q (Gan_Matrix33_f *A, const Gan_Matrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Right-multiply a matrix by the transpose of another matrix.
|
Gan_SquMatrix33_f * | gan_mat33f_lmultm33T_sym_q (const Gan_Matrix33_f *A, const Gan_Matrix33_f *B, Gan_SquMatrix33_f *C) |
| Macro: Matrix product producing a symmetric matrix.
|
Gan_SquMatrix33_f * | gan_mat33f_rmultm33T_sym_q (const Gan_Matrix33_f *A, const Gan_Matrix33_f *B, Gan_SquMatrix33_f *C) |
| Macro: Matrix product producing a symmetric matrix.
|
Gan_Matrix33_f * | gan_mat33f_lmults33_q (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Left-multiply a matrix by a symmetric matrix.
|
Gan_Matrix33_f * | gan_mat33f_rmults33_q (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Right-multiply a matrix by a symmetric matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_lrmultm33T_q (const Gan_SquMatrix33_f *A, const Gan_Matrix33_f *B, const Gan_Matrix33_f *C, Gan_SquMatrix33_f *D) |
| Macro: Matrix triple product involving symmetric matrices.
|
Gan_SquMatrix33_f * | gan_symmat33f_lrmultm33_q (const Gan_SquMatrix33_f *A, const Gan_Matrix33_f *B, const Gan_Matrix33_f *C, Gan_SquMatrix33_f *D) |
| Macro: Matrix triple product involving symmetric matrices.
|
Gan_Matrix33_f * | gan_mat33f_lmultl33_q (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Left-multiply a matrix by a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_lmultl33I_q (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Left-multiply a matrix by the inverse of a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_lmultl33T_q (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Left-multiply a matrix by the transpose of a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_lmultl33IT_q (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Left-multiply a matrix by the inverse transpose of a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_rmultl33_q (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Right-multiply a matrix by a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_rmultl33I_q (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Right-multiply a matrix by the inverse of a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_rmultl33T_q (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Right-multiply a matrix by the transpose of a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_rmultl33IT_q (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B, Gan_Matrix33_f *C) |
| Macro: Right-multiply a matrix by the inverse transpose of a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_lmultl33_i (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B) |
| Macro: Left-multiply a matrix by a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_lmultl33I_i (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B) |
| Macro: Left-multiply a matrix by the inverse of a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_lmultl33T_i (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B) |
| Macro: Left-multiply a matrix by the transpose of a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_lmultl33IT_i (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B) |
| Macro: Left-multiply a matrix by the inverse transpose of a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_rmultl33_i (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B) |
| Macro: Right-multiply a matrix by a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_rmultl33I_i (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B) |
| Macro: Right-multiply a matrix by the inverse of a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_rmultl33T_i (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B) |
| Macro: Right-multiply a matrix by the transpose of a lower-triangular matrix.
|
Gan_Matrix33_f * | gan_mat33f_rmultl33IT_i (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B) |
| Macro: Right-multiply a matrix by the inverse transpose of a lower-triangular matrix.
|
Gan_SquMatrix33_f * | gan_mat33f_slmultT_q (Gan_Matrix33_f *A, const Gan_SquMatrix33_f *B) |
| Macro: Left-multiply a matrix by its own transpose, producing a symmetric matrix.
|
Gan_SquMatrix33_f * | gan_mat33f_srmultT_q (const Gan_Matrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Right-multiply a matrix by its own transpose, producing a symmetric matrix.
|
float | gan_mat33f_sumsqr_q (const Gan_Matrix33_f *A) |
| Macro: Returns sum of squares of matrix elements.
|
float | gan_mat33f_Fnorm_q (const Gan_Matrix33_f *A) |
| Macro: Frobenius norm of matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_fill_q (Gan_SquMatrix33_f *A, float XX, float YX, float YY, float ZX, float ZY, float ZZ) |
| Macro: Fill 3x3 symmetric matrix with values.
|
void | gan_symmat33f_get_parts_q (const Gan_SquMatrix33_f *A, Gan_SquMatrix22_f *B, Gan_Vector2_f *p, float *s) |
| Macro: Extract parts of 3x3 symmetric matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_set_parts_q (Gan_SquMatrix33_f *A, const Gan_SquMatrix22_f *B, const Gan_Vector2_f *p, float s) |
| Macro: Build a 3x3 symmetric matrix from parts.
|
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_SquMatrix33_f * | gan_symmat33f_cholesky_q (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Compute Cholesky factorisation of fixed size symmetric matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_cholesky_i (Gan_SquMatrix33_f *A) |
| Macro: Compute Cholesky factorisation of fixed size symmetric matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_ident_q (Gan_SquMatrix33_f *A) |
| Macro: Fill fixed size square matrix with identity.
|
Gan_SquMatrix33_f * | gan_symmat33f_invert_q (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Invert fixed size square matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_invert_i (Gan_SquMatrix33_f *A) |
| Macro: Invert fixed size square matrix in-place.
|
float | gan_symmat33f_det_q (const Gan_SquMatrix33_f *A) |
| Macro: Determinant of square matrix.
|
float | gan_symmat33f_trace_q (const Gan_SquMatrix33_f *A) |
| Macro: Trace of square matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_zero_q (const Gan_SquMatrix33_f *A) |
| Macro: Fill fixed size matrix with zero.
|
Gan_SquMatrix33_f * | gan_symmat33f_copy_q (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Copy fixed size matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_scale_q (Gan_SquMatrix33_f *A, float a, Gan_SquMatrix33_f *B) |
| Macro: Scale fixed size matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_scale_i (Gan_SquMatrix33_f *A, float a) |
| Macro: Scale fixed size matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_divide_q (Gan_SquMatrix33_f *A, float a, Gan_SquMatrix33_f *B) |
| Macro: Divide fixed size matrix by scalar.
|
Gan_SquMatrix33_f * | gan_symmat33f_divide_i (Gan_SquMatrix33_f *A, float a) |
| Macro: Divide fixed size matrix by scalar.
|
Gan_SquMatrix33_f * | gan_symmat33f_negate_q (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Negate fixed size matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_negate_i (Gan_SquMatrix33_f *A) |
| Macro: Negate fixed size matrix.
|
Gan_SquMatrix33_f * | gan_symmat33f_unit_i (Gan_SquMatrix33_f *A) |
| Macro: Scale matrix to unit norm.
|
Gan_SquMatrix33_f * | gan_symmat33f_add_q (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B, Gan_SquMatrix33_f *C) |
| Macro: Add two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_symmat33f_add_i1 (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Add two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_symmat33f_add_i2 (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Add two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_symmat33f_increment (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Increment a fixed size vector by another.
|
Gan_SquMatrix33_f * | gan_symmat33f_sub_q (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B, Gan_SquMatrix33_f *C) |
| Macro: Subtract two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_symmat33f_sub_i1 (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Subtract two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_symmat33f_sub_i2 (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Subtract two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_symmat33f_decrement (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Decrement a fixed size vector by another.
|
Gan_Vector3_f * | gan_symmat33f_multv3_q (const Gan_SquMatrix33_f *A, Gan_Vector3_f *p, Gan_Vector3_f *q) |
| Macro: Matrix/vector product.
|
float | gan_symmat33f_sumsqr_q (const Gan_SquMatrix33_f *A) |
| Macro: Returns sum of squares of matrix elements.
|
float | gan_symmat33f_Fnorm_q (const Gan_SquMatrix33_f *A) |
| Macro: Frobenius norm of matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_fill_q (Gan_SquMatrix33_f *A, float XX, float YX, float YY, float ZX, float ZY, float ZZ) |
| Macro: Fill 3x3 lower triangular matrix with values.
|
void | gan_ltmat33f_get_parts_q (const Gan_SquMatrix33_f *A, Gan_SquMatrix22_f *B, Gan_Vector2_f *p, float *s) |
| Macro: Extract parts of 3x3 lower triangular matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_set_parts_q (Gan_SquMatrix33_f *A, const Gan_SquMatrix22_f *B, const Gan_Vector2_f *p, float s) |
| Macro: Build a 3x3 lower triangular matrix from parts.
|
Gan_SquMatrix33_f * | gan_ltmat33f_ident_q (Gan_SquMatrix33_f *A) |
| Macro: Fill fixed size square matrix with identity.
|
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_SquMatrix33_f * | gan_ltmat33f_invert_q (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Invert fixed size square matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_invert_i (Gan_SquMatrix33_f *A) |
| Macro: Invert fixed size square matrix in-place.
|
float | gan_ltmat33f_det_q (const Gan_SquMatrix33_f *A) |
| Macro: Determinant of square matrix.
|
float | gan_ltmat33f_trace_q (const Gan_SquMatrix33_f *A) |
| Macro: Trace of square matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_zero_q (const Gan_SquMatrix33_f *A) |
| Macro: Fill fixed size matrix with zero.
|
Gan_SquMatrix33_f * | gan_ltmat33f_copy_q (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Copy fixed size matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_scale_q (Gan_SquMatrix33_f *A, float a, Gan_SquMatrix33_f *B) |
| Macro: Scale fixed size matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_scale_i (Gan_SquMatrix33_f *A, float a) |
| Macro: Scale fixed size matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_divide_q (Gan_SquMatrix33_f *A, float a, Gan_SquMatrix33_f *B) |
| Macro: Divide fixed size matrix by scalar.
|
Gan_SquMatrix33_f * | gan_ltmat33f_divide_i (Gan_SquMatrix33_f *A, float a) |
| Macro: Divide fixed size matrix by scalar.
|
Gan_SquMatrix33_f * | gan_ltmat33f_negate_q (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Negate fixed size matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_negate_i (Gan_SquMatrix33_f *A) |
| Macro: Negate fixed size matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_unit_i (Gan_SquMatrix33_f *A) |
| Macro: Scale matrix to unit norm.
|
Gan_SquMatrix33_f * | gan_ltmat33f_add_q (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B, Gan_SquMatrix33_f *C) |
| Macro: Add two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_ltmat33f_add_i1 (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Add two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_ltmat33f_add_i2 (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Add two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_ltmat33f_increment (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Increment a fixed size vector by another.
|
Gan_SquMatrix33_f * | gan_ltmat33f_sub_q (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B, Gan_SquMatrix33_f *C) |
| Macro: Subtract two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_ltmat33f_sub_i1 (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Subtract two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_ltmat33f_sub_i2 (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Subtract two fixed size matrices.
|
Gan_SquMatrix33_f * | gan_ltmat33f_decrement (Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Decrement a fixed size vector by another.
|
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_SquMatrix33_f * | gan_ltmat33f_slmultT_q (Gan_SquMatrix33_f *A, const Gan_SquMatrix33_f *B) |
| Macro: Left-multiply a matrix by its own transpose, producing a symmetric matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_slmultT_i (Gan_SquMatrix33_f *A) |
| Macro: Left-multiply a matrix by its own transpose, producing a symmetric matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_srmultT_q (const Gan_SquMatrix33_f *A, Gan_SquMatrix33_f *B) |
| Macro: Right-multiply a matrix by its own transpose, producing a symmetric matrix.
|
Gan_SquMatrix33_f * | gan_ltmat33f_srmultT_i (Gan_SquMatrix33_f *A) |
| Macro: Right-multiply a matrix by its own transpose, producing a symmetric matrix.
|
float | gan_ltmat33f_sumsqr_q (const Gan_SquMatrix33_f *A) |
| Macro: Returns sum of squares of matrix elements.
|
float | gan_ltmat33f_Fnorm_q (const Gan_SquMatrix33_f *A) |
| Macro: Frobenius norm of matrix.
|