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

Annotation of /MITgcm_contrib/gael/matlab_class/gcmfaces_convert/convert2array_llpc.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, 3 months ago) by gforget
Branch: MAIN
migration of conversion routines to gcmfaces_convert

1 gforget 1.1 function [FLD]=convert2array_llpc(fld,varargin);
2    
3     if isa(fld,'gcmfaces'); do_gcmfaces2array=1; else; do_gcmfaces2array=0; end;
4    
5     if do_gcmfaces2array;
6     n3=max(size(fld.f1,3),1); n4=max(size(fld.f1,4),1);
7     n1=size(fld.f1,1)*4; n2=size(fld.f1,2);
8     FLD=squeeze(zeros(n1,n2,n3,n4));
9     else;
10     n3=max(size(fld,3),1); n4=max(size(fld,4),1);
11     FLD=NaN*varargin{1};
12     for k3=1:n3; for k4=1:n4; for iFace=1:FLD.nFaces;
13     iF=num2str(iFace); eval(['FLD.f' iF '(:,:,k3,k4)=FLD.f' iF '(:,:,1,1);']);
14     end; end; end;
15     end;
16    
17     for k3=1:n3; for k4=1:n4;
18    
19     if do_gcmfaces2array;
20     %ASSEMBLE SIDE FACES:
21     %----------------------
22     FLD1=[fld.f1(:,:,k3,k4);fld.f2(:,:,k3,k4);sym_g(fld.f3(:,:,k3,k4),7,0);sym_g(fld.f4(:,:,k3,k4),7,0)];
23     %store:
24     %------
25     FLD(:,:,k3,k4)=FLD1;
26     else;
27     n1=size(FLD.f1,1); n2=size(FLD.f1,2);
28     FLD.f1(:,:,k3,k4)=fld(1:n1,1:n2,k3,k4);
29     FLD.f2(:,:,k3,k4)=fld(n1+[1:n1],1:n2,k3,k4);
30     FLD.f3(:,:,k3,k4)=sym_g(fld(n1*2+[1:n1],1:n2,k3,k4),5,0);
31     FLD.f4(:,:,k3,k4)=sym_g(fld(n1*3+[1:n1],1:n2,k3,k4),5,0);
32     end;
33    
34     end; end;
35    

  ViewVC Help
Powered by ViewVC 1.1.22