[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Support #ZDT-182699]: PV in IDV



Hi Jim-

We found and squashed this bug.  It was deep down in the derivative calculation 
in VisAD. The fixes will be in tomorrow's nightly build.  2 IPV surface will 
show correctly in both the NAM and GFS.

Thanks for bringing this to the forefront and helping us fix it.

Don

> > I'm clueless still.  I looked at some of my GFS scripts and didn't
> > notice anything weird with the sign, but I wrote them along time ago, so
> > it's a bit like reading french.  Perhaps the vertical indicies are
> > switched?  I'm grasping at straws.
> 
> Me too. ;-)  It looks like dtheta/dp is coming up with inverse signs.  I'm 
> trying to track that down now.
> 
> > At least now I can do a 3-D demo for the students.  Thanks!
> 
> At least that's a positive!  Thanks for your help in tracking this down.
> 
> Don
> > Unidata IDV Support wrote:
> > > Hi Jim-
> > >
> > >
> > >> I've plotted up the nam211 and the GFS 80 km (I can't recall the
> > >> grid number).  The nam *looks* correct.  The GFS *looks* correct with
> > >> the sign error that you mention below.
> > >>
> > >
> > > Oh, good, it's not just me. ;-)
> > >
> > >
> > >> I'm at a loss for the cause of the sign error in the GFS.  In the
> > >> southern hemisphere, the PV *would* be negative.  Why it is in the NH I
> > >> don't know.  The absolute vorticity calculated from U_wind and v_wind
> > >> looks correct and this is what determines the sign of the PV normally.
> > >> About all I can think of is that there is some weird convention in the
> > >> NCEP grids (like gravity being negative).
> > >>
> > >
> > > Yeah, I'll try to look more closely at the individual grids.
> > >
> > >
> > >> Are you doing a conversion to isentropic coordinates for this or
> > >> just using the pressure coordinate absolute vorticity?
> > >>
> > >
> > > No, I'm using the calculated THTA from T and P and the calculated AVOR 
> > > from U and V.  The existing absolute vorticity grid is only 3 levels.
> > >
> > > Thanks for checking that at least it looks reasonable (except for the 
> > > sign).  I'll dig deeper.  It's probably something simple, but for the 
> > > life of me I can't figure out what.  Maybe it is something to do with the 
> > > latitude if it should be negative in the SH.
> > >
> > > Have a great weekend!
> > >
> > > Don
> > >
> > >  Unidata IDV Support wrote:
> > >
> > >>> Hi Jim-
> > >>>
> > >>>
> > >>>
> > >>>> That's interesting.  I haven't had a chance to download the latest
> > >>>> build yet.  Is last nights OK except for the sign error?  Send me the
> > >>>> URL again.
> > >>>>
> > >>>>
> > >>> Last night's is okay except for the sign error.  You can grab it at:
> > >>>
> > >>> http://www.unidata.ucar.edu/downloads/idv/nightly/
> > >>>
> > >>> Don
> > >>>
> > >>>
> > >>>
> > >>>
> > >>>> Unidata IDV Support wrote:
> > >>>>
> > >>>>
> > >>>>> Hi Jim-
> > >>>>>
> > >>>>> I have a met question for you.  If I negate the grid for the GFS, I 
> > >>>>> get what I would consider as correct results.  However, for the NAM, 
> > >>>>> the values are then wrong.
> > >>>>>
> > >>>>> If you download the nightly build and run the Displays->Favorite 
> > >>>>> Bundles->NAM211->Isentropic Potential Vorticity bundle, you should 
> > >>>>> get a reasonable depiction.  Can you confirm this?
> > >>>>>
> > >>>>> However, if you do a GFS isosurface, the values are negated.  If you 
> > >>>>> set the isosurface value to -2, it should look like the NAM 2 IPVunit 
> > >>>>> surface.   The GEMPAK formula is:
> > >>>>>
> > >>>>> -GRAVTY*AVOR(V)*dTheta/dP
> > >>>>>
> > >>>>> There was a note in the code that using the - gives the wrong values, 
> > >>>>> but I'm stumped as to way it works with one grid and not the other. 
> > >>>>> Both are GRIB1, both have a vertical dimension of P in hectopascals.  
> > >>>>> Any thoughts on this?
> > >>>>>
> > >>>>> I'll keep looking into it, but thought I'd turn to a professional for 
> > >>>>> some advice.
> > >>>>>
> > >>>>> In the meantime, you can just use the -2 isosurface for the GFS. ;-)
> > >>>>>
> > >>>>> Don
> > >>>>>
> > >>>>>
> > >>>>>
> > >>>>>
> > >>>>>>> I was trying to plot an isosurface.  That "works", but the result is
> > >>>>>>> best described as "gobbledygook."  The ability to do a 2 PVU 
> > >>>>>>> isosurface
> > >>>>>>> is really powerful for teaching PV thinking.  That's when I noticed 
> > >>>>>>> the
> > >>>>>>> error.
> > >>>>>>>
> > >>>>>>>
> > >>>>>>>
> > >>>>>> I found one error which was that absolute vorticity was being 
> > >>>>>> calculated incorrectly.  That will be fixed in the nightly build.  
> > >>>>>> However, I'm now trying to get IPV correct. I compared the results 
> > >>>>>> from GEMPAK and they match.
> > >>>>>>
> > >>>>>> However, IPV is even worse now. :-( I'll have to do some plan view 
> > >>>>>> plots in GEMPAK to compare with since I don't have any other program 
> > >>>>>> to show what the isosurface should look like.
> > >>>>>>
> > >>>>>> Thanks for your patience.
> > >>>>>>
> > >>>>>> Don
> > >>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>>>> Unidata IDV Support wrote:
> > >>>>>>>
> > >>>>>>>
> > >>>>>>>
> > >>>>>>>> Hi Jim-
> > >>>>>>>>
> > >>>>>>>> I've moved this to the support system.  Best to send questions to 
> > >>>>>>>> support-idv instead of me directly so we can better track these 
> > >>>>>>>> issues.
> > >>>>>>>>
> > >>>>>>>> Thanks for catching this. Did this ever work?  I've always done 
> > >>>>>>>> this as a volume since IPV needs several levels. If you select 2 
> > >>>>>>>> (or more) levels in the levels panel, you'll be able to do the 
> > >>>>>>>> slice for a plan view.  However, the list of levels in the control 
> > >>>>>>>> will not reflect the levels you selected, but the entire list of 
> > >>>>>>>> levels.  We're working on a fix to this.
> > >>>>>>>>
> > >>>>>>>> Don
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>> ERROR: Creating display: Contour Plan View
> > >>>>>>>>> org.python.core.PyException
> > >>>>>>>>> Traceback (innermost last):
> > >>>>>>>>> File "<string>", line 1, in ?
> > >>>>>>>>> at visad.FlatField.derivative(FlatField.java:4044)
> > >>>>>>>>> at visad.FlatField.derivative(FlatField.java:4485)
> > >>>>>>>>> at
> > >>>>>>>>> ucar.unidata.data.grid.DerivedGridFactory.partial(DerivedGridFactory.java:2366)
> > >>>>>>>>> at
> > >>>>>>>>> ucar.unidata.data.grid.DerivedGridFactory.createIPV(DerivedGridFactory.java:1954)
> > >>>>>>>>> at
> > >>>>>>>>> ucar.unidata.data.grid.DerivedGridFactory.createIPV(DerivedGridFactory.java:1880)
> > >>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > >>>>>>>>> at
> > >>>>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> > >>>>>>>>> at
> > >>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> > >>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:597)
> > >>>>>>>>>
> > >>>>>>>>> visad.VisADException: visad.VisADException: derivative: 
> > >>>>>>>>> d_partial_s not
> > >>>>>>>>> in domain or reference
> > >>>>>>>>> ERROR: Creating display: Contour Plan View
> > >>>>>>>>> org.python.core.PyException
> > >>>>>>>>> Traceback (innermost last):
> > >>>>>>>>> File "<string>", line 1, in ?
> > >>>>>>>>> at visad.FlatField.derivative(FlatField.java:4044)
> > >>>>>>>>> at visad.FlatField.derivative(FlatField.java:4485)
> > >>>>>>>>> at
> > >>>>>>>>> ucar.unidata.data.grid.DerivedGridFactory.partial(DerivedGridFactory.java:2366)
> > >>>>>>>>> at
> > >>>>>>>>> ucar.unidata.data.grid.DerivedGridFactory.createIPV(DerivedGridFactory.java:1954)
> > >>>>>>>>> at
> > >>>>>>>>> ucar.unidata.data.grid.DerivedGridFactory.createIPV(DerivedGridFactory.java:1880)
> > >>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > >>>>>>>>> at
> > >>>>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> > >>>>>>>>> at
> > >>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> > >>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:597)
> > >>>>>>>>>
> > >>>>>>>>> visad.VisADException: visad.VisADException: derivative: 
> > >>>>>>>>> d_partial_s not
> > >>>>>>>>> in domain or reference
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>> Ticket Details
> > >>>>>>>> ===================
> > >>>>>>>> Ticket ID: ZDT-182699
> > >>>>>>>> Department: Support IDV
> > >>>>>>>> Priority: Normal
> > >>>>>>>> Status: Open
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>
> > >>>>> Ticket Details
> > >>>>> ===================
> > >>>>> Ticket ID: ZDT-182699
> > >>>>> Department: Support IDV
> > >>>>> Priority: Normal
> > >>>>> Status: Open
> > >>>>>
> > >>>>>
> > >>>>>
> > >>>>>
> > >>> Ticket Details
> > >>> ===================
> > >>> Ticket ID: ZDT-182699
> > >>> Department: Support IDV
> > >>> Priority: Normal
> > >>> Status: Open
> > >>>
> > >>>
> > >>>
> > >>
> > >
> > >
> > > Ticket Details
> > > ===================
> > > Ticket ID: ZDT-182699
> > > Department: Support IDV
> > > Priority: Normal
> > > Status: Open
> > >
> > >
> >
> >
> 


Ticket Details
===================
Ticket ID: ZDT-182699
Department: Support IDV
Priority: Normal
Status: Closed