public SparseMatrix(SparseMatrix SourceSparseMatrix)
{
nRows = SourceSparseMatrix.nRows;
nCols = SourceSparseMatrix.nCols;
SparseColumnVectors = new SparseColumnVector[nCols];
for (int IdxCol = 0; IdxCol < nCols; IdxCol++)
{
SparseColumnVectors[IdxCol] = new SparseColumnVector(SourceSparseMatrix.SparseColumnVectors[IdxCol]);
}
flag_SameSparsePatterForAllColumns = SourceSparseMatrix.flag_SameSparsePatterForAllColumns;
if (flag_SameSparsePatterForAllColumns)
{
SparsePatternOfEachColumn = new int[nRows];
Array.Copy(SourceSparseMatrix.SparsePatternOfEachColumn, SparsePatternOfEachColumn, nRows);
}
}