[gradsusr] Using maskout function to apply TWO masks

Andrew Friedman andfried at berkeley.edu
Fri Jul 4 02:35:38 EDT 2014


Hi Gargi,
Can you please post more specific information about the data you’re working with?
Andrew

On Jul 3, 2014, at 9:51 PM, Gargi Akhoury <gargiakhoury at bitmesra.ac.in> wrote:

> 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
> 
> 
> 
> _______________________________________________
> gradsusr mailing list
> gradsusr at gradsusr.org
> http://gradsusr.org/mailman/listinfo/gradsusr




More information about the gradsusr mailing list