I was given advice to use Suitesparse in these circumstances:

* configure with --download-suitesparse
* run with -pc_type lu -pc_factor_mat_solver_type umfpack

Nate

On Wed, Jul 8, 2020 at 3:12 PM Mark Adams <mfad...@lbl.gov> wrote:

>
>
> On Wed, Jul 8, 2020 at 2:43 PM Qin Lu via petsc-users <
> petsc-users@mcs.anl.gov> wrote:
>
>> Hello,
>>
>> I am using the Petsc native direct solver (with KSPPREONLY and PCLU) to
>> solver a small Linear equation system. The matrix has a couple of diagonal
>> terms with value 0, which makes the solver fail. Then I set a very small
>> value (e.g., 1e-10) at these terms and the solver works. Can this
>> cause noticeable errors in the solution?
>>
>
> Can't say.
>
>
>> Are there any options in Petsc to make the direct solver do row/column
>> pivoting so that all the diagonal terms are non-zero?
>>
>
> I see:
>
>
> -pc_factor_pivot_in_blocks <true,false>- allow pivoting within the small
> blocks during factorization (may increase stability of factorization.
>
> and
>
>
> -pc_factor_shift_type <shifttype>- Sets shift type or PETSC_DECIDE for the
> default; use '-help' for a list of available types
> -pc_factor_shift_amount <shiftamount>- Sets shift amount or PETSC_DECIDE
> for the default
>
>
>>
>>
>> Thanks for any suggestions.
>>
>> Regards,
>> Qin
>>
>

Reply via email to