Giter VIP home page Giter VIP logo

Comments (11)

StephenGriffies avatar StephenGriffies commented on September 16, 2024

Hi,

I agree. Or is there something about PP that makes it need to know about
the background diffusivity?

I just looked at the CVMix manual. Nothing obvious for why we need to know
about the background diffusivity inside PP. So if we indeed are fine not
knowing about the background, then we should remove it from PP to be more
modular with the schemes.

Mike...can you comment?

Steve

On Fri, Oct 24, 2014 at 1:46 PM, Todd Ringler [email protected]
wrote:

The original PP scheme includes a background term that is added on.

The implementation in CVMix is the same and, as a result, breaks the "a al
carte" approach that we strive for in CVMix. In order to run the CVMix
shear PP module we have to initialize CVMix background module, i.e. shear
depends on background.

I propose that we drop the background part of PP. Most everyone who uses
CVMix shear will be using some form of background mixing that is set
outside of PP. For example, right now MPAS-O has to test if shear mixing is
using PP and, if so, subtract out the background from the result (because
we have added it elsewhere.)

It will lead to clearer code all around to simply remove the addition of
background from CVMix shear PP. (Note that it is not added into CVMix shear
KPP).


Reply to this email directly or view it on GitHub
#47.

Dr. Stephen M. Griffies
NOAA Geophysical Fluid Dynamics Lab
201 Forrestal Road
Princeton, NJ 08542
USA

from cvmix-src.

mnlevy1981 avatar mnlevy1981 commented on September 16, 2024

I added the dependency on static mixing to be consistent with the way the coefficients nu_b and kappa_b are used in the Pacanowski and Philander paper:

nu = nu_0 / (1 + alpha_Ri)^n + nu_b
kappa = nu / (1 + alpha_Ri) + kappa_b = nu_0 / (1 + alpha_Ri)^(n+1) + nu_b / (1 + alpha_Ri) + kappa_b

Basically, the issue was that removing nu_b from the nu computation changed what you wanted to use for kappa_b [and worse, made it dependent on Ri]

from cvmix-src.

StephenGriffies avatar StephenGriffies commented on September 16, 2024

Hi,

I suggest we implement PP only for the case where there is zero background
nu_b=0. Doing so will allow us to have a clean implementation where PP is
split completely from background.

We really need to have a clean way to distinguish PP from background in the
CVMix implementation. I guess is that this detail will impact very few
people, since PP is used by only a few today. In fact, I believe some POP
simulations (ala Maltrud) use PP. Is that still the case?

Steve

On Fri, Oct 24, 2014 at 3:51 PM, Michael Levy [email protected]
wrote:

I added the dependency on static mixing to be consistent with the way the
coefficients nu_b and kappa_b are used in the Pacanowski and Philander
paper:

nu = nu_0 / (1 + alpha_Ri)^n + nu_b
kappa = nu / (1 + alpha_Ri) + kappa_b = nu_0 / (1 + alpha_Ri)^(n+1) + nu_b
/ (1 + alpha_Ri) + kappa_b

Basically, the issue was that removing nu_b from the nu computation
changed what you wanted to use for kappa_b [and worse, made it dependent on
Ri]


Reply to this email directly or view it on GitHub
#47 (comment).

Dr. Stephen M. Griffies
NOAA Geophysical Fluid Dynamics Lab
201 Forrestal Road
Princeton, NJ 08542
USA

from cvmix-src.

mnlevy1981 avatar mnlevy1981 commented on September 16, 2024

I should also note that the Richardson mixing defined in Large et al does not have this implicit dependence on the background diffusivities, hence why I kept it separate in that case.

from cvmix-src.

mnlevy1981 avatar mnlevy1981 commented on September 16, 2024

Steve,

One problem with specifying nu_b = 0 is that the PP conclusions recommend

nu_b = 1 cm^2/s
kappa_b = 0.1 cm^2/s
n = 2
alpha = 5
nu_zero = O(50 cm^2/s)

If we add a PP test to our regression suite (one does not exist at the moment), I think those are the parameters we should use.

~Mike

from cvmix-src.

StephenGriffies avatar StephenGriffies commented on September 16, 2024

Hi,

OK. As we have no plans at GFDL to use PP, then I am agnostic.

Steve

On Fri, Oct 24, 2014 at 3:58 PM, Michael Levy [email protected]
wrote:

Steve,

One problem with specifying nu_b = 0 is that the PP conclusions recommend

nu_b = 1 cm^2/s
kappa_b = 0.1 cm^2/s
n = 2
alpha = 5
nu_zero = O(50 cm^2/s)

If we add a PP test to our regression suite (one does not exist at the
moment), I think those are the parameters we should use.

~Mike


Reply to this email directly or view it on GitHub
#47 (comment).

Dr. Stephen M. Griffies
NOAA Geophysical Fluid Dynamics Lab
201 Forrestal Road
Princeton, NJ 08542
USA

from cvmix-src.

mnlevy1981 avatar mnlevy1981 commented on September 16, 2024

Gokhan and I discussed it a little bit more after we got off the phone; how does this sound for a solution:

  1. Remove shear mixing dependence on background mixing
  2. Add nu_b and kappa_b to shear mixing parameter list
  3. At initialization, have default be nu_b = 0 and kappa_b = 0

This gives users the flexibility to separate the background mixing from the shear mixing (which seems to be a common use case) or to include the background mixing as in the original paper.

from cvmix-src.

toddringler avatar toddringler commented on September 16, 2024

Sounds good to me. I might suggest adding something into the names to make clear that nu_b and kappa_b only apply to the PP scheme.

On Oct 27, 2014, at 9:54 AM, Michael Levy [email protected] wrote:

Gokhan and I discussed it a little bit more after we got off the phone; how does this sound for a solution:

  1. Remove shear mixing dependence on background mixing
  2. Add nu_b and kappa_b to shear mixing parameter list
  3. At initialization, have default be nu_b = 0 and kappa_b = 0

This gives users the flexibility to separate the background mixing from the shear mixing (which seems to be a common use case) or to include the background mixing as in the original paper.


Reply to this email directly or view it on GitHub #47 (comment).

from cvmix-src.

mnlevy1981 avatar mnlevy1981 commented on September 16, 2024

Yeah, I think the current naming convention is PP_* for Pacanowski-Philander parameters and KPP_* for Large et al parameters... though maybe I should change the latter to LMD_*

from cvmix-src.

StephenGriffies avatar StephenGriffies commented on September 16, 2024

All good.

Steve

On Monday, October 27, 2014, Michael Levy [email protected] wrote:

Yeah, I think the current naming convention is PP_* for
Pacanowski-Philander parameters and KPP_* for Large et al parameters...
though maybe I should change the latter to LMD_*


Reply to this email directly or view it on GitHub
#47 (comment).

Dr. Stephen M. Griffies
NOAA Geophysical Fluid Dynamics Lab
201 Forrestal Road
Princeton, NJ 08542
USA

from cvmix-src.

mnlevy1981 avatar mnlevy1981 commented on September 16, 2024

As of 9b1e558 cvmix_background dependence has been replaced with the PP_nu_b and PP_kappa_b parameters in cvmix_shear. By default, PP_nu_b = PP_kappa_b = 0. This commit has been included in in the v0.62-beta release.

from cvmix-src.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.