test_class.file: jtstoolkit/src/test/java/ec/tstoolkit/maths/matrices/SymmetricMatrixTest.java
test_class.identifier: SymmetricMatrixTest
test_case.body: @Test
      public void testLSolve() {
          Matrix X = new Matrix(5, 8);
          X.randomize();
          Matrix S = SymmetricMatrix.XXt(X);
          Matrix A = new Matrix(3, 5);
          A.randomize();
          Matrix B1 = A.clone();
          Matrix B2 = Matrix.lsolve(S.subMatrix(), A.subMatrix());
          SymmetricMatrix.lsolve(S, B1.subMatrix(), true);
          Matrix D = B1.minus(B2);
          assertTrue(D.nrm2() < 1e-9);
      }
test_case.class_method_signature: SymmetricMatrixTest.testLSolve()
test_case.full_signature: @Test public void testLSolve()
test_case.identifier: testLSolve
test_case.invocations: randomize XXt randomize clone lsolve subMatrix subMatrix lsolve subMatrix minus assertTrue nrm2
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testLSolve()
focal_class.file: jtstoolkit/src/main/java/ec/tstoolkit/maths/matrices/SymmetricMatrix.java
focal_class.identifier: SymmetricMatrix
focal_class.class_method_signature: SymmetricMatrix.fromLower(final Matrix m)
focal_class.full_signature: public static void fromLower(final Matrix m)
focal_class.identifier: fromLower
focal_class.modifiers: public static
focal_class.parameters: (final Matrix m)
focal_class.return: void
focal_class.signature: void fromLower(final Matrix m)
focal_class.class_method_signature: SymmetricMatrix.fromLower(final SubMatrix m)
focal_class.full_signature: public static void fromLower(final SubMatrix m)
focal_class.identifier: fromLower
focal_class.modifiers: public static
focal_class.parameters: (final SubMatrix m)
focal_class.return: void
focal_class.signature: void fromLower(final SubMatrix m)
focal_class.class_method_signature: SymmetricMatrix.fromUpper(final Matrix m)
focal_class.full_signature: public static void fromUpper(final Matrix m)
focal_class.identifier: fromUpper
focal_class.modifiers: public static
focal_class.parameters: (final Matrix m)
focal_class.return: void
focal_class.signature: void fromUpper(final Matrix m)
focal_class.class_method_signature: SymmetricMatrix.fromUpper(final SubMatrix m)
focal_class.full_signature: public static void fromUpper(final SubMatrix m)
focal_class.identifier: fromUpper
focal_class.modifiers: public static
focal_class.parameters: (final SubMatrix m)
focal_class.return: void
focal_class.signature: void fromUpper(final SubMatrix m)
focal_class.class_method_signature: SymmetricMatrix.inverse(final Matrix s)
focal_class.full_signature: public static Matrix inverse(final Matrix s)
focal_class.identifier: inverse
focal_class.modifiers: public static
focal_class.parameters: (final Matrix s)
focal_class.return: Matrix
focal_class.signature: Matrix inverse(final Matrix s)
focal_class.class_method_signature: SymmetricMatrix.isDPos(Matrix m, boolean useM)
focal_class.full_signature: public static boolean isDPos(Matrix m, boolean useM)
focal_class.identifier: isDPos
focal_class.modifiers: public static
focal_class.parameters: (Matrix m, boolean useM)
focal_class.return: boolean
focal_class.signature: boolean isDPos(Matrix m, boolean useM)
focal_class.class_method_signature: SymmetricMatrix.isSymmetric(Matrix m, double eps)
focal_class.full_signature: public static boolean isSymmetric(Matrix m, double eps)
focal_class.identifier: isSymmetric
focal_class.modifiers: public static
focal_class.parameters: (Matrix m, double eps)
focal_class.return: boolean
focal_class.signature: boolean isSymmetric(Matrix m, double eps)
focal_class.class_method_signature: SymmetricMatrix.lcholesky(final Matrix m)
focal_class.full_signature: public static void lcholesky(final Matrix m)
focal_class.identifier: lcholesky
focal_class.modifiers: public static
focal_class.parameters: (final Matrix m)
focal_class.return: void
focal_class.signature: void lcholesky(final Matrix m)
focal_class.class_method_signature: SymmetricMatrix.lcholesky(final Matrix m, double Zero)
focal_class.full_signature: public static void lcholesky(final Matrix m, double Zero)
focal_class.identifier: lcholesky
focal_class.modifiers: public static
focal_class.parameters: (final Matrix m, double Zero)
focal_class.return: void
focal_class.signature: void lcholesky(final Matrix m, double Zero)
focal_class.class_method_signature: SymmetricMatrix.LLt(final Matrix lower)
focal_class.full_signature: public static Matrix LLt(final Matrix lower)
focal_class.identifier: LLt
focal_class.modifiers: public static
focal_class.parameters: (final Matrix lower)
focal_class.return: Matrix
focal_class.signature: Matrix LLt(final Matrix lower)
focal_class.class_method_signature: SymmetricMatrix.quadraticForm(final Matrix S, final DataBlock x)
focal_class.full_signature: public static double quadraticForm(final Matrix S, final DataBlock x)
focal_class.identifier: quadraticForm
focal_class.modifiers: public static
focal_class.parameters: (final Matrix S, final DataBlock x)
focal_class.return: double
focal_class.signature: double quadraticForm(final Matrix S, final DataBlock x)
focal_class.class_method_signature: SymmetricMatrix.quadraticForm(final Matrix s, final double[] x)
focal_class.full_signature: public static double quadraticForm(final Matrix s, final double[] x)
focal_class.identifier: quadraticForm
focal_class.modifiers: public static
focal_class.parameters: (final Matrix s, final double[] x)
focal_class.return: double
focal_class.signature: double quadraticForm(final Matrix s, final double[] x)
focal_class.class_method_signature: SymmetricMatrix.quadraticForm(final Matrix s, final Matrix x)
focal_class.full_signature: public static Matrix quadraticForm(final Matrix s, final Matrix x)
focal_class.identifier: quadraticForm
focal_class.modifiers: public static
focal_class.parameters: (final Matrix s, final Matrix x)
focal_class.return: Matrix
focal_class.signature: Matrix quadraticForm(final Matrix s, final Matrix x)
focal_class.class_method_signature: SymmetricMatrix.quadraticForm(final SubMatrix M, final DataBlock x)
focal_class.full_signature: public static double quadraticForm(final SubMatrix M, final DataBlock x)
focal_class.identifier: quadraticForm
focal_class.modifiers: public static
focal_class.parameters: (final SubMatrix M, final DataBlock x)
focal_class.return: double
focal_class.signature: double quadraticForm(final SubMatrix M, final DataBlock x)
focal_class.class_method_signature: SymmetricMatrix.quadraticForm(final SubMatrix s, final SubMatrix x)
focal_class.full_signature: public static Matrix quadraticForm(final SubMatrix s, final SubMatrix x)
focal_class.identifier: quadraticForm
focal_class.modifiers: public static
focal_class.parameters: (final SubMatrix s, final SubMatrix x)
focal_class.return: Matrix
focal_class.signature: Matrix quadraticForm(final SubMatrix s, final SubMatrix x)
focal_class.class_method_signature: SymmetricMatrix.quadraticForm(final SubMatrix s, final SubMatrix x,
              final SubMatrix xtsx)
