Dear Nicolas,

thanks for your mail and the interest in Dumux! 


> Nevertheless, as we want more accuracy, we have refined the mesh. Therefore, 
> in order to reduce the CPU time, we would like to perform parallel 
> computations on this simulation.

Unfortunately, the MPFA scheme is computationally very expensive. If you have 
enough memory available, you can use the caching capabilities to speed up your 
computations - in case you are not using that already. You can do so by setting 
some or all of the following properties to true (note: substitute MYTYPETAG 
with your actual type tag).

namespace Properties::Dumux {
template<class TypeTag>
struct EnableGridGeometryCache<TypeTag, TTag::MYTYPETAG> { static constexpr 
bool value = true; };
template<class TypeTag>
struct EnableGridVolumeVariablesCache<TypeTag, TTag::MYTYPETAG> { static 
constexpr bool value = true; };
template<class TypeTag>
struct EnableGridFluxVariablesCache<TypeTag, TTag::MYTYPETAG> { static 
constexpr bool value = true; };
} // namespace Properties::Dumux

> We obtain the following error:
> 
> what():  Dune::InvalidStateException 
> [findGhostVertices:/home/npillar1/dumux/dumux/dumux/dumux/discretization/cellcentered/mpfa/helper.hh:558]:
>  Mpfa methods in parallel do not work with ghost cells. Use overlap cells 
> instead.

Parallel computations with MPFA currently require overlap cells, ghost cells 
are not (yet) supported. Thus, parallel simulations with MPFA currently only 
work with YaspGrid, which won’t help for the grid you want to use, I suppose. 

You may also have a look at this merge request 
https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/-/merge_requests/2253,
 which implements an NLTPFA scheme for a more recent version of dumux.

Best wishes,
Dennis


> On 19. Jul 2023, at 17:46, Nicolas Pillardou <[email protected]> 
> wrote:
> 
> Dear Dumux community, 
> 
> With my colleagues, we are currently trying to reproduce the work of Martin 
> Schneider published in "Monotone nonlinear finite-volume method for 
> nonisothermal two-phase two-component flow in porous media" (2016), and in 
> particular the 2D benchmark case (CO2 injection into layered aquifer) of 
> section 3.3.1. In this work, averaged MPFA,  TPFA,  NLTPFA and Box schemes 
> are compared.
> 
> Consequently, we have set up a CO2 model, with the use of a dgf msh (read 
> with the dune-alugrid module). For the moment, we are mainly focusing on the 
> MPFA scheme, which is natively provided in the Dumux implementation.
> 
> Nevertheless, as we want more accuracy, we have refined the mesh. Therefore, 
> in order to reduce the CPU time, we would like to perform parallel 
> computations on this simulation.
> 
> We obtain the following error:
> 
> what():  Dune::InvalidStateException 
> [findGhostVertices:/home/npillar1/dumux/dumux/dumux/dumux/discretization/cellcentered/mpfa/helper.hh:558]:
>  Mpfa methods in parallel do not work with ghost cells. Use overlap cells 
> instead.
> 
> I did some research on previous threads on the mailing list and it seems that 
> we should set Grid.Overlap = 1 for cell-centred methods, according to Bernd 
> Flemisch's answer in 
> https://www.mail-archive.com/[email protected]/msg02093.html 
> 
> This command does not seem to affect the code because we are using the 
> Alugrid module.
> 
> Has anyone tried using MPFA + Alugrid + parallel computations in Dumux? 
> 
> Thanks in advance
> 
> Best regards,
> 
> Nicolas Pillardou
> _______________________________________________
> DuMux mailing list
> [email protected]
> https://listserv.uni-stuttgart.de/mailman/listinfo/dumux

_______________________________________________
DuMux mailing list
[email protected]
https://listserv.uni-stuttgart.de/mailman/listinfo/dumux

Reply via email to