Dear Tetsuo, Have you compiled GetFEM with the parallel version of mumps? In Ubuntu/Debian you must link to dmumps instead of dmumps_seq for example.
BR Kostast On Tue, May 18, 2021 at 2:09 PM Tetsuo Koyama <tkoyama...@gmail.com> wrote: > Dear Kostas > > Thank you for your report. > I am happy that it runs well in your system. > I will organize the procedure that can reproduce this error. Please wait. > > Best Regards Tetsuo > > 2021年5月18日(火) 18:10 Konstantinos Poulios <logar...@googlemail.com>: > >> Dear Tetsuo, >> I could not confirm this issue. On my system the example runs well both >> on 1 and 2 processes (it doesn't scale well though) >> BR >> Kostas >> >> [image: image.png] >> >> >> >> >> On Sun, May 16, 2021 at 10:07 AM Tetsuo Koyama <tkoyama...@gmail.com> >> wrote: >> >>> Dear Kostas >>> >>> I am looking inside the source code. >>> > if (generic_expressions.size()) {...} >>> Sorry it looks complex for me. >>> >>> FYI. I found that MPI process 1 and 2 is different in the following line. >>> > if (iter.finished(crit)) { >>> This is in the "Newton_with_step_control" function in >>> getfem_model_solvers.h. >>> >>> "crit" is calculated by rit = res / approx_eln and res and approx_eln is >>> ... >>> >>> $ mpirun -n 1 python demo_parallel_laplacian.py >>> res=1.31449e-11 >>> approx_eln=6.10757 >>> crit=2.15222e-12 >>> >>> $ mpirun -n 2 python demo_parallel_laplacian.py >>> res=6.02926 >>> approx_eln=12.2151 >>> crit=0.493588 >>> >>> res=0.135744 >>> approx_eln=12.2151 >>> crit=0.0111128 >>> >>> I am now trying to understand what is the correct residual value of >>> Newton(-Raphson) algorithm. >>> I will be glad if you have an opinion. >>> >>> Best Regards Tetsuo >>> 2021年5月11日(火) 19:28 Tetsuo Koyama <tkoyama...@gmail.com>: >>> >>>> Dear Kostas >>>> >>>> > The relevant code is in the void model::assembly function in >>>> getfem_models.cc. The relevant code assembling the term you add with >>>> md.add_nonlinear_term(..) must be executed inside the if condition >>>> > >>>> > if (generic_expressions.size()) {...} >>>> > You can have a look there and ask for further help if it looks too >>>> complex. You should also check if the test works when you run it with >>>> md.add_nonlinear_term but setting the number of MPI processes to one. >>>> >>>> Thanks. I will check it. And the following command completed >>>> successfully.. >>>> >>>> $ mpirun -n 1 python demo_parallel_laplacian.py >>>> >>>> So all we have to check is compare -n 1 with -n2 . >>>> >>>> Best regards Tetsuo >>>> >>>> 2021年5月11日(火) 18:44 Konstantinos Poulios <logar...@googlemail.com>: >>>> >>>>> Dear Tetsuo, >>>>> >>>>> The relevant code is in the void model::assembly function in >>>>> getfem_models.cc. The relevant code assembling the term you add with >>>>> md.add_nonlinear_term(..) must be executed inside the if condition >>>>> >>>>> if (generic_expressions.size()) {...} >>>>> >>>>> You can have a look there and ask for further help if it looks too >>>>> complex. You should also check if the test works when you run it with >>>>> md.add_nonlinear_term but setting the number of MPI processes to one. >>>>> >>>>> BR >>>>> Kostas >>>>> >>>>> >>>>> On Tue, May 11, 2021 at 10:44 AM Tetsuo Koyama <tkoyama...@gmail.com> >>>>> wrote: >>>>> >>>>>> Dear Kostas >>>>>> >>>>>> Thank you for your reply. >>>>>> >>>>>> > Interesting. In order to isolate the issue, can you also check with >>>>>> > md.add_linear_term(..) >>>>>> > ? >>>>>> It ends when using md.add_linear_term(..). >>>>>> It seems that it is a problem of md.add_nonlinear_term(..). >>>>>> Is there a point which I can check? >>>>>> >>>>>> Best regards Tetsuo. >>>>>> >>>>>> 2021年5月11日(火) 17:19 Konstantinos Poulios <logar...@googlemail.com>: >>>>>> >>>>>>> Dear Tetsuo, >>>>>>> >>>>>>> Interesting. In order to isolate the issue, can you also check with >>>>>>> md.add_linear_term(..) >>>>>>> ? >>>>>>> >>>>>>> Best regards >>>>>>> Kostas >>>>>>> >>>>>>> On Tue, May 11, 2021 at 12:22 AM Tetsuo Koyama <tkoyama...@gmail.com> >>>>>>> wrote: >>>>>>> >>>>>>>> Dear GetFEM community >>>>>>>> >>>>>>>> I am running MPI Parallelization of GetFEM.The running command is >>>>>>>> >>>>>>>> $ git clone https://git.savannah.nongnu.org/git/getfem.git >>>>>>>> $ cd getfem >>>>>>>> $ bash autogen.sh >>>>>>>> $ ./configure --with-pic --enable-paralevel=2 >>>>>>>> $ make >>>>>>>> $ make install >>>>>>>> $ mpirun -n 2 python demo_parallel_laplacian.py >>>>>>>> >>>>>>>> The python script ends correctly. But when I changed the following >>>>>>>> linear term to nonlinear term the script did not end. >>>>>>>> >>>>>>>> -md.add_Laplacian_brick(mim, 'u') >>>>>>>> +md.add_nonlinear_term(mim, "Grad_u.Grad_Test_u") >>>>>>>> >>>>>>>> Do you know the reason? >>>>>>>> Best regards Tetsuo >>>>>>>> >>>>>>>