hi Matt,
On 4/03/24 3:25 pm, Matthew Knepley wrote:
So here I am guessing that the interior cells (rock matrix) mess with
the stratum consistency
(ordering of dimension by stratum in the DAG). So some questions:
1) Are rock matrix cells always associated with only one regular cell?
Yes. In the simplest case, each regular cell with dual porosity has one
interior cell nested inside it. There is an interior "face" between the
regular cell and the interior one. (I also add an interior "edge" and
"vertex" so that the DAG has the same depth everywhere.) As well as
computing flows between regular cells I compute flows between regular
cells and their interior cells.
2) Do the rock matrix cells hold values that need to be communicated?
Yes. To begin with I add interior cells on the same process as their
parent regular cells. But if dual porosity is only in certain parts of
the mesh, this can lead to poor load balancing. So I redistribute, but
that can mean interior cells may no longer be on the same process as
their parent regular cells, in which case communication is needed.
3) Do you use the topological operations for them, or might we
reproduce this effect by just
marking the cells with rock matrix cells in them using a DMLabel?
Once the dual-porosity mesh is set up, the interior cells and faces are
treated the same as the regular ones, so I use e.g. DMPlexGetSupport()
to get the cells on either side of an interior face when computing flow
across it. (Not sure if that is the kind of topological operation you
meant.)
It has all been working fine with PETSc 3.15 since 2020! But because of
the low-level surgery I guess it is vulnerable to changes.
- Adrian
--
Dr Adrian Croucher
Senior Research Fellow
Department of Engineering Science
Waipapa Taumata Rau / University of Auckland, New Zealand
email:a.crouc...@auckland.ac.nz
tel: +64 (0)9 923 4611