uncontinuous layers through Gridgen and DISU

232 views
Skip to first unread message

gasp Magniny

unread,
Jun 8, 2021, 10:54:51 AM6/8/21
to MODFLOW Users Group
Hello all,

I am currently working on a 6 layers model where some of my layers don't cover the whole area and each layer's thickness is not constant.
 
To create my grid I use gridgen, this way I am able to refine my first layer as well as to implement my thickness datas for each layers. I then use the DISU module to create my final discretization through 

disu_gridprops = g.get_gridprops_disu6()
gridprops_ug = g.get_gridprops_unstructuredgrid()
ugrid = flopy.discretization.UnstructuredGrid(**gridprops_ug)

My issue is that by doing so, the grid of each layer has to cover the whole area and if I put 0 thickness values on the points where the actual layer is non-existent I get messages of error when runing the simulation. For the time being I put thickness values that are almost 0 on those points but this really doesn't seems optimal at all.

Do you have any leads? How do you modelize discontinuous layers while having different grids for each layers? Should I use the grid.add_active_domain() for each layers? (I have not tried it yet because to obtain the actual limits of each layers seems tough and I would rather be sure it works before doing it)

Thanks a lot for your time!


  

alex Colyer

unread,
Jul 7, 2022, 9:51:08 AM7/7/22
to MODFLOW Users Group
Hi,

From the source code the gridgen.add_active_domain function only adds the active domain. There are no parameters for implementing pass-through cells within this function.

I believe that you have to use "vertical_pass_through =True"  when defining the gridgen object. See the read the docs - https://flopy.readthedocs.io/en/3.3.2/source/flopy.utils.gridgen.html?highlight=gridgen%20active%20domain#flopy.utils.gridgen.Gridgen

I hope this helps.

Cheers,

Alex

András Jakab

unread,
Jul 7, 2022, 10:01:00 PM7/7/22
to MODFLOW Users Group
Hi,

Why don't you try to set the idomain based on cell thickness? I.e., set cells below a certain thickness as inactive, then use the vertical_pass_through=True option with gridgen. It is basically what Alex is proposing, but first you have to set your inactive cells.

András

Mart Dayniel

unread,
Jul 31, 2023, 9:45:29 AM7/31/23
to MODFLOW Users Group
Hi,

I believe it is not possible to set the idomain to negative 1 if it's an unstructured grid. Alternatively, you can create a polygon based on the extent of your raster (per layer). Then, you should create a negative buffer around this polygon (or else you'll get an error in gridgen stating that your grid lines and active area are collinear). Then use this polygon as the active area for each layer.

Mart

Muhammad Malik Ar Rahiem

unread,
Aug 11, 2023, 5:54:24 AM8/11/23
to MODFLOW Users Group
Hey do you have a solution for this? I obtain the same issue here.
Reply all
Reply to author
Forward
0 new messages