[petsc-dev] fieldsplit + composite + ksp

Matthew Knepley knepley at gmail.com
Wed Sep 18 09:04:27 CDT 2019


On Wed, Sep 18, 2019 at 10:01 AM Pierre Jolivet <pierre.jolivet at enseeiht.fr>
wrote:

>
>
> On 18 Sep 2019, at 3:48 PM, Matthew Knepley <knepley at gmail.com> wrote:
>
> On Wed, Sep 18, 2019 at 2:49 AM Pierre Jolivet via petsc-dev <
> petsc-dev at mcs.anl.gov> wrote:
>
>> Hello,
>> I’m solving the following dummy system
>> http://jolivet.perso.enseeiht.fr/composite_ksp.tar.gz
>> [A, B];[C, D], with a PCFIELDSPLIT. For the PC of D, I’m using a
>> PCCOMPOSITE with two sub PCs. One of which is a PCKSP.
>> Could you please help me figure out what is wrong in the following piece
>> of code, that may be launched with the following arguments:
>> $ mpirun -n 1 ./a.out -ksp_type preonly -pc_type fieldsplit
>> -fieldsplit_1_pc_type composite -fieldsplit_1_sub_1_pc_type ksp
>> -fieldsplit_1_sub_1_ksp_ksp_type gmres -fieldsplit_1_sub_1_ksp_pc_type gamg
>> -fieldsplit_1_sub_1_ksp_ksp_converged_reason
>> -fieldsplit_1_sub_1_ksp_pc_gamg_sym_graph 1
>> -fieldsplit_1_sub_1_ksp_pc_gamg_square_graph 10
>> -fieldsplit_1_sub_1_ksp_ksp_rtol 1e-8
>>
>> It solves the dummy system twice, with a varying block D.
>>
>
> Its not the PC, its the matrix. Everything in the PC gets resetup just
> like you want.
>
> I did MatEqual(S2_1, S2_001, &equal) and equal was false.
>
>
> They are not supposed to be equal, so that’s a good thing.
> Or are you doing the comparison _after_ the MatCopy?
>

Yes.


> I’m not sure of what is your point, sorry.
>

I think they might not actually have identical nonzero structure.

  Thanks,

     Matt


> Thanks,
> Pierre
>
>   Thanks,
>
>      Matt
>
>
>> It should give you:
>>       Linear fieldsplit_1_sub_1_ksp_ solve converged due to
>> CONVERGED_RTOL iterations 8
>> solve #0: 16098.3
>>       Linear fieldsplit_1_sub_1_ksp_ solve did not converge due to
>> DIVERGED_PC_FAILED iterations 0
>>                      PC_FAILED due to SUBPC_ERROR
>> solve #1: inf
>>
>> If I switch line 70 to #if 0, I get the expected output:
>>       Linear fieldsplit_1_sub_1_ksp_ solve converged due to
>> CONVERGED_RTOL iterations 8
>> solve #0: 16098.3
>>       Linear fieldsplit_1_sub_1_ksp_ solve converged due to
>> CONVERGED_RTOL iterations 8
>> solve #1: 325.448
>>
>> I’m realizing that this has probably nothing to do with the outer
>> PCFIELDSPLIT, but this comes from a rather large FSI solver, so reproducing
>> this behavior in “only” 97 SLOC is good enough for your I hope.
>>
>> Thanks in advance,
>> Pierre
>>
>
>
> --
> What most experimenters take for granted before they begin their
> experiments is infinitely more interesting than any results to which their
> experiments lead.
> -- Norbert Wiener
>
> https://www.cse.buffalo.edu/~knepley/
> <http://www.cse.buffalo.edu/~knepley/>
>
>
>

-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20190918/79725490/attachment-0001.html>


More information about the petsc-dev mailing list