* algorithm, an algorithm with higher compression than the standard one.
*/
bool blr_ucfs;
-
/**
* Threshold for the low-rank truncation of the blocks.
*/
* If true, the MUMPS solver will print out error statistics.
*/
bool error_statistics;
-
/*
* If true, the MUMPS solver will use the symmetric factorization. This is
* only possible if the matrix is symmetric.
*/
bool symmetric;
-
/*
* If true, the MUMPS solver will use the positive definite factorization.
* This is only possible if the matrix is symmetric and positive definite.
/**
* irn contains the row indices of the non-zero entries of the matrix.
*/
+<<<<<<< HEAD
std::unique_ptr<types::mumps_index[]> irn;
+=======
+ std::unique_ptr<int[]> irn;
+>>>>>>> 3caf1bb907 (Avoid raw pointers in SparseDirectMUMPS)
/**
* jcn contains the column indices of the non-zero entries of the matrix.
*/
+<<<<<<< HEAD
std::unique_ptr<types::mumps_index[]> jcn;
+=======
+ std::unique_ptr<int[]> jcn;
+>>>>>>> 3caf1bb907 (Avoid raw pointers in SparseDirectMUMPS)
/**
* The number of rows of the matrix. The matrix is square.
DEAL_II_NAMESPACE_CLOSE
-#endif // dealii_sparse_direct_h
+#endif // dealii_sparse_direct_h
\ No newline at end of file
SparseDirectMUMPS::initialize_matrix(const Matrix &matrix)
{
Assert(matrix.n() == matrix.m(), ExcMessage("Matrix needs to be square."));
+ // Here we should be checking if the matrix is respecting the symmetry given
+ //(I.E. sym = 0 for non-symmetric matrix, sym = 1 for posdef matrix, sym = 2
+ // for general symmetric).
// Hand over matrix to MUMPS as centralized assembled matrix
if (Utilities::MPI::this_mpi_process(mpi_communicator) == 0)