/[MITgcm]/MITgcm_contrib/gael/matlab_class/gcmfaces_convert/convert2pcol_cube.m
ViewVC logotype

Annotation of /MITgcm_contrib/gael/matlab_class/gcmfaces_convert/convert2pcol_cube.m

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (hide annotations) (download)
Sun May 2 21:10:33 2010 UTC (15 years, 2 months ago) by gforget
Branch: MAIN
migration of conversion routines to gcmfaces_convert

1 gforget 1.1 function [X,Y,FLD]=convert2pcol_cube(x,y,fld,varargin);
2    
3     if nargin>3; k3=varargin{1}; else; k3=1; end;
4     if nargin>4; k4=varargin{2}; else; k4=1; end;
5    
6     %ASSEMBLE SIDE FACES:
7     %----------------------
8     X=[x{1};x{2};sym_g(x{4},7,0); sym_g(x{5},7,0)];
9     Y=[y{1};y{2};sym_g(y{4},7,0); sym_g(y{5},7,0)];
10     FLD=[fld{1}(:,:,k3,k4);fld{2}(:,:,k3,k4);sym_g(fld{4}(:,:,k3,k4),7,0);sym_g(fld{5}(:,:,k3,k4),7,0)];
11    
12     %ADD NORTH FACE:
13     %---------------
14     pp=x{3};
15     M1=pp; M1(M1>M1(1,1))=NaN; M1(M1<M1(1,end))=NaN; M1(~isnan(M1))=1;
16     %M2=pp; M2(M2>M2(end,1))=NaN; M2(M2<M2(1,1))=NaN; M2(~isnan(M2))=1;
17     M2=pp; M2(pp<0)=NaN; M2(pp>=0)=1;
18     M3=pp; M3(M3<M3(end,1)&M3>M3(end,end))=NaN; M3(~isnan(M3))=1;
19     %M4=pp; M4(M4>M4(1,end))=NaN; M4(M4<M4(end,end))=NaN; M4(~isnan(M4))=1;
20     M4=pp; M4(pp>=0)=NaN; M4(pp<0)=1;
21    
22     pp=x{3}; Xp=[sym_g(pp.*M1,5,0);pp.*M2;sym_g(pp.*M3,7,0);sym_g(pp.*M4,6,0)]; X=[X Xp];
23     pp=y{3}; Yp=[sym_g(pp.*M1,5,0);pp.*M2;sym_g(pp.*M3,7,0);sym_g(pp.*M4,6,0)]; Y=[Y Yp];
24     pp=fld{3}(:,:,k3,k4); FLDp=[sym_g(pp.*M1,5,0);pp.*M2;sym_g(pp.*M3,7,0);sym_g(pp.*M4,6,0)]; FLD=[FLD FLDp];
25    
26     %ADD SOUTH FACE:
27     %--------------
28     pp=x{6};
29     M1=pp; M1(M1>M1(end,end))=NaN; M1(M1<M1(1,end))=NaN; M1(~isnan(M1))=1;
30     %M2=pp; M2(M2>M2(end,1))=NaN; M2(M2<M2(end,end))=NaN; M2(~isnan(M2))=1;
31     M2=pp; M2(pp<0)=NaN; M2(pp>=0)=1;
32     M3=pp; M3(M3<M3(end,1)&M3>M3(1,1))=NaN; M3(~isnan(M3))=1;
33     %M4=pp; M4(M4>M4(1,end))=NaN; M4(M4<M4(1,1))=NaN; M4(~isnan(M4))=1;
34     M4=pp; M4(pp>=0)=NaN; M4(pp<0)=1;
35    
36     pp=x{6}; Xp=[pp.*M1;sym_g(pp.*M2,5,0);sym_g(pp.*M3,6,0);sym_g(pp.*M4,7,0)]; X=[Xp X];
37     pp=y{6}; Yp=[pp.*M1;sym_g(pp.*M2,5,0);sym_g(pp.*M3,6,0);sym_g(pp.*M4,7,0)]; Y=[Yp Y];
38     pp=fld{6}(:,:,k3,k4); FLDp=[pp.*M1;sym_g(pp.*M2,5,0);sym_g(pp.*M3,6,0);sym_g(pp.*M4,7,0)]; FLD=[FLDp FLD];
39    
40    
41     %FIX DATE CHANGE LINE IN LATLON PART:
42     %--------------------------------------
43     %X=circshift(X,[-240 0]); Y=circshift(Y,[-240 0]); FLD=circshift(FLD,[-240 0]);
44     X=circshift(X,[+48 0]); Y=circshift(Y,[+48 0]); FLD=circshift(FLD,[+48 0]);
45    

  ViewVC Help
Powered by ViewVC 1.1.22