[petsc-users] using superlu_dist

Barry Smith bsmith at mcs.anl.gov
Fri Sep 10 16:04:48 CDT 2010


  This has all changed in the 3.0.0 release. It is much simpler now.

   Any ways you don't need  that crap for differences between 1 or more processors. Just use MATAIJ always and use -pc_type lu -pc_factor_mat_solver_package superlu_dist with 3.0.0 or later


   Barry

On Sep 10, 2010, at 3:59 PM, Matt Funk wrote:

> Hi,
> 
> i was wondering on how i need to set the matrix type when i want to use the 
> superlu_dist solver.
> 
> Right now what i have is:
>  if (m_preCondType == "LU_SUPERLU") {
>    if (numProc() > 1)
>      m_ierr = MatSetType(m_globalMatrix, MATAIJ);
>    else {
>      m_ierr = MatSetType(m_globalMatrix, MATSEQAIJ);
>    }
>  } 
> 
> This i believe is according to the table in the petsc users manual (p.82). 
> Anyway, things work ok on 1 processor. However, when i try 8 processors (i.e. 
> it tells me:
> [3]PETSC ERROR: --------------------- Error Message 
> ------------------------------------
> [3]PETSC ERROR: No support for this operation for this object type!
> [3]PETSC ERROR: Matrix format mpiaij does not have a built-in PETSc direct 
> solver!
> 
> 
> So i guess i should not use the MATAIJ matrix format? I also tried the 
> MATMPIAIJ format, but got the same problem.
> 
> So how is one supposed to use it? Obviously i am doing something wrong. Any 
> help is appreciated.
> 
> thanks
> matt



More information about the petsc-users mailing list