> On 18 Sep 2019, at 3:48 PM, Matthew Knepley <[email protected]> wrote:
> 
> On Wed, Sep 18, 2019 at 2:49 AM Pierre Jolivet via petsc-dev 
> <[email protected] <mailto:[email protected]>> wrote:
> Hello,
> I’m solving the following dummy system 
> http://jolivet.perso.enseeiht.fr/composite_ksp.tar.gz 
> <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?
I’m not sure of what is your point, sorry.

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/>

Reply via email to