Using the MNW1-package in SEAWAT

101 views
Skip to first unread message

Simon Kreipl

unread,
Jun 18, 2025, 5:35:00 AMJun 18
to MODFLOW Users Group
Hi all,

I am working on Aquifer Storage and Recovery (ASR) simulations in SEAWAT. I infiltrate freshwater (TDS=0 kg/m^3) into a saline aquifer (TDS=17.5 kg/m^3), store it for some time and extract the water again. I have previously used the WEL-package and distributed the pumping rate evenly over all model layers. In saline ASR, we typically see the freshwater floating upwards during the storage period, which leads to changes in pressure with depth - fresher (lighter) water at the top and more saline (denser) water at the bottom. These changes in pressure can lead to differences in the infiltration/extraction rate with depth. I would like to take these effects into account in my simulations by using the Multi-Node-Wel-package as it distributes the pumping rate of the well dynamically between all well cells/layers. From what I understand, only the MNW1-package is compatible with SEAWAT (not MNW2). I have spent some time trying the implement this package but have not yet succeeded and was hoping someone here could help out. Below what (I (think) I am currently doing:
  • I only want the MNW-package to distribute the pumping rate dynamically based on the pressure around the well for each model layer. I use the "LOSSTYPE"="SKIN" but set skin to be 0 because T/T_skin=1. I do not want to implement any water level conditions (hlim and href=0) or pumping conditions (Qfrcmn and Qfrcmx=0). Below an example of the MNW1-file for stress period 1. The well is in row 1 and column 1. In total 40 model layers. Infiltration rate 17.5 m^3/d and well radius 0.5 m.
         2         0 # stress period 1
         1         1         1            17.5                       0.0             0.5             0.0
        40         1         1            17.5     MULTI             0.0             0.5             0.0
OUTPUT_FILE_NAME     mt3d_link.ftl      
OUTPUT_FILE_UNIT            333
OUTPUT_FILE_HEADER   extended            
OUTPUT_FILE_FORMAT   unformatted 
  • I include the SSM-package for stress period 1 (infiltration) and iSSType=27. Infiltration concentration is 0 kg/m^3. See below an example from the SSM-file for layer 1 (row and column 1) of the well:
         1         1         1         0        27

My NAM-file is as follows:

LIST               2  swt_vw.list
DIS               11  swt_vw.dis
BAS6              13  swt_vw.bas
LPF               15  swt_vw.lpf
MNW1              40  swt_vw.mnw1
PCG               27  swt_vw.pcg
OC                14  swt_vw.oc
LMT6              54  swt_vw.lmt6
BTN               31  swt_vw.btn
ADV               32  swt_vw.adv
DSP               33  swt_vw.dsp
GCG               35  swt_vw.gcg
SSM               34  swt_vw.ssm
VDF               37  swt_vw.vdf
DATA(BINARY)      53  swt_vw.cbc REPLACE
DATA(BINARY)      51  swt_vw.hds REPLACE

With the setup described above my simulation terminates normally, however the well is not actually operating and I do not have any pumping. I am not sure where I am still doing something wrong and would be very grateful for any hints or help! I have attached all the MODFLOW files including the LIST-file in the zip.

Thanks a lot in advance!

Kind regards,

Simon Kreipl
data_swt_vw.zip

Simon Kreipl

unread,
Jul 18, 2025, 5:33:49 AMJul 18
to MODFLOW Users Group
Hi all,

I have looked into this a bit further and thought I'd share my findings in case anybody in the future wants to use the MNW-package in SEAWAT.

I first tried using the MNW2-package. With the same settings that worked for a MODFLOW-2005 model coupled with MT3DMS, I got the following error message when trying to run with SEAWAT (with the VDF-package): In the LIST-file: "ILLEGAL FILE TYPE IN NAME FILE: MNW2". From this, I assumed it is not possible to use the MNW2-package in SEAWAT.

For me, the MNW1-package works when you specify the Cell-to-well conductance. I think this is like using condeqn="SPECIFIIED" in the MODFLOW 6 Multi-Aquifer-Well-package, or Losstype=SPECIFYcwc in MNW2-package. It's a bit confusing, but in the MNW1-package, this is achieved by specifying the Losstype="SKIN" and then specifying the well-radius variable (Rw) as a negative number, while the actual number should be the Cell-to-well conductance (not the well radius) which can be calculated according to Equation 5 in Halford and Hanson (2002) (https://pubs.usgs.gov/publication/ofr02293).
There are not much examples for the MNW1-package online, so here an example of what worked for me:

# MNW1 package for SEAWAT generated by Flopy 3.9.3
        4        53         0        10 REF = 0
SKIN
FILE:mnw1.wl1 WEL1:91        
FILE:mnw1.Qsum QSUM:93         ALLTIME
         3         0 # stress period 1
         1         1         1            17.5                       0.0       -100.0
         2         1         1             0.0        MN             0.0       -100.0
         3         1         1             0.0        MN             0.0       -100.0
         0         0 # stress period 2
         3         0 # stress period 3
         1         1         1           -17.5                       0.0       -100.0
         2         1         1             0.0        MN             0.0       -100.0
         3         1         1             0.0        MN             0.0       -100.0
PREFIX:mnw1


What's important here is that the Losstype="SKIN", and -100.00 is the Rw-variable where the minus means we are actually specifying CWC, and 100.0 is the value of CWC (as calculated manually).
Also, when multiple MNW-nodes are connected: The first node (here in layer=1, row=1, column=1) gets assigned the desired pumping rate (Qdes, here 17.5 m^3/d) and the column for the MN flag is kept empty. All other connected nodes get Qdes=0.0 and the MN flag should be specified with the string "MN". Also, the SSM-package and LMT6-package should be included as described in my question above.

This worked for my relatively simple case. I am not sure how things would work when speciying pumping, water level restrictions, etc but I hope this helps a bit with the confusing input variables.

I hope I expressed myself somewhat understandably and welcome any feedback if something I have said is not correct!

Best regards, Simon
Reply all
Reply to author
Forward
0 new messages