Status of mizuRoute - ESCOMP/mizuRoute GitHub Wiki

If you edit, please edit the date as well

As of 04-17-2024 (some updates since then that are marked)

FY24 Plan (science enhancement)

Q1

  • Lake coupling fields (lake evaporation and precipitation) are passed to lake in mizuRoute. delayed
  • Visualization and diagnostic. active

Q2

  • Start work on floodwater feedback when river water height exceeds river banks. active
  • Start Greenland and Antarctica river network (for coupling to ocean). with Sean's help (also ultimately create simplified global network so online mapping is possible). active

Q3

  • Finish floodwater feedback
  • Finish managed reservoirs when running coupled. next goal
  • Start working on tracer (data structure and physics).
  • Continue work on coupling to ocean (Finish Greenland and Antarctica river network)

Q4

  • Start working on tracer (data structure and physics).
  • Continue work on coupling to ocean (Finish Greenland and Antarctica river network)

what's working

  • one way coupling on Derecho with intel classic and gnu with following river network data.
grid name domain Lake? Notes
rMERIT global & NLDAS No MERIT-Hydro, 3M reaches, data exist for Greenland, but not Antarctica
rHDMA global & NLDAS No Hydrologic Derivatives for Modeling and Analysis (HDMA) 300K reaches, No Greenland, No Antarctica
rHDMAlk global Yes HDMA and HydroLake merged. No Greenland, No Antarctica
f05 global No gridded network

-- pre-computed ESMF regrid weight file Global: 2-degree x MERIT-hydro, 2-degree x HDMA, 1-degree x MERIT-hydro, 1-degree x HDMA, 1/2-degree x MERIT-hydro, 1/2-degree x HDMA

NLDAS: 1/8-degree x MERIT-hydro, 1/8-degree x HDMA

note: a few cases are failing. see issue #226 and issue #227

test list on cheyenne and izumi with a few expected fails

Coming into CESM tags starting with cesm2_3_alpha16b

Limitations

Usability:

  • History file frequencies are limited: yearly, monthly, daily, or single netCDF

  • history output frequencies are limited: yearly monthly, daily or for sub-daily simulation, n is accepted if aggregated time step is line up 24 hrs (e.g., hourly simulation can be aggregated by n=2, 3, 4, 6, 12, but not 3, 5, etc).

  • restart requires the same number of MPI tasks as previous run. Otherwise, reach initialization uses the reach states at wrong reach. This is because the domain decomposition depends on the number of MPI tasks. see #228

  • Need to pre-compute LND-ROF remapping because of high complexity of ROF grids. polygon simplification with topology preserved

  • Serial restart issue. Fixed??

Technical issues:

  • Potential memory issue in MPI only run especially for MERIT-Hydro network, if MPI tasks use many cores in each node.

  • PIO issue with gnu compiler with cray-mpich (openmpi/5.0.0 looks fine).

  • intel oenapi compilation issue (urgent to fix).

  • Hybrid parallel (MPI and openMP) run needs to be tested (maybe working?). mizuRoute speeds up substantially with hybrid parallel.

  • Lake model (especially reservoir model) may take significantly large memory usage. Potentially problem for MERIT-Hydro network (not implemented yet).

  • direct_to_ocean option significantly slow down (maybe not useable for long run). Need to re-evaluate the procedure, if this is really used to alleviate negative flow to ocean.

More scientific:

  • River volume and discharge are passed from ROF to LND; qover, qdrain, qirrig and qgwl from LND to ROF. No river ice is handled.

  • Only natural lake model (storage-discharge relationship) is implemented.

  • Only lakes that are resolved based river network resolution exist in the river-lake network.

  • Caspian sea is treated as a endoheic lake in mizuRoute so track water balance, but not in CTSM.

Task lists

  1. Need to Handle irrigation demands (water abstraction from river water)

  2. history output aggregation.

  3. many errors in izumi

  4. For continuous run, restart run needs to write in the existing history file. #260, #269

  5. Enable CESM hybrid and branch startup run. See #238

  6. Include gauge meta in history file (gauge ID, corresponding reachID, lat lon, etc.). Could require gauge meta file in control file.

  7. Along with above gauge data add scripts to the repository for mizuRoute that allow simple visualization similar to the Land Model diagnostic package which displays river flow of major rivers (top 50), as well as total annual discharge to each major ocean (Global, Atlantic, Pacific, Indian)

  8. Enable lake routing. River-lake network data needs to be made available in addition to river-only network to run mizuRoute with lake.

  9. Enable parametric reservoir model. Identify lake types (natural, managed and endorheic). Natural and managed lakes discharge to downstream reach, but endorheic lakes have no outflow.

  10. Need to pass evaporation/precipitation variable from LND for lake evaporation. or re-evaluate how to handle QGWL (decompose QGWL into QL (lake evapo/precip), QG (glacier discharge), and QW (??) and use QL to adjust lake water volume?

  11. Pass back QVOLR to CTSM (used for irrigation limit)

  12. Need to pass QGWL variable (match up with MOSART functioning): threshold, all, negative

  13. Need to handle negative flow (match up with MOSART functioning): direct_in_place, direct_to_ocean

  14. Evaluate irrigation and negative flow options.

  15. Allow output data type to be either float or double (for debug purpose).

  16. Floodplain implementation. There is a switch to turn on/off floodplain (off-> so water not go out of channel)

  17. Greenland and Antarctica river network (Sean is helping with this), it is closer to be fixed.

For CESM3 release

  • Need to transport ice separately (match up with MOSART capability). Need to assess this is actually required? We don't think is actually required. (EBK 4/11/2024 this is NOT required)

  • River-ocean coupling. Need to assess how difficult it would be to implement this.

  • River-hillslope coupling. Maybe there is nothing to do?

Wish lists (longer term)

  • Quick visualization for history file (it is in vector format).

  • River network aggregation. Create several river network data based on one fine resolution river data.

  • Tracer capability. isotope, sediment, enthalpy, carbon/nitrogen. coupled with euler routing methods

  • stream and lake temperature.

  • online regrid.