Open cenlinhe opened 1 year ago
Hi Cenlin, that's right - it will cause problem with CROPCAT missing in restart run. In previous studies, I run the simulations continuously for multiple years and didn't restart and haven't had this issue. I think we can do modify this code in two options, either (1) to add CROPCAT into restart file, or (2) to run initialize CROPCAT from CROPTYPE when restart. In the first option, it assumes the dominant crop type from previous years will carry on into the next year. In the second option, users can modify CROPTYPE in the hrldas setup file, so that it allows studying the changes of dominant crop types, such as rotation or crop type changes in long-term simulations. I think the second option may be more suitable.
If we add CROPCAT into HRLDAS_setup file, then we are not able to transfer the CROPCAT initialized in noahmp_init subroutine into the next restart cycle. In this case, users need to compute CROPCAT similarly to what is done in the current noahmp_init subroutine outside HRLDAS/Noah-MP and put it into HRLDAS_setup file before running the model, right?
Yes, that's right. An alternative would be to bring forth the CROPCAT initialization from L2195-2227 to before L2009: (IF( .NOT. restart ) THEN). So that this part of initialization will run when restart. In this way, users can modify CROPTYPE in HRLDAS_setup_file to enable time-evolving crop type change or land use change studies in the future.
just a note: we need to think about how to ingest time-evolving LULC in the future.
https://github.com/NCAR/noahmp/blob/7ee673e88cc7a4351be329d92809a0c1ce027053/drivers/wrf/module_sf_noahmpdrv.F#L2198
@CharlesZheZhang I think this CROPCAT variable should be added to the restart file. Otherwise, for restart run, this CROPCAT value will not be initialized because the above entire section of CROPCAT initialization will not be run when retart_flat = .true. What you do think?