diff --git a/MathLib/LinAlg/PETSc/PETScMatrix.cpp b/MathLib/LinAlg/PETSc/PETScMatrix.cpp index 2702f56e2b1c2687f02536b63f2e4206da5177da..abcae011e9f12e634ca99329a2ce264ee29708ef 100644 --- a/MathLib/LinAlg/PETSc/PETScMatrix.cpp +++ b/MathLib/LinAlg/PETSc/PETScMatrix.cpp @@ -136,9 +136,9 @@ void PETScMatrix::create(const PetscInt d_nz, const PetscInt o_nz) MatCreate(PETSC_COMM_WORLD, &A_); MatSetSizes(A_, n_loc_rows_, n_loc_cols_, nrows_, ncols_); + MatSetType(A_, MATMPIAIJ); MatSetFromOptions(A_); - MatSetType(A_, MATMPIAIJ); MatSeqAIJSetPreallocation(A_, d_nz, PETSC_NULL); MatMPIAIJSetPreallocation(A_, d_nz, PETSC_NULL, o_nz, PETSC_NULL); // If pre-allocation does not work one can use MatSetUp(A_), which is much