5 |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
6 |
% Parse table file % |
% Parse table file % |
7 |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
8 |
|
ShiftData = 0; |
9 |
format = 'NONSEQUENTIAL'; |
format = 'NONSEQUENTIAL'; |
10 |
|
|
11 |
tablfile = [dad,'/',Grads,'.tabl']; |
tablfile = [dad,'/',Grads,'.tabl']; |
27 |
inc = str2num(tokens{5}); |
inc = str2num(tokens{5}); |
28 |
xax = [ini:inc:ini+(num-1)*inc]; |
xax = [ini:inc:ini+(num-1)*inc]; |
29 |
if min(xax) >= 0 && max(xax) > 180 |
if min(xax) >= 0 && max(xax) > 180 |
30 |
xax = xax - 180; |
ShiftData = 1; |
31 |
end |
end |
32 |
nx = length(xax); |
nx = length(xax); |
33 |
end |
end |
147 |
end |
end |
148 |
data = reshape(data,[nx,ny,nz,nv,nt]); |
data = reshape(data,[nx,ny,nz,nv,nt]); |
149 |
data = squeeze(data(:,:,:,ivar,:)); |
data = squeeze(data(:,:,:,ivar,:)); |
|
data( abs((data-undef)/undef) < tol ) = NaN; |
|
150 |
|
data( abs((data-undef)/undef) < tol ) = NaN; |
151 |
|
if ShiftData |
152 |
|
indexWestHemi = xax>=180; |
153 |
|
indexEastHemi = xax<180; |
154 |
|
data = cat(1,data(indexWestHemi,:,:),data(indexEastHemi,:,:)); |
155 |
|
xax = cat(2,xax(indexWestHemi)-360,xax(indexEastHemi)); |
156 |
|
end |