[ncl-talk] Vertical motion with zonal wind

Jenny Taylor jenny63taylor91 at gmail.com
Tue Feb 27 05:25:19 MST 2018


My thanks to Dennis Shea and Adam Philips for valuable advice.
I am trying to plot ERA-Interim model data at different vertical pressure
levels. I have downloaded the 'hyam' and 'hybm' for model levels (attached
below) as specified in the ERA-Interim link;

https://rda.ucar.edu/datasets/ds627.0/docs/Eta_coordinate/index.html

Downloaded the daily data (time step=4) for all 60 levels in
the separate file (4 GB approx). Then I merged these two files in CDO and
time mean the merged data.

Summary of the final processed data is given below;

Variable: PS1
Type: short
Total Size: 2724120 bytes
            1362060 values
Number of Dimensions: 4
Dimensions and sizes:   [time | 1] x [level | 60] x [latitude | 161] x
[longitude | 141]
Coordinates:
            time: [969705..969705]
            level: [   1..  60]
            latitude: [40.. 0]
            longitude: [65..100]
Number Of Attributes: 6
  long_name :   Logarithm of surface pressure
  units :       ~
  add_offset :  11.19559352539406
  scale_factor :        1.015380172027476e-05
  _FillValue :  -32767
  missing_value :       -32767

Variable: T
Type: short
Total Size: 2724120 bytes
            1362060 values
Number of Dimensions: 4
Dimensions and sizes:   [time | 1] x [level | 60] x [latitude | 161] x
[longitude | 141]
Coordinates:
            time: [969705..969705]
            level: [   1..  60]
            latitude: [40.. 0]
            longitude: [65..100]
Number Of Attributes: 7
  standard_name :       air_temperature
  long_name :   Temperature
  units :       K
  add_offset :  249.3816473297584
  scale_factor :        0.002009905912815991
  _FillValue :  -32767
  missing_value :       -32767

Variable: W
Type: short
Total Size: 2724120 bytes
            1362060 values
Number of Dimensions: 4
Dimensions and sizes:   [time | 1] x [level | 60] x [latitude | 161] x
[longitude | 141]
Coordinates:
            time: [969705..969705]
            level: [   1..  60]
            latitude: [40.. 0]
            longitude: [65..100]
Number Of Attributes: 7
  standard_name :       lagrangian_tendency_of_air_pressure
  long_name :   Vertical velocity
  units :       Pa s**-1
  add_offset :  -1.799464318323461
  scale_factor :        0.0001232090956517211
  _FillValue :  -32767
  missing_value :       -32767

Variable: V
Type: short
Total Size: 2724120 bytes
            1362060 values
Number of Dimensions: 4
Dimensions and sizes:   [time | 1] x [level | 60] x [latitude | 161] x
[longitude | 141]
Coordinates:
            time: [969705..969705]
            level: [   1..  60]
            latitude: [40.. 0]
            longitude: [65..100]
Number Of Attributes: 7
  standard_name :       northward_wind
  long_name :   V component of wind
  units :       m s**-1
  add_offset :  -0.1744413644931722
  scale_factor :        0.001333290509781928
  _FillValue :  -32767
  missing_value :       -32767

Variable: U
Type: short
Total Size: 2724120 bytes
            1362060 values
Number of Dimensions: 4
Dimensions and sizes:   [time | 1] x [level | 60] x [latitude | 161] x
[longitude | 141]
Coordinates:
            time: [969705..969705]
            level: [   1..  60]
            latitude: [40.. 0]
            longitude: [65..100]
Number Of Attributes: 7
  standard_name :       eastward_wind
  long_name :   U component of wind
  units :       m s**-1
  add_offset :  -14.17403101359716
  scale_factor :        0.002084243991189315
  _FillValue :  -32767
  missing_value :       -32767

Variable: hyam
Type: float
Total Size: 240 bytes
            60 values
Number of Dimensions: 1
Dimensions and sizes:   [lvl | 60]
Coordinates:
            lvl: [1..60]
Number Of Attributes: 2
  long_name :   a model ave
  units :       Pa

Variable: hybm
Type: float
Total Size: 240 bytes
            60 values
Number of Dimensions: 1
Dimensions and sizes:   [lvl | 60]
Coordinates:
            lvl: [1..60]
Number Of Attributes: 2
  long_name :   b model ave
  units :       Pa Pa**-1

Variable: PS
Type: float
Total Size: 90804 bytes
            22701 values
Number of Dimensions: 3
Dimensions and sizes:   [1] x [161] x [141]
Coordinates:
Number Of Attributes: 1
  _FillValue :  -32767

Variable: t
Type: float
Total Size: 1543668 bytes
            385917 values
Number of Dimensions: 4
Dimensions and sizes:   [time | 1] x [lev_p | 17] x [latitude | 161] x
[longitude | 141]
Coordinates:
            time: [969705..969705]
            lev_p: [1000..50]
            latitude: [40.. 0]
            longitude: [65..100]
Number Of Attributes: 1
  _FillValue :  -32767

Variable: u
Type: float
Total Size: 1543668 bytes
            385917 values
Number of Dimensions: 4
Dimensions and sizes:   [time | 1] x [lev_p | 17] x [latitude | 161] x
[longitude | 141]
Coordinates:
            time: [969705..969705]
            lev_p: [1000..50]
            latitude: [40.. 0]
            longitude: [65..100]
Number Of Attributes: 1
  _FillValue :  -32767

Variable: v
Type: float
Total Size: 1543668 bytes
            385917 values
Number of Dimensions: 4
Dimensions and sizes:   [time | 1] x [lev_p | 17] x [latitude | 161] x
[longitude | 141]
Coordinates:
            time: [969705..969705]
            lev_p: [1000..50]
            latitude: [40.. 0]
            longitude: [65..100]
Number Of Attributes: 1
  _FillValue :  -32767

Variable: w
Type: float
Total Size: 1543668 bytes
            385917 values
Number of Dimensions: 4
Dimensions and sizes:   [time | 1] x [lev_p | 17] x [latitude | 161] x
[longitude | 141]
Coordinates:
            time: [969705..969705]
            lev_p: [1000..50]
            latitude: [40.. 0]
            longitude: [65..100]
Number Of Attributes: 1
  _FillValue :  -32767

My output figure is attached below. Vertical motion is not shaped in proper
form. The sample data used in this plot are for August 2010. Kindly inform
me what I am doing wrong in this case.

Thanking you,
Jenny


On Tue, Feb 27, 2018 at 3:46 AM, Dennis Shea <shea at ucar.edu> wrote:

> Hybrid levels are a form of terrain following vertical coordinate
> formulation.
> Unlike isobaric levels where the vertical levels are the same at every
> grid point,
> hybrid levels differ at each grid point *(j,i) *because they are a
> function of surface pressure
> which varies with time and location. The climate atmospheric model uses
> the following
> formulation:
>
>    * p([t,] k,j,i) = a(k)*p0 + b(k)*ps([t,] k,j,i)        *; t=>time,
> k=>level, j=>latitude; i=longitude
>
> Each calculated pressure level is called the '*m*id-level' (hya*m* and hyb
> *m*).  Each
> '*m*id-level' has an upper and lower boundary called the* i*nterface
> levels (hya*i*, hyb*i*).
>
> http://www.ncl.ucar.edu/Document/Functions/Built-in/pres_hybrid_ccm.shtml
>
> There are other hybrid level formulations so be aware of what is being
> used.
>
> A detailed description with some pictures is here:
>
> https://rda.ucar.edu/datasets/ds627.0/docs/Eta_coordinate/index.html
>
> ====
> You should talk with an advisor about these topics. ncl-talk is really for
> language issues.
>
> Good luck
>
> On Mon, Feb 26, 2018 at 2:23 PM, Adam Phillips <asphilli at ucar.edu> wrote:
>
>> Hi Jenny,
>> With regards to whether the plot looks correct: It looks like you took
>> NCL's vector_5 example script, and modified it slightly.  That script uses
>> the atmos.nc NetCDF file, which according to the global history
>> attribute is an old NCAR-CSM file. The data may be October averages. You're
>> selecting 20E as the longitude to plot, but are basing your weights on
>> 160E. All that being said, it is honestly up to you to investigate the
>> file you are reading in, and to interpret the results. I am not an expert
>> at looking at this kind of diagnostic.
>>
>> With regards to your question about hyam and hybm, that information is
>> given within the NetCDF file, which you can see by doing a ncdump
>> atmos.nc. More information on hyam/hybm can be found by entering either
>> term within the NCL website search engine.
>>
>> If you have any further questions please respond to the ncl-talk email
>> list.
>> Adam
>>
>> On Mon, Feb 26, 2018 at 4:33 AM, Jenny Taylor <jenny63taylor91 at gmail.com>
>> wrote:
>>
>>> Hello,
>>>
>>> I am sending you the script based on which it is made. Kindly find the
>>> script attached below. I have one question on this matter. In the dataset (
>>> atmos.nc) what are those variables named as 'hyam' and 'hybm'?
>>> It is showing as 'hybrid A coefficient at layer midpoints' and 'hybrid B
>>> coefficient at layer midpoints'.
>>>
>>> Kindly also inform me what I am doing wrong as per your observation over
>>> NH.
>>>
>>> Thanks,
>>> Jenny
>>>
>>>
>>> On Mon, Feb 26, 2018 at 12:16 PM, Barry Lynn <barry.h.lynn at gmail.com>
>>> wrote:
>>>
>>>> Hi:
>>>>
>>>> What did you plot?  Is that omega or vertical velocity?  I am wondering
>>>> why the northern hemisphere winds are not convergent with the positive
>>>> vertical motion values like they are in the southern hemisphere.
>>>>
>>>> Barry
>>>>
>>>> On Mon, Feb 26, 2018 at 8:32 AM, Jenny Taylor <
>>>> jenny63taylor91 at gmail.com> wrote:
>>>>
>>>>> Thank you very much, Adam Phillips. I follow your instruction, please
>>>>> look at my attached output figure. Kindly inform me it is in proper shape
>>>>> or not. I think this time it makes some sense.
>>>>>
>>>>> Thanks again,
>>>>> Jenny
>>>>>
>>>>>
>>>>> On Sat, Feb 24, 2018 at 2:14 AM, Adam Phillips <asphilli at ucar.edu>
>>>>> wrote:
>>>>>
>>>>>> Hi Jenny,
>>>>>> You are reading in OMEGA. Note that OMEGA has opposite signs and
>>>>>> different units from the conventional W variable.
>>>>>>
>>>>>> For upward motion:  W is positive and OMEGA is negative
>>>>>> for downward motion: W is negative and OMEGA is positive
>>>>>>
>>>>>> A basic, simple relationship
>>>>>>    omega = -rho*grav*w              ; Pa/s
>>>>>> Hence:
>>>>>>    w          = -omega/(rho*grav)    ; (say) m/s
>>>>>>
>>>>>> Note the sign ....
>>>>>> -----
>>>>>> I believe all you have to do is flip the sign of your W variable:
>>>>>>    W = in->OMEGA
>>>>>>    W = -W
>>>>>> assuming you want upward arrows for upward motion.
>>>>>>
>>>>>> Also note that NCL has a omega_to_w function:
>>>>>> https://www.ncl.ucar.edu/Document/Functions/Contributed/omeg
>>>>>> a_to_w.shtml
>>>>>>
>>>>>> Hope that all makes sense! If not or if you have further questions
>>>>>> please respond to the ncl-talk email list.
>>>>>> Adam
>>>>>>
>>>>>>
>>>>>> On Fri, Feb 23, 2018 at 1:24 AM, Jenny Taylor <
>>>>>> jenny63taylor91 at gmail.com> wrote:
>>>>>>
>>>>>>> Mary,
>>>>>>>
>>>>>>> I was trying with the following attached script. But vertical motion
>>>>>>> near the equator, as well as the 30S and 30N, shows rising motion in the
>>>>>>> output which is not correct in real term. Please kindly look into my script
>>>>>>> and figure and inform me what I am missing or doing any wrong in this.
>>>>>>>
>>>>>>> Data structure is below;
>>>>>>>
>>>>>>> Variable: t
>>>>>>> Type: float
>>>>>>> Total Size: 655360 bytes
>>>>>>>             163840 values
>>>>>>> Number of Dimensions: 4
>>>>>>> Dimensions and sizes:   [time | 1] x [lev_p | 20] x [lat | 64] x
>>>>>>> [lon | 128]
>>>>>>> Coordinates:
>>>>>>>             time: [ 791.. 791]
>>>>>>>             lev_p: [950..50]
>>>>>>>             lat: [-87.8638..87.8638]
>>>>>>>             lon: [ 0..357.1875]
>>>>>>> Number Of Attributes: 1
>>>>>>>   _FillValue :  9.96921e+36
>>>>>>>
>>>>>>> Variable: u
>>>>>>> Type: float
>>>>>>> Total Size: 655360 bytes
>>>>>>>             163840 values
>>>>>>> Number of Dimensions: 4
>>>>>>> Dimensions and sizes:   [time | 1] x [lev_p | 20] x [lat | 64] x
>>>>>>> [lon | 128]
>>>>>>> Coordinates:
>>>>>>>             time: [ 791.. 791]
>>>>>>>             lev_p: [950..50]
>>>>>>>             lat: [-87.8638..87.8638]
>>>>>>>             lon: [ 0..357.1875]
>>>>>>> Number Of Attributes: 1
>>>>>>>   _FillValue :  9.96921e+36
>>>>>>>
>>>>>>> Variable: v
>>>>>>> Type: float
>>>>>>> Total Size: 655360 bytes
>>>>>>>             163840 values
>>>>>>> Number of Dimensions: 4
>>>>>>> Dimensions and sizes:   [time | 1] x [lev_p | 20] x [lat | 64] x
>>>>>>> [lon | 128]
>>>>>>> Coordinates:
>>>>>>>             time: [ 791.. 791]
>>>>>>>             lev_p: [950..50]
>>>>>>>             lat: [-87.8638..87.8638]
>>>>>>>             lon: [ 0..357.1875]
>>>>>>> Number Of Attributes: 1
>>>>>>>   _FillValue :  9.96921e+36
>>>>>>>
>>>>>>> Variable: w
>>>>>>> Type: float
>>>>>>> Total Size: 655360 bytes
>>>>>>>             163840 values
>>>>>>> Number of Dimensions: 4
>>>>>>> Dimensions and sizes:   [time | 1] x [lev_p | 20] x [lat | 64] x
>>>>>>> [lon | 128]
>>>>>>> Coordinates:
>>>>>>>             time: [ 791.. 791]
>>>>>>>             lev_p: [950..50]
>>>>>>>             lat: [-87.8638..87.8638]
>>>>>>>             lon: [ 0..357.1875]
>>>>>>> Number Of Attributes: 1
>>>>>>>   _FillValue :  9.96921e+36
>>>>>>>
>>>>>>>
>>>>>>> Thanking you,
>>>>>>> Jenny
>>>>>>>
>>>>>>>
>>>>>>> On Thu, Feb 22, 2018 at 1:17 AM, Mary Haley <haley at ucar.edu> wrote:
>>>>>>>
>>>>>>>> Jenny,
>>>>>>>>
>>>>>>>> In order to do plot overlays of different variables, you need to
>>>>>>>> use the "overlay" procedure in NCL.
>>>>>>>>
>>>>>>>> ----------------------------------------------------------------
>>>>>>>>
>>>>>>>> The overlay procedure works one of two ways:
>>>>>>>>
>>>>>>>> [1] It overlays data from one plot (called the "overlay" plot) into
>>>>>>>> the data space of another plot (called the "base" plot).
>>>>>>>>
>>>>>>>> The two plots must have intersecting data spaces for this to work.
>>>>>>>> By "data space", I mean the range of the X and Y axes of the two plots must
>>>>>>>> intersect. Otherwise, you will not see the overlay plot at all.
>>>>>>>>
>>>>>>>> For an example, see overlay_8.ncl at:
>>>>>>>>
>>>>>>>> http://www.ncl.ucar.edu/Applications/overlay.shtml#ex8
>>>>>>>>
>>>>>>>> [2] It simply "lines up" the two plots in the same rectangular
>>>>>>>> region and draws them. It's not as common to do overlays this way, because
>>>>>>>> it requires that you do all the work of making sure the two plots are in
>>>>>>>> the same data space.
>>>>>>>>
>>>>>>>> For an example, see overlay_9.ncl at:
>>>>>>>>
>>>>>>>> http://www.ncl.ucar.edu/Applications/overlay.shtml#ex9
>>>>>>>>
>>>>>>>> ----------------------------------------------------------------
>>>>>>>>
>>>>>>>> It doesn't matter whether you are doing contour plots, vector
>>>>>>>> plots, or XY plots: you can overlay any of these on another one using the
>>>>>>>> "overlay" procedure.
>>>>>>>>
>>>>>>>> The "overlay" examples page has several other scripts showing how
>>>>>>>> to use the overlay procedure. In particular, you might want to look at
>>>>>>>> overlay_1.ncl, overlay_6.ncl, and/or wrf_gsn_5.ncl:
>>>>>>>>
>>>>>>>> http://www.ncl.ucar.edu/Applications/overlay.shtml
>>>>>>>>
>>>>>>>> If you continue to have problems, please post back to ncl-talk and
>>>>>>>> include your script and a "printVarSummary" of the data you are trying to
>>>>>>>> plot.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> --Mary
>>>>>>>>
>>>>>>>>
>>>>>>>> On Fri, Feb 16, 2018 at 9:59 AM, Jenny Taylor <
>>>>>>>> jenny63taylor91 at gmail.com> wrote:
>>>>>>>>
>>>>>>>>> Dear NCL Users,
>>>>>>>>>
>>>>>>>>> I am trying to plot vector wind field at different pressure level
>>>>>>>>> for latitute range 40N-40S. I am following the below mention script;
>>>>>>>>> https://www.ncl.ucar.edu/Applications/Scripts/h_lat_7.ncl
>>>>>>>>>
>>>>>>>>> I am trying to overlay vertical motion (rising/sinking) in vector
>>>>>>>>> arrows and zonal wind in color scheme.
>>>>>>>>>
>>>>>>>>> Can anyone suggest me, in that case which funtion I need to use in
>>>>>>>>> it?
>>>>>>>>> Any help will be appriciated.
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>> Jenny
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> 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
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Adam Phillips
>>>>>> Associate Scientist,  Climate and Global Dynamics Laboratory, NCAR
>>>>>> www.cgd.ucar.edu/staff/asphilli/   303-497-1726 <(303)%20497-1726>
>>>>>>
>>>>>> <http://www.cgd.ucar.edu/staff/asphilli>
>>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> ncl-talk mailing list
>>>>> ncl-talk at ucar.edu
>>>>> List instructions, subscriber options, unsubscribe:
>>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Barry H. Lynn, Ph.D
>>>> Senior Lecturer,
>>>> The Institute of the Earth Science,
>>>> The Hebrew University of Jerusalem,
>>>> Givat Ram, Jerusalem 91904, Israel
>>>> Tel: 972 547 231 170
>>>> Fax: (972)-25662581
>>>>
>>>> C.E.O, Weather It Is, LTD
>>>> Weather and Climate Focus
>>>> http://weather-it-is.com
>>>> Jerusalem, Israel
>>>> Local: 02 930 9525
>>>> Cell: 054 7 231 170
>>>> Int-IS: x972 2 930 9525
>>>> US 914 432 3108 <(914)%20432-3108>
>>>>
>>>
>>>
>>
>>
>> --
>> Adam Phillips
>> Associate Scientist,  Climate and Global Dynamics Laboratory, NCAR
>> www.cgd.ucar.edu/staff/asphilli/   303-497-1726 <(303)%20497-1726>
>>
>> <http://www.cgd.ucar.edu/staff/asphilli>
>>
>> _______________________________________________
>> 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/20180227/7671ab9f/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ERA-Interim_coordvars.nc
Type: application/x-netcdf
Size: 9516 bytes
Desc: not available
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20180227/7671ab9f/attachment-0001.nc>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Era.ncl
Type: application/octet-stream
Size: 3929 bytes
Desc: not available
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20180227/7671ab9f/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: motion.png
Type: image/png
Size: 172803 bytes
Desc: not available
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20180227/7671ab9f/attachment-0001.png>


More information about the ncl-talk mailing list