[MITgcm-support] Momentum Budget
Emily Shroyer
eshroyer at whoi.edu
Tue Dec 14 16:12:14 EST 2010
Works great! When I average over many time steps the difference is tiny.
So just to conclude...
TOTUTEND/86400=Um_Diss+Um_Advec+Um_Cori+Um_dPHdx+Um_Ext+UDIAG1+Um_Impl
balances nicely. The only terms that needed to be added to those given
as tendency terms in the diagnostic package are the sea surface gradient
(UDIAG1) and the implicit viscosity (Um_Impl), which is defined below in
Jean-Michel's response. Thanks for all the help. Emily
Jean-Michel Campin wrote:
> Hi Emily,
>
> I took a look at your parameter files, and it seems to me that
> the vertical viscosity is the only term missing (I did not
> check myself, would need to get a similar set-up).
>
> I would suggest to turn on 2 additional diagnostics:
> VISrI_Um and VISrI_Vm
> described as:
> "Vertical Viscous Flux of U/V momentum (Implicit part)"
>
> And to get a tendency from this vertical flux:
> Um_Impl(:,:,k) =[ VISrI_Um(:,:,k+1) - VISrI_Um(:,:,k) ]
> /[ rAw(:,:)*drF(k)*hFacW(:,:,k) ]
> (hope I got the sign right)
>
> VISrI_Um(k=1) should be zero, and the bottom one (k=Nr+1)
> is not shored in the output file but it's also zero.
>
> Once you add this tendency, I expect the momemtum buget to
> "almost" close, with the remaining (small) difference
> coming from the time-stepping (Adams-Bashforth). But
> if you do a budget diagnostics over a not-too short period,
> the relative difference due to the time-stepping is small
> (+1/2 of the previous time-step tendency -1/2 of the last
> tile-step tendency of this period).
>
> Let us know if this works or not.
>
> Thanks,
> Jean-Michel
>
> On Fri, Dec 10, 2010 at 08:30:20AM -0500, Emily Shroyer wrote:
>
>> Thanks for the help. I assume that the following should add up to the
>> total momentum tendency:
>>
>> TOTUTEND/86400=Um_Diss+Um_Advec+Um_Cori+Um_dPHdx+Um_Ext+UDIAG1
>>
>> with a similar balance for the v-momentum equation. Note that UDIAG1
>> accounts for the sea-surface gradient. I have also appended data,
>> data.pkg, data.kpp. The only thing that should look unfamiliar is a
>> package named rlx. This is based off the rbcs package but it relaxes the
>> momentum to a certain state in a masked region. I have been careful to
>> only look at the budget well upstream, outside of this region.
>>
>> I am fairly certain that I am missing a term related to the vertical
>> viscosity. This may have something to do with my set-up of KPP, but I
>> did try turning it off and I was still having problems. The imbalance is
>> only significant in the equation when I turn on the winds. In the
>> surface cell the correction is in the opposite direction of those below.
>> I think this is because I am adding in the term for momentum input from
>> the wind (Um_Ext), but not the total loss to viscosity. Beneath the
>> surface the correction is of the opposite sign, i.e., I am only not
>> accounting for viscosity correctly. The imbalance decreases with depth,
>> and is negligible at a certain point. The correction seems to be of the
>> same shape and magnitude as the approximate term for the vertical
>> viscosity nu_{kpp}*d2u/dz2. Its also of (roughly) the same shape as
>> VISrE_Um. Any advice would be appreciated. Emily
>>
>> Jean-Michel Campin wrote:
>>
>>> Hi Emily,
>>>
>>> I am not sure that all the diagnostics needed to close the momentum
>>> budget are there (although I though we put them), and it also depend
>>> on the level of details you are interested in.
>>> There are 2 things that could be useful:
>>> 1) write the list of terms (translated in diagnostics output name)
>>> that you expect to sum to zero in the momentum budget.
>>> 2) attached the main parameter files (data, data.pkg, + may be
>>> few other like data.kpp if you are using kpp).
>>>
>>> Thanks,
>>> Jean-Michel
>>>
>>> On Thu, Dec 09, 2010 at 01:02:55PM -0500, Emily Shroyer wrote:
>>>
>>>
>>>> Thanks Matt,
>>>> For some reason things still are not adding up quite right. The
>>>> balance is almost perfect, until I turn on wind forcing then the sum
>>>> of terms differs significantly from the total tendency. I attached
>>>> a figure of the zonal balance at one grid cell as a function of
>>>> time. Winds turn on around day 12, the black line and the red dashed
>>>> line would line up if I was including everything correctly. This is
>>>> one reason I thought that the vertical viscosity term might be
>>>> missing, i.e., maybe I am not accounting for the flux of momentum
>>>> from the surface properly. The other is that if I evaluate this term
>>>> (nu*d^2u/dz^2) on my own, the difference is roughly correct. I tried
>>>> manipulating the VISrE_Um and VISrI_Um terms but I am not sure
>>>> exactly how these are scaled, the units appear to be in m^4/s^2, so
>>>> surface area alone is not going to work. I will likely just return
>>>> to estimating a momentum budget from the normal output fields, a
>>>> little messy and it won't balance perfectly, but at least I know
>>>> what it does. Thanks again, Emily
>>>>
>>>>
>>>> Matthew Mazloff wrote:
>>>>
>>>>
>>>>> Hi Emily,
>>>>>
>>>>> I believe there are a few tricks to this
>>>>>
>>>>> Disclaimer -- this info may be out of date or not apply to your
>>>>> specific setup....
>>>>>
>>>>>
>>>>> I think the tendency term is in units per day, not per second, so
>>>>> try rescaling from m/s/d to m/s^2 by dividing by 86400
>>>>>
>>>>> For vector invariant momentum formulation (not sure about flux
>>>>> form) Um_Advec includes coriolis
>>>>>
>>>>> I believe Um_dPHdx does not include pressure forcing from SSH
>>>>> gradient, you need to add that in
>>>>>
>>>>> Note that UBotDrag and USidDrag should be in Um_Diss
>>>>>
>>>>> If you want to look at the implicit vertical viscous flux
>>>>> (VISrE_Um) then I believe this has units m^3/s^2 and so needs to
>>>>> be rescaled by surface area ( divide by RAW and RAS for zonal,
>>>>> meridionaly momentum balance respectively)
>>>>>
>>>>>
>>>>> Hope this helps -- or at least gives you some ideas...
>>>>>
>>>>> -Matt
>>>>>
>>>>>
>>>>>
>>>>> Request to developers...maybe the momentum diagnostics could be
>>>>> cleaned up?
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Dec 7, 2010, at 1:46 PM, Emily Shroyer wrote:
>>>>>
>>>>>
>>>>>
>>>>>> I would like to output terms of the momentum budget using the diagnostic
>>>>>> package. My data.diagnostic file is set as:
>>>>>>
>>>>>> &diagnostics_list
>>>>>> diag_mnc = .TRUE.,
>>>>>> frequency(1) = -43200.,
>>>>>> filename(1) = 'UmomDiag',
>>>>>> fields(1,1) = 'TOTUTEND','UBotDrag ','USidDrag
>>>>>> ','Um_Diss','Um_Advec','Um_Cori',
>>>>>> 'Um_dPHdx','Um_Ext','Um_AdvZ3','UDIAG1 ',
>>>>>>
>>>>>> frequency(2) = -43200.,
>>>>>> filename(2) = 'VmomDiag',
>>>>>> fields(1,2) = 'TOTVTEND','VBotDrag ','VSidDrag
>>>>>> ','Vm_Diss','Vm_Advec','Vm_Cori',
>>>>>> 'Vm_dPHdy','Vm_Ext','Vm_AdvZ3','UDIAG2 ',
>>>>>>
>>>>>> &
>>>>>>
>>>>>> The terms Udiag1/2 were added to account for gradients in the sea
>>>>>> surface height. Unfortunately, the total tendency is not quite equal to
>>>>>> the sum of the other terms. I think that difference may be associated
>>>>>> with the implicit diffusivity term? I am using a KPP mixing scheme,
>>>>>> although I have also tried a MY scheme. I spent a bit of time trying to
>>>>>> decide where best to output this term with a user defined diagnostic
>>>>>> without any result. My questions are 1) Is it likely that this is indeed
>>>>>> the term I am missing in the momentum budget or have a missed something
>>>>>> else? 3) If so, does anyone have a suggestion as to where best to output
>>>>>> this term with the user diagnostic?
>>>>>>
>>>>>> Thanks for any advice, Emily
>>>>>>
>>>>>> --
>>>>>> Emily Shroyer, Postdoctoral Scholar
>>>>>>
>>>>>> Woods Hole Oceanographic Institution
>>>>>> Clark 316A, MS #21
>>>>>> Woods Hole, MA 02543
>>>>>>
>>>>>> phone: 508 289 2525
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> MITgcm-support mailing list
>>>>>> MITgcm-support at mitgcm.org <mailto:MITgcm-support at mitgcm.org>
>>>>>> http://mitgcm.org/mailman/listinfo/mitgcm-support
>>>>>>
>>>>>>
>>>>> ------------------------------------------------------------------------
>>>>>
>>>>> _______________________________________________
>>>>> MITgcm-support mailing list
>>>>> MITgcm-support at mitgcm.org
>>>>> http://mitgcm.org/mailman/listinfo/mitgcm-support
>>>>>
>>>>>
>>>> --
>>>> Emily Shroyer, Postdoctoral Scholar
>>>>
>>>> Woods Hole Oceanographic Institution
>>>> Clark 316A, MS #21
>>>> Woods Hole, MA 02543
>>>>
>>>> phone: 508 289 2525
>>>>
>>>>
>>>>
>>>
>>>
>>>> _______________________________________________
>>>> MITgcm-support mailing list
>>>> MITgcm-support at mitgcm.org
>>>> http://mitgcm.org/mailman/listinfo/mitgcm-support
>>>>
>>>>
>>> _______________________________________________
>>> MITgcm-support mailing list
>>> MITgcm-support at mitgcm.org
>>> http://mitgcm.org/mailman/listinfo/mitgcm-support
>>>
>>>
>>>
>> --
>> Emily Shroyer, Postdoctoral Scholar
>>
>> Woods Hole Oceanographic Institution
>> Clark 316A, MS #21
>> Woods Hole, MA 02543
>>
>> phone: 508 289 2525
>>
>>
>
>
>> # ====================
>> # | Model parameters |
>> # ====================
>> #
>> # Continuous equation parameters
>> &PARM01
>> viscA4=0.0E4,
>> viscAh=5.E0,
>> viscAz=1.E-5,
>> bottomDragQuadratic=2.E-3,
>> no_slip_sides=.FALSE.,
>> no_slip_bottom=.FALSE.,
>> diffK4T=0.E4,
>> diffKhT=5.E0,
>> diffKzT=1.E-5,
>> diffKhS=5.E0,
>> diffKzS=1.E-5,
>> diffK4S=0.E4,
>> f0=14.E-5,
>> beta=0.E-11,
>> eosType='LINEAR',
>> tAlpha=2.E-4,
>> sBeta =74.E-5,
>> rigidLid=.FALSE.,
>> implicitFreeSurface=.TRUE.,
>> implicitViscosity=.TRUE.,
>> implicitDiffusion=.TRUE.,
>> staggerTimeStep=.TRUE.,
>> hFacMin=0.2,
>> nonHydrostatic=.FALSE.,
>> readBinaryPrec=64,
>> &
>>
>> # Elliptic solver parameters
>> &PARM02
>> cg2dMaxIters=300,
>> cg2dTargetResidual=1.E-13,
>> cg3dMaxIters=20,
>> cg3dTargetResidual=1.E-8,
>> &
>>
>> # Time stepping parameters
>> &PARM03
>> nIter0=0,
>> nTimeSteps=14400,
>> deltaT=120.0,
>> abEps=0.1,
>> pChkptFreq=0,
>> chkptFreq=0,
>> dumpFreq=3600.0,
>> monitorSelect=2,
>> monitorFreq=12000.,
>> taveFreq=21600.,
>> periodicExternalForcing=.TRUE.,
>> externForcingPeriod=3600.0,
>> externForcingCycle=1728000.,
>> &
>>
>> # Gridding parameters
>> &PARM04
>> usingCartesianGrid=.TRUE.,
>> delX=30*2500,
>> delYfile='delY.bin',
>> delRfile='delZ.bin',
>> &
>>
>> # Input datasets
>> &PARM05
>> bathyFile='topog.slope',
>> hydrogThetaFile='T.init',
>> hydrogSaltFile='S.init',
>> zonalWindFile = 'ustress.bin',
>> meridWindFile = 'vstress.bin',
>> &
>>
>
>
>> # =====================================================================
>> # | Parameters for Pacanowski&Philander (1981) vertical mixing scheme |
>> # =====================================================================
>> &KPP_PARM01
>> KPPwriteState=.TRUE.,
>> minKPPhbl = 10.,
>> Ricr = 0.3,
>> &
>>
>
>
>> # Packages
>> &PACKAGES
>> useMNC=.TRUE.,
>> useRLX=.TRUE.,
>> useKPP=.TRUE.,
>> useDiagnostics=.TRUE.,
>> &
>>
>
>
>> _______________________________________________
>> MITgcm-support mailing list
>> MITgcm-support at mitgcm.org
>> http://mitgcm.org/mailman/listinfo/mitgcm-support
>>
>
>
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-support
>
>
--
Emily Shroyer, Postdoctoral Scholar
Woods Hole Oceanographic Institution
Clark 316A, MS #21
Woods Hole, MA 02543
phone: 508 289 2525
More information about the MITgcm-support
mailing list