Roughness_mom flag in ACCESS-OM2 doesn't do anything?

I’ve been trying to tweak roughness coefficient in OM2 as part of a larger project. I have identified the flag I need and ran some experiments. Changing this flag does alter the surface stresses (tau_x output from OM2) in the way I want, the screenshot below shows the difference between my updated roughness (roughness 4) and the old experiment (fric_mo), apologies for the naming.

However, this difference does not translate to temperature, ocean currents etc. This is because the tau_x (and tau_y) diagnostics are being updated but the stresses being read into the model are not. Below are the ice-ocean stresses from the fields_i2o_in_ice.nc file I outputted, the models show no differences.

There are also no differences in the roughness (ice/restart000/fields_roughness.nc)

So apparently the roughness_mom coefficient in ice/input_ice_gfdl.nml is not being used and fed into the ocean model as the surface stress field. But the coefficient is being used when calculating the tau_x and tau_y diagnostics that are output from OM2? Would anyone know where I should be changing the roughness instead?

My config files for these two experiments, where only the roughness_mom parameter is different, is here:
/home/561/qo9901/access-om2/1deg_esm1p5_fric_mo_roughness_4_i2o/ (roughness 4)
/home/561/qo9901/access-om2/1deg_esm1p5_vgrid_fric_mo_i2o/ (fric_mo)

The i2o and roughness fields are outputted too. There are now big differences between these experiments and the NRI release of OM2, mostly in the mixing schemes in ocean/input.nml, and ncar_ocean_fluxes = false in &surface_flux_nml. But it is odd to me that the surface stress being felt/read into the ocean is different from the diagnostic output.

Thank you!

Hey @ongqingyee!

Thanks for raising this query. @dougiesquire is going to dig into this and he’ll get back to you soon!

Cheers,

Lawrence

1 Like

Hi @ongqingyee. Thanks for your query and sorry it took me a few days to get to it.

I’ve just taken a quick look and I think the value of ocean_rough_nml::roughness_mom set in ice/input_ice_gfdl.nml is only used if ocean_rough_nml::rough_scheme = 'fixed'. You are using ocean_rough_nml::rough_scheme='beljaars', which is the default in ACCESS-OM2 configurations.

If you’re happy with a fixed roughness you could switch to ocean_rough_nml::rough_scheme='fixed' and then modify the roughness using ocean_rough_nml::roughness_mom. There is also a 'charnock' roughness scheme that may satisfy your needs. This is where the roughness is calculated if you’re interested or want to modify the code. It’s hard to say more without being across what you are trying to achieve.

One thing I’m a bit confused about is your statement:

I just did two runs, only changing ocean_rough_nml::roughness_mom, and got exactly the same tau_x and tau_y for both as expected. Am I missing something about what you have done? Have you changed anything in your MOM5 code? Could you please check this again as I cannot recreate this behaviour.

Thank you very much Dougie, so does this mean if I want to tune for roughness, the ‘charnock’ parameter is what I would want?

I have changed many many things in the MOM5 configuration, the configs are here. I wrote some changes down but I think the ncar_ocean_fluxes = false in ice/input_ice_gfdl.nml might be the one that makes the biggest difference. I did this because I was hoping to replicate the ESM1.5 ocean in OM2, and the ncar_ocean_fluxes is not used in ESM1.5.

If you set ocean_rough_nml::rough_scheme='charnock' in ice/input_ice_gfdl.nml then you can modify the roughness by changing the value of ocean_rough_nml::rough_scheme='charnock'. The roughness is obviously calculated in a different way if you do this. I don’t know whether this suits what you are wanting to do.

Sorry, I think my previous message wasn’t very clear. From looking at the MOM5 code, I don’t see how it’s possible that the MOM5 diagnostics tau_x and tau_y could be different from the zonal wind stresses received from the coupler. Could you please check this again as I cannot recreate this behaviour?

Hi @dougiesquire, I’ve rechecked this and turns out my experiments were of different durations, which resulted in the different stresses. :woman_facepalming:t2: glad this wasn’t a crazy issue in the end.

Thank you for checking re the roughness. I now have something I can tune.

My aim in general is to get my OM run to match ESM1.5. However, ESM1.5 does not have an ice/input_ice_gfdl.nml. If these parameters are not prescribed how does ESM deal with roughness?

Otherwise I would probably tune these parameters to get ESM surface stresses to match my OM run.

Hi @ongqingyee, No we wouldnt expect the ESM(1.5) to have the same input files as the OM2. But the roughness as you have seen looking at the UM7.3 is more of a “charnock” approach. But it is variable, wind dependent, not fixed like you had been trying to set. So I would try the “charnock” setting in OM2 next. It might not work but it might get closer.

2 Likes