Description
Is your feature request related to a problem? Please describe.
Models tend to get big with many input and output files. Therefore, distributing files in directories and sub-directories can be helpful to organize a project. All examples I found so far use a flat directory structure, i.e. all input and output files are in one directory.
This is my attempt to separate input and output files.
This is the directory structure after running mf6
:
├── input
│ ├── rivercond.chd
│ ├── rivercond.dis
│ ├── rivercond.dis.grb
│ ├── rivercond.ic
│ ├── rivercond.ims
│ ├── rivercond.nam
│ ├── rivercond.npf
│ ├── rivercond.oc
│ ├── rivercond.riv
│ └── rivercond.tdis
├── mfsim.lst
├── mfsim.nam
└── output
├── rivercond.cbc
└── rivercond.hds
The content of mfsim.nam
:
BEGIN options
MEMORY_PRINT_OPTION all
END options
BEGIN timing
TDIS6 input/rivercond.tdis
END timing
BEGIN models
gwf6 input/rivercond.nam rivercond
END models
BEGIN exchanges
END exchanges
BEGIN solutiongroup 1
ims6 input/rivercond.ims rivercond
END solutiongroup 1
rivercond.oc
:
BEGIN options
BUDGET FILEOUT output/rivercond.cbc
HEAD FILEOUT output/rivercond.hds
END options
BEGIN period 1
SAVE head all
SAVE budget all
PRINT budget all
END period 1
rivercond.nam
:
BEGIN options
PRINT_INPUT
SAVE_FLOWS
END options
BEGIN packages
DIS6 input/rivercond.dis dis
NPF6 input/rivercond.npf npf
IC6 input/rivercond.ic ic
RIV6 input/rivercond.riv river
CHD6 input/rivercond.chd chd_0
OC6 input/rivercond.oc oc
END packages
This works. I guess this could be extend into a deeper structure that would allow to use the same input files for multiple models. For example, these models could share files for the model geometry and use specific files for some boundary conditions that are different for each model (variant).
Looking at the source of flopy
, it seems that it always assumes a flat structure (i.e. all files in one directory) for model post processing such as plotting. I this correct?
Describe the solution you'd like
A flexible directory structure, that allows to distribute input and output files to specified directories would help to organize large models and scenario runs that modify only small parts of the input. Maybe this already possible but I don't know how to do it.
Describe alternatives you've considered
See problem description above.
Additional context
Test runs done with MF 6.6.