15 #ifndef __IPSDKMATH_BASICLINEARALGEBRA_H__ 16 #define __IPSDKMATH_BASICLINEARALGEBRA_H__ 33 return a11*a22 - a12*a21;
42 return a11 * (a22*a33 - a23*a32) + a12 * (a23*a31 - a21*a33) + a13 * (a21*a32 - a22*a31);
48 IPSDK_FORCEINLINE
bool 59 x1 =
det(b1, a12, b2, a22) / detA;
60 x2 =
det(a11, b1, a21, b2) / detA;
68 IPSDK_FORCEINLINE
bool 75 const ipReal64 detA =
det(a11, a12, a13, a21, a22, a23, a31, a32, a33);
80 x1 =
det(b1, a12, a13, b2, a22, a23, b3, a32, a33) / detA;
81 x2 =
det(a11, b1, a13, a21, b2, a23, a31, b3, a33) / detA;
82 x3 =
det(a11, a12, b1, a21, a22, b2, a31, a32, b3) / detA;
89 IPSDK_FORCEINLINE
bool 114 #endif // __IPSDKMATH_BASICLINEARALGEBRA_H__ Definition of import/export macro for library.
Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Predefined types for linear algebra management.
double ipReal64
Base types definition.
Definition: BaseTypes.h:57
IPSDK_FORCEINLINE bool invertMatrix(ipReal64 &a11, ipReal64 &a12, ipReal64 &a21, ipReal64 &a22)
inversion of a 2x2 matrix
Definition: BasicLinearAlgebra.h:90
IPSDK_FORCEINLINE ipReal64 det(const ipReal64 a11, const ipReal64 a12, const ipReal64 a21, const ipReal64 a22)
computation of a 2x2 matrix determinant
Definition: BasicLinearAlgebra.h:30
IPSDK_FORCEINLINE bool solveLinear(const ipReal64 a11, const ipReal64 a12, const ipReal64 b1, const ipReal64 a21, const ipReal64 a22, const ipReal64 b2, ipReal64 &x1, ipReal64 &x2)
solve linear system of 2 equations with two unknowns (we solve linear system AX=B) ...
Definition: BasicLinearAlgebra.h:49