focal_class.full_signature: public static void quadraticForm(final SubMatrix s, final SubMatrix x,
              final SubMatrix xtsx)
focal_class.identifier: quadraticForm
focal_class.modifiers: public static
focal_class.parameters: (final SubMatrix s, final SubMatrix x,
              final SubMatrix xtsx)
focal_class.return: void
focal_class.signature: void quadraticForm(final SubMatrix s, final SubMatrix x,
              final SubMatrix xtsx)
focal_class.class_method_signature: SymmetricMatrix.quadraticFormT(final Matrix s, final Matrix x)
focal_class.full_signature: public static Matrix quadraticFormT(final Matrix s, final Matrix x)
focal_class.identifier: quadraticFormT
focal_class.modifiers: public static
focal_class.parameters: (final Matrix s, final Matrix x)
focal_class.return: Matrix
focal_class.signature: Matrix quadraticFormT(final Matrix s, final Matrix x)
focal_class.class_method_signature: SymmetricMatrix.quadraticFormT(final SubMatrix s, final SubMatrix x)
focal_class.full_signature: public static Matrix quadraticFormT(final SubMatrix s, final SubMatrix x)
focal_class.identifier: quadraticFormT
focal_class.modifiers: public static
focal_class.parameters: (final SubMatrix s, final SubMatrix x)
focal_class.return: Matrix
focal_class.signature: Matrix quadraticFormT(final SubMatrix s, final SubMatrix x)
focal_class.class_method_signature: SymmetricMatrix.quadraticFormT(final SubMatrix s, final SubMatrix x,
              final SubMatrix xsxt)
focal_class.full_signature: public static void quadraticFormT(final SubMatrix s, final SubMatrix x,
              final SubMatrix xsxt)
focal_class.identifier: quadraticFormT
focal_class.modifiers: public static
focal_class.parameters: (final SubMatrix s, final SubMatrix x,
              final SubMatrix xsxt)
focal_class.return: void
focal_class.signature: void quadraticFormT(final SubMatrix s, final SubMatrix x,
              final SubMatrix xsxt)
