public CacheEntry(Key key, QrFactorization qrFactorization) { Key = key; QrFactorization = qrFactorization; MatrixCrossproduct = ImmutableMatrix.OfMatrix(ComputeMatrixCrossproduct(key.Matrix, qrFactorization.IndependentColumnIndexes)); MatrixCrossproductInverse = ImmutableMatrix.OfMatrix(MatrixCrossproduct.Inverse()); }
public static ImmutableMatrix OfMatrix(Matrix <double> matrix) { ImmutableMatrix immutableMatrix = matrix as ImmutableMatrix; if (null != immutableMatrix) { return(immutableMatrix); } return(OfColumns(matrix.EnumerateColumns())); }
public Key(Matrix <double> matrix, double tolerance) : this() { Matrix = ImmutableMatrix.OfMatrix(matrix); Tolerance = tolerance; }