Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge E3SM Icepack cice-consortium/E3SM-icepack-initial-integration t…
…o Consortium (CICE-Consortium#460) * initial implementation of SNICAR-AD in Icepack, not tested but BFB in standard dEdd config * adding use_snicar flag (true if shortwave=dEdd_snicar) * initializing use_snicar based on shortwave namelist value * adding a few more arguments to the calling tree * remove repeat ridging warnings for niter=1 * use 5-band wghtns for snicar * basic initialization for snicar tables * clean up trailing blanks * interim commit with some snicar initialization, unconnected and not tested * Add data_dEdd_3band to icepack_init_radiation Add calls to icepack_init_radiation to icepack driver * Add ability to set SNICAR SSP data via icepack_parameters Add some SNICAR SSP table checks, aborts, etc * Add reading of SNICAR SSP file in Icepack driver including new namelist variables and options. Add new namelist to icepack_in. Add snicar and snicartest options. Minor updates to namelist output * rebase, update, and test * Update ssp output * Reorder SNICAR SSP test data arrays to be consistent with source code * move 5band data to subroutine; enable snicar testing on 1 no-ice grid cell * move more data to 3- and 5-band initialization routines, use module data for use_snicar * change snicar coefficient names and use module data for them * cleaning up argument lists * Add additional SNICAR SSP fields * set tmask=0 only for land cell * interim compute_dEdd_5bd subroutine (runs) * separate 3-band and 5-band compute_dEdd routines * Fix errors in calls to compute_dEdd. Some cleanup. * Remove duplicate Iabs calculation. More cleanup. * - Add icepack_shortwave_data - Move shortwave data from icepack_parameters and icepack_shortwave to icepack_shortwave_data, icepack_shortwave_data is lower in file hierarchy than icepack_parameters. - Add 3band and 5band dEdd table initialization to icepack_shortwave_data - snw_ssp_table options now test, snicar, snicarfile, file. snicarfile should be identical to snicar, one reads file and passes data in, other hardcodes snicar table in icepack * - Add USE_SNICARHC (snicar ssp hard coded tables) to reduce compile time when they're not needed - Add ability to reuse icepack binary in test suites to reduce time to test. Uses mp5sum of modified icepack.settings file to establish same binary. * - Remove ssp_bcerad, ssp_bcgrerad from implementation - Add snicar_suite * remove trailing blanks * Cleanup icepack_shortwave_data - Rename variables to gaer/kaer/waer/bcenh for 3 and 5 band - Add 3 band gaer/kaer/waer/bcenh data - Eliminate ability to pass SSP SNICAR data in thru icepack_parameters - Remove nmodal1, nmodal2, max_aero redundant definitions, use values in icepack_tracers - Change module hierarchy, icepack_parameters now "under" icepack_shortwave_data - Rename nmbrad in icepack_shortwave_data to nmbrad_snw * update test suite and icepack_in * update scripts if md5sum not available * Clean up shortwave data variable names * Clean up icepack_shortwave - Remove modal_aero, dEdd_algae, and heat_capacity from icepack_shortwave arguments, use directly from icepack_parameters - Modify fswthrun_ optional argument implementation - Modify rsnow optional argument implementation - Change days_per_year, nextsw_cday, and calendar_type to optional arguments in icepack_step_radiation and down the calling tree - Fix some indentation * - Remove ncat, nilyr, nslyr, nblyr from interface arguments - More indentation adjustments * Update implementation of g(k), w0(k) in icepack_shortwave - consistent with MPAS-Dev/MPAS-Model@b76b6830 - Rename the dEdd_snicar option to dEdd_snicar_ad * Get rid of use_snicar flag, redundant with shortwave setting * update documentation * updating documentation * use module data rather than hardcoded rhoi * cleanup * update namelist and settings documentation * make icepack_warnings_getall public, snw_ssp_table=unknown, update user guide * add icepack_warnings_getall to interface module * Major cleanup of dEdd module, mainly white space and standard alignments. Also changes in precision for several constants in compute_dEdd_5bd and compute_dEdd_3bd, which might change answers in some configurations. Added new fswthru diagnostics for 5bd (not tested). Flagged rnilyr reciprocal bug and another bug in the 5-band interpolation, to be fixed separately. * bug fixes for ice/snow layer reciprocal, missing lines as in consortium icepack PR#400; bug fix for 5-band interpolation weights * mpassi options files * remove namelist entries that are the same as the defaults to avoid potential ambiguity later * Minor updates consistent with E3SM columnphysics modifications - Migrate hi_min to namelist+parameters and refactor implementation - Reduce CESMCOUPLED CPP use, now just for orbital stuff, punch list 23 - Modify initialization of hin_max, punch list 28 - Fix possible divide by zero, punch list 65 - Rename icepack shr_orb_params and shr_orb_decl to icepack_orb_params, icepack_orb_decl - Cleanup argument list for compute_ponds_lvl, compute_ponds_cesm * Update spacing and documentation * First step in adding Tf * Fix some spacing and logic * Fix some documentation * Fix documentation formatting * namelist parameter to set maximum liquidus temperature * Modifications for bit-for-bit with current main in CICE - Add "_old" tfrz_options to recover bit-for-bit for some cases - Move hi_min namelist from forcing_nml to tracer_nml * Remove redundancy in public declaration * recover main bit-for-bit * update tfrz_option * clean up merge * bring some mushy functions into icepack interface * elevate snow/mush enthalpy and salinity profile to interface * Update documentation * Update documentation --------- Co-authored-by: Elizabeth Hunke <[email protected]> Co-authored-by: David Bailey <[email protected]>
- Loading branch information