focal_class.class_method_signature: SymmetricMatrix.rcumul(Matrix m)
focal_class.full_signature: public static void rcumul(Matrix m)
focal_class.identifier: rcumul
focal_class.modifiers: public static
focal_class.parameters: (Matrix m)
focal_class.return: void
focal_class.signature: void rcumul(Matrix m)
focal_class.class_method_signature: SymmetricMatrix.rcumul(Matrix m, double delta)
focal_class.full_signature: public static void rcumul(Matrix m, double delta)
focal_class.identifier: rcumul
focal_class.modifiers: public static
focal_class.parameters: (Matrix m, double delta)
focal_class.return: void
focal_class.signature: void rcumul(Matrix m, double delta)
focal_class.class_method_signature: SymmetricMatrix.rcumul(Matrix m, double delta, int lag)
focal_class.full_signature: public static void rcumul(Matrix m, double delta, int lag)
focal_class.identifier: rcumul
focal_class.modifiers: public static
focal_class.parameters: (Matrix m, double delta, int lag)
focal_class.return: void
focal_class.signature: void rcumul(Matrix m, double delta, int lag)
focal_class.class_method_signature: SymmetricMatrix.rcumul(Matrix m, int lag)
focal_class.full_signature: public static void rcumul(Matrix m, int lag)
focal_class.identifier: rcumul
focal_class.modifiers: public static
focal_class.parameters: (Matrix m, int lag)
focal_class.return: void
focal_class.signature: void rcumul(Matrix m, int lag)
focal_class.class_method_signature: SymmetricMatrix.reinforceSymmetry(final Matrix m)
focal_class.full_signature: public static void reinforceSymmetry(final Matrix m)
focal_class.identifier: reinforceSymmetry
focal_class.modifiers: public static
focal_class.parameters: (final Matrix m)
focal_class.return: void
focal_class.signature: void reinforceSymmetry(final Matrix m)
focal_class.class_method_signature: SymmetricMatrix.reinforceSymmetry(final SubMatrix m)
focal_class.full_signature: public static void reinforceSymmetry(final SubMatrix m)
focal_class.identifier: reinforceSymmetry
focal_class.modifiers: public static
focal_class.parameters: (final SubMatrix m)
focal_class.return: void
focal_class.signature: void reinforceSymmetry(final SubMatrix m)
focal_class.class_method_signature: SymmetricMatrix.ucholesky(final Matrix s)
focal_class.full_signature: public static void ucholesky(final Matrix s)
focal_class.identifier: ucholesky
focal_class.modifiers: public static
focal_class.parameters: (final Matrix s)
focal_class.return: void
focal_class.signature: void ucholesky(final Matrix s)
focal_class.class_method_signature: SymmetricMatrix.UtU(final Matrix upper)
focal_class.full_signature: public static Matrix UtU(final Matrix upper)
focal_class.identifier: UtU
focal_class.modifiers: public static
focal_class.parameters: (final Matrix upper)
focal_class.return: Matrix
focal_class.signature: Matrix UtU(final Matrix upper)
focal_class.class_method_signature: SymmetricMatrix.XpXt(final Matrix x)
focal_class.full_signature: public static Matrix XpXt(final Matrix x)
focal_class.identifier: XpXt
focal_class.modifiers: public static
focal_class.parameters: (final Matrix x)
focal_class.return: Matrix
focal_class.signature: Matrix XpXt(final Matrix x)
focal_class.class_method_signature: SymmetricMatrix.XpXt(final SubMatrix m, final SubMatrix o)
focal_class.full_signature: public static void XpXt(final SubMatrix m, final SubMatrix o)
focal_class.identifier: XpXt
focal_class.modifiers: public static
focal_class.parameters: (final SubMatrix m, final SubMatrix o)
focal_class.return: void
focal_class.signature: void XpXt(final SubMatrix m, final SubMatrix o)
focal_class.class_method_signature: SymmetricMatrix.XtX(final Matrix x)
focal_class.full_signature: public static Matrix XtX(final Matrix x)
focal_class.identifier: XtX
focal_class.modifiers: public static
focal_class.parameters: (final Matrix x)
focal_class.return: Matrix
focal_class.signature: Matrix XtX(final Matrix x)
focal_class.class_method_signature: SymmetricMatrix.XtX(final SubMatrix x, final SubMatrix m)
focal_class.full_signature: public static void XtX(final SubMatrix x, final SubMatrix m)
focal_class.identifier: XtX
focal_class.modifiers: public static
focal_class.parameters: (final SubMatrix x, final SubMatrix m)
focal_class.return: void
focal_class.signature: void XtX(final SubMatrix x, final SubMatrix m)
focal_class.class_method_signature: SymmetricMatrix.XXt(final Matrix x)
focal_class.full_signature: public static Matrix XXt(final Matrix x)
focal_class.identifier: XXt
focal_class.modifiers: public static
focal_class.parameters: (final Matrix x)
focal_class.return: Matrix
focal_class.signature: Matrix XXt(final Matrix x)
focal_class.class_method_signature: SymmetricMatrix.XXt(final SubMatrix x, final SubMatrix m)
focal_class.full_signature: public static void XXt(final SubMatrix x, final SubMatrix m)
focal_class.identifier: XXt
focal_class.modifiers: public static
focal_class.parameters: (final SubMatrix x, final SubMatrix m)
focal_class.return: void
focal_class.signature: void XXt(final SubMatrix x, final SubMatrix m)
focal_class.class_method_signature: SymmetricMatrix.addXaXt(Matrix S, double a, DataBlock x)
focal_class.full_signature: public static void addXaXt(Matrix S, double a, DataBlock x)
focal_class.identifier: addXaXt
focal_class.modifiers: public static
focal_class.parameters: (Matrix S, double a, DataBlock x)
focal_class.return: void
focal_class.signature: void addXaXt(Matrix S, double a, DataBlock x)
focal_class.class_method_signature: SymmetricMatrix.rsolve(Matrix S, SubMatrix B, boolean clone)
focal_class.full_signature: public static void rsolve(Matrix S, SubMatrix B, boolean clone)
focal_class.identifier: rsolve
focal_class.modifiers: public static
focal_class.parameters: (Matrix S, SubMatrix B, boolean clone)
focal_class.return: void
focal_class.signature: void rsolve(Matrix S, SubMatrix B, boolean clone)
focal_class.class_method_signature: SymmetricMatrix.lsolve(Matrix S, SubMatrix B, boolean clone)
focal_class.full_signature: public static void lsolve(Matrix S, SubMatrix B, boolean clone)
focal_class.identifier: lsolve
focal_class.modifiers: public static
focal_class.parameters: (Matrix S, SubMatrix B, boolean clone)
focal_class.return: void
focal_class.signature: void lsolve(Matrix S, SubMatrix B, boolean clone)
focal_class.class_method_signature: SymmetricMatrix.solve(Matrix S, DataBlock b, boolean clone)
focal_class.full_signature: public static void solve(Matrix S, DataBlock b, boolean clone)
focal_class.identifier: solve
focal_class.modifiers: public static
focal_class.parameters: (Matrix S, DataBlock b, boolean clone)
focal_class.return: void
focal_class.signature: void solve(Matrix S, DataBlock b, boolean clone)
focal_class.class_method_signature: SymmetricMatrix.rsolve(Matrix S, DataBlock b, boolean clone)
focal_class.full_signature: public static void rsolve(Matrix S, DataBlock b, boolean clone)
focal_class.identifier: rsolve
focal_class.modifiers: public static
focal_class.parameters: (Matrix S, DataBlock b, boolean clone)
focal_class.return: void
focal_class.signature: void rsolve(Matrix S, DataBlock b, boolean clone)
focal_class.class_method_signature: SymmetricMatrix.CCt(DataBlock x)
focal_class.full_signature: public static Matrix CCt(DataBlock x)
focal_class.identifier: CCt
focal_class.modifiers: public static
focal_class.parameters: (DataBlock x)
focal_class.return: Matrix
focal_class.signature: Matrix CCt(DataBlock x)
focal_class.class_method_signature: SymmetricMatrix.SymmetricMatrix()
focal_class.full_signature: private  SymmetricMatrix()
focal_class.identifier: SymmetricMatrix
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.signature:  SymmetricMatrix()
focal_method.body: public static void lsolve(Matrix S, SubMatrix B, boolean clone) {
          Matrix Q = S;
          if (clone) {
              Q = Q.clone();
          }
          lcholesky(Q);
          // XLL' = B
          // YL' = B or LY'=B'
          LowerTriangularMatrix.rsolve(Q, B.transpose());
          // B contains Y'=(XL)' or Y = XL
          LowerTriangularMatrix.lsolve(Q, B);
      }
focal_method.class_method_signature: SymmetricMatrix.lsolve(Matrix S, SubMatrix B, boolean clone)
focal_method.full_signature: public static void lsolve(Matrix S, SubMatrix B, boolean clone)
focal_method.identifier: lsolve
focal_method.invocations: clone lcholesky rsolve transpose lsolve
focal_method.modifiers: public static
focal_method.parameters: (Matrix S, SubMatrix B, boolean clone)
focal_method.return: void
focal_method.signature: void lsolve(Matrix S, SubMatrix B, boolean clone)