1 |
gforget |
1.1 |
function []=profiles_prep_test_profiler2(); |
2 |
|
|
|
3 |
|
|
global rep_out filename_out; |
4 |
|
|
global t_std s_std t_test s_test t_w s_w t_equi s_equi; |
5 |
|
|
global ymd hms pnum pnum_txt lon lat direc dmod ilon ilat imonth; |
6 |
|
|
global fill_value_output initChkFile; |
7 |
|
|
|
8 |
|
|
%general remarks : |
9 |
|
|
% -most of the decisions were taken by looking at deep values of S, |
10 |
|
|
% expected not to vary strongly, but some suggestivity remains. |
11 |
|
|
% -the point in having these tests is that they will not be affected |
12 |
|
|
% by evolutions of the climatology and weights (compare with test_cost). |
13 |
|
|
% |
14 |
|
|
%additional remarks : |
15 |
|
|
% -4900221 : first profiles might be ok. |
16 |
|
|
% -the biases identified could be double checked. |
17 |
|
|
% -51886 : deep S is strange and detected by the cost. |
18 |
|
|
% -4900388 : not fully understood. |
19 |
|
|
% -15855 : this number is associated with profiles all over the globe. |
20 |
|
|
% -39037 : not fully understood. |
21 |
|
|
% -2900335 : irregular last profiles. |
22 |
|
|
|
23 |
|
|
|
24 |
|
|
%for the test of the date : |
25 |
|
|
tmp_year=floor(ymd*1e-4); |
26 |
|
|
tmp_month=floor((ymd-tmp_year*1e4)*1e-2); |
27 |
|
|
tmp_day=ymd-tmp_year*1e4-tmp_month*1e2; |
28 |
|
|
tmp_jul=jul_0h([tmp_year tmp_month tmp_day 0 0 0]); |
29 |
|
|
|
30 |
|
|
% pesky profiler 15855 - this shows up multiple times in PACIFIC files |
31 |
|
|
% lat=-5.8940 lon=6.978 ydm=19970820 (location is ATLANTIC) |
32 |
|
|
tmp0=jul_0h([1997 8 20 0 0 0]); |
33 |
|
|
if (pnum==15855 )&(tmp_jul==tmp0);s_test(:)=3;t_test(:)=3;end; |
34 |
|
|
%exemple of a dying profiler : |
35 |
|
|
tmp0=jul_0h([2002 4 1 0 0 0]); |
36 |
|
|
if (pnum==29011)&(tmp_jul>tmp0); s_test(:)=3; end; |
37 |
|
|
%exemple of a strong drift : |
38 |
|
|
if (pnum==5900198); s_test(:)=3; end; |
39 |
|
|
%a profiler that says "30" : |
40 |
|
|
if (pnum==21851); s_test(:)=3; end; |
41 |
|
|
%two profilers that say "33.5" : |
42 |
|
|
if (pnum==2900236); s_test(:)=3; end; |
43 |
|
|
if (pnum==2900237); s_test(:)=3; end; |
44 |
|
|
%instrument flagged after a couple of profiles. |
45 |
|
|
if (pnum==5900853); s_test(:)=3; end; |
46 |
|
|
if (pnum==4900221); s_test(:)=3; end; |
47 |
|
|
%exemple of a profiler that stays silent for some time... and then provides crap. |
48 |
|
|
tmp0=jul_0h([2003 1 1 0 0 0]); |
49 |
|
|
if (pnum==1900141)&(tmp_jul>tmp0); s_test(:)=3; end; |
50 |
|
|
tmp0=jul_0h([2004 10 1 0 0 0]); |
51 |
|
|
if (pnum==1900141)&(tmp_jul>tmp0); t_test(:)=3; end; |
52 |
|
|
%exemple of a profiler whose last unflagged profiles are boubtful : |
53 |
|
|
tmp0=jul_0h([2003 12 1 0 0 0]); |
54 |
|
|
if (pnum==5900382)&(tmp_jul>tmp0); s_test(:)=3; t_test(:)=3; end; |
55 |
|
|
|
56 |
|
|
|
57 |
|
|
%profilers that drift : |
58 |
|
|
tmp0=jul_0h([2001 06 1 0 0 0]); |
59 |
|
|
if (pnum==29036)&(tmp_jul>tmp0); s_test(:)=3; end; |
60 |
|
|
tmp0=jul_0h([2004 6 16 0 0 0]); |
61 |
|
|
if (pnum==4900388)&(tmp_jul>tmp0); s_test(:)=3; t_test(:)=3;end; |
62 |
|
|
%tmp0=jul_0h([2004 2 1 0 0 0]); |
63 |
|
|
%if (pnum==1900067)&(tmp_jul>tmp0); s_test(:)=3; end; |
64 |
|
|
tmp0=jul_0h([2002 5 1 0 0 0]); |
65 |
|
|
if (pnum==3900137)&(tmp_jul>tmp0); s_test(:)=3; end; |
66 |
|
|
tmp0=jul_0h([2002 8 1 0 0 0]); |
67 |
|
|
if (pnum==3900132)&(tmp_jul>tmp0); s_test(:)=3; end; |
68 |
|
|
|
69 |
|
|
%tmp0=jul_0h([]); |
70 |
|
|
%if (pnum==)&(tmp_jul>tmp0); s_test(:)=3; end; |
71 |
|
|
|
72 |
|
|
|
73 |
|
|
%profilers that stay silent for some time... and then provide crap. |
74 |
|
|
%tmp0=jul_0h([2003 11 1 0 0 0]); |
75 |
|
|
%if (pnum==3900116)&(tmp_jul>tmp0); s_test(:)=3; t_test(:)=3; end; |
76 |
|
|
tmp0=jul_0h([2004 6 1 0 0 0]); |
77 |
|
|
if (pnum==5900311)&(tmp_jul>tmp0); s_test(:)=3; t_test(:)=3; end; |
78 |
|
|
tmp0=jul_0h([2004 9 1 0 0 0]); |
79 |
|
|
if (pnum==1900306)&(tmp_jul>tmp0); s_test(:)=3; t_test(:)=3; end; |
80 |
|
|
%tmp0=jul_0h([2004 2 1 0 0 0]); |
81 |
|
|
%if (pnum==69027)&(tmp_jul>tmp0); s_test(:)=3; end; |
82 |
|
|
tmp0=jul_0h([2001 11 27 0 0 0]); |
83 |
|
|
if (pnum==6900197)&(tmp_jul>tmp0); s_test(:)=3; end; %t_test(:)=3; end; |
84 |
|
|
|
85 |
|
|
|
86 |
|
|
%profilers whose last unflagged profiles are boubtful : |
87 |
|
|
tmp0=jul_0h([2004 11 1 0 0 0]); |
88 |
|
|
if (pnum==5900391)&(tmp_jul>tmp0); s_test(:)=3; t_test(:)=3; end; |
89 |
|
|
tmp0=jul_0h([2004 8 10 0 0 0]); |
90 |
|
|
if (pnum==4900391)&(tmp_jul>tmp0); s_test(:)=3; t_test(:)=3; end; |
91 |
|
|
tmp0=jul_0h([2005 3 1 0 0 0]); |
92 |
|
|
if (pnum==1900203)&(tmp_jul>tmp0); s_test(:)=3; end; |
93 |
|
|
tmp0=jul_0h([2004 12 15 0 0 0]); |
94 |
|
|
if (pnum==3900149)&(tmp_jul>tmp0); s_test(:)=3; end; |
95 |
|
|
tmp0=jul_0h([2004 8 1 0 0 0]); |
96 |
|
|
if (pnum==1900278)&(tmp_jul>tmp0); s_test(:)=3; t_test(:)=3; end; |
97 |
|
|
|
98 |
|
|
|
99 |
|
|
%profilers judged biased : typically S very different from climatology at 1500-2000m |
100 |
|
|
if (pnum==1900425); s_test(:)=3; end; |
101 |
|
|
if (pnum==1900424); s_test(:)=3; end; |
102 |
|
|
if (pnum==1900447); s_test(:)=3; end; |
103 |
|
|
tmp0=jul_0h([2003 6 1 0 0 0]); |
104 |
|
|
if (pnum==5900180)&(tmp_jul>tmp0); s_test(:)=3; end; |
105 |
|
|
%if (pnum==69027); s_test(:)=3; end; |
106 |
|
|
%...and more anecdotic : |
107 |
|
|
if (pnum==1900208); s_test(:)=3; end; |
108 |
|
|
if (pnum==1900498); s_test(:)=3; end; |
109 |
|
|
if (pnum==1900139); s_test(:)=3; end; |
110 |
|
|
|
111 |
|
|
|
112 |
|
|
%particular case : profiler with way too large S at depth... |
113 |
|
|
% and the opposite around 300m (!?) |
114 |
|
|
if (pnum==5900319); s_test(:)=3; end; |
115 |
|
|
|
116 |
|
|
|