-
Notifications
You must be signed in to change notification settings - Fork 170
Feature/irrigation #1762
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Feature/irrigation #1762
Conversation
selected crop classification array onto the vegetation tile array Updated LDT to account for these new crop tiles; some temporary changes were made to the LSM-Crop Module code to implement, so some features are currently turned off for now for this first phase to test crop tiles in LIS. Made some minor updates to LIS to accommodate the new crop tiles, however these are surface level changes to get LIS running for now. Added new plugin and structures for MIRCAIrrig croptypes; just placeholder for now to test with the MIRCA 26 classes for Hiroko and Sarith to work with and expand with the MIRCA and related datasets.
…IA-GRIPC irrigation fraction source options.
Implement minor option feature to support different GRIPC irrigation types (sprinkler, paddy, or sprinkler+paddy)
… include Kristi's update on GRIPC irrigation fraction options "sprinkler|paddy|sprinkler+paddy" specified vis ldt.config.
…T irrigation type data and associated routines updates. AQUASTAT irrigation type only works with neighbor gridtransformation option for global domain (mode crash though it works in NLDAS domain--needs to be fixed).
…s well as updates to previously committed routines. Specific updates include as below: 1. Crop classification with “MIRCA” is set up for 26 crops (default) or “MIRCA52” for 52 crops for explicit irrigated and rainfed crop tiling 2. “Irrigation types” returns fractions of Sprinkler, Drip, and Flood irrigation map. The old “irrigation types” based on GRIPC dataset is now renamed to “crop water sources” in which provides irrigated, paddy, or rainfed fractions. When GRIPC is selected, a new routine “assignirrigtype” is called to map out the fractions of irrigation type map and additional options are set up in ldt.config. 3. Introduced “Merge crop and irrigation information” option, which allows additional dataset to be merged with currently selected “Irrigation fraction data source” and “Irrigation type data source”. Changes are made in the core routines for incorporating the merge data source, reading routine, and blending the merged crop fractions with the land cover fractions. 4. Croptype fractions as well as irrigation crop and rainfed crop fractions can be output in 3D arrays of size (lon,lat,num_crops) for MIRCA whereas the dominant crop type is output by default with other crop source data. 5. Added crop planting and harvesting dates for multiple cropping seasons. Currently, it supports only two crop seasons.
…op calendar option
…mation in LDT including: 1)Concurrent irrigation method (simultaneous sprinkler, drip, and flood). 2)Consolidate irrigationMod routines that are repeated for each type into one for Alltypes; incorporate the new information added in LDT and assign irrigation type for each tile (the routine is includes Jessica’s fix in the latest irrigation/sprinkler/sprinkler_irrigationMod.F90). 3)Control more irrigation parameters from lis.config.
removed subdirectories and modules under lis/irrigation
…tside of irrigation window, reinstate original ma computation
…urce is selected. Added grid maps of US county and global countries to the irrigation parameter output fields to be used in LIS irrigation for assigning specific type per crop tile.
…alue over the water so we can distinguish Democratic Republic of the Congo (0).
…r irrigation method distribution among crops by Matt, a routine written and to be implemented by Sarith.
…type mapping developped by Matt.
…ith. Using Global_IMethod.txt which contains fractions as opposed to areas in previously used Global_IMethod.dat.
…n modification that appeared during compilation.
…he consolidated alltypes_irrigationMod module.
…ons included in the paper submitted to JAMES. Updated Noah3.3 and 3.9 to be consistent with Noah3.6 irrigation schemes (issue 176/177). Fixed irrigation output at monthly interval (issue 398).
|
@hkato1 Thanks so much for finalizing the PR. |
|
Should the env/discover/lisf_7_intel_19_1_3_304_irr file be removed from this PR? The underlying Intel compiler doesn't seem to be on Discover anymore. |
yes, I think so. I don't think we were using env/discover/lisf_7.5_intel_2023.2.1_s2s, either. |
|
Hi @hkato1 I compiled and ran the LDT and LIS executables to compare with your sample output. In the LDT output I see some isolated pixels with noise-level differences, which I don't think is a problem. Similar story for the LIS IRRIGATION output. For the LIS SURFACEMODEL output, I also see noise-level differences but over wide areas. Enough so that I'm concerned your output was generated using different compiler settings. What compiler level did you use? Is this 2 or 0 or ??? |
Hi @emkemp Thanks for working on the PR. I compiled with -1 (debugging) level. |
|
Thanks @hkato1 I recompiled with optimization turned off and reproduced your results exactly. I will now review code quality. |
The lisf_7_intel_19_1_3_304_irr module depends on an old version of the Intel compilers that is no longer available on Discover.
|
Two questions on this PR: (1) Why is the 557WW-7.5-FOC deleted in your PR? That has nothing to do with irrigation. (2) Do you have a expected timeline for updating irrigation for the other LSMs? Approving this PR in it's current state may ruin other's research if they are using the old irrigation for NoahMP, RUC, or CLSMF. |
Thanks @emkemp for working on this. |
|
@hkato1 It has been a while, so I forget. |
@smahanam yes, we can configure different irrigation approaches in the new irrigation model. Mutlu's approach was using Sprinkler only, soil deficit demand, and greenness fraction based growing season determination--which can be set in lis.config. The result should be close. Since we are now using irrigation class (i.e. IM) and moved many variables into lis.config, the interface and main LSM routines need to be updated to use that new structure. |
|
I must go through your history to see why the FOC files were deleted. Did you purposely make changes to read_gdas.F90 and read_princeton.F90? |
|
If we had deleted 557WW-7.5-FOC files, we apologize. It is definitely unintentional. |
yes, I did. read_princeton.F90 is just minor change, adding "trim" for printing out filename. |
|
I am still reviewing the history to understand why those FOC files were deleted. I do not want to simply re-add them until I understand what happened. |
Description
Enhancements are made for the irrigation modeling in LIS and preprocessing irrigation related datasets in LDT. We added multiple crop and multiple irrigation type support in LDT. We updated each irrigation type currently enabled in LIS and added multiple irrigation scheme where Sprinkler, Drip, Flood, and Paddy irrigation types occur simultaneously. We updated irrigation code structure and consolidated routines. This implementation is based on Rodell et al. 2026 submitted to JAMES. Currently works with Noah LSM and will be incorporated into NoahMP and others next.
Resolves original issues #106 and #107 at last! Also resolves related issues #176, #177, and #398.
Contributed by @smahanam, @karsenau, @jerlingi, and @KathyNie. Thank you!
Testcase
/discover/nobackup/hkato/IRRIGATION/testcase/issue106
/discover/nobackup/hkato/IRRIGATION/testcase/issue107