-
Notifications
You must be signed in to change notification settings - Fork 23
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
Bug at tripole seam #86
Comments
We are using incremental remapping ( |
...but as far as I can see that only applies to tracer transport and there's no ice momentum advection in CICE: https://cice-consortium.github.io/CICE/cice_2_science_guide.html#dynamics
|
It would be interesting to look at the ice-ocean coupling fields. One way to do this is to change the the words 'EXPORTED' and 'IGNORED' (these are equivalent) to EXPOUT in the namcouple file. Best to choose only the necessary fields because it writes out a v. large amount of data. |
In MOM we're using |
thanks @nicjhan that's a good idea |
no you only advect tracers not velocities.
One issue is that I thought of is that the u v position in cice are not the same as in MOM this led to some
noise in ocean stress at coast in strong currents
It could be this
Apologies I am using phone not laptop to send this
_______
From: Andrew Kiss [notifications@github.com]
Sent: Wednesday, 28 March 2018 5:13 PM
To: OceansAus/access-om2
Cc: Subscribed
Subject: Re: [OceansAus/access-om2] Bug at tripole seam (#86)
...but as far as I can see that only applies to tracer transport and there's no ice momentum advection in CICE: https://cice-consortium.github.io/CICE/cice_2_science_guide.html#dynamics
* so does that point the finger at MOM?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub<#86 (comment)>, or mute the thread<https://github.com/notifications/unsubscribe-auth/ANrRggJMCqTjeO0XXeKOPqCqx-1WklmKks5tiyn8gaJpZM4S-Csh>.
|
You could look just at the a few time steps Dave has aflag to do this in the coupled set up I will check tomorrow if its in the stand alone I would focus on the ice icean stress based on my earlier comment on uv mismatch
…________________________________________
From: Nic Hannah [notifications@github.com]
Sent: Wednesday, 28 March 2018 5:20 PM
To: OceansAus/access-om2
Cc: Subscribed
Subject: Re: [OceansAus/access-om2] Bug at tripole seam (#86)
It would be interesting to look at the ice-ocean coupling fields. One way to do this is to change the the words 'EXPORTED' and 'IGNORED' (these are equivalent) to EXPOUT in the namcouple file. Best to choose only the necessary fields because it writes out a v. large amount of data.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub<#86 (comment)>, or mute the thread<https://github.com/notifications/unsubscribe-auth/ANrRgpYrm3Dr0j8-RKybrovKOzuaCeSdks5tiyuXgaJpZM4S-Csh>.
|
You are on the right tracki in MOM in CICE its done differently so the mismatch may be the issue
…________________________________________
From: Andrew Kiss [notifications@github.com]
Sent: Wednesday, 28 March 2018 5:32 PM
To: OceansAus/access-om2
Cc: Subscribed
Subject: Re: [OceansAus/access-om2] Bug at tripole seam (#86)
In MOM we're using velocity_advect_centered=.true., ie advection_scheme = VEL_ADVECT_2ND_ORDER.
This is done by subroutine horz_advection_centered in ocean_velocity_advect.F90.
I'm probably missing something, but I can't immediately see how this handles the sign change of u across the seam: https://github.com/mom-ocean/MOM5/blob/master/src/mom5/ocean_core/ocean_velocity_advect.F90#L385
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub<#86 (comment)>, or mute the thread<https://github.com/notifications/unsubscribe-auth/ANrRgjv2QhqdHLQ-Pjt0js99u95aAasQks5tiy6NgaJpZM4S-Csh>.
|
Forensic work! Nice pics as well ... |
Do these issues arise in the MOM-SIS simulations? If not, then I suspect CICE. |
Also might be worth checking if the same thing happens in the 1 deg simulations. They're a lot coarser resolution, so maybe not? If it does, it would be a more tractable to debug with a cheaper simulation. Particularly if you're dumping coupling fields. |
Just some thoughts about the coupling that may be relevant here: The coupling exchange between ice and ocean is based on grid cell indices not on lat, lon coordinates. This is because they should have identical grids. Given the above the coupling could introduce some weirdness if the models have a different idea of where the seam is in a grid-cell sense, i.e. a given u-point does not have the same i, j index in the grid definition. |
@aekiss The flipping of velocities across the tripolar seam is done in mpp_update domains. |
Thanks @ofa001 but I think this might be a different problem. This animation shows the spurious shear at the seam comes and goes, so it seems unlikely to be a grid mismatch. (See the yellow line; ignore the dotted white grid line.) |
I will check the daily data from the CMIP 5 data I did just archive them off the system but can recover them. we did see an occasional polynya starting at the tripole in summer when there was no convective generation from the ocean to cause it. and also some wave noise, on one occasion but I didn't forensically examine those files as I was seriously ill the year they were generated 2011-2012, and was more interested in the Antarctic daily files. You may be right it could be in the advective term, but there was a grid issue at the coast again intermittently, during strong currents. |
These figures make my last post clearer. The first two are ice, the second two are ocean. The first of each pair is the original case, the second of each pair is with reduced dragio. You can see that reduced drag decreases the problem in ice and increases it in the ocean, suggesting the ocean is the source. |
It doesn't look like MOM's horizontal velocity advection is to blame. This is u vel from a run starting from the same nonlinear initial condition on 1 Aug as my first post but with I'm wondering now whether there could be a bug in the ocean-ice stress coupling. I'll output strocnx, strocny etc in a new run to check. |
It looks to me as if the problem is in the coupling of the stresses to MOM from CICE.. In cpl_forcing_handler.f90 tiostrsu(:,:,:) = strairx_ocn(:,:,:) * (1. - aice(:,:,:)) - strocnxT(:,:,:) * aice(:,:,:) But strairx_ocn and stroncxT are both on the T grid centre whereas MOM wants them on the NE corners. This means that the assumed symmetry in the stresses is broken and you can set up a shear. There needs to be a remapping to the U grid so that everything matches along the fold. In MOM-SIS. this is hidden away inside SIS. We need calls of t2ugrid_vector( tiostrs[uv]) somewhere before the coupling to the ocean.Alternatively do the rgeridding in MOM |
Having thought about this for a while I believe that we should try to be consistent with MOM-SIS and only interpolate the air-sea stress to the U grid and use the ice-ocean stress |
Ok. iostrs[u]v] are regridded in CICE_RunMod.F90. Need to look elsewhere. |
I've confirmed that this bug still exists in
(MOM commit Also, the script for the figures above is here. |
I wonder if this behaviour is related to the inconsistent background viscosities that I identified occuring along the tripolar fold here mom-ocean/MOM5#282 Essentially you're solving two different equations at the same point. If you plot the friction terms along j=2700 you can see they don't align. |
I was wondering the same thing, but |
Just noting that the CICE grid misalignment issue #190 does not explain the shear on the seam, as the misalignment was fixed in |
Sec 4.2.2 of the CICE5 manual says
Taken literally, "averaging them in pairs" seems incorrect for velocity components because they have opposite signs in the coincident U-points. Perhaps there's a term in CICE where the velocity sign change isn't properly taken into account in this averaging? |
I'm looking at the tripole halo update in CICE at the moment, basically writing a unit tester for it, so am trying to understand the implementation. In CICE, you can set field_type_scalar or field_type_vector for a halo update. The vector implementation will switch signs across the seam, the scalar will not. Is it possible that a haloupdate for a vector field is done with "scalar" when it should be done with "vector"? I'm working with the latest version of CICE, https://github.com/CICE-Consortium/CICE, but if this is CICE5, maybe there's a bug there (or maybe there's a bug in the current version too). I found this issue trying to get more info on the tripoleT implementation. I'm fairly confident the tripole halo update is working correctly in CICE6, but maybe the halo update call is incorrect. |
Thanks for this suggestion @apcraig and sorry for my very slow reply. This was a very helpful hint - it led me to finding an unrelated bug. I'm not sure I've found anything to explain this current issue, but it was unexpected to me that the stress tensor components are updated as scalars - I guess that just reflects my lack of understanding? |
I think the code is correct in transforming the stress tensor as a scalar. The stress tensor The coordinate transformation across the tripole seam is a 180° rotation, so Therefore the coordinate transformation leaves the tensor components unchanged, i.e. This seems to make intuitive sense, since the 180° coordinate rotation changes the signs of the components in both surface normal vectors and traction vectors. |
There's a bug in CICE or MOM at the tripole seam that crosses the north pole along the 100W/80E meridian north of 65N. Apologies for the long post, I wanted to get it clear in my head.
From the grid you can see that on the Atlantic side of the seam positive u velocity runs from Canada to Siberia; on the Pacific side it is the reverse orientation.
v velocity also changes sign at the seam. On both sides of the seam positive v velocity has a northward component. There is also a zonal component of v velocity that changes sign at the seam (positive v is partly eastward in western Siberia/Canada and partly westward in eastern Siberia/Canada).
Here are some views off Siberia. Date is in the heading.
Starting with u velocity (in pairs, first ice, then ocean).
Most of the time the u velocity has a sign change at the seam as it should (positive u is down on the left of 80W and up on the right in this view):
But sometimes the sign of u does not change across the seam i.e. the physical tangential velocity abruptly changes direction across the seam.
It starts small
and grows
This strong shear at the seam leads to flow instability within a few days
The same sequence of days in v velocity shows no such problems (positive v is rightward on the left of 80W and leftward on the right of 80W in this view)
The wind stress also shows no problems at the seam.
Movies of the ice shear show this problem comes and goes in various locations along this seam.
Clearly there's something wrong with at least one term in the u tendency at the seam in MOM or CICE. The fact that the problem is not apparent most of the time suggests the usually-dominant terms are correct, and the problem appears only on occasions when the buggy term is unusually large.
I expect it's a term with a stencil that crosses the seam but doesn't take into account the sign change. The fact that it is asymmetrical (the positive u on the west spreads eastwards) and that the v velocity is eastward suggests the problem is with the y advection of x momentum in the u tendency in MOM or CICE, ie vdu/dx (remembering that x,u are along-seam and y,v across-seam).
It is unclear whether the problem arises first in the ocean or ice (it seems pretty simultaneous in the figures) but I'm trying runs with zero ocean-ice drag to try to identify the culprit. The fact that v is more strongly eastward in the ice than the ocean when the problem starts on 0017-08-03 makes me suspect the bug is in CICE rather than MOM.
The text was updated successfully, but these errors were encountered: