#include <Dinv.hh>
|
| template<class Matrix > |
| static bool | Dinv (Matrix &rhs) |
| |
Invert<3>. $3\times3$ (sub-)matrix. Use pivotisation.
- Author
- T. Glebe
◆ Dinv()
template<class Matrix >
| static bool Invert< 3 >::Dinv |
( |
Matrix & |
rhs | ) |
|
|
inlinestatic |
165 typename Matrix::value_type*
a = rhs.Array();
167 static typename Matrix::value_type t1, t2, t3, temp,
s;
168 static typename Matrix::value_type c11, c12, c13, c21, c22, c23, c31, c32, c33, det;
172 c11 =
a[4] *
a[8] -
a[7] *
a[5];
173 c12 =
a[7] *
a[2] -
a[1] *
a[8];
174 c13 =
a[1] *
a[5] -
a[4] *
a[2];
175 c21 =
a[5] *
a[6] -
a[8] *
a[3];
176 c22 =
a[8] *
a[0] -
a[2] *
a[6];
177 c23 =
a[2] *
a[3] -
a[5] *
a[0];
178 c31 =
a[3] *
a[7] -
a[6] *
a[4];
179 c32 =
a[6] *
a[1] -
a[0] *
a[7];
180 c33 =
a[0] *
a[4] -
a[3] *
a[1];
191 det = c13 * c32 - c12 * c33;
195 det = c23 * c12 - c22 * c13;
201 det = c22 * c33 - c23 * c32;
205 det = c23 * c12 - c22 * c13;
Expr< UnaryOp< Fabs< T >, Expr< A, T, D >, T >, T, D > fabs(const Expr< A, T, D > &rhs)
Definition: UnaryOperators.hh:96
void a()
Definition: check_aligned.C:59
EdbSegP * s
Definition: tlg2pattern.C:32
The documentation for this class was generated from the following file:
- src/libVt++/smatrix/include/Dinv.hh