1 |
mlosch |
1.1 |
function []=check3dmask(T) |
2 |
|
|
% check3dmask(datafile) |
3 |
|
|
% |
4 |
|
|
% Load 3D data in "datafile", calculate a missing |
5 |
|
|
% value mask and compare to pmask.bin. |
6 |
|
|
% They should always be the same!!! |
7 |
|
|
% |
8 |
|
|
% Created 11/11/99 by adcroft@mit.edu |
9 |
|
|
% Modified by |
10 |
|
|
% Maintained by adcroft@mit.edu, abiastoch@ucsd.edu |
11 |
|
|
|
12 |
|
|
load VGRID.mat nzc |
13 |
|
|
load MASKS |
14 |
|
|
|
15 |
|
|
Tmsk=1+0*T; |
16 |
|
|
Tmsk( find(T==0) )=0; |
17 |
|
|
Tmsk( find(isnan(T)) )=0; |
18 |
|
|
|
19 |
|
|
oops=0; |
20 |
|
|
for k=1:nzc |
21 |
|
|
nmis=prod(size(find(msk(:,:,k)~=Tmsk(:,:,k)))); |
22 |
|
|
ndil=prod(size(find(msk(:,:,k)==0&Tmsk(:,:,k)==1))); |
23 |
|
|
nwnd=prod(size(find(msk(:,:,k)==1&Tmsk(:,:,k)==0))); |
24 |
|
|
if nmis~=0 | ndil~=0 | nwnd~=0 |
25 |
|
|
disp(... |
26 |
|
|
sprintf('Lev k=%3i: Mis = %i, Data/land = %i, Water/no data = %i, Unacc = %i',... |
27 |
|
|
k,nmis,ndil,nwnd,nmis-ndil-nwnd )); |
28 |
|
|
oops=1; |
29 |
|
|
end |
30 |
|
|
end |
31 |
|
|
if oops |
32 |
|
|
disp( sprintf('file = %s, mask-file = %s',datafile,pmaskfile) ); |
33 |
|
|
error('Some masks were inconsistent!') |
34 |
|
|
end |