[MITgcm-devel] seaice_get_dynforcing.F: CDAIR SEAICE_drag and OCEAN_drag
Jean-Michel Campin
jmc at ocean.mit.edu
Mon Jan 6 08:47:37 EST 2014
Hi Ian and Martin,
I agree with Martin regarding point 2;
But regarding point 1 (name & description of "CDAIR"), I don't have
any problem with this local variable: It is clearly local (no bi,bj,
not stored in commom block), one a the few local var in pkg/seaice
that has a "description", and the description fit what it's used for,
a coeefficient that is used to compute wind stress.
I can also grep for it easily (does not show up thousand times).
Cheers,
Jean-Michel
On Mon, Jan 06, 2014 at 10:23:29AM +0100, Martin Losch wrote:
> Hi Ian,
>
> keep in mind that many of the variable names are really historic, and I am probably to blame for having too much respect for old code. In exf_bulkformulae the corresponding variable for “CDAIR” is called “tmpbulk”. Would you prefer that name? What other suggestions do you have?
>
> In the case of prescribing windstress instead of wind, the “temporay variable nature” of CDAIR emerges, right? As far as I remember, this is a hack and should probably be replaced by something that is computed once in seaice_init_fixed.F before the time stepping starts, or just remove CDAIR from this part of the code and put taux = SEAICE_drag/OCEAN_drag * fu directly into the if-statements.
> Prescribing wind stress for a sea ice simulation does not make too much sense to me, because the surface stress will be different over ice and ocean. You do not know beforehand where your ice will be and so you are at very high risk of prescribing precomputed atmosphere-ice stress to the ocean and atmosphere-ocean stress to sea-ice. So I would argue that one should only prescribe ocean-atmosphere stress and then do something to convert this stress to stress over ice if required. I am aware that this is clearly sub-optimal, but I find the entire configuration of prescribing wind stress with sea-ice not consistent. You can also set SEAICE_drag=OCEAN_drag in seaice_readparms.F and then you get what you want, right? I don’t think that this “feature” should be removed, unless you want to remove the capability of prescribing stress with sea-ice altogether (which you won’t).
>
> Martin
>
> On Dec 31, 2013, at 12:14 AM, Fenty, Ian G (3244) <Ian.Fenty at jpl.nasa.gov> wrote:
>
> > Sea ice developers,
> >
> > I would like to make two observations about air-sea ice momemtum fluxes
> >
> > ----------------------------------------------------------------------------------------------------------------
> > Observation 1: Using the variable name CDAIR - described as the
> > local wind stress coefficient - in seaice_get_dynforcing.F is
> > unnecessarily confusing since it is not a air-ice drag coefficient.
> > ---------------------------------------------------------------------------------------------
> >
> > If u,v winds are prescribed, the variable CDAIR is determined by
> >
> > CDAIR = SEAICE_rhoAIR * SEAICE_drag * sqrt(u_wind^2 + v_wind^2)
> >
> > Normally, the variable SEAICE_drag is referred to as C_D and called
> > the air-ice momentum transfer coefficient.
> >
> > Following the calculation of CDAIR, the surface momentum flux is calculated as,
> >
> > taux = CDAIR * |u_wind|
> >
> > So clearly, CDAIR is just a temporary variable and not a wind stress coefficient and
> > I think use a different name for it.
> >
> > ----------------------------------------------------------------------------------------------------------------
> > Observation 2: The meaning of CDAIR completely changes when wind stresses are
> > prescribed and that, again, is unnecessarily confusing.
> > ----------------------------------------------------------------------------------------------------------------
> >
> > In ECCO v4 and ASTE, wind stress - not u,v winds - are prescribed as
> > forcings. In that case, seaice_get_dynforcing defines CDAIR as,
> >
> > CDAIR(i,j) = SEAICE_drag /OCEAN_drag
> >
> > In the above, CDAIR is clearly a ratio of two momentum transfer coefficients.
> >
> > Following the calculation of CDAIR, the surface momemtum flux is
> > calculated by scaling fu by CDAIR:
> >
> > taux = CDAIR * fu
> > tauy = CDAIR * fv
> >
> > If one prescribes wind stress, why do we scale the wind stress by the ratio of SEAICE_drag /OCEAN_drag? In doing so, are we not making the implict assumption that the prescribed wind stresses are only equivalent open water stresses?
> >
> > Should we not trust that the stresses prescribed by the user are the actual momemtum fluxes to the surface (whatever the surface) and not the equivalent open water momemtum fluxes?
> >
> > If the prescribed wind stresses are the actual atmospheric momemtum fluxes, shouldn't taux = fu?
> >
> > If so, shouldn't we remove the SEAICE_drag/OCEAN_drag ratio? So as to prevent someone from getting a factor 2 too large air-sea ice stress (2 is the default ratio of SEAICE_drag/OCEAN_drag).
> >
> >
> > -Ian
> >
> > _______________________________________________
> > MITgcm-devel mailing list
> > MITgcm-devel at mitgcm.org
> > http://mitgcm.org/mailman/listinfo/mitgcm-devel
>
>
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-devel
More information about the MITgcm-devel
mailing list