-
Notifications
You must be signed in to change notification settings - Fork 154
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
Tide support #189
Merged
Merged
Tide support #189
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Made a series of 4 commits to help support the use of MOM6 in idealized non-Boussinesq barotropic tide simulations. All answers in existing test cases are identical, but each of these 4 commits introduces changes to the MOM_parameter_doc files. MOM6 commit Hallberg-NOAA/MOM6@b509561
Made a series of 4 commits to help support the use of MOM6 in idealized non-Boussinesq barotropic tide simulations, plus one follow up to correct trailing white space. All answers in existing test cases are identical, but each of these 4 commits introduces changes to the MOM_parameter_doc files. MOM6 commit Hallberg-NOAA/MOM6@87aeb27
Hallberg-NOAA
added a commit
that referenced
this pull request
Sep 15, 2021
This commit updates the MOM_parameter_doc files to reflect recently added runtime parameters, especially from dev-ncar-main-candidate-2021-08-30. This commit also includes some updates to the MOM_parameter_doc.all files for some less commonly exercised test cases that had been overlooked in another recent update. Submodule updates in this PR include: - NOAA-GFDL/MOM6@233f982c2 Merge pull request #1497 from marshallward/main_to_dev_gfdl - NOAA-GFDL/MOM6@72aabe5a4 Merge branch 'dev/gfdl' into main_to_dev_gfdl - NOAA-GFDL/MOM6@c09e19957 Merge pull request #1491 from gustavo-marques/dev-ncar-main-candidate-2021-08-30 - NOAA-GFDL/MOM6@cabe0d1c9 Merge pull request #1492 from marshallward/malloc_perturb_update - NOAA-GFDL/MOM6@47493085d Merge branch 'dev/gfdl' into malloc_perturb_update - NOAA-GFDL/MOM6@87aad2621 Merge pull request #1495 from marshallward/ale_sponge_halo_fix - NOAA-GFDL/MOM6@e05ceb238 Merge branch 'dev/gfdl' into ale_sponge_halo_fix - NOAA-GFDL/MOM6@16230850a Merge pull request #1490 from Hallberg-NOAA/offset_bathyT_by_Z_ref - NOAA-GFDL/MOM6@f44b9c46b Merge branch 'dev/gfdl' into offset_bathyT_by_Z_ref - NOAA-GFDL/MOM6@a31641682 Merge pull request #1488 from marshallward/rotate_read_data - NOAA-GFDL/MOM6@e5a522b6e Infra: MOM_read_data rename to read_field - NOAA-GFDL/MOM6@6a7216b79 Merge branch 'dev/gfdl' into rotate_read_data - NOAA-GFDL/MOM6@b47b44635 ALE sponge: Only update fields on uv over masks - NOAA-GFDL/MOM6@b560b2ccb Merge branch 'pr/1494' into dev/gfdl - NOAA-GFDL/MOM6@54b4a2302 Merge pull request #1493 from Hallberg-NOAA/find_interfaces_fix - NOAA-GFDL/MOM6@41c96ccdd Merge branch 'dev/gfdl' into find_interfaces_fix - NOAA-GFDL/MOM6@dc6f129cb Merge pull request #7 from alperaltuntas/pr1491_fixes - NOAA-GFDL/MOM6@127a22163 Merge branch 'dev/gfdl' into rotate_read_data - NOAA-GFDL/MOM6@67707e47e Merge branch 'dev/gfdl' into ale_sponge_halo_fix - NOAA-GFDL/MOM6@456d4a900 ALE sponge mask_z halo fixes - NOAA-GFDL/MOM6@6d13b1890 Still more syntax issues - NOAA-GFDL/MOM6@9c2b4e4b5 Fixing a citation - NOAA-GFDL/MOM6@db3fd1cdf Fixed forgotten \f$ - NOAA-GFDL/MOM6@9ee07718a More on background mixing. - NOAA-GFDL/MOM6@5f8c446d9 update all calls of KPP_compute_BLD and KPP_calculate to support the passage of lamult enhancement factor - NOAA-GFDL/MOM6@11c550f55 add references to KPP enhancements methods - NOAA-GFDL/MOM6@d1c0835cb Merge pull request #1487 from raphaeldussin/fix_diags_intwaves - NOAA-GFDL/MOM6@4f707ce54 Some background diffusivity text - NOAA-GFDL/MOM6@b039e62c3 More documentation - Jackson start. - NOAA-GFDL/MOM6@ca1c42682 (*)Avoid uninitialized data use in find_interfaces - NOAA-GFDL/MOM6@5bea5868c Merge branch 'dev/gfdl' into fix_diags_intwaves - NOAA-GFDL/MOM6@a7d8e3a65 Merge pull request #1479 from OlgaSergienko/ice_dynamics - NOAA-GFDL/MOM6@d234258c4 Merge branch 'dev/gfdl' into ice_dynamics - NOAA-GFDL/MOM6@f98b76d13 Merge pull request #1453 from MJHarrison-GFDL/SPEAR_ECDA - NOAA-GFDL/MOM6@f46c4bcad Changed identation in MOM6_ice_shelf_initialize.F90 to follow MOM6 convention - NOAA-GFDL/MOM6@88da4c9a5 clearer documentation for correct_leap_year_inconsistency flag - NOAA-GFDL/MOM6@d37f1cfd5 Add documentation for correct_leap_year_inconsistency argument - NOAA-GFDL/MOM6@ccaddf108 Merge branch 'dev/gfdl' into SPEAR_ECDA - NOAA-GFDL/MOM6@14aebaaa1 Merge branch 'dev/gfdl' into fix_diags_intwaves - NOAA-GFDL/MOM6@91383e332 Testing: Set MALLOC_PERTURB_ to 1 - NOAA-GFDL/MOM6@e2c565c09 changed identation MOM_ice_shelf_initialize.F90 to follow MOM6 convention - NOAA-GFDL/MOM6@442ae8ff5 changed the block idetentation for consistency with MOM6 code style - NOAA-GFDL/MOM6@060c41290 (*)Offset G%bathyT by -G%Z_ref - NOAA-GFDL/MOM6@a253d3797 init local arrays, fix to axes and logging - NOAA-GFDL/MOM6@91ab1e586 Merge branch 'main' into dev-ncar-main-candidate-2021-08-30 - NOAA-GFDL/MOM6@ddec6f9ca Testing: Rotation support for MOM_read_data - NOAA-GFDL/MOM6@bdba2d222 Merge pull request #195 from klindsay28/dimension_rescaling_fixes - NOAA-GFDL/MOM6@380615dde Merge pull request #194 from NCAR/merge_ww3_coupling_vr12ma - NOAA-GFDL/MOM6@60ad2ed2e Merge branch 'dev/gfdl' into SPEAR_ECDA - NOAA-GFDL/MOM6@88b36422f Restore Vt2 diagnostic calculation when requested and retain the functionality of prescribed constant enhancement. - NOAA-GFDL/MOM6@a5caf2e8b removed tab from MOM_ice_shelf_initialize.F90 - NOAA-GFDL/MOM6@3ce2efe29 changes to ice_velocity_mask_update, initialization of ice velocity and ice thickness for new and restart simulations - NOAA-GFDL/MOM6@197cd1870 MOM_CFC_cap cleanup - NOAA-GFDL/MOM6@f6524adee Add run-time parameters CFC11_IC_VAL and CFC12_IC_VAL. - NOAA-GFDL/MOM6@fa96ae332 correct prepending inputdir to CFC_BC_file - NOAA-GFDL/MOM6@bc198197c let register_tracer handle flux_units for MOM_CFC_cap tracers - NOAA-GFDL/MOM6@e87adb88a dimension rescaling fixes for MOM_CFC_cap tracers - NOAA-GFDL/MOM6@9011801b6 Various dimension rescaling fixes - NOAA-GFDL/MOM6@d734536c0 Refactor the way Langmuir entrainment and enhancement factor are computed and applied: (1) When available, pass the enhancement factor received from WW3. Otherwise, let CVmix compute the enhancement factor. (2) Instead of explicitly multiplying diffusivities and viscosities with the enhancement factor, let CVMix handle enhancement internally. - NOAA-GFDL/MOM6@734e53782 change VR12-MA wave_method string to EFACTOR - NOAA-GFDL/MOM6@5ba918aae Merge branch 'dev/gfdl' of github.com:NOAA-GFDL/MOM6 into SPEAR_ECDA - NOAA-GFDL/MOM6@66a758415 Fix pointer initialization and other cleanup - NOAA-GFDL/MOM6@80e1e2e88 fix omp error in KPP module: add lamult to shared clauses - NOAA-GFDL/MOM6@9fe68ac66 fix doxygen error: add comments for wave method strings - NOAA-GFDL/MOM6@2d385a061 Introduce changes needed for CVMix KPP module for the VR12-MA wave coupling option - NOAA-GFDL/MOM6@141277181 Minor fixes for the WW3 coupling option VR12-MA - NOAA-GFDL/MOM6@7ebf3b07e bringing in vr12ma ww3 coupling changes to the latest dev/ncar and resolving conflicts - NOAA-GFDL/MOM6@3e1b0cdf5 Merge pull request #191 from gustavo-marques/recover_answer_change_in_CFC_PR - NOAA-GFDL/MOM6@69f653a53 Merge pull request #193 from NCAR/merge_main_210802 - NOAA-GFDL/MOM6@3117b9830 merge dev/ncar with main 210723 - NOAA-GFDL/MOM6@090fa83fe Add optional argument to FMS2 interface to init_extern_field - NOAA-GFDL/MOM6@8ef959637 Merge https://github.com/OlgaSergienko/MOM6 into ice_dynamics - NOAA-GFDL/MOM6@016beb6c2 Merge branch 'NOAA-GFDL:dev/gfdl' into dev/gfdl - NOAA-GFDL/MOM6@9c0a73505 add dimensional rescaling for thickness initialization - NOAA-GFDL/MOM6@eacf3e25d comments - NOAA-GFDL/MOM6@2169f6dae Merge branch 'dev/gfdl' of github.com:NOAA-GFDL/MOM6 into SPEAR_ECDA - NOAA-GFDL/MOM6@762291114 Changes the order of calculation - NOAA-GFDL/MOM6@997636e3c move lamult from forces to fluxes - NOAA-GFDL/MOM6@7d85ab291 set lamult to 1 below ice - NOAA-GFDL/MOM6@5f756ab7e Enable the export of ice fraction when wave coupling is on. The export of ice fraction was previously added for the newly added CFC module. - NOAA-GFDL/MOM6@bc65e4f46 merge latest dev/ncar into ww3_coupling_vr12ma - NOAA-GFDL/MOM6@230a8b83e Merge pull request #190 from NCAR/fix_cfc_import - NOAA-GFDL/MOM6@b767a1343 import ifrac and u10_sqr only when CFC module is active - NOAA-GFDL/MOM6@b7e0fda76 Merge pull request #189 from gustavo-marques/ncar_cfcs_implementation - NOAA-GFDL/MOM6@5c0e8db43 Merge remote-tracking branch 'origin' into SPEAR_ECDA - NOAA-GFDL/MOM6@347e1470f Merge branch 'NOAA-GFDL:dev/gfdl' into dev/gfdl - NOAA-GFDL/MOM6@0267d0829 Merge branch 'ice_dynamics' of https://github.com/OlgaSergienko/MOM6 into ice_dynamics - NOAA-GFDL/MOM6@457c4991d increased a number of iterations in solver for non-linear viscosity - NOAA-GFDL/MOM6@13f5e12c5 Merge https://github.com/OlgaSergienko/MOM6 into ice_dynamics - NOAA-GFDL/MOM6@f45659d47 introduce the lamult import from ww3 in nuopc cap and add a diag - NOAA-GFDL/MOM6@3aade32dd CFCs implementation via NUOPC cap - NOAA-GFDL/MOM6@276954f3c Fixed a misplaced parentheses - NOAA-GFDL/MOM6@0d5915608 introduce a new wave coupling method: VR12-MA (not fully implemented yet) - NOAA-GFDL/MOM6@d1de7c852 Merge pull request #188 from gustavo-marques/fix_mem_leak_bkgnd - NOAA-GFDL/MOM6@14e233438 Deallocate Kd_bkgnd and Kv_bkgnd - NOAA-GFDL/MOM6@3812cf64c Merge pull request #187 from gustavo-marques/fix_retrieving_nthreads_nuopc - NOAA-GFDL/MOM6@d3f4f0f12 Merge pull request #186 from gustavo-marques/main-candidate-ncar-2021-04-21 - NOAA-GFDL/MOM6@eca5fd53e Merge remote-tracking branch 'origin' into SPEAR_ECDA - NOAA-GFDL/MOM6@7eb92f643 Merge pull request #2 from NOAA-GFDL/dev/gfdl - NOAA-GFDL/MOM6@165176b6e debug checksums pre/post oda - NOAA-GFDL/MOM6@dac7180c3 Use local indexing for MOM6 DA grid - NOAA-GFDL/MOM6@a21ee337e squash this commit.Fix some issues with basin mask - NOAA-GFDL/MOM6@2e60468b1 squash this commit. Revert US argument in call to init_oda. - NOAA-GFDL/MOM6@6e00221bd doxygen. squash this commit - NOAA-GFDL/MOM6@20306e910 squash this commit - NOAA-GFDL/MOM6@568188292 squash this commit - NOAA-GFDL/MOM6@4d411ba22 optionally apply data assimilation increments or a time-varying tendency adjustment to tracers
mom6bot
added a commit
to mom6bot/MOM6-examples
that referenced
this pull request
Jun 26, 2023
MOM6+SIS2+icebergs: Response to the code review - NOAA-GFDL/MOM6@475212f8c ZB submitted via PR - NOAA-GFDL/MOM6@e4db92d74 Rotate test is passed. Regression changed (order of operatrions) - NOAA-GFDL/MOM6@1a38b8812 Filters for ZB. Regression changed (FGR changed to amplitude) - NOAA-GFDL/MOM6@932816ead Implementation of ZB sheme MOM6+SIS2+icebergs: Case-insensitive init_external_field MOM6+SIS2+icebergs: Update time_interp_external functions MOM6+SIS2+icebergs: Remove MPP-based axis data access - NOAA-GFDL/MOM6@6038735c4 FMS2 interpolation ID replaced with derived type MOM6+SIS2+icebergs: Update SIS2 to use the new IO interface - NOAA-GFDL/SIS2@88d9e32 Update SIS2 to use the new IO interface - NOAA-GFDL/SIS2@57923db Fix for sigma_i going to zero in ITD landfast ice. (NOAA-GFDL#189) - NOAA-GFDL/icebergs@a7c0676 Replaced type(real) with real in iceberg.F90 subroutine calve_fl_icebergs. Added a .nml that was missing from the footloose test in previous commits. A few empty, but necessary, directories were missing from the test cases in previous commits, so modified the makeberg run files to create these directories. - NOAA-GFDL/icebergs@66637d6 removed redundant file - NOAA-GFDL/icebergs@796d591 Added script to download data for the a68_test. Simplified the conda environment tests/iceberg_env.yml. Edited some READMEs. MOM6+SIS2+icebergs: update CPP ifdef logic to set "file version" - NOAA-GFDL/icebergs@338e8b2 more doxy comments - NOAA-GFDL/icebergs@4248102 doxygen fix? - NOAA-GFDL/icebergs@3002ee7 Some further cleanup of A68, simplifying the read-in of data - NOAA-GFDL/icebergs@cdd773a Removed non-DEM breaking of bonds. Previous attempts to account for bond-breaking without DEM-mode was not fully-successful because without DEM torque and shear terms, 'strings' of bonded particles one layer thick would tend to bend unphysically without breaking. Furthermore, the physical basis for non-DEM fracture was lacking compared to DEM-mode fracture, anyway. Therefore, I removed all code related to non-DEM fracture, which substantially simplifies much of the code. For example, this eliminated 6 variables (rotation, n_frac_var, n_strain_rate, accum_bond_rotation, lon_prev, lat_prev). MOM6+SIS2+icebergs: Cleanup, documentation, and removal of unused features. Also cleaned-up corresponding tests .nmls. MOM6+SIS2+icebergs: adding footloose=.true. and fl_init_child_xy_by_pe=.true. (for backwards compatibility), and eliminating fl_use_l_scale, fl_l_scale_erosion_only, fl_r, fl_r_s, fl_k_scale_by_perimeter, fl_bits_scale_l, fl_bits_scale_w, and fl_bits_scale_t. - NOAA-GFDL/icebergs@f4d45da initialize some additional variables for new icebergs in calve_icebergs, for backwards compatibility in chksums when footloose=.true. MOM6+SIS2+icebergs: - NOAA-GFDL/icebergs@5a5a175 Modified calve_icebergs so that new berg prev/old velocities and positions are not initialized unless using interactive icebergs. This has no impact except enabling the berg restart chksums to match the reference runs in the om4 regression tests (the regression tests pass either way, but this modification undoes a previous change that caused mismatch in the berg restart chksums only). - NOAA-GFDL/icebergs@b4ce7eb Fixed calve_icebergs so that the random numbers for tidal drift are only calculated under the new scheme for interpolation of gridded fields to bergs (bergs%old_interp_flds_order=.false.). This prevents a crash in the OM4p5 basic regression test. Added a safeguard that makes sure only Verlet integration is allowed for MTS, DEM, and footloose - NOAA-GFDL/icebergs@dd55cca tests/collision_tests/makeberg used to be dependent on Alon's scripts in tests/Iceberg_repository, but now moved those few scripts directly to tests/collision_tests/makeberg and deleted tests/Iceberg_repository. This deleted directory was Alon's KID/ice shelf tests on the ISOMIP geometry, which are outdated (e.g. they may rely on specific branches of the coupler and SIS2, and job scripts are not written for slurm) - NOAA-GFDL/icebergs@9bd3b77 Cleaned up the makeberg directories and files - NOAA-GFDL/icebergs@7a52136 Removed energy monitoring. While it was previously useful for development, it was also clunky, it only worked in non-DEM mode (without torques), and it added a dozen or so variables. Removed energy-based bond-breaking as well. MOM6+SIS2+icebergs: fracture_testing_initialization, init_dem_params, uniaxial_test,use_spring_land_contact,and calculate_force_land_contact - NOAA-GFDL/icebergs@51cba6b more clean up -removed 'dem_shear_for_frac_only' -set new_mts to default -converted some print statements into write statements -removed some old commented code -cleaned up A68a code in icebergs.F90 -added comments for some namelist options -added option 'print_fracture' to write bond/particle info to screen when fracture occurs - NOAA-GFDL/icebergs@e13d1b6 Removed experimental use_damage and power_ground options - NOAA-GFDL/icebergs@d7a8bab Added A68 test back into repository and driver. Tested it with new nml option 'use_broken_bonds_for_substep_contact=.true.', which yielded about a 15% speedup compared to previously - NOAA-GFDL/icebergs@6d4d4d4 Added bond variable 'broken' to track if a bond is broken (1) or intact (0). Added namelist option 'use_broken_bonds_for_substep_contact', which if true, identifies a pair of particles as contacting during the sub-steps if and only if the bond between them is broken (according to the new 'broken' variable'). This is more computationally-efficient than searching for contact pairs in the current and neighboring grid cells. Both the new 'broken' variable and 'use_broken_bonds_for_substep_contact' option can only be used for iKID multiple time step runs in dem-mode (dem=.true.). - NOAA-GFDL/icebergs@33a8bca removed experimental option to account for ocean/wind curl on particle torque, because it has minimal effect and is therefore unused anyway - NOAA-GFDL/icebergs@9399b38 Combined the footloose tests into one directory. Also completed a directory of tests for collision using either the original KID scheme, KID+MTS, or iKID. Eliminated unused tests. MOM6+SIS2+icebergs: consolidated to a single test, tuned, and recorded chksum - NOAA-GFDL/icebergs@2bf5e75 Added separate test cases for footloose_poisson (calve child bergs from iceberg edges similarly to England et al., 2020, with some geometric features from Huth et al., 2022) and footloose_physical (physically based parameterization of footloose calving of child bergs from iceberg edges, following Huth et al., 2022). Removed the A68a test case from the driver - NOAA-GFDL/icebergs@28a755d changes towards passing om4p5 jra55 regression tests. In absence of DEM,MTS, or footloose, reset when grid to particle intepolations occur to the original convention. Only save footloose variables in restart files if footloose is active. - NOAA-GFDL/icebergs@e730ef2 documented file name variables for particle and bond trajectories - NOAA-GFDL/icebergs@20cb345 reset input_freq_distribution to false, the old default - NOAA-GFDL/icebergs@1ee47c1 merged in mpp_self_sync modification from dev/gfdl - NOAA-GFDL/icebergs@b5a4bec Cleanup of beam tests - NOAA-GFDL/icebergs@2686245 added test dem_test_contact, for varying L_ij, the critical-interactive-length scale, for MTS-DEM simulations. Artifically increasing L_ij is needed to prevent overlapping of conglomerates under contact if their particle radii are low. Also added long_run_no_inc_contact_dist.sh and .nml in tests/a68, to test A68a test without increaing L_ij (it has essentially no effect, given the large particle radii). Some edits to icebergs.F90 to increase computational efficiency. - NOAA-GFDL/icebergs@b857d37 Delete makeberg-checkpoint.ipynb - NOAA-GFDL/icebergs@684e66c Delete makeberg.ipynb - NOAA-GFDL/icebergs@1a02384 -Tuned new run for paper using fewer MTS sub-steps (90 vs 200). Adjusted README accordingly. -Achieved about a 5x speedup by changing code so that forces for only one of the two bonds in a pair have to be evaluated during sub-steps, eliminating the call to process MTS sub-step contact with other elements in the same conglomerate for interior (fully-bonded) elements (to which this contact does not apply), and reducing the search range for this contact when it is needed (for non-fully bonded elements). -Increased parallelization buffer width +1*number_of_bonds to accomodate variable for relative rotation of bonds MOM6+SIS2+icebergs: 1. reduce number of calculations in calculate_force_dem 2. only enforce “force_convergence” on MTS long step if there is contact between conglomerates -New default Rearth. Can also specify Rearth in the .nml -nml option to use a power-law or linear grounding drag -relative rotation between bonded particles is now tracked as a variable, rather than calculating it from the tracked rotation of each particle. Probably a better approach for simulations over long timescales, where tracked rotation values may become extremely large -Fixed the maximum normal stress criteria to include the influence of bond bending. -Added 2 new fracture criteria based on Skjetne and Hansen 2019 (fracture_criterion=‘computed’ or ‘computer_s’). Currently unused. - NOAA-GFDL/icebergs@be810d9 added berg velocities to save_short_traj. added option to save trajectories of footloose child bergs with areas exceeding a given threshold - NOAA-GFDL/icebergs@50d8c28 added footloose bergy bits to grd%bergy_mass diagnostic - NOAA-GFDL/icebergs@b3e6395 fix diagnostic for gridded melt associated with footloose child bergs MOM6+SIS2+icebergs: (1) specify an area threshold that must be exceeded to save, (2) save all trajectories when some year is passed (nml parameter save_all_traj_year), (3) save all trajectories by initial mass class (see nml parameters save_nonfl_traj_by_class, save_traj_by_class_start_mass_thres_n, save_traj_by_class_start_mass_thres_s, traj_area_thres_sntbc) -Added a fix for a floating-error for that sometimes occurred when using input_freq_distribution, where the recalculated distributions would not add up to one. - NOAA-GFDL/icebergs@16e94cc -Modified perimeter scaling so that the new parent berg shape is determined by subtracting ice from both the length and width, rather than just the length. -Rearranged code so that interpolations from grid to particles occurs outside of evolve_icebergs -set default for input_freq_distribution to True, in accordance with the given default distribution and distribution_n. -Output thickness with trajectories if and only if save_fl_traj=.True. -Set the defauly for save_fl_traj to .True. - NOAA-GFDL/icebergs@6585a86 more documentation - NOAA-GFDL/icebergs@40e0d44 (1) Added real nml parameter traj_area_thres, a threshold for berg area (km^2) that must be exceeded to save a non-bonded berg trajectory. This will reduce computational cost of producing trajectory data, by ignoring trajectories of small bergs. The BYU/NIC database of berg trajectories ignores bergs with areas less than 5 km^2, so setting traj_area_thres=5 would be appropriate to generate modeled trajectories for comparison. (2) Added documentation where it was missing. - NOAA-GFDL/icebergs@677fdb1 fix traj buffer width - NOAA-GFDL/icebergs@f631618 removed useless nml parameter fl_melt_as_bergy_bits. Added nml parameter save_fl_traj to save masses and footloose parameters in the berg trajectories. MOM6+SIS2+icebergs: if the random initialization scheme fails to initialize the new berg on the current PE, an attempt is made to initialize it at one of the parent berg corners on the current PE. - NOAA-GFDL/icebergs@e27b158 -Fixed an error (again) in the calculation for the max number of footloose child bergs that can be calved from a parent berg over a time step. The previous way was often enforcing one less footloose event that it should have, according to England 2020. MOM6+SIS2+icebergs: allow k>1, and modify fl_bits_src on grid after calving the new berg so that the FL bits budget is still correct - NOAA-GFDL/icebergs@8c92a8c A few fixes to displace_fl_bergs to ensure new child berg is calved onto the computational domain. Added testing of the option to convert footloose bits to a new berg upon accumulating enough mass. MOM6+SIS2+icebergs: the original definition, where radius corresponds to the true iceberg area (L*W). (11) Cleaned up the line lengths where namelist parameters are listed in icebergs_framework.F90 - NOAA-GFDL/icebergs@53cb93c When approximating the dimensions of footloose bits, now apply scaling of length, width, and thickness before rolling correction, rather than after - NOAA-GFDL/icebergs@a43341e fix lon/lat mixup for n/s hemisphere berg calving distribution/initial thickness&mass - NOAA-GFDL/icebergs@80928ae fixed operator splitting error in footloose thermodynamics - NOAA-GFDL/icebergs@2133641 quick fix to default N hemisphere initial thicknesses. Removed unnecessary line in footloose part of thermodynamics - NOAA-GFDL/icebergs@cf1ce33 The mass associated with erosion of FL bits can now be added to bergy bits, rather than melting immediately. Rewrote initialization/calving of new bergs so that values of parameters (initial dimensions, distribution, mass scaling, etc) can be specified separately each hemisphere. - NOAA-GFDL/icebergs@a9deeea a few minor changes to footloose bits regarding scaling and rolling. Separated the Me and Mv melt functions for footloose bits from parent berg, as these melt terms will be different for the parent berg if there is bonding. Added in footloose bits area when spreading berg mass to grid, assuming that footloose bits have the same thickness as the parent berg (Note this is just an approximation, as FL bergs should not have the same thickness, but not sure at this point if including FL area makes a difference, anyway) - NOAA-GFDL/icebergs@81f5b84 some minor edits to budgets. Added SST as nml parameter in the driver - NOAA-GFDL/icebergs@1003d75 separated footloose bits fully from bergy bits, though footloose bits can still be melted as bergy bits with new nml parameter fl_melt_as_bergy_bits. Added fl_bits_scale_l, fl_bits_scale_w, and fl_bits_scale_t nml parameters for specifying scaled dimensions of representative FL bits berg for melting vs. the dimensions of a new fl berg. Modified all budgets code to accomodate fl bits separately from bergy bits - NOAA-GFDL/icebergs@e720f7e finished preliminary footloose bits option, where footloose bergs are tracked and evolved as a group without advecting away from their parent bergs - NOAA-GFDL/icebergs@0c6c964 quick fix of a mass calculation error for option where footloose mass added to bergy bits - NOAA-GFDL/icebergs@a6ec49d fix that should prevent displaced footloose bergs from initializing into land cells. Added option to just convert footloose bergs into bergy bits. Partially implemented option to track footloose bergs similarly to (but separately from) bergy bits, where footloose bergs are tracked with the parent berg, and melted/eroded as a group - NOAA-GFDL/icebergs@7828b3f added footloose displacement for lat/lon coords as well as cartesian - NOAA-GFDL/icebergs@fefb646 amended previous footloose option for assigning child berg positions to random corners of parent berg. Now, assign to random positions along edges of parent berg - NOAA-GFDL/icebergs@a58fa5a added option to position new footloose child bergs to a random corner of the parent berg, rather than having the child berg inherit the exact same position of the parent berg - NOAA-GFDL/icebergs@b72ee3c length fix for footloose child bergs - NOAA-GFDL/icebergs@32f0e56 fix mass scaling bug in creation of footloose child bergs - NOAA-GFDL/icebergs@27c7f75 Update input.nml - NOAA-GFDL/icebergs@09a6bae Update input.nml MOM6+SIS2+icebergs: finish footloose for bonded conglomerates. Moved rolling to separate solver. - NOAA-GFDL/icebergs@d2071bd Fixed angular velocity/rotation terms for dem-mode. Corrected which velocities are used for damping. A bit more development for constant_interaction_LW. - NOAA-GFDL/icebergs@693179a assigned initial value of 'none' for fracture_criterion - NOAA-GFDL/icebergs@b705b60 partial fix for bond restart - NOAA-GFDL/icebergs@decca5c Many changes regarding reading/writing restart files, saving trajectories, and allocating the iceberg/bond variables in preparation for full coupling of this version of the iceberg code with MOM6. Changed the value for traj_sample_hrs and traj_write_hrs that would always force output every timestep from 0 to -1, which fixes a conflict when running with MOM6. Added a 'damage' variable that weakens the stress threshold in areas of pre-existing rifts, crevasses, etc that were inherited from when iceberg was still attached to the ice shelf. Added some experimental options for DEM-mode that (1) track the shear force for fracture purposes but ignore its influence during berg interactions or (2) set the shear force to zero entirely. - NOAA-GFDL/icebergs@813c4a3 -Added a scale-invariant DEM-mode, complete with tangential forces, torque, and stress-based fracture criterion (can currently be used during inner MTS sub-steps only) -Added several 'beam' tests for DEM-mode that make sure it can match analytical solutions -Added a fracture-upon-grounding test for DEM-mode -Added an energy-based fracture criterion -New option to use explicit velocity Verlet during MTS inner iterations. This explicit option requires ~2x smaller MTS sub-time steps than the previous partially-implicit scheme, but actually may run faster. Furthermore, the explicit option ensures momentum conservation without needing to iterate to convergence like with the partially-implicit scheme. Currently, DEM-mode always uses this explicit approach. -Fixed radius definition for square packing -Consolidated MTS code to a single evolve_icebergs_mts subroutine -Finished up some documentation - NOAA-GFDL/icebergs@ac688c3 removed redundant parameter - NOAA-GFDL/icebergs@68611e9 Trying Ubuntu-20.04 - NOAA-GFDL/icebergs@38ee441 Add graphviz (dot) to package list - NOAA-GFDL/icebergs@0aaccd9 Add doxygen to package list - NOAA-GFDL/icebergs@61f6cbe Add GH action to verify documentation - NOAA-GFDL/icebergs@a21d3d3 Added missing doxygen comments for most of icebergs.F90 - NOAA-GFDL/icebergs@dbcbf13 Fixed doxygen errors in icebergs_framework.F90 - NOAA-GFDL/icebergs@54969d2 Added badge and folder descriptions - NOAA-GFDL/icebergs@5e75f43 Another try to avoid reading contents.rst on RTS - NOAA-GFDL/icebergs@ffda592 Try to avoid reading contents.rst on RTS - NOAA-GFDL/icebergs@ca2ed5d First draft for RTD/sphinx - NOAA-GFDL/icebergs@fe5e9c1 Corrected source path - NOAA-GFDL/icebergs@fd14a22 Changes default value of cdrag_grounding - NOAA-GFDL/icebergs@5eae634 Add flag to bypass requirement for restart file - NOAA-GFDL/icebergs@3027432 Fix legacy syntax issue with write() - NOAA-GFDL/icebergs@2a8a337 Corrected declaration of radial_contact - NOAA-GFDL/icebergs@141267f Fixed expression using abs() of logical - NOAA-GFDL/icebergs@d6d1c9d Fix integer i/o formatting for gnu compiler MOM6+SIS2+icebergs: tests/ground_frac_test and tests/energy_test(1-3) 5. The new test cases each have new berg initialization python scripts (e.g. makeberg.py) 6. Subroutines to save bond trajectories 7. Fixed error in damping scheme, concerning the projection 8. Identification of elements at conglomerate edges, w/ separate melting/force treatment for these edge elements 9. Separated MTS and STS accel subroutines for clarity 10. Some minor changes to MTS scheme, e.g. which velocities used at half-steps (ustar) and damping 11. Experimental MTS iterative schemes that force convergence of damping velocities. For better conserve momentum/for testing the impact on fracture of violating conservation of momentum 12. Conversion of .nc to .csv for elements (nc2csv.py) and bonds (nc2csv.py) to enable correct visualization in programs such as paraview - NOAA-GFDL/icebergs@5b59099 New MTS-Verlet parallelization scheme. New 'chaotic' test case for a large number of bergs with pseudo-randomly generated sizes,thicknesses,radii,etc, which serves the purpose of testing the robustness of the MTS scheme with high-parallelization,long timescales,diverse icebergs, and essentially random collision scenarios. Includes a python script w/ slightly different approach for initializing test bergs. Also some fixes regarding MTS+spherical coords. - NOAA-GFDL/icebergs@c4355d3 formatting - NOAA-GFDL/icebergs@ecaf44e added mts velocity verlet scheme to increase time step size, which includes a routine to pass whole conglomerate bergs between processors. Added separate spring constant for collisions and an option to vary the distance at which contact between bergs occurs. New test cases. - NOAA-GFDL/icebergs@2891feb Fix with mpp_sync_self rather than global vars - NOAA-GFDL/icebergs@744216f reorg, collision test, fixed bond issues related to initialization and periodic boundaries, renamed diamonds to kid - NOAA-GFDL/icebergs@f59cc7d Fixes CM4highres model crash with insufficient virtual memory - NOAA-GFDL/icebergs@aa62ce8 add Iceberg_repository - NOAA-GFDL/icebergs@3b43d93 restructure for solo-driver and add initial test case - NOAA-GFDL/icebergs@a7cc66b Added diagnostics axes - NOAA-GFDL/icebergs@1c80144 Corrected README with critical bit for MPI - NOAA-GFDL/icebergs@aa759b7 Re-structure to add solo-driver - NOAA-GFDL/icebergs@ad861df Fix for single-process tests
mom6bot
added a commit
to mom6bot/MOM6-examples
that referenced
this pull request
Jun 26, 2023
MOM6+SIS2+icebergs: Response to the code review - NOAA-GFDL/MOM6@475212f8c ZB submitted via PR - NOAA-GFDL/MOM6@e4db92d74 Rotate test is passed. Regression changed (order of operatrions) - NOAA-GFDL/MOM6@1a38b8812 Filters for ZB. Regression changed (FGR changed to amplitude) - NOAA-GFDL/MOM6@932816ead Implementation of ZB sheme MOM6+SIS2+icebergs: Case-insensitive init_external_field MOM6+SIS2+icebergs: Update time_interp_external functions MOM6+SIS2+icebergs: Remove MPP-based axis data access - NOAA-GFDL/MOM6@6038735c4 FMS2 interpolation ID replaced with derived type MOM6+SIS2+icebergs: Update SIS2 to use the new IO interface - NOAA-GFDL/SIS2@88d9e32 Update SIS2 to use the new IO interface - NOAA-GFDL/SIS2@57923db Fix for sigma_i going to zero in ITD landfast ice. (NOAA-GFDL#189) MOM6+SIS2+icebergs: Replaced type(real) with real in iceberg.F90 subroutine calve_fl_icebergs. Added a .nml that was missing from the footloose test in previous commits. A few empty, but necessary, directories were missing from the test cases in previous commits, so modified the makeberg run files to create these directories. - NOAA-GFDL/icebergs@a7c0676 Replaced type(real) with real in iceberg.F90 subroutine calve_fl_icebergs. Added a .nml that was missing from the footloose test in previous commits. A few empty, but necessary, directories were missing from the test cases in previous commits, so modified the makeberg run files to create these directories. - NOAA-GFDL/icebergs@66637d6 removed redundant file - NOAA-GFDL/icebergs@796d591 Added script to download data for the a68_test. Simplified the conda environment tests/iceberg_env.yml. Edited some READMEs. MOM6+SIS2+icebergs: update CPP ifdef logic to set "file version" - NOAA-GFDL/icebergs@338e8b2 more doxy comments - NOAA-GFDL/icebergs@4248102 doxygen fix? - NOAA-GFDL/icebergs@3002ee7 Some further cleanup of A68, simplifying the read-in of data - NOAA-GFDL/icebergs@cdd773a Removed non-DEM breaking of bonds. Previous attempts to account for bond-breaking without DEM-mode was not fully-successful because without DEM torque and shear terms, 'strings' of bonded particles one layer thick would tend to bend unphysically without breaking. Furthermore, the physical basis for non-DEM fracture was lacking compared to DEM-mode fracture, anyway. Therefore, I removed all code related to non-DEM fracture, which substantially simplifies much of the code. For example, this eliminated 6 variables (rotation, n_frac_var, n_strain_rate, accum_bond_rotation, lon_prev, lat_prev). MOM6+SIS2+icebergs: Cleanup, documentation, and removal of unused features. Also cleaned-up corresponding tests .nmls. MOM6+SIS2+icebergs: adding footloose=.true. and fl_init_child_xy_by_pe=.true. (for backwards compatibility), and eliminating fl_use_l_scale, fl_l_scale_erosion_only, fl_r, fl_r_s, fl_k_scale_by_perimeter, fl_bits_scale_l, fl_bits_scale_w, and fl_bits_scale_t. - NOAA-GFDL/icebergs@f4d45da initialize some additional variables for new icebergs in calve_icebergs, for backwards compatibility in chksums when footloose=.true. MOM6+SIS2+icebergs: - NOAA-GFDL/icebergs@5a5a175 Modified calve_icebergs so that new berg prev/old velocities and positions are not initialized unless using interactive icebergs. This has no impact except enabling the berg restart chksums to match the reference runs in the om4 regression tests (the regression tests pass either way, but this modification undoes a previous change that caused mismatch in the berg restart chksums only). - NOAA-GFDL/icebergs@b4ce7eb Fixed calve_icebergs so that the random numbers for tidal drift are only calculated under the new scheme for interpolation of gridded fields to bergs (bergs%old_interp_flds_order=.false.). This prevents a crash in the OM4p5 basic regression test. Added a safeguard that makes sure only Verlet integration is allowed for MTS, DEM, and footloose - NOAA-GFDL/icebergs@dd55cca tests/collision_tests/makeberg used to be dependent on Alon's scripts in tests/Iceberg_repository, but now moved those few scripts directly to tests/collision_tests/makeberg and deleted tests/Iceberg_repository. This deleted directory was Alon's KID/ice shelf tests on the ISOMIP geometry, which are outdated (e.g. they may rely on specific branches of the coupler and SIS2, and job scripts are not written for slurm) - NOAA-GFDL/icebergs@9bd3b77 Cleaned up the makeberg directories and files - NOAA-GFDL/icebergs@7a52136 Removed energy monitoring. While it was previously useful for development, it was also clunky, it only worked in non-DEM mode (without torques), and it added a dozen or so variables. Removed energy-based bond-breaking as well. MOM6+SIS2+icebergs: fracture_testing_initialization, init_dem_params, uniaxial_test,use_spring_land_contact,and calculate_force_land_contact - NOAA-GFDL/icebergs@51cba6b more clean up -removed 'dem_shear_for_frac_only' -set new_mts to default -converted some print statements into write statements -removed some old commented code -cleaned up A68a code in icebergs.F90 -added comments for some namelist options -added option 'print_fracture' to write bond/particle info to screen when fracture occurs - NOAA-GFDL/icebergs@e13d1b6 Removed experimental use_damage and power_ground options - NOAA-GFDL/icebergs@d7a8bab Added A68 test back into repository and driver. Tested it with new nml option 'use_broken_bonds_for_substep_contact=.true.', which yielded about a 15% speedup compared to previously - NOAA-GFDL/icebergs@6d4d4d4 Added bond variable 'broken' to track if a bond is broken (1) or intact (0). Added namelist option 'use_broken_bonds_for_substep_contact', which if true, identifies a pair of particles as contacting during the sub-steps if and only if the bond between them is broken (according to the new 'broken' variable'). This is more computationally-efficient than searching for contact pairs in the current and neighboring grid cells. Both the new 'broken' variable and 'use_broken_bonds_for_substep_contact' option can only be used for iKID multiple time step runs in dem-mode (dem=.true.). - NOAA-GFDL/icebergs@33a8bca removed experimental option to account for ocean/wind curl on particle torque, because it has minimal effect and is therefore unused anyway - NOAA-GFDL/icebergs@9399b38 Combined the footloose tests into one directory. Also completed a directory of tests for collision using either the original KID scheme, KID+MTS, or iKID. Eliminated unused tests. MOM6+SIS2+icebergs: consolidated to a single test, tuned, and recorded chksum - NOAA-GFDL/icebergs@2bf5e75 Added separate test cases for footloose_poisson (calve child bergs from iceberg edges similarly to England et al., 2020, with some geometric features from Huth et al., 2022) and footloose_physical (physically based parameterization of footloose calving of child bergs from iceberg edges, following Huth et al., 2022). Removed the A68a test case from the driver - NOAA-GFDL/icebergs@28a755d changes towards passing om4p5 jra55 regression tests. In absence of DEM,MTS, or footloose, reset when grid to particle intepolations occur to the original convention. Only save footloose variables in restart files if footloose is active. - NOAA-GFDL/icebergs@e730ef2 documented file name variables for particle and bond trajectories - NOAA-GFDL/icebergs@20cb345 reset input_freq_distribution to false, the old default - NOAA-GFDL/icebergs@1ee47c1 merged in mpp_self_sync modification from dev/gfdl - NOAA-GFDL/icebergs@b5a4bec Cleanup of beam tests - NOAA-GFDL/icebergs@2686245 added test dem_test_contact, for varying L_ij, the critical-interactive-length scale, for MTS-DEM simulations. Artifically increasing L_ij is needed to prevent overlapping of conglomerates under contact if their particle radii are low. Also added long_run_no_inc_contact_dist.sh and .nml in tests/a68, to test A68a test without increaing L_ij (it has essentially no effect, given the large particle radii). Some edits to icebergs.F90 to increase computational efficiency. - NOAA-GFDL/icebergs@b857d37 Delete makeberg-checkpoint.ipynb - NOAA-GFDL/icebergs@684e66c Delete makeberg.ipynb - NOAA-GFDL/icebergs@1a02384 -Tuned new run for paper using fewer MTS sub-steps (90 vs 200). Adjusted README accordingly. -Achieved about a 5x speedup by changing code so that forces for only one of the two bonds in a pair have to be evaluated during sub-steps, eliminating the call to process MTS sub-step contact with other elements in the same conglomerate for interior (fully-bonded) elements (to which this contact does not apply), and reducing the search range for this contact when it is needed (for non-fully bonded elements). -Increased parallelization buffer width +1*number_of_bonds to accomodate variable for relative rotation of bonds MOM6+SIS2+icebergs: 1. reduce number of calculations in calculate_force_dem 2. only enforce “force_convergence” on MTS long step if there is contact between conglomerates -New default Rearth. Can also specify Rearth in the .nml -nml option to use a power-law or linear grounding drag -relative rotation between bonded particles is now tracked as a variable, rather than calculating it from the tracked rotation of each particle. Probably a better approach for simulations over long timescales, where tracked rotation values may become extremely large -Fixed the maximum normal stress criteria to include the influence of bond bending. -Added 2 new fracture criteria based on Skjetne and Hansen 2019 (fracture_criterion=‘computed’ or ‘computer_s’). Currently unused. - NOAA-GFDL/icebergs@be810d9 added berg velocities to save_short_traj. added option to save trajectories of footloose child bergs with areas exceeding a given threshold - NOAA-GFDL/icebergs@50d8c28 added footloose bergy bits to grd%bergy_mass diagnostic - NOAA-GFDL/icebergs@b3e6395 fix diagnostic for gridded melt associated with footloose child bergs MOM6+SIS2+icebergs: (1) specify an area threshold that must be exceeded to save, (2) save all trajectories when some year is passed (nml parameter save_all_traj_year), (3) save all trajectories by initial mass class (see nml parameters save_nonfl_traj_by_class, save_traj_by_class_start_mass_thres_n, save_traj_by_class_start_mass_thres_s, traj_area_thres_sntbc) -Added a fix for a floating-error for that sometimes occurred when using input_freq_distribution, where the recalculated distributions would not add up to one. - NOAA-GFDL/icebergs@16e94cc -Modified perimeter scaling so that the new parent berg shape is determined by subtracting ice from both the length and width, rather than just the length. -Rearranged code so that interpolations from grid to particles occurs outside of evolve_icebergs -set default for input_freq_distribution to True, in accordance with the given default distribution and distribution_n. -Output thickness with trajectories if and only if save_fl_traj=.True. -Set the defauly for save_fl_traj to .True. - NOAA-GFDL/icebergs@6585a86 more documentation - NOAA-GFDL/icebergs@40e0d44 (1) Added real nml parameter traj_area_thres, a threshold for berg area (km^2) that must be exceeded to save a non-bonded berg trajectory. This will reduce computational cost of producing trajectory data, by ignoring trajectories of small bergs. The BYU/NIC database of berg trajectories ignores bergs with areas less than 5 km^2, so setting traj_area_thres=5 would be appropriate to generate modeled trajectories for comparison. (2) Added documentation where it was missing. - NOAA-GFDL/icebergs@677fdb1 fix traj buffer width - NOAA-GFDL/icebergs@f631618 removed useless nml parameter fl_melt_as_bergy_bits. Added nml parameter save_fl_traj to save masses and footloose parameters in the berg trajectories. MOM6+SIS2+icebergs: if the random initialization scheme fails to initialize the new berg on the current PE, an attempt is made to initialize it at one of the parent berg corners on the current PE. - NOAA-GFDL/icebergs@e27b158 -Fixed an error (again) in the calculation for the max number of footloose child bergs that can be calved from a parent berg over a time step. The previous way was often enforcing one less footloose event that it should have, according to England 2020. MOM6+SIS2+icebergs: allow k>1, and modify fl_bits_src on grid after calving the new berg so that the FL bits budget is still correct - NOAA-GFDL/icebergs@8c92a8c A few fixes to displace_fl_bergs to ensure new child berg is calved onto the computational domain. Added testing of the option to convert footloose bits to a new berg upon accumulating enough mass. MOM6+SIS2+icebergs: the original definition, where radius corresponds to the true iceberg area (L*W). (11) Cleaned up the line lengths where namelist parameters are listed in icebergs_framework.F90 - NOAA-GFDL/icebergs@53cb93c When approximating the dimensions of footloose bits, now apply scaling of length, width, and thickness before rolling correction, rather than after - NOAA-GFDL/icebergs@a43341e fix lon/lat mixup for n/s hemisphere berg calving distribution/initial thickness&mass - NOAA-GFDL/icebergs@80928ae fixed operator splitting error in footloose thermodynamics - NOAA-GFDL/icebergs@2133641 quick fix to default N hemisphere initial thicknesses. Removed unnecessary line in footloose part of thermodynamics - NOAA-GFDL/icebergs@cf1ce33 The mass associated with erosion of FL bits can now be added to bergy bits, rather than melting immediately. Rewrote initialization/calving of new bergs so that values of parameters (initial dimensions, distribution, mass scaling, etc) can be specified separately each hemisphere. - NOAA-GFDL/icebergs@a9deeea a few minor changes to footloose bits regarding scaling and rolling. Separated the Me and Mv melt functions for footloose bits from parent berg, as these melt terms will be different for the parent berg if there is bonding. Added in footloose bits area when spreading berg mass to grid, assuming that footloose bits have the same thickness as the parent berg (Note this is just an approximation, as FL bergs should not have the same thickness, but not sure at this point if including FL area makes a difference, anyway) - NOAA-GFDL/icebergs@81f5b84 some minor edits to budgets. Added SST as nml parameter in the driver - NOAA-GFDL/icebergs@1003d75 separated footloose bits fully from bergy bits, though footloose bits can still be melted as bergy bits with new nml parameter fl_melt_as_bergy_bits. Added fl_bits_scale_l, fl_bits_scale_w, and fl_bits_scale_t nml parameters for specifying scaled dimensions of representative FL bits berg for melting vs. the dimensions of a new fl berg. Modified all budgets code to accomodate fl bits separately from bergy bits - NOAA-GFDL/icebergs@e720f7e finished preliminary footloose bits option, where footloose bergs are tracked and evolved as a group without advecting away from their parent bergs - NOAA-GFDL/icebergs@0c6c964 quick fix of a mass calculation error for option where footloose mass added to bergy bits - NOAA-GFDL/icebergs@a6ec49d fix that should prevent displaced footloose bergs from initializing into land cells. Added option to just convert footloose bergs into bergy bits. Partially implemented option to track footloose bergs similarly to (but separately from) bergy bits, where footloose bergs are tracked with the parent berg, and melted/eroded as a group - NOAA-GFDL/icebergs@7828b3f added footloose displacement for lat/lon coords as well as cartesian - NOAA-GFDL/icebergs@fefb646 amended previous footloose option for assigning child berg positions to random corners of parent berg. Now, assign to random positions along edges of parent berg - NOAA-GFDL/icebergs@a58fa5a added option to position new footloose child bergs to a random corner of the parent berg, rather than having the child berg inherit the exact same position of the parent berg - NOAA-GFDL/icebergs@b72ee3c length fix for footloose child bergs - NOAA-GFDL/icebergs@32f0e56 fix mass scaling bug in creation of footloose child bergs - NOAA-GFDL/icebergs@27c7f75 Update input.nml - NOAA-GFDL/icebergs@09a6bae Update input.nml MOM6+SIS2+icebergs: finish footloose for bonded conglomerates. Moved rolling to separate solver. - NOAA-GFDL/icebergs@d2071bd Fixed angular velocity/rotation terms for dem-mode. Corrected which velocities are used for damping. A bit more development for constant_interaction_LW. - NOAA-GFDL/icebergs@693179a assigned initial value of 'none' for fracture_criterion - NOAA-GFDL/icebergs@b705b60 partial fix for bond restart - NOAA-GFDL/icebergs@decca5c Many changes regarding reading/writing restart files, saving trajectories, and allocating the iceberg/bond variables in preparation for full coupling of this version of the iceberg code with MOM6. Changed the value for traj_sample_hrs and traj_write_hrs that would always force output every timestep from 0 to -1, which fixes a conflict when running with MOM6. Added a 'damage' variable that weakens the stress threshold in areas of pre-existing rifts, crevasses, etc that were inherited from when iceberg was still attached to the ice shelf. Added some experimental options for DEM-mode that (1) track the shear force for fracture purposes but ignore its influence during berg interactions or (2) set the shear force to zero entirely. - NOAA-GFDL/icebergs@813c4a3 -Added a scale-invariant DEM-mode, complete with tangential forces, torque, and stress-based fracture criterion (can currently be used during inner MTS sub-steps only) -Added several 'beam' tests for DEM-mode that make sure it can match analytical solutions -Added a fracture-upon-grounding test for DEM-mode -Added an energy-based fracture criterion -New option to use explicit velocity Verlet during MTS inner iterations. This explicit option requires ~2x smaller MTS sub-time steps than the previous partially-implicit scheme, but actually may run faster. Furthermore, the explicit option ensures momentum conservation without needing to iterate to convergence like with the partially-implicit scheme. Currently, DEM-mode always uses this explicit approach. -Fixed radius definition for square packing -Consolidated MTS code to a single evolve_icebergs_mts subroutine -Finished up some documentation - NOAA-GFDL/icebergs@ac688c3 removed redundant parameter - NOAA-GFDL/icebergs@68611e9 Trying Ubuntu-20.04 - NOAA-GFDL/icebergs@38ee441 Add graphviz (dot) to package list - NOAA-GFDL/icebergs@0aaccd9 Add doxygen to package list - NOAA-GFDL/icebergs@61f6cbe Add GH action to verify documentation - NOAA-GFDL/icebergs@a21d3d3 Added missing doxygen comments for most of icebergs.F90 - NOAA-GFDL/icebergs@dbcbf13 Fixed doxygen errors in icebergs_framework.F90 - NOAA-GFDL/icebergs@54969d2 Added badge and folder descriptions - NOAA-GFDL/icebergs@5e75f43 Another try to avoid reading contents.rst on RTS - NOAA-GFDL/icebergs@ffda592 Try to avoid reading contents.rst on RTS - NOAA-GFDL/icebergs@ca2ed5d First draft for RTD/sphinx - NOAA-GFDL/icebergs@fe5e9c1 Corrected source path - NOAA-GFDL/icebergs@fd14a22 Changes default value of cdrag_grounding - NOAA-GFDL/icebergs@5eae634 Add flag to bypass requirement for restart file - NOAA-GFDL/icebergs@3027432 Fix legacy syntax issue with write() - NOAA-GFDL/icebergs@2a8a337 Corrected declaration of radial_contact - NOAA-GFDL/icebergs@141267f Fixed expression using abs() of logical - NOAA-GFDL/icebergs@d6d1c9d Fix integer i/o formatting for gnu compiler MOM6+SIS2+icebergs: tests/ground_frac_test and tests/energy_test(1-3) 5. The new test cases each have new berg initialization python scripts (e.g. makeberg.py) 6. Subroutines to save bond trajectories 7. Fixed error in damping scheme, concerning the projection 8. Identification of elements at conglomerate edges, w/ separate melting/force treatment for these edge elements 9. Separated MTS and STS accel subroutines for clarity 10. Some minor changes to MTS scheme, e.g. which velocities used at half-steps (ustar) and damping 11. Experimental MTS iterative schemes that force convergence of damping velocities. For better conserve momentum/for testing the impact on fracture of violating conservation of momentum 12. Conversion of .nc to .csv for elements (nc2csv.py) and bonds (nc2csv.py) to enable correct visualization in programs such as paraview - NOAA-GFDL/icebergs@5b59099 New MTS-Verlet parallelization scheme. New 'chaotic' test case for a large number of bergs with pseudo-randomly generated sizes,thicknesses,radii,etc, which serves the purpose of testing the robustness of the MTS scheme with high-parallelization,long timescales,diverse icebergs, and essentially random collision scenarios. Includes a python script w/ slightly different approach for initializing test bergs. Also some fixes regarding MTS+spherical coords. - NOAA-GFDL/icebergs@c4355d3 formatting - NOAA-GFDL/icebergs@ecaf44e added mts velocity verlet scheme to increase time step size, which includes a routine to pass whole conglomerate bergs between processors. Added separate spring constant for collisions and an option to vary the distance at which contact between bergs occurs. New test cases. - NOAA-GFDL/icebergs@2891feb Fix with mpp_sync_self rather than global vars - NOAA-GFDL/icebergs@744216f reorg, collision test, fixed bond issues related to initialization and periodic boundaries, renamed diamonds to kid - NOAA-GFDL/icebergs@f59cc7d Fixes CM4highres model crash with insufficient virtual memory - NOAA-GFDL/icebergs@aa62ce8 add Iceberg_repository - NOAA-GFDL/icebergs@3b43d93 restructure for solo-driver and add initial test case - NOAA-GFDL/icebergs@a7cc66b Added diagnostics axes - NOAA-GFDL/icebergs@1c80144 Corrected README with critical bit for MPI - NOAA-GFDL/icebergs@aa759b7 Re-structure to add solo-driver - NOAA-GFDL/icebergs@ad861df Fix for single-process tests
marshallward
pushed a commit
that referenced
this pull request
Jun 26, 2023
MOM6+SIS2+icebergs: Response to the code review - NOAA-GFDL/MOM6@475212f8c ZB submitted via PR - NOAA-GFDL/MOM6@e4db92d74 Rotate test is passed. Regression changed (order of operatrions) - NOAA-GFDL/MOM6@1a38b8812 Filters for ZB. Regression changed (FGR changed to amplitude) - NOAA-GFDL/MOM6@932816ead Implementation of ZB sheme MOM6+SIS2+icebergs: Case-insensitive init_external_field MOM6+SIS2+icebergs: Update time_interp_external functions MOM6+SIS2+icebergs: Remove MPP-based axis data access - NOAA-GFDL/MOM6@6038735c4 FMS2 interpolation ID replaced with derived type MOM6+SIS2+icebergs: Update SIS2 to use the new IO interface - NOAA-GFDL/SIS2@88d9e32 Update SIS2 to use the new IO interface - NOAA-GFDL/SIS2@57923db Fix for sigma_i going to zero in ITD landfast ice. (#189) MOM6+SIS2+icebergs: Replaced type(real) with real in iceberg.F90 subroutine calve_fl_icebergs. Added a .nml that was missing from the footloose test in previous commits. A few empty, but necessary, directories were missing from the test cases in previous commits, so modified the makeberg run files to create these directories. - NOAA-GFDL/icebergs@a7c0676 Replaced type(real) with real in iceberg.F90 subroutine calve_fl_icebergs. Added a .nml that was missing from the footloose test in previous commits. A few empty, but necessary, directories were missing from the test cases in previous commits, so modified the makeberg run files to create these directories. - NOAA-GFDL/icebergs@66637d6 removed redundant file - NOAA-GFDL/icebergs@796d591 Added script to download data for the a68_test. Simplified the conda environment tests/iceberg_env.yml. Edited some READMEs. MOM6+SIS2+icebergs: update CPP ifdef logic to set "file version" - NOAA-GFDL/icebergs@338e8b2 more doxy comments - NOAA-GFDL/icebergs@4248102 doxygen fix? - NOAA-GFDL/icebergs@3002ee7 Some further cleanup of A68, simplifying the read-in of data - NOAA-GFDL/icebergs@cdd773a Removed non-DEM breaking of bonds. Previous attempts to account for bond-breaking without DEM-mode was not fully-successful because without DEM torque and shear terms, 'strings' of bonded particles one layer thick would tend to bend unphysically without breaking. Furthermore, the physical basis for non-DEM fracture was lacking compared to DEM-mode fracture, anyway. Therefore, I removed all code related to non-DEM fracture, which substantially simplifies much of the code. For example, this eliminated 6 variables (rotation, n_frac_var, n_strain_rate, accum_bond_rotation, lon_prev, lat_prev). MOM6+SIS2+icebergs: Cleanup, documentation, and removal of unused features. Also cleaned-up corresponding tests .nmls. MOM6+SIS2+icebergs: adding footloose=.true. and fl_init_child_xy_by_pe=.true. (for backwards compatibility), and eliminating fl_use_l_scale, fl_l_scale_erosion_only, fl_r, fl_r_s, fl_k_scale_by_perimeter, fl_bits_scale_l, fl_bits_scale_w, and fl_bits_scale_t. - NOAA-GFDL/icebergs@f4d45da initialize some additional variables for new icebergs in calve_icebergs, for backwards compatibility in chksums when footloose=.true. MOM6+SIS2+icebergs: - NOAA-GFDL/icebergs@5a5a175 Modified calve_icebergs so that new berg prev/old velocities and positions are not initialized unless using interactive icebergs. This has no impact except enabling the berg restart chksums to match the reference runs in the om4 regression tests (the regression tests pass either way, but this modification undoes a previous change that caused mismatch in the berg restart chksums only). - NOAA-GFDL/icebergs@b4ce7eb Fixed calve_icebergs so that the random numbers for tidal drift are only calculated under the new scheme for interpolation of gridded fields to bergs (bergs%old_interp_flds_order=.false.). This prevents a crash in the OM4p5 basic regression test. Added a safeguard that makes sure only Verlet integration is allowed for MTS, DEM, and footloose - NOAA-GFDL/icebergs@dd55cca tests/collision_tests/makeberg used to be dependent on Alon's scripts in tests/Iceberg_repository, but now moved those few scripts directly to tests/collision_tests/makeberg and deleted tests/Iceberg_repository. This deleted directory was Alon's KID/ice shelf tests on the ISOMIP geometry, which are outdated (e.g. they may rely on specific branches of the coupler and SIS2, and job scripts are not written for slurm) - NOAA-GFDL/icebergs@9bd3b77 Cleaned up the makeberg directories and files - NOAA-GFDL/icebergs@7a52136 Removed energy monitoring. While it was previously useful for development, it was also clunky, it only worked in non-DEM mode (without torques), and it added a dozen or so variables. Removed energy-based bond-breaking as well. MOM6+SIS2+icebergs: fracture_testing_initialization, init_dem_params, uniaxial_test,use_spring_land_contact,and calculate_force_land_contact - NOAA-GFDL/icebergs@51cba6b more clean up -removed 'dem_shear_for_frac_only' -set new_mts to default -converted some print statements into write statements -removed some old commented code -cleaned up A68a code in icebergs.F90 -added comments for some namelist options -added option 'print_fracture' to write bond/particle info to screen when fracture occurs - NOAA-GFDL/icebergs@e13d1b6 Removed experimental use_damage and power_ground options - NOAA-GFDL/icebergs@d7a8bab Added A68 test back into repository and driver. Tested it with new nml option 'use_broken_bonds_for_substep_contact=.true.', which yielded about a 15% speedup compared to previously - NOAA-GFDL/icebergs@6d4d4d4 Added bond variable 'broken' to track if a bond is broken (1) or intact (0). Added namelist option 'use_broken_bonds_for_substep_contact', which if true, identifies a pair of particles as contacting during the sub-steps if and only if the bond between them is broken (according to the new 'broken' variable'). This is more computationally-efficient than searching for contact pairs in the current and neighboring grid cells. Both the new 'broken' variable and 'use_broken_bonds_for_substep_contact' option can only be used for iKID multiple time step runs in dem-mode (dem=.true.). - NOAA-GFDL/icebergs@33a8bca removed experimental option to account for ocean/wind curl on particle torque, because it has minimal effect and is therefore unused anyway - NOAA-GFDL/icebergs@9399b38 Combined the footloose tests into one directory. Also completed a directory of tests for collision using either the original KID scheme, KID+MTS, or iKID. Eliminated unused tests. MOM6+SIS2+icebergs: consolidated to a single test, tuned, and recorded chksum - NOAA-GFDL/icebergs@2bf5e75 Added separate test cases for footloose_poisson (calve child bergs from iceberg edges similarly to England et al., 2020, with some geometric features from Huth et al., 2022) and footloose_physical (physically based parameterization of footloose calving of child bergs from iceberg edges, following Huth et al., 2022). Removed the A68a test case from the driver - NOAA-GFDL/icebergs@28a755d changes towards passing om4p5 jra55 regression tests. In absence of DEM,MTS, or footloose, reset when grid to particle intepolations occur to the original convention. Only save footloose variables in restart files if footloose is active. - NOAA-GFDL/icebergs@e730ef2 documented file name variables for particle and bond trajectories - NOAA-GFDL/icebergs@20cb345 reset input_freq_distribution to false, the old default - NOAA-GFDL/icebergs@1ee47c1 merged in mpp_self_sync modification from dev/gfdl - NOAA-GFDL/icebergs@b5a4bec Cleanup of beam tests - NOAA-GFDL/icebergs@2686245 added test dem_test_contact, for varying L_ij, the critical-interactive-length scale, for MTS-DEM simulations. Artifically increasing L_ij is needed to prevent overlapping of conglomerates under contact if their particle radii are low. Also added long_run_no_inc_contact_dist.sh and .nml in tests/a68, to test A68a test without increaing L_ij (it has essentially no effect, given the large particle radii). Some edits to icebergs.F90 to increase computational efficiency. - NOAA-GFDL/icebergs@b857d37 Delete makeberg-checkpoint.ipynb - NOAA-GFDL/icebergs@684e66c Delete makeberg.ipynb - NOAA-GFDL/icebergs@1a02384 -Tuned new run for paper using fewer MTS sub-steps (90 vs 200). Adjusted README accordingly. -Achieved about a 5x speedup by changing code so that forces for only one of the two bonds in a pair have to be evaluated during sub-steps, eliminating the call to process MTS sub-step contact with other elements in the same conglomerate for interior (fully-bonded) elements (to which this contact does not apply), and reducing the search range for this contact when it is needed (for non-fully bonded elements). -Increased parallelization buffer width +1*number_of_bonds to accomodate variable for relative rotation of bonds MOM6+SIS2+icebergs: 1. reduce number of calculations in calculate_force_dem 2. only enforce “force_convergence” on MTS long step if there is contact between conglomerates -New default Rearth. Can also specify Rearth in the .nml -nml option to use a power-law or linear grounding drag -relative rotation between bonded particles is now tracked as a variable, rather than calculating it from the tracked rotation of each particle. Probably a better approach for simulations over long timescales, where tracked rotation values may become extremely large -Fixed the maximum normal stress criteria to include the influence of bond bending. -Added 2 new fracture criteria based on Skjetne and Hansen 2019 (fracture_criterion=‘computed’ or ‘computer_s’). Currently unused. - NOAA-GFDL/icebergs@be810d9 added berg velocities to save_short_traj. added option to save trajectories of footloose child bergs with areas exceeding a given threshold - NOAA-GFDL/icebergs@50d8c28 added footloose bergy bits to grd%bergy_mass diagnostic - NOAA-GFDL/icebergs@b3e6395 fix diagnostic for gridded melt associated with footloose child bergs MOM6+SIS2+icebergs: (1) specify an area threshold that must be exceeded to save, (2) save all trajectories when some year is passed (nml parameter save_all_traj_year), (3) save all trajectories by initial mass class (see nml parameters save_nonfl_traj_by_class, save_traj_by_class_start_mass_thres_n, save_traj_by_class_start_mass_thres_s, traj_area_thres_sntbc) -Added a fix for a floating-error for that sometimes occurred when using input_freq_distribution, where the recalculated distributions would not add up to one. - NOAA-GFDL/icebergs@16e94cc -Modified perimeter scaling so that the new parent berg shape is determined by subtracting ice from both the length and width, rather than just the length. -Rearranged code so that interpolations from grid to particles occurs outside of evolve_icebergs -set default for input_freq_distribution to True, in accordance with the given default distribution and distribution_n. -Output thickness with trajectories if and only if save_fl_traj=.True. -Set the defauly for save_fl_traj to .True. - NOAA-GFDL/icebergs@6585a86 more documentation - NOAA-GFDL/icebergs@40e0d44 (1) Added real nml parameter traj_area_thres, a threshold for berg area (km^2) that must be exceeded to save a non-bonded berg trajectory. This will reduce computational cost of producing trajectory data, by ignoring trajectories of small bergs. The BYU/NIC database of berg trajectories ignores bergs with areas less than 5 km^2, so setting traj_area_thres=5 would be appropriate to generate modeled trajectories for comparison. (2) Added documentation where it was missing. - NOAA-GFDL/icebergs@677fdb1 fix traj buffer width - NOAA-GFDL/icebergs@f631618 removed useless nml parameter fl_melt_as_bergy_bits. Added nml parameter save_fl_traj to save masses and footloose parameters in the berg trajectories. MOM6+SIS2+icebergs: if the random initialization scheme fails to initialize the new berg on the current PE, an attempt is made to initialize it at one of the parent berg corners on the current PE. - NOAA-GFDL/icebergs@e27b158 -Fixed an error (again) in the calculation for the max number of footloose child bergs that can be calved from a parent berg over a time step. The previous way was often enforcing one less footloose event that it should have, according to England 2020. MOM6+SIS2+icebergs: allow k>1, and modify fl_bits_src on grid after calving the new berg so that the FL bits budget is still correct - NOAA-GFDL/icebergs@8c92a8c A few fixes to displace_fl_bergs to ensure new child berg is calved onto the computational domain. Added testing of the option to convert footloose bits to a new berg upon accumulating enough mass. MOM6+SIS2+icebergs: the original definition, where radius corresponds to the true iceberg area (L*W). (11) Cleaned up the line lengths where namelist parameters are listed in icebergs_framework.F90 - NOAA-GFDL/icebergs@53cb93c When approximating the dimensions of footloose bits, now apply scaling of length, width, and thickness before rolling correction, rather than after - NOAA-GFDL/icebergs@a43341e fix lon/lat mixup for n/s hemisphere berg calving distribution/initial thickness&mass - NOAA-GFDL/icebergs@80928ae fixed operator splitting error in footloose thermodynamics - NOAA-GFDL/icebergs@2133641 quick fix to default N hemisphere initial thicknesses. Removed unnecessary line in footloose part of thermodynamics - NOAA-GFDL/icebergs@cf1ce33 The mass associated with erosion of FL bits can now be added to bergy bits, rather than melting immediately. Rewrote initialization/calving of new bergs so that values of parameters (initial dimensions, distribution, mass scaling, etc) can be specified separately each hemisphere. - NOAA-GFDL/icebergs@a9deeea a few minor changes to footloose bits regarding scaling and rolling. Separated the Me and Mv melt functions for footloose bits from parent berg, as these melt terms will be different for the parent berg if there is bonding. Added in footloose bits area when spreading berg mass to grid, assuming that footloose bits have the same thickness as the parent berg (Note this is just an approximation, as FL bergs should not have the same thickness, but not sure at this point if including FL area makes a difference, anyway) - NOAA-GFDL/icebergs@81f5b84 some minor edits to budgets. Added SST as nml parameter in the driver - NOAA-GFDL/icebergs@1003d75 separated footloose bits fully from bergy bits, though footloose bits can still be melted as bergy bits with new nml parameter fl_melt_as_bergy_bits. Added fl_bits_scale_l, fl_bits_scale_w, and fl_bits_scale_t nml parameters for specifying scaled dimensions of representative FL bits berg for melting vs. the dimensions of a new fl berg. Modified all budgets code to accomodate fl bits separately from bergy bits - NOAA-GFDL/icebergs@e720f7e finished preliminary footloose bits option, where footloose bergs are tracked and evolved as a group without advecting away from their parent bergs - NOAA-GFDL/icebergs@0c6c964 quick fix of a mass calculation error for option where footloose mass added to bergy bits - NOAA-GFDL/icebergs@a6ec49d fix that should prevent displaced footloose bergs from initializing into land cells. Added option to just convert footloose bergs into bergy bits. Partially implemented option to track footloose bergs similarly to (but separately from) bergy bits, where footloose bergs are tracked with the parent berg, and melted/eroded as a group - NOAA-GFDL/icebergs@7828b3f added footloose displacement for lat/lon coords as well as cartesian - NOAA-GFDL/icebergs@fefb646 amended previous footloose option for assigning child berg positions to random corners of parent berg. Now, assign to random positions along edges of parent berg - NOAA-GFDL/icebergs@a58fa5a added option to position new footloose child bergs to a random corner of the parent berg, rather than having the child berg inherit the exact same position of the parent berg - NOAA-GFDL/icebergs@b72ee3c length fix for footloose child bergs - NOAA-GFDL/icebergs@32f0e56 fix mass scaling bug in creation of footloose child bergs - NOAA-GFDL/icebergs@27c7f75 Update input.nml - NOAA-GFDL/icebergs@09a6bae Update input.nml MOM6+SIS2+icebergs: finish footloose for bonded conglomerates. Moved rolling to separate solver. - NOAA-GFDL/icebergs@d2071bd Fixed angular velocity/rotation terms for dem-mode. Corrected which velocities are used for damping. A bit more development for constant_interaction_LW. - NOAA-GFDL/icebergs@693179a assigned initial value of 'none' for fracture_criterion - NOAA-GFDL/icebergs@b705b60 partial fix for bond restart - NOAA-GFDL/icebergs@decca5c Many changes regarding reading/writing restart files, saving trajectories, and allocating the iceberg/bond variables in preparation for full coupling of this version of the iceberg code with MOM6. Changed the value for traj_sample_hrs and traj_write_hrs that would always force output every timestep from 0 to -1, which fixes a conflict when running with MOM6. Added a 'damage' variable that weakens the stress threshold in areas of pre-existing rifts, crevasses, etc that were inherited from when iceberg was still attached to the ice shelf. Added some experimental options for DEM-mode that (1) track the shear force for fracture purposes but ignore its influence during berg interactions or (2) set the shear force to zero entirely. - NOAA-GFDL/icebergs@813c4a3 -Added a scale-invariant DEM-mode, complete with tangential forces, torque, and stress-based fracture criterion (can currently be used during inner MTS sub-steps only) -Added several 'beam' tests for DEM-mode that make sure it can match analytical solutions -Added a fracture-upon-grounding test for DEM-mode -Added an energy-based fracture criterion -New option to use explicit velocity Verlet during MTS inner iterations. This explicit option requires ~2x smaller MTS sub-time steps than the previous partially-implicit scheme, but actually may run faster. Furthermore, the explicit option ensures momentum conservation without needing to iterate to convergence like with the partially-implicit scheme. Currently, DEM-mode always uses this explicit approach. -Fixed radius definition for square packing -Consolidated MTS code to a single evolve_icebergs_mts subroutine -Finished up some documentation - NOAA-GFDL/icebergs@ac688c3 removed redundant parameter - NOAA-GFDL/icebergs@68611e9 Trying Ubuntu-20.04 - NOAA-GFDL/icebergs@38ee441 Add graphviz (dot) to package list - NOAA-GFDL/icebergs@0aaccd9 Add doxygen to package list - NOAA-GFDL/icebergs@61f6cbe Add GH action to verify documentation - NOAA-GFDL/icebergs@a21d3d3 Added missing doxygen comments for most of icebergs.F90 - NOAA-GFDL/icebergs@dbcbf13 Fixed doxygen errors in icebergs_framework.F90 - NOAA-GFDL/icebergs@54969d2 Added badge and folder descriptions - NOAA-GFDL/icebergs@5e75f43 Another try to avoid reading contents.rst on RTS - NOAA-GFDL/icebergs@ffda592 Try to avoid reading contents.rst on RTS - NOAA-GFDL/icebergs@ca2ed5d First draft for RTD/sphinx - NOAA-GFDL/icebergs@fe5e9c1 Corrected source path - NOAA-GFDL/icebergs@fd14a22 Changes default value of cdrag_grounding - NOAA-GFDL/icebergs@5eae634 Add flag to bypass requirement for restart file - NOAA-GFDL/icebergs@3027432 Fix legacy syntax issue with write() - NOAA-GFDL/icebergs@2a8a337 Corrected declaration of radial_contact - NOAA-GFDL/icebergs@141267f Fixed expression using abs() of logical - NOAA-GFDL/icebergs@d6d1c9d Fix integer i/o formatting for gnu compiler MOM6+SIS2+icebergs: tests/ground_frac_test and tests/energy_test(1-3) 5. The new test cases each have new berg initialization python scripts (e.g. makeberg.py) 6. Subroutines to save bond trajectories 7. Fixed error in damping scheme, concerning the projection 8. Identification of elements at conglomerate edges, w/ separate melting/force treatment for these edge elements 9. Separated MTS and STS accel subroutines for clarity 10. Some minor changes to MTS scheme, e.g. which velocities used at half-steps (ustar) and damping 11. Experimental MTS iterative schemes that force convergence of damping velocities. For better conserve momentum/for testing the impact on fracture of violating conservation of momentum 12. Conversion of .nc to .csv for elements (nc2csv.py) and bonds (nc2csv.py) to enable correct visualization in programs such as paraview - NOAA-GFDL/icebergs@5b59099 New MTS-Verlet parallelization scheme. New 'chaotic' test case for a large number of bergs with pseudo-randomly generated sizes,thicknesses,radii,etc, which serves the purpose of testing the robustness of the MTS scheme with high-parallelization,long timescales,diverse icebergs, and essentially random collision scenarios. Includes a python script w/ slightly different approach for initializing test bergs. Also some fixes regarding MTS+spherical coords. - NOAA-GFDL/icebergs@c4355d3 formatting - NOAA-GFDL/icebergs@ecaf44e added mts velocity verlet scheme to increase time step size, which includes a routine to pass whole conglomerate bergs between processors. Added separate spring constant for collisions and an option to vary the distance at which contact between bergs occurs. New test cases. - NOAA-GFDL/icebergs@2891feb Fix with mpp_sync_self rather than global vars - NOAA-GFDL/icebergs@744216f reorg, collision test, fixed bond issues related to initialization and periodic boundaries, renamed diamonds to kid - NOAA-GFDL/icebergs@f59cc7d Fixes CM4highres model crash with insufficient virtual memory - NOAA-GFDL/icebergs@aa62ce8 add Iceberg_repository - NOAA-GFDL/icebergs@3b43d93 restructure for solo-driver and add initial test case - NOAA-GFDL/icebergs@a7cc66b Added diagnostics axes - NOAA-GFDL/icebergs@1c80144 Corrected README with critical bit for MPI - NOAA-GFDL/icebergs@aa759b7 Re-structure to add solo-driver - NOAA-GFDL/icebergs@ad861df Fix for single-process tests
mom6bot
added a commit
to mom6bot/MOM6-examples
that referenced
this pull request
Jun 26, 2023
MOM6+SIS2+icebergs: Response to the code review - NOAA-GFDL/MOM6@475212f8c ZB submitted via PR - NOAA-GFDL/MOM6@e4db92d74 Rotate test is passed. Regression changed (order of operatrions) - NOAA-GFDL/MOM6@1a38b8812 Filters for ZB. Regression changed (FGR changed to amplitude) - NOAA-GFDL/MOM6@932816ead Implementation of ZB sheme MOM6+SIS2+icebergs: Case-insensitive init_external_field MOM6+SIS2+icebergs: Update time_interp_external functions MOM6+SIS2+icebergs: Remove MPP-based axis data access - NOAA-GFDL/MOM6@6038735c4 FMS2 interpolation ID replaced with derived type MOM6+SIS2+icebergs: Update SIS2 to use the new IO interface - NOAA-GFDL/SIS2@88d9e32 Update SIS2 to use the new IO interface - NOAA-GFDL/SIS2@57923db Fix for sigma_i going to zero in ITD landfast ice. (NOAA-GFDL#189) MOM6+SIS2+icebergs: Replaced type(real) with real in iceberg.F90 subroutine calve_fl_icebergs. Added a .nml that was missing from the footloose test in previous commits. A few empty, but necessary, directories were missing from the test cases in previous commits, so modified the makeberg run files to create these directories. - NOAA-GFDL/icebergs@a7c0676 Replaced type(real) with real in iceberg.F90 subroutine calve_fl_icebergs. Added a .nml that was missing from the footloose test in previous commits. A few empty, but necessary, directories were missing from the test cases in previous commits, so modified the makeberg run files to create these directories. - NOAA-GFDL/icebergs@66637d6 removed redundant file - NOAA-GFDL/icebergs@796d591 Added script to download data for the a68_test. Simplified the conda environment tests/iceberg_env.yml. Edited some READMEs. MOM6+SIS2+icebergs: update CPP ifdef logic to set "file version" - NOAA-GFDL/icebergs@338e8b2 more doxy comments - NOAA-GFDL/icebergs@4248102 doxygen fix? - NOAA-GFDL/icebergs@3002ee7 Some further cleanup of A68, simplifying the read-in of data - NOAA-GFDL/icebergs@cdd773a Removed non-DEM breaking of bonds. Previous attempts to account for bond-breaking without DEM-mode was not fully-successful because without DEM torque and shear terms, 'strings' of bonded particles one layer thick would tend to bend unphysically without breaking. Furthermore, the physical basis for non-DEM fracture was lacking compared to DEM-mode fracture, anyway. Therefore, I removed all code related to non-DEM fracture, which substantially simplifies much of the code. For example, this eliminated 6 variables (rotation, n_frac_var, n_strain_rate, accum_bond_rotation, lon_prev, lat_prev). MOM6+SIS2+icebergs: Cleanup, documentation, and removal of unused features. Also cleaned-up corresponding tests .nmls. MOM6+SIS2+icebergs: adding footloose=.true. and fl_init_child_xy_by_pe=.true. (for backwards compatibility), and eliminating fl_use_l_scale, fl_l_scale_erosion_only, fl_r, fl_r_s, fl_k_scale_by_perimeter, fl_bits_scale_l, fl_bits_scale_w, and fl_bits_scale_t. - NOAA-GFDL/icebergs@f4d45da initialize some additional variables for new icebergs in calve_icebergs, for backwards compatibility in chksums when footloose=.true. MOM6+SIS2+icebergs: - NOAA-GFDL/icebergs@5a5a175 Modified calve_icebergs so that new berg prev/old velocities and positions are not initialized unless using interactive icebergs. This has no impact except enabling the berg restart chksums to match the reference runs in the om4 regression tests (the regression tests pass either way, but this modification undoes a previous change that caused mismatch in the berg restart chksums only). - NOAA-GFDL/icebergs@b4ce7eb Fixed calve_icebergs so that the random numbers for tidal drift are only calculated under the new scheme for interpolation of gridded fields to bergs (bergs%old_interp_flds_order=.false.). This prevents a crash in the OM4p5 basic regression test. Added a safeguard that makes sure only Verlet integration is allowed for MTS, DEM, and footloose - NOAA-GFDL/icebergs@dd55cca tests/collision_tests/makeberg used to be dependent on Alon's scripts in tests/Iceberg_repository, but now moved those few scripts directly to tests/collision_tests/makeberg and deleted tests/Iceberg_repository. This deleted directory was Alon's KID/ice shelf tests on the ISOMIP geometry, which are outdated (e.g. they may rely on specific branches of the coupler and SIS2, and job scripts are not written for slurm) - NOAA-GFDL/icebergs@9bd3b77 Cleaned up the makeberg directories and files - NOAA-GFDL/icebergs@7a52136 Removed energy monitoring. While it was previously useful for development, it was also clunky, it only worked in non-DEM mode (without torques), and it added a dozen or so variables. Removed energy-based bond-breaking as well. MOM6+SIS2+icebergs: fracture_testing_initialization, init_dem_params, uniaxial_test,use_spring_land_contact,and calculate_force_land_contact - NOAA-GFDL/icebergs@51cba6b more clean up -removed 'dem_shear_for_frac_only' -set new_mts to default -converted some print statements into write statements -removed some old commented code -cleaned up A68a code in icebergs.F90 -added comments for some namelist options -added option 'print_fracture' to write bond/particle info to screen when fracture occurs - NOAA-GFDL/icebergs@e13d1b6 Removed experimental use_damage and power_ground options - NOAA-GFDL/icebergs@d7a8bab Added A68 test back into repository and driver. Tested it with new nml option 'use_broken_bonds_for_substep_contact=.true.', which yielded about a 15% speedup compared to previously - NOAA-GFDL/icebergs@6d4d4d4 Added bond variable 'broken' to track if a bond is broken (1) or intact (0). Added namelist option 'use_broken_bonds_for_substep_contact', which if true, identifies a pair of particles as contacting during the sub-steps if and only if the bond between them is broken (according to the new 'broken' variable'). This is more computationally-efficient than searching for contact pairs in the current and neighboring grid cells. Both the new 'broken' variable and 'use_broken_bonds_for_substep_contact' option can only be used for iKID multiple time step runs in dem-mode (dem=.true.). - NOAA-GFDL/icebergs@33a8bca removed experimental option to account for ocean/wind curl on particle torque, because it has minimal effect and is therefore unused anyway - NOAA-GFDL/icebergs@9399b38 Combined the footloose tests into one directory. Also completed a directory of tests for collision using either the original KID scheme, KID+MTS, or iKID. Eliminated unused tests. MOM6+SIS2+icebergs: consolidated to a single test, tuned, and recorded chksum - NOAA-GFDL/icebergs@2bf5e75 Added separate test cases for footloose_poisson (calve child bergs from iceberg edges similarly to England et al., 2020, with some geometric features from Huth et al., 2022) and footloose_physical (physically based parameterization of footloose calving of child bergs from iceberg edges, following Huth et al., 2022). Removed the A68a test case from the driver - NOAA-GFDL/icebergs@28a755d changes towards passing om4p5 jra55 regression tests. In absence of DEM,MTS, or footloose, reset when grid to particle intepolations occur to the original convention. Only save footloose variables in restart files if footloose is active. - NOAA-GFDL/icebergs@e730ef2 documented file name variables for particle and bond trajectories - NOAA-GFDL/icebergs@20cb345 reset input_freq_distribution to false, the old default - NOAA-GFDL/icebergs@1ee47c1 merged in mpp_self_sync modification from dev/gfdl - NOAA-GFDL/icebergs@b5a4bec Cleanup of beam tests - NOAA-GFDL/icebergs@2686245 added test dem_test_contact, for varying L_ij, the critical-interactive-length scale, for MTS-DEM simulations. Artifically increasing L_ij is needed to prevent overlapping of conglomerates under contact if their particle radii are low. Also added long_run_no_inc_contact_dist.sh and .nml in tests/a68, to test A68a test without increaing L_ij (it has essentially no effect, given the large particle radii). Some edits to icebergs.F90 to increase computational efficiency. - NOAA-GFDL/icebergs@b857d37 Delete makeberg-checkpoint.ipynb - NOAA-GFDL/icebergs@684e66c Delete makeberg.ipynb - NOAA-GFDL/icebergs@1a02384 -Tuned new run for paper using fewer MTS sub-steps (90 vs 200). Adjusted README accordingly. -Achieved about a 5x speedup by changing code so that forces for only one of the two bonds in a pair have to be evaluated during sub-steps, eliminating the call to process MTS sub-step contact with other elements in the same conglomerate for interior (fully-bonded) elements (to which this contact does not apply), and reducing the search range for this contact when it is needed (for non-fully bonded elements). -Increased parallelization buffer width +1*number_of_bonds to accomodate variable for relative rotation of bonds MOM6+SIS2+icebergs: 1. reduce number of calculations in calculate_force_dem 2. only enforce “force_convergence” on MTS long step if there is contact between conglomerates -New default Rearth. Can also specify Rearth in the .nml -nml option to use a power-law or linear grounding drag -relative rotation between bonded particles is now tracked as a variable, rather than calculating it from the tracked rotation of each particle. Probably a better approach for simulations over long timescales, where tracked rotation values may become extremely large -Fixed the maximum normal stress criteria to include the influence of bond bending. -Added 2 new fracture criteria based on Skjetne and Hansen 2019 (fracture_criterion=‘computed’ or ‘computer_s’). Currently unused. - NOAA-GFDL/icebergs@be810d9 added berg velocities to save_short_traj. added option to save trajectories of footloose child bergs with areas exceeding a given threshold - NOAA-GFDL/icebergs@50d8c28 added footloose bergy bits to grd%bergy_mass diagnostic - NOAA-GFDL/icebergs@b3e6395 fix diagnostic for gridded melt associated with footloose child bergs MOM6+SIS2+icebergs: (1) specify an area threshold that must be exceeded to save, (2) save all trajectories when some year is passed (nml parameter save_all_traj_year), (3) save all trajectories by initial mass class (see nml parameters save_nonfl_traj_by_class, save_traj_by_class_start_mass_thres_n, save_traj_by_class_start_mass_thres_s, traj_area_thres_sntbc) -Added a fix for a floating-error for that sometimes occurred when using input_freq_distribution, where the recalculated distributions would not add up to one. - NOAA-GFDL/icebergs@16e94cc -Modified perimeter scaling so that the new parent berg shape is determined by subtracting ice from both the length and width, rather than just the length. -Rearranged code so that interpolations from grid to particles occurs outside of evolve_icebergs -set default for input_freq_distribution to True, in accordance with the given default distribution and distribution_n. -Output thickness with trajectories if and only if save_fl_traj=.True. -Set the defauly for save_fl_traj to .True. - NOAA-GFDL/icebergs@6585a86 more documentation - NOAA-GFDL/icebergs@40e0d44 (1) Added real nml parameter traj_area_thres, a threshold for berg area (km^2) that must be exceeded to save a non-bonded berg trajectory. This will reduce computational cost of producing trajectory data, by ignoring trajectories of small bergs. The BYU/NIC database of berg trajectories ignores bergs with areas less than 5 km^2, so setting traj_area_thres=5 would be appropriate to generate modeled trajectories for comparison. (2) Added documentation where it was missing. - NOAA-GFDL/icebergs@677fdb1 fix traj buffer width - NOAA-GFDL/icebergs@f631618 removed useless nml parameter fl_melt_as_bergy_bits. Added nml parameter save_fl_traj to save masses and footloose parameters in the berg trajectories. MOM6+SIS2+icebergs: if the random initialization scheme fails to initialize the new berg on the current PE, an attempt is made to initialize it at one of the parent berg corners on the current PE. - NOAA-GFDL/icebergs@e27b158 -Fixed an error (again) in the calculation for the max number of footloose child bergs that can be calved from a parent berg over a time step. The previous way was often enforcing one less footloose event that it should have, according to England 2020. MOM6+SIS2+icebergs: allow k>1, and modify fl_bits_src on grid after calving the new berg so that the FL bits budget is still correct - NOAA-GFDL/icebergs@8c92a8c A few fixes to displace_fl_bergs to ensure new child berg is calved onto the computational domain. Added testing of the option to convert footloose bits to a new berg upon accumulating enough mass. MOM6+SIS2+icebergs: the original definition, where radius corresponds to the true iceberg area (L*W). (11) Cleaned up the line lengths where namelist parameters are listed in icebergs_framework.F90 - NOAA-GFDL/icebergs@53cb93c When approximating the dimensions of footloose bits, now apply scaling of length, width, and thickness before rolling correction, rather than after - NOAA-GFDL/icebergs@a43341e fix lon/lat mixup for n/s hemisphere berg calving distribution/initial thickness&mass - NOAA-GFDL/icebergs@80928ae fixed operator splitting error in footloose thermodynamics - NOAA-GFDL/icebergs@2133641 quick fix to default N hemisphere initial thicknesses. Removed unnecessary line in footloose part of thermodynamics - NOAA-GFDL/icebergs@cf1ce33 The mass associated with erosion of FL bits can now be added to bergy bits, rather than melting immediately. Rewrote initialization/calving of new bergs so that values of parameters (initial dimensions, distribution, mass scaling, etc) can be specified separately each hemisphere. - NOAA-GFDL/icebergs@a9deeea a few minor changes to footloose bits regarding scaling and rolling. Separated the Me and Mv melt functions for footloose bits from parent berg, as these melt terms will be different for the parent berg if there is bonding. Added in footloose bits area when spreading berg mass to grid, assuming that footloose bits have the same thickness as the parent berg (Note this is just an approximation, as FL bergs should not have the same thickness, but not sure at this point if including FL area makes a difference, anyway) - NOAA-GFDL/icebergs@81f5b84 some minor edits to budgets. Added SST as nml parameter in the driver - NOAA-GFDL/icebergs@1003d75 separated footloose bits fully from bergy bits, though footloose bits can still be melted as bergy bits with new nml parameter fl_melt_as_bergy_bits. Added fl_bits_scale_l, fl_bits_scale_w, and fl_bits_scale_t nml parameters for specifying scaled dimensions of representative FL bits berg for melting vs. the dimensions of a new fl berg. Modified all budgets code to accomodate fl bits separately from bergy bits - NOAA-GFDL/icebergs@e720f7e finished preliminary footloose bits option, where footloose bergs are tracked and evolved as a group without advecting away from their parent bergs - NOAA-GFDL/icebergs@0c6c964 quick fix of a mass calculation error for option where footloose mass added to bergy bits - NOAA-GFDL/icebergs@a6ec49d fix that should prevent displaced footloose bergs from initializing into land cells. Added option to just convert footloose bergs into bergy bits. Partially implemented option to track footloose bergs similarly to (but separately from) bergy bits, where footloose bergs are tracked with the parent berg, and melted/eroded as a group - NOAA-GFDL/icebergs@7828b3f added footloose displacement for lat/lon coords as well as cartesian - NOAA-GFDL/icebergs@fefb646 amended previous footloose option for assigning child berg positions to random corners of parent berg. Now, assign to random positions along edges of parent berg - NOAA-GFDL/icebergs@a58fa5a added option to position new footloose child bergs to a random corner of the parent berg, rather than having the child berg inherit the exact same position of the parent berg - NOAA-GFDL/icebergs@b72ee3c length fix for footloose child bergs - NOAA-GFDL/icebergs@32f0e56 fix mass scaling bug in creation of footloose child bergs - NOAA-GFDL/icebergs@27c7f75 Update input.nml - NOAA-GFDL/icebergs@09a6bae Update input.nml MOM6+SIS2+icebergs: finish footloose for bonded conglomerates. Moved rolling to separate solver. - NOAA-GFDL/icebergs@d2071bd Fixed angular velocity/rotation terms for dem-mode. Corrected which velocities are used for damping. A bit more development for constant_interaction_LW. - NOAA-GFDL/icebergs@693179a assigned initial value of 'none' for fracture_criterion - NOAA-GFDL/icebergs@b705b60 partial fix for bond restart - NOAA-GFDL/icebergs@decca5c Many changes regarding reading/writing restart files, saving trajectories, and allocating the iceberg/bond variables in preparation for full coupling of this version of the iceberg code with MOM6. Changed the value for traj_sample_hrs and traj_write_hrs that would always force output every timestep from 0 to -1, which fixes a conflict when running with MOM6. Added a 'damage' variable that weakens the stress threshold in areas of pre-existing rifts, crevasses, etc that were inherited from when iceberg was still attached to the ice shelf. Added some experimental options for DEM-mode that (1) track the shear force for fracture purposes but ignore its influence during berg interactions or (2) set the shear force to zero entirely. - NOAA-GFDL/icebergs@813c4a3 -Added a scale-invariant DEM-mode, complete with tangential forces, torque, and stress-based fracture criterion (can currently be used during inner MTS sub-steps only) -Added several 'beam' tests for DEM-mode that make sure it can match analytical solutions -Added a fracture-upon-grounding test for DEM-mode -Added an energy-based fracture criterion -New option to use explicit velocity Verlet during MTS inner iterations. This explicit option requires ~2x smaller MTS sub-time steps than the previous partially-implicit scheme, but actually may run faster. Furthermore, the explicit option ensures momentum conservation without needing to iterate to convergence like with the partially-implicit scheme. Currently, DEM-mode always uses this explicit approach. -Fixed radius definition for square packing -Consolidated MTS code to a single evolve_icebergs_mts subroutine -Finished up some documentation - NOAA-GFDL/icebergs@ac688c3 removed redundant parameter - NOAA-GFDL/icebergs@68611e9 Trying Ubuntu-20.04 - NOAA-GFDL/icebergs@38ee441 Add graphviz (dot) to package list - NOAA-GFDL/icebergs@0aaccd9 Add doxygen to package list - NOAA-GFDL/icebergs@61f6cbe Add GH action to verify documentation - NOAA-GFDL/icebergs@a21d3d3 Added missing doxygen comments for most of icebergs.F90 - NOAA-GFDL/icebergs@dbcbf13 Fixed doxygen errors in icebergs_framework.F90 - NOAA-GFDL/icebergs@54969d2 Added badge and folder descriptions - NOAA-GFDL/icebergs@5e75f43 Another try to avoid reading contents.rst on RTS - NOAA-GFDL/icebergs@ffda592 Try to avoid reading contents.rst on RTS - NOAA-GFDL/icebergs@ca2ed5d First draft for RTD/sphinx - NOAA-GFDL/icebergs@fe5e9c1 Corrected source path - NOAA-GFDL/icebergs@fd14a22 Changes default value of cdrag_grounding - NOAA-GFDL/icebergs@5eae634 Add flag to bypass requirement for restart file - NOAA-GFDL/icebergs@3027432 Fix legacy syntax issue with write() - NOAA-GFDL/icebergs@2a8a337 Corrected declaration of radial_contact - NOAA-GFDL/icebergs@141267f Fixed expression using abs() of logical - NOAA-GFDL/icebergs@d6d1c9d Fix integer i/o formatting for gnu compiler MOM6+SIS2+icebergs: tests/ground_frac_test and tests/energy_test(1-3) 5. The new test cases each have new berg initialization python scripts (e.g. makeberg.py) 6. Subroutines to save bond trajectories 7. Fixed error in damping scheme, concerning the projection 8. Identification of elements at conglomerate edges, w/ separate melting/force treatment for these edge elements 9. Separated MTS and STS accel subroutines for clarity 10. Some minor changes to MTS scheme, e.g. which velocities used at half-steps (ustar) and damping 11. Experimental MTS iterative schemes that force convergence of damping velocities. For better conserve momentum/for testing the impact on fracture of violating conservation of momentum 12. Conversion of .nc to .csv for elements (nc2csv.py) and bonds (nc2csv.py) to enable correct visualization in programs such as paraview - NOAA-GFDL/icebergs@5b59099 New MTS-Verlet parallelization scheme. New 'chaotic' test case for a large number of bergs with pseudo-randomly generated sizes,thicknesses,radii,etc, which serves the purpose of testing the robustness of the MTS scheme with high-parallelization,long timescales,diverse icebergs, and essentially random collision scenarios. Includes a python script w/ slightly different approach for initializing test bergs. Also some fixes regarding MTS+spherical coords. - NOAA-GFDL/icebergs@c4355d3 formatting - NOAA-GFDL/icebergs@ecaf44e added mts velocity verlet scheme to increase time step size, which includes a routine to pass whole conglomerate bergs between processors. Added separate spring constant for collisions and an option to vary the distance at which contact between bergs occurs. New test cases. - NOAA-GFDL/icebergs@2891feb Fix with mpp_sync_self rather than global vars - NOAA-GFDL/icebergs@744216f reorg, collision test, fixed bond issues related to initialization and periodic boundaries, renamed diamonds to kid - NOAA-GFDL/icebergs@f59cc7d Fixes CM4highres model crash with insufficient virtual memory - NOAA-GFDL/icebergs@aa62ce8 add Iceberg_repository - NOAA-GFDL/icebergs@3b43d93 restructure for solo-driver and add initial test case - NOAA-GFDL/icebergs@a7cc66b Added diagnostics axes - NOAA-GFDL/icebergs@1c80144 Corrected README with critical bit for MPI - NOAA-GFDL/icebergs@aa759b7 Re-structure to add solo-driver - NOAA-GFDL/icebergs@ad861df Fix for single-process tests
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Made a series of 4 commits to help support the use of MOM6 in idealized non-Boussinesq barotropic tide simulations, plus one follow up to correct trailing white space. All answers in existing test cases are identical, but each of these 4 commits introduces changes to the MOM_parameter_doc files.