-
Notifications
You must be signed in to change notification settings - Fork 245
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
Dev master candidate from NCAR - 2019 06 11 #935
Dev master candidate from NCAR - 2019 06 11 #935
Conversation
- In preparation for modularizing the Leith calculations so that we can add QG-Leith (Bachman et al., 2017), we have made the local scalar that held the vorticity magnitude a 2d array.
- Grouped all the Leith related calculations in preparations for turning them into a single subroutine call. - Also duplicated the calculation of dvdx and dudy expecting that we might soon change the discretization for vorticity.
- Block of calculations for vorticity magnitude used in Leith are now in a subroutine in MOM_lateral_mixing_coeffs.F90
- Added beta from grid type to vorticity magnitude
- Now reading parameters for Leith in MOM_lateral_coeffs.F90 (in additional to MOM_hor_visc.F90 which we'll remove later). - Removed parameters from dummy argument list.
- The subroutine that was calculating terms used in the Leith viscosities now returns the viscosities themselves.
- Removed allocatable arrays and a left over parameter.
- USE_BETA_IN_LEITH now controls the beta-term in the Leith viscosity.
- Nasty expressions for harmonic mean h's at u/v points for vertical derivatives of slopes... Eek!
Conflicts: src/parameterizations/lateral/MOM_hor_visc.F90
…om calc_QG_Leith_viscosity.
Just to confirm, GFDL will set |
Delete hard-coded epsilon and added a new user parameter to specify this constant.
@gustavo-marques Correct. We'll add |
@septicscuzzy and I have fixed a few of the issues mentioned above. Here is a summary of the latest commits:
TO DO:
|
Tidal_bay is changing in the horizontal viscosity. MOM_hor_visc.F90 has changed a great deal and totalview is showing me the wrong version in one of my dualling sessions, but I do know that diffu and diffv are different after the first call to horizontal_viscosity. I don't remember why it is this way exactly, but the options in MOM_input are:
|
Did you try AH_VEL_SCALE=0. ?--Dr Alistair Adcroft ([email protected])Princeton University Tel: (609) 987-5073NOAA/GFDL, 201 Forrestal Road, Princeton, NJ 08540On Jun 21, 2019 20:02, Kate Hedstrom <[email protected]> wrote:Tidal_bay is changing in the horizontal viscosity. MOM_hor_visc.F90 has changed a great deal and totalview is showing me the wrong version in one of my dualling sessions, but I do know that diffu and diffv are different after the first call to horizontal_viscosity.
I don't remember why it is this way exactly, but the options in MOM_input are:
! === module MOM_hor_visc ===
LAPLACIAN = True ! [Boolean] default = False
! If true, use a Laplacian horizontal viscosity.
BIHARMONIC = True ! [Boolean] default = True
! If true, se a biharmonic horizontal viscosity.
! BIHARMONIC may be used with LAPLACIAN.
KH = 0.0E+02 ! [m2 s-1] default = 0.0
! The background Laplacian horizontal viscosity.
KH_VEL_SCALE = 0.003 ! [m s-1] default = 0.0
! The velocity scale which is multiplied by the grid
! spacing to calculate the Laplacian viscosity.
! The final viscosity is the largest of this scaled
! viscosity, the Smagorinsky viscosity and KH.
SMAGORINSKY_KH = True ! [Boolean] default = False
! If true, use a Smagorinsky nonlinear eddy viscosity.
SMAG_LAP_CONST = 0.15 ! [nondim] default = 0.0
! The nondimensional Laplacian Smagorinsky constant,
! often 0.15.
SMAGORINSKY_AH = True
SMAG_BI_CONST = 0.6
—You are receiving this because you commented.Reply to this email directly, view it on GitHub, or mute the thread.
|
With AH_VEL_SCALE = 0, both executables give the same answer - and the same answer as I was getting from dev/esmg (dev/gfdl). |
I think that the default value for AH_VEL_SCALE should be set back to 0 in the MOM_hor_visc code. We have no particular reason to choose one dimensional value (0.10 m s-1) over any other. Where we set a default dimensional value, it is usually based on the well-defined properties of planet Earth (like its rotation rate, gravitational acceleration and radius) or something to do with the observable properties of sea-water (like its heat capacity). |
@gustavo-marques Can you please change the default for AH_VEL_SCALE back to 0. ? |
Done. |
I now approve this PR. |
I am out of town now, will revisit this PR next Monday when I am back.
…On Wed, Jun 26, 2019 at 7:06 PM Kate Hedstrom ***@***.***> wrote:
I now approve this PR.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<https://github.com/NOAA-GFDL/MOM6/pull/935?email_source=notifications&email_token=ADMGAS4GQQUCB3MAG5YJANLP4PZABA5CNFSM4HXEEU42YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYVB4IY#issuecomment-506076707>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ADMGAS66J5RFGLP6OH3NS23P4PZABANCNFSM4HXEEU4Q>
.
|
I continue to have strong misgivings about the addition of the barotropic_CS and thickness_diffuse_CS as non-optional arguments to horizontal_viscosity. These additions required substantial changes in the arguments to the overlying code, and they will not work anyway unless the split time stepping scheme is used. However, I think that I have a workable solution to these two pieces that might help us get this code merged in a way that we will not regret later.
@gustavo-marques and @septicscuzzy, please let me know if you think that this approach is reasonable. If so, I can help you with these changes as a correction to your PR. |
@Hallberg-NOAA, thanks for proving a solution to these issues. @septicscuzzy and I like your idea. I will start working on it today and will let you know if I have questions. |
This PR has been updated following @Hallberg-NOAA's idea for prohibiting USE_GME=True when SPLIT=False while keeping GME's functionality when SPLIT=True. Unfortunately, we are unable to fully test these changes at NCAR -- Cheyenne has been down since last week and there was a problem rebooting the system this morning. Instead of waiting for Cheyenne to be fixed, I've decided to update this PR anyway so others can review and test these changes. |
works fine on EMC theia and wcoss machines
…On Mon, Jul 1, 2019 at 11:57 AM Gustavo Marques ***@***.***> wrote:
This PR has been updated following @Hallberg-NOAA
<https://github.com/Hallberg-NOAA>'s idea for prohibiting USE_GME=True
when SPLIT=False while keeping GME's functionality when SPLIT=True.
Unfortunately, we are unable to fully test these changes at NCAR --
Cheyenne has been down since last week and there was a problem rebooting
the system this morning. Instead of waiting for Cheyenne to be fixed, I've
decided to update this PR anyway so others can review and test these
changes.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<https://github.com/NOAA-GFDL/MOM6/pull/935?email_source=notifications&email_token=ADMGASY6SQWRB3J6ITEHD4LP5ISONA5CNFSM4HXEEU42YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODY6SSAA#issuecomment-507324672>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ADMGAS43DH4SMZZGRYSJK63P5ISONANCNFSM4HXEEU4Q>
.
|
I've just retested this PR again up to commit 5c42192 and we're good-to-go with the caveat that USE_VISBECK needs to be added to particular experiments. So we are waiting for NCAR (@gustavo-marques) to confirm their tests. |
It passes our tests (b4b on C- and G-compsets using tx06). |
- This is a merge of dev/master after PR #935 from NCAR
The main goal of this PR is to bring the latest changes in dev/ncar into dev/master. A summary of the main changes/capabilities contained in this PR is provided below.
GME and GEOMETRIC
MCT and NUOPC caps
Change in latent heat flux calculation. The latent heat used to be provided via coupler and is now computed in the caps (MCT and NUOPC) via fprec, rofi_flux and q_flux.
Add missing fluxes. MOM6 (coupler) definition of these terms is seaice_melt (meltw) and seaice_melt_heat (melth).
Fix ocean coupling lag in the NUOPC cap.
All code has been properly documented (doxygenized).
This PR does not change answers for the GFDL tests based on 'dev-master-candidate-2019-04-26'. It also does not change answers for NCAR.