David: > >>> Mumps supports Cholesky factorization for symmetric, and symmetric+spd >> matrices. You may consult mumps user manual. >> > > > OK, thanks. But I was also wondering about the PETSc interface to MUMPS. > > I consulted the MUMPS manual, but it just says that you need to specify > "SYM=1" in order to get an LDL^T factorization. I gather that if we set > MatSetOption(A,MAT_SPD,PETSC_TRUE); in PETSc then that will tell MUMPS to > use SYM=1, right? >
When user requests Cholesky factorization, PETSc sets "SYM=2" as default; If user sets flag of spd, then the interface uses "SYM=1" in order to get an LDL^T factorization. See MatGetFactor_xxx_mumps() in petsc/src/mat/impls/aij/mpi/mumps/mumps.c: ... B->factortype = MAT_FACTOR_CHOLESKY; if (A->spd_set && A->spd) mumps->sym = 1; else mumps->sym = 2; ... Hong
