Dear Timo
Thank you, that’s clear. What I am trying to do in my code is, before
solving the system, Calling some external codes in parallel to do the
upscaling of the material properties. For this multi-domain problem I
think that not calling load balance solves the problem.
I would also like to know what exactly makes the multi-domain problems
non-compatible with parallel. Is it the type of matrix ?
If yes, when using YaspGrid is there a way of asking it not to divide the
mesh between processors? Because there is this other problem I am trying,
which is not multi-domain, but uses the block matrix type for multi-domain
to solve a fully coupled (elastic and one phase flow) model. Likewise,
before solving the system I call external executables in parallel. For
some reason, which I guess is the type of matrix, the system solving does
not work in parallel. And I am not sure what I can do to prevent mesh
parallelization in Yasp Grid, because I am not calling anything like
loadBalance() but it is still dividind the mesh. Would you know how to do
that ?
Thanks a lot
Ana
Em sex., 17 de jun. de 2022 às 09:00, Timo Koch
escreveu:
> Dear Ana,
>
> you’d have to explain more. What you are trying to achieve is not clear to
> me.
>
> The Newton itself doesn’t really care about parallelism. The assembler
> assembles on the gridview it is given (usually the gridview of one process
> (maybe you read your grid on all processes and don’t distribute it (i.e.
> don’t call loadBalance); then it would assemble on the whole grid on all
> processes) it is given and the linear solver handles all the communication
> during solve.
>
> Parts that should only run on one process, you can of course wrap in a «if
> comm.rank() == process_idx». Or you can make a subcommunicator of one
> process and give that to the grid on construction, again depending on what
> you are trying to achieve.
>
> Best
> Timo
>
>
>
> Timo
>
> 16. jun. 2022 kl. 18:53 skrev Ana Carolina Loyola <
> anacarolina...@gmail.com>:
>
>
> Hello,
> I am working on a multi-domain problem in Dumux 3.2 and I am aware that I
> can not solve the system in parallel when using multi-domain. However,
> there are some things in the code that I would like to parallelize. Is
> there a way of "tricking" the NewtonSolver class so it won't know that I am
> working with several processors and will solve the system with only one of
> them ?
>
> Thanks in advance,
>
> Ana
> ___
> DuMux mailing list
> DuMux@listserv.uni-stuttgart.de
> https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
>
>
___
DuMux mailing list
DuMux@listserv.uni-stuttgart.de
https://listserv.uni-stuttgart.de/mailman/listinfo/dumux