@Test
public void testDeterminant() {

  {
    final double //
    a = -3, b = 2, c = -5, //
        d = -1, e = 0, f = -2, //
        g = 3, h = -4, i = 1;
    final Matrix3 mat3A = new Matrix3( //
        a, b, c, //
        d, e, f, //
        g, h, i);
    final double determinant = a * e * i + b * f * g + c * d * h - c * e * g - b * d * i - a * f * h;
    assertTrue(determinant == mat3A.determinant());
  }
  {
    final double //
    a = -1, b = 2, c = -3, //
        d = 4, e = -5, f = 6, //
        g = -7, h = 8, i = -9;
    final Matrix3 mat3A = new Matrix3( //
        a, b, c, //
        d, e, f, //
        g, h, i);
    final double determinant = a * e * i + b * f * g + c * d * h - c * e * g - b * d * i - a * f * h;
    assertTrue(determinant == mat3A.determinant());
  }
}