[gradsusr] Using maskout function to apply TWO masks

Gargi Akhoury gargiakhoury at bitmesra.ac.in
Fri Jul 4 00:51:25 EDT 2014


how to define temperature in degree cel. in gs file or ctl file??


On Fri, Jul 4, 2014 at 9:52 AM, Gargi Akhoury <gargiakhoury at bitmesra.ac.in>
wrote:

> I am trying to plot 65 years monthly temperature data (climatology data),
> but m getting same plot for every month.what should I do?
>
>
> On Thu, Jul 3, 2014 at 10:10 PM, Roberto Mera <RMera at ucsusa.org> wrote:
>
>>  Yes! that worked! Thanks!
>>  ------------------------------
>> *From:* gradsusr-bounces at gradsusr.org [gradsusr-bounces at gradsusr.org] on
>> behalf of Jeff Duda [jeffduda319 at gmail.com]
>> *Sent:* Thursday, July 03, 2014 12:35 PM
>>
>> *To:* GrADS Users Forum
>> *Subject:* Re: [gradsusr] Using maskout function to apply TWO masks
>>
>>   I just used 'hgtsfc' as an example of the topography field.  Most
>> models have this field.  For your purposes, change it to 'ht'.  Also, swap
>> the sign of the mask field to get the logical negation to become the mask.
>> Remember, the maskout function masks areas where the mask field is
>> non-positive.  So if you want a part of a field to remain after masking,
>> make sure it's in a region where the mask will be positive.  If a point is
>> at 1000 m alititude, you want the mask to be nonpositive at that point, so
>> something involving 1000, 700, and subtraction needs to result in a
>> negative value.  700 - 1000 would do that, so that's 700 - ht for your mask.
>>
>>  Jeff Duda
>>
>>
>> On Thu, Jul 3, 2014 at 11:16 AM, Roberto Mera <RMera at ucsusa.org> wrote:
>>
>>>  Jeff,
>>>
>>>  Thanks for the help. I'm a little confused about this part:
>>>
>>>  maskout(temperature,hgtsfc+700 - height)
>>>
>>>  What is hgtsfc. Is that a defined variable?
>>>
>>>  The temperature and topography variables are in different files so all
>>> I need is to create a mask about 700m. My ocean mask works.
>>>
>>>  The name of the variable in the topography file is ht. I was trying
>>> this:
>>>
>>>  msk700=(ht/ht,ht-700) but it masked out everything below 700 m.
>>>
>>>  Thoughts?
>>>
>>>  Robert
>>>  ------------------------------
>>> *From:* gradsusr-bounces at gradsusr.org [gradsusr-bounces at gradsusr.org]
>>> on behalf of Jeff Duda [jeffduda319 at gmail.com]
>>> *Sent:* Tuesday, June 03, 2014 5:09 PM
>>> *To:* GrADS Users Forum
>>> *Subject:* Re: [gradsusr] Using maskout function to apply TWO masks
>>>
>>>     The const() and maskout() are powerful functions suited just for
>>> this purpose.
>>>
>>>  'define oceanmaskedtemperature = maskout(temperature,landseamask)' will
>>> get your your ocean mask
>>>  'set lev 1000 900'
>>>  'define 700mmaskedtemperature = maskout(temperature,hgtsfc+700 -
>>> height)' will maskout the grid above 700 m.  Note you need to define this
>>> in a 3D environment, hence the 'set lev' command preceeding it. Finally,
>>>  'd 0.5*(oceanmaskedtemperature + 700mmaskedtemperature)' will give you
>>> the field you seek.  Adding grids that have undefined values is the same
>>> thing as taking the intersection of sets.  The 0.5 factor is used because
>>> the temperature values will get added together where both fields have
>>> non-missing values.  But those values will be the same, so divide by 2 to
>>> restore the original values.
>>>
>>> Jeff Duda
>>>
>>>
>>> On Tue, Jun 3, 2014 at 3:14 PM, Roberto Mera <RMera at ucsusa.org> wrote:
>>>
>>>>  Grads crew:
>>>>
>>>>
>>>>
>>>> I would like to get the area average for the temperature for the
>>>> California Central Valley. I would also like to mask out the ocean so I
>>>> don’t get those temperatures when I take the average. Right now I have a
>>>> script that masks out the ocean and I have also adapted it for other
>>>> purposes.
>>>>
>>>>
>>>>
>>>> My question is this: How do I apply two masks?
>>>>
>>>>
>>>>
>>>> I want to mask out the ocean and also, say >700 m altitude.
>>>>
>>>>
>>>>
>>>> Right now my script loops through ensemble members and calculates the
>>>> time average within each ensemble member and it gives me a number for the
>>>> area average:
>>>>
>>>>
>>>>
>>>> *mskgrd=maskout(ht/ht,ht-0.1) ****this masks out the ocean
>>>>
>>>> count = 1
>>>>
>>>> while (count < 18)
>>>>
>>>> 'set e 'count
>>>>
>>>>
>>>> 'areal=aave(maskout(ave(field88,t=1,t=6),mskgrd(t=1)),x=147,x=250,y=94.1815,y=182.057)'
>>>>
>>>> 'd areal'
>>>>
>>>> areal=subwrd(result,4)
>>>>
>>>> say areal
>>>>
>>>> if (rc != 0) ; break ; endif
>>>>
>>>> count = count +1
>>>>
>>>> endwhile
>>>>
>>>>
>>>>
>>>> Robert
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> gradsusr mailing list
>>>> gradsusr at gradsusr.org
>>>> http://gradsusr.org/mailman/listinfo/gradsusr
>>>>
>>>>
>>>
>>>
>>> --
>>> Jeff Duda
>>> Graduate research assistant
>>> University of Oklahoma School of Meteorology
>>> Center for Analysis and Prediction of Storms
>>>
>>> _______________________________________________
>>> gradsusr mailing list
>>> gradsusr at gradsusr.org
>>> http://gradsusr.org/mailman/listinfo/gradsusr
>>>
>>>
>>
>>
>> --
>> Jeff Duda
>> Graduate research assistant
>> University of Oklahoma School of Meteorology
>> Center for Analysis and Prediction of Storms
>>
>> _______________________________________________
>> gradsusr mailing list
>> gradsusr at gradsusr.org
>> http://gradsusr.org/mailman/listinfo/gradsusr
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://gradsusr.org/pipermail/gradsusr/attachments/20140704/a0263df0/attachment.html 


More information about the gradsusr mailing list