1 | |
---|
2 | |
---|
3 | let var_obs_init=($02) |
---|
4 | let var_obs=var_obs_init[g=my_time_counter@asn] |
---|
5 | |
---|
6 | let flag_ref=($04) |
---|
7 | |
---|
8 | let var_model_init=($01) |
---|
9 | let id_site="($09)" |
---|
10 | |
---|
11 | |
---|
12 | let norm_std=(Q_VAR^0.5)/(P_VAR^0.5) |
---|
13 | |
---|
14 | |
---|
15 | let var_model_year=var_model[gt=yearly@ave] |
---|
16 | let var_model_month=var_model[gt=monthly@ave] |
---|
17 | let var_model_day=var_model[gt=daily@ave] |
---|
18 | let var_model_hour=var_model[gt=hourly@ave] |
---|
19 | let var_model_year_max=var_model_year[gt=monthly@max] |
---|
20 | let var_model_year_month=if(first_year eq last_year) then var_model_year_max[t=@fnr] else var_model_year[gt=monthly@nrst] |
---|
21 | let var_model_month_day=var_model_month[gt=daily@nrst] |
---|
22 | let var_model_day_hour=var_model_day[gt=hourly@nrst] |
---|
23 | let var_model_decomp_default=var_model |
---|
24 | let var_model_decomp_hour=var_model_hour-var_model_day_hour |
---|
25 | let var_model_decomp_day=var_model_day-var_model_month_day |
---|
26 | let var_model_decomp_month=var_model_month-var_model_year_month |
---|
27 | let var_model_decomp_year=var_model_year-var_model_year[l=@ave] |
---|
28 | |
---|
29 | let var_obs_year=var_obs[gt=yearly@ave] |
---|
30 | let var_obs_month=var_obs[gt=monthly@ave] |
---|
31 | let var_obs_day=var_obs[gt=daily@ave] |
---|
32 | let var_obs_hour=var_obs[gt=hourly@ave] |
---|
33 | let var_obs_year_max=var_obs_year[gt=monthly@max] |
---|
34 | let var_obs_year_month=if(first_year eq last_year) then var_obs_year_max[t=@fnr] else var_obs_year[gt=monthly@nrst] |
---|
35 | let var_obs_month_day=var_obs_month[gt=daily@nrst] |
---|
36 | let var_obs_day_hour=var_obs_day[gt=hourly@nrst] |
---|
37 | let var_obs_decomp_default=var_obs |
---|
38 | let var_obs_decomp_hour=var_obs_hour-var_obs_day_hour |
---|
39 | let var_obs_decomp_day=var_obs_day-var_obs_month_day |
---|
40 | let var_obs_decomp_month=var_obs_month-var_obs_year_month |
---|
41 | let var_obs_decomp_year=var_obs_year-var_obs_year[l=@ave] |
---|
42 | |
---|
43 | |
---|
44 | let d_eval=1 |
---|
45 | let d_ref=if flag_ref eq 1 then 3 else 1 |
---|
46 | let d_obs=2 |
---|
47 | |
---|
48 | let bias_hour=tsequence(abs(var_obs_day_hour[d=`d_obs`]-var_model_day_hour[k=@sum])) |
---|
49 | let bias_day=tsequence(abs(var_obs_month_day[d=`d_obs`]-var_model_month_day[k=@sum])) |
---|
50 | let bias_month=tsequence(abs(var_obs_year_month[d=`d_obs`]-var_model_year_month[k=@sum])) |
---|
51 | let bias_year=tsequence(abs(var_obs_year[l=@ave,d=`d_obs`]-var_model_year[l=@ave,k=@sum])) |
---|
52 | |
---|
53 | |
---|
54 | |
---|
55 | use/REGULART "($10)" |
---|
56 | use/REGULART "($11)" |
---|
57 | let file_ref=if(flag_ref eq 1) then 12 else 10 |
---|
58 | use/REGULART "$`file_ref`" |
---|
59 | |
---|
60 | |
---|
61 | define grid/like=var_model_init[d=`d_eval`,k=1] my_time_counter |
---|
62 | let var_model=if var_obs[d=`d_obs`] NE -9999. then var_model_init[g=my_time_counter@asn] else (-1e34) |
---|
63 | let mytime=t[gt=my_time_counter] |
---|
64 | let first_year= `tax_datestring(mytime[l=@min],mytime,"years")` |
---|
65 | let last_year= `tax_datestring(mytime[l=@max],mytime,"years")` |
---|
66 | define axis/t="1-JAN-`first_year` 00:00":"1-JAN-`last_year+1` 00:00":1/units=hour/cal=gregorian/edges hourly |
---|
67 | define axis/t="1-JAN-`first_year` 00:00":"1-JAN-`last_year+1` 00:00":1/units=day/cal=gregorian/edges daily |
---|
68 | go def_monthaxis_days.jnl gregorian first_year last_year monthly |
---|
69 | let nbyears=last_year-first_year+1 |
---|
70 | let indices_year = L[L=1:`1+nbyears`] |
---|
71 | let year = first_year + INT((indices_year-1)) |
---|
72 | define axis/units="days"/T0="01-JAN-`first_year`"/edges/cal="GREGORIAN" yearly = DAYS1900(year,1,1)-DAYS1900(`first_year`,1,1) |
---|
73 | let p=tsequence(var_obs_decomp_($03)[d=`d_obs`]) |
---|
74 | let q=tsequence(var_model_decomp_($03)[k=@sum]) |
---|
75 | go variance |
---|
76 | let correl_eval=CORREL[d=`d_eval`] |
---|
77 | let correl_ref=CORREL[d=`d_ref`] |
---|
78 | |
---|
79 | list/file=stat_($06)_($07)_($08)_($05)_($03).csv/norowlab/append/nohead id_site,norm_std[d=`d_eval`],`correl_eval,p=7`,bias_($03)[d=`d_eval`,l=@ave],norm_std[d=`d_ref`],`correl_ref,p=7`,bias_($03)[d=`d_ref`,l=@ave] |
---|
80 | |
---|
81 | |
---|
82 | CANCEL DATA/ALL |
---|