On 05/17/2010 12:30 PM, u.utku.turuncoglu@be.itu.edu.tr wrote:
> Hi,
>
> I try to plot a Taylor diagram to compare the different model simulations
> with observations. So, i have some basic question about the procedure;
Hi Ufuk,
[1] No.
[2] See Example 7 at
http://www.ncl.ucar.edu/Applications/taylor.shtml
>
> 1 - I am using monthly mean precipitation rate field (mm/day) and surface
> temperature that is averaged over specified region (i will plot them in
> different Taylor diagrams). Is it necessary to interpolate all model
> results and observation into a common grid before calculating variances
> and cross correlation?
It is easy to compute the variances on the original grids. However, the
correlations requires the same grid. Hence, it is best to interpolate
to a common grid. This grid is commonly the reference grid configuration
but that is up to you.
>
> 2 - As you already know that the Taylor diagram NCL function basically
> expects the ratio of the standardized variances and cross correlation
> between model and observation. To calculate the variance, i am using
> "variance" function but i think i have to standardize the fields before
> applying variance function. Is it correct?
vcntl => reference or control variable
vtest => model variable
If the region being tested is 'large' then a weight variable [wgt]
should be created. If your region is 'small', you can ignore the
weight [wgt=1]. Given that you are looking at a very small area, you
can ignore any weighting. Also you have masked out all points outside
your area of interest.
var_cntl = variance(vcntl)
var_test = variance(vtest)
ratio = var_test/var_cntl
By definition, the correlation is already standardized [-1 to +1]
So, if var_test and var_cntl are on the same grid and you are not
applying weighting then the pattern correlation is
cc = escorc( ndtooned(var_cntl), ndtooned(var_test) )
===
For a 'large' area, you will have to apply weighting [same grids]
wgt = conform(vcntl, wt , rank-2)
;;wgt = mask(wgt, lsflag.eq.0, False) ; if desired
;;wgt = mask(wgt, lsflag.eq.1, False)
; temporary variables
sumw = sum(wgt)
sumwc = sum(wgt*vcntl)
sumwt = sum(wgt*vtest)
; wgted areal mean
wmean_cntl = sumwc/sumw
wmean_test = sumwt/sumw
; wgted areal variance
wvar_cntl = sum(wgt*(vcntl-wmean_cntl)^2)/sumw
wvar_test = sum(wgt*(vtest-wmean_test)^2)/sumw
; wgted correlation coef
wcc = (sum(wgt*vcntl*vtest) - sumwc*sumwt/sumw )/ \
((sum(wgt*vcntl^2) - sumwc^2/sumw) * \
(sum(wgt*vtest^2) -sumwt^2/sumw))^0.5
=======
Good luck
D
If yes, can i use the
> "dim_standardize" to do that? The current structure of my scripts seems
> like,
>
> model1_variance = variance(model1)
> obs_variance = variance(obs)
>
> cc = escorc(obs, model1)
> ratio = model1_variance/obs_variance
>
> but i think that it must be,
>
> model1_variance = variance(dim_standardize (model1))
> obs_variance = variance(dim_standardize (obs))
>
> cc = escorc(obs, model1)
> ratio = model1_variance/obs_variance
>
> PS: you can find my taylor NCL scripts as attachment.
>
> Any suggestions can be helpful.
> Thanks,
>
> --ufuk
>
>
>
> _______________________________________________
> ncl-talk mailing list
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
-- ====================================================== Dennis J. Shea tel: 303-497-1361 | P.O. Box 3000 fax: 303-497-1333 | Climate Analysis Section | Climate & Global Dynamics Div. | National Center for Atmospheric Research | Boulder, CO 80307 | USA email: shea 'at' ucar.edu | ====================================================== _______________________________________________ ncl-talk mailing list List instructions, subscriber options, unsubscribe: http://mailman.ucar.edu/mailman/listinfo/ncl-talkReceived on Mon May 17 16:44:39 2010
This archive was generated by hypermail 2.1.8 : Wed May 26 2010 - 10:39:13 MDT