[ncl-talk] Eady _growth_rate

Dennis Shea shea at ucar.edu
Fri Aug 17 10:22:14 MDT 2018


Eady's seminal paper was written in 1949. It (the '*Eady Model*
<https://en.wikipedia.org/wiki/Eady_Model>' )  is based on many
assumptions. The scale analysis that allowed the simplification of the
equations was based on a mid-latitude assumption. Hence, calculated values
"near" the equator may/may-not be useful. As they say: Beauty, is in the
eyes of the beholder.

FYI: the following was developed in 2012 about 5 years before NCL's
function was released [2/1017: NCL 6.4.0]
*https://k3.cicsnc.org/carl/carl-ncl-tools/blob/master/ncep/eady.ncl
<https://k3.cicsnc.org/carl/carl-ncl-tools/blob/master/ncep/eady.ncl>*




On Fri, Aug 17, 2018 at 9:33 AM, George Vandenberghe - NOAA Affiliate <
george.vandenberghe at noaa.gov> wrote:

> There was a tangential thread about the relevance of Eady Growth Rates in
> a tropical cyclone environment.   The function can give you
> a number but is it realistic with the approximations made for
> quasi-geostrophic baroclinic theory?
>
> Apart from that though the problem is very relevant when considering a
> tropical cyclone as a source of a perturbation
> in a baroclinic zone and that situation is common to general with
> recurving tropical cyclones.
>
>
> On Fri, Aug 17, 2018 at 10:28 AM, Dennis Shea <shea at ucar.edu> wrote:
>
>>
>>    printVarSummary(T41)          ; ; [Time|12]x[ilev |* 26*] x [lat |
>> 96] x [lon | 144]
>>    printVarSummary(T411)         ; ; [Time|12]x[ilev | *26*] x [lat |
>> 96] x [lon | 144]
>>    printVarSummary(T412)         ; ; [Time|12]x[ilev | *27*] x [lat |
>> 96] x [lon | 144]
>>
>> Variable T412 is the issue. The 'ilev' dimension is different.
>>
>> You must interpolate it to the same dimensions as T41, T411
>>
>> pressure: int2p_n
>> <http://www.ncl.ucar.edu/Document/Functions/Built-in/int2p_n.shtml> or,
>> better, *int2p_n_Wrap
>> <http://www.ncl.ucar.edu/Document/Functions/Contributed/int2p_n_Wrap.shtml>*
>> ====
>>
>> hybrid vertical coordinates: vinth2p
>> <http://www.ncl.ucar.edu/Document/Functions/Built-in/vinth2p.shtml>
>>
>> On Fri, Aug 17, 2018 at 8:07 AM, Sri Nandini <snandini at marum.de> wrote:
>>
>>> ​Hello
>>>
>>> I am trying to plot the eady growth rate as a measure of baroclinic
>>> instability. I cannot due to:
>>> fatal:conform: The array to be conformed must have the same number of
>>> dimensions as indicated by the length of the last argument
>>> I cannot conform the latitude to same dimensions as the th variable.
>>>
>>> Below is my script, would be grateful for any suggestions.
>>>
>>>
>>> load "lat_lon_masked_lambert.ncl"
>>>
>>> ; ==============================================================
>>> ; Open the file: Read only the user specified period first observations
>>> then model
>>> ; ==============================================================
>>>    f= addfile("SLP_PHIS_Z3_PI.nc", "r") ;
>>>    T41    = f->Z3(:,:,:,:)
>>>
>>>    printVarSummary(T41)                                 ; ;
>>> [Time|12]x[ilev | 26] x [lat | 96] x [lon | 144]
>>>    T41 at _FillValue = -9.96921e+36
>>>
>>> ;==============================================================
>>>
>>>    f1= addfile("totalwinds_PI.nc", "r") ;
>>>    T411    = f1->U(:,:,:,:)
>>>
>>>    printVarSummary(T411)                                 ; ;
>>> [Time|12]x[ilev | 26] x [lat | 96] x [lon | 144]
>>>    T411 at _FillValue = -9.96921e+36
>>>
>>>
>>> ;==============================================================
>>>    f2= addfile("th_PI.nc", "r") ;
>>>    T412    = f2->TH(:,:,:,:)
>>>
>>>    printVarSummary(T412)                                 ; ;
>>> [Time|12]x[ilev | 27] x [lat | 96] x [lon | 144]
>>>    T412 at _FillValue = -9.96921e+36
>>>
>>> ;==============================================================
>>>
>>> ;    Read latitudes
>>> ;    The 'eady_growth_rate' function requires that 'lat' and 'th' agree
>>> ;    Use 'conform' the propogate the lat values
>>> ;==============================================================
>>>
>>>    xlat = f->lat                               ;  [lat | 96]
>>>    printVarSummary(xlat)
>>>
>>>    XLAT = conform(T412, xlat, (/0,2,3/))     ; problem here
>>>    printVarSummary(XLAT)
>>>
>>>    egr = eady_growth_rate(aveX2, aveX1, aveX, XLAT, 0,  1)
>>>    printVarSummary(egr)
>>>    printMinMax(egr, 0)
>>>
>>> ;==============================================================
>>>    wks = gsn_open_wks("pdf","Eady")              ; send graphics to PNG
>>> file
>>>
>>> ;---Set some basic plot options
>>>
>>>    res               = True
>>>    res at gsnMaximize   = True       ; maximize plot in frame
>>>    res at gsnAddCyclic  = False
>>>
>>>    res at cnFillOn      = True
>>>    res at cnLinesOn     = False
>>>   ;res at cnFillMode    = "RasterFill"                 ; slow here
>>>    res at cnFillMode    = "CellFill"                   ; faster
>>>
>>>
>>>   minlat = 25.                          ; min lat to mask
>>>   maxlat = 80.                          ; max lat to mask
>>>   minlon = -10.                          ; min lon to mask
>>>   maxlon =  110.                          ; max lon to mask
>>>   res at mpProjection = "LambertConformal"            ; choose projection
>>>
>>> ;---masked plot
>>>   res at gsnAddCyclic = True                ; regional plot
>>>
>>>   res at mpMinLatF = minlat              ; min lat to mask
>>>   res at mpMaxLatF = maxlat              ; max lat to mask
>>>   res at mpMinLonF = minlon              ; min lon to mask
>>>   res at mpMaxLonF = maxlon              ; max lon to mask
>>>
>>>   res at gsnMaskLambertConformal = True                ; turn on lc masking
>>>
>>> ; specify a level or levels ... within boundary layer
>>>
>>>    klStrt = 5
>>>    klLast = 5
>>>    nt     = 0
>>>
>>> ;--- Eady growth rate (1/day)
>>>
>>>    egr        = egr*86400
>>>    egr at units  = "1/day"
>>>
>>>    res at cnFillPalette        = "precip2_17lev"
>>>    res at cnLevelSelectionMode = "ManualLevels"     ; set manual contour
>>> levels
>>>    res at cnMinLevelValF       =  0.5               ; set min contour level
>>>    res at cnMaxLevelValF       =  4.0               ; set max contour level
>>>    res at cnLevelSpacingF      =  0.25              ; set contour spacing
>>>
>>>    do kl=klStrt,klLast
>>>       res at gsnCenterString = "znu="+znu(nt,kl)
>>>       res at gsnRightString  =  egr at units
>>>       contour = gsn_csm_contour_map(wks,  egr(nt,kl,:,:),res)
>>>    end do
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> ncl-talk mailing list
>>> ncl-talk at ucar.edu
>>> List instructions, subscriber options, unsubscribe:
>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>
>>>
>>
>> _______________________________________________
>> ncl-talk mailing list
>> ncl-talk at ucar.edu
>> List instructions, subscriber options, unsubscribe:
>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20180817/87c18dc2/attachment.html>


More information about the ncl-talk mailing list