Recalculation of DTBT can span coupled timesteps#752
Merged
Conversation
Removed a number of unused module use statements and the unused variable missing Removed CS%missing from MOM.F90. Also shortened some variable names and cleaned up the spacing on the comments describing the MOM_control_struct. All answers are bitwise identical.
The code augmenting the rigidity due to icebergs used a mismatch of the minimum and maximum berg masses in the two directions. This has been corrected to use the minimum in both directions. Also, a double divide by a constant in setting the iceberg mass source due to frazil was changed to multiplication by the reciprocal of their product. Two new optional arguments, update_dyn and update_thermo, were added to update_ocean_model, although they are not yet used, and the initial comments describing update_ocean_model were partially cleaned up. All solutions in test cases are bitwise identical, but there can be answer changes if the icebergs are used and ICEBERGS_APPLY_RIGID_BOUNDARY is true.
MOM_KPP.F90 would not compile if openMP is used, due to oversights in a recent update. This has now been fixed. All answers are bitwise identical.
MOM_vert_friction.F90 would not compile if openMP is used, due to oversights in a recent update. This has now been fixed. Also compacted some logically connected loops. All answers are bitwise identical.
Reordered argument declarations for initialize_ALE_sponge_fixed to avoid errors that can arise in size declarations with some compilers. All answers are bitwise identical.
Added optional salt argument to allocate_forcing_type to cause fluxes%salt_flux to be allocated and initialized to 0. All answers are bitwise identical.
Added code to recalculate DTBT at a regular interval that may span forcing timesteps. Also added DTBT to the list of fields saved in the restart files. With this change, there is one fewer argument to step_MOM_dynamics, and there is one additional argument to barotropic_init and initialize_dyn_split_RK2. All answers are bitwise identical.
Eliminated the requirement to recalculate DTBT every coupled timestep. By default, this still happens, but explicitly setting DTBT_RESET_PERIOD to be longer than the coupled timestep now results in less frequent updates to DTBT. Also modified the log_param documentation of DTBT_RESET_PERIOD to reflect this new behavior. This could change answers, but it just happens that the values of DTBT are not changed with the existing suite of test cases. The MOM_parameter_doc files are altered by this change.
adcroft
reviewed
Apr 23, 2018
|
|
||
| CS%dtbt_fraction = 0.98 ; if (dtbt_input < 0.0) CS%dtbt_fraction = -dtbt_input | ||
|
|
Collaborator
marshallward
pushed a commit
to breichl/MOM6
that referenced
this pull request
May 8, 2025
* Try again at fix_obc_maskingdepth patch - "git rebase" made a conflicted mess * Fix for even number of OBC turns. - not that turns other than 0, 1 is supported elsewhere for OBCs. This still has issue mom-ocean#5 from a comment in mom-ocean#752: Some experimentation with the rotate_OBC subroutines. Dr Neumann's test uses boundary data of the value=const type. Copying the buffer_dst from OBC_in to CS%OBC gets some of these across, also the tracer reservoir values. However, the tracer reservoir values get overwritten by an interior tracer value between the first call to step_MOM_dynamics and the second. * Trying to fix internal OBC rotations, not sure * Fixing next round of rotated OBC issues * Fix up some logic for turns = 2 or 3. - Note that this is still not supported, as specificed in MOM.F90. * Adding back in the deallocate on some OBC arrays
This file contains hidden or 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
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.
Eliminated the requirement to recalculate DTBT every coupled timestep, and added DTBT
to the restart files to retain reproducibility across restarts. By default if DTBT is set dynamically,
it is still calculated every coupled timestep, but explicitly setting DTBT_RESET_PERIOD to be
longer than the coupled timestep now results in less frequent updates to DTBT.
Also modified the log_param documentation of DTBT_RESET_PERIOD to reflect this
new behavior. This could change answers, but it just happens that the values of
DTBT are not changed with the existing suite of test cases. This PR also includes
several other minor miscellaneous changes. The MOM_parameter_doc files are
altered by this change.