Skip to content
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

Northfold #37

Open
doos opened this issue May 7, 2019 · 1 comment
Open

Northfold #37

doos opened this issue May 7, 2019 · 1 comment
Labels

Comments

@doos
Copy link
Contributor

doos commented May 7, 2019

The "northfold" is not working for the project nemo with orca1. It worked fine before with orca12.

@joakimkjellsson
Copy link
Contributor

Here's what I've found out so far:

There are three different treatments of the north fold in Tracmass. All are still there, but one is commented out in branch standard_configs. So what worked with ORCA12 must be one of those options.
The other two are available by using nperio=4 or 6.
I tried to follow the NEMO nomenclature, which is
nperio = 0, closed boundaries
nperio = 1, cyclic east-west
nperio = 2, symmetric around equator (we will probably never do this...)
nperio = 3, North-fold (T-pivot)
nperio = 4, North-fold (T-pivot) and cyclic E-W
nperio = 5, North-fold (F-pivot)
nperio = 6, North-fold (F-pivot) and cyclic E-W

All global ORCA runs either use nperio=4 or 6. The NEMO documentation says nperio=4 is for ORCA2, ORCA025 and ORCA0083. I run nperio=6 for ORCA05, but I'm not sure what folks to with ORCA1.

A quick check in the NEMO source code (https://forge.ipsl.jussieu.fr/nemo/browser/NEMO/releases/release-4.0/src/OCE/LBC/lbcnfd.F90), I find something like
do i=1,IMT
p(i,JMT,k) = sgn * p (IMT-i+2, JMT-2, k)
enddo
do i=IMT/2+1,IMT
p(i,JMT-1,k) = sgn * p (IMT-i+2, JMT-1, k)
enddo
for T-points on T pivots

So the northernmost rows are mirror images of each other with reversed east-west order, and the eastern half of j=JMT-1 is mirrored at the western half of j=JMT-1.
I think sgn=-1 for vectors in all cases, so that u > 0 becomes u < 0 over the fold.
There are also special cases for i=1 etc.

So it seems to me that an ORCA025 trajectory at j=JMT should be put at i=IMT-i+2, j=JMT-2. Shouldn't that be enough?
For F-pivots (ORCA05, ORCA1), the indices are shifted so that
do i=1,IMT
p(i,JMT,k) = sgn * p (IMT-i+1, JMT-1, k)
enddo

In tracmass, nperio = 4 triggers a special case where, if y=JMT-1, x1=IMT+3-x1, and same for nperio=6 but with x1=IMT+2-x1.
We seem to be off by one I-index from NEMO and also doing the shifting at j=JMT-1 and not j=JMT. Should this be the case?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants