/[MITgcm]/MITgcm_contrib/osse/utils/cart2cyl.m
ViewVC logotype

Diff of /MITgcm_contrib/osse/utils/cart2cyl.m

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

revision 1.2 by afe, Tue Jul 13 16:26:51 2004 UTC revision 1.4 by afe, Thu Jan 13 15:50:36 2005 UTC
# Line 1  Line 1 
1  function [z] = cart2cyl(c,thetai,rhoi,varargin)  function [z] = cart2cyl(c,thetai,rhoi,varargin)
2  % z=cart2cyl(c,xi,yi);  % z=cart2cyl(c,xi,yi);
3  %  %
 % Re-grids model output in cylindrical coords to cartesian.  
 %  c     is a 2-D or 3-D scalar or z-vector field  
 %  xi,yi are vectors of the new regular lat-lon grid to interpolate to.  
 %  z     is the interpolated data with dimensions of size(xi) by size(yi).  
 %  
 % e.g.  
 % >> t=rdmds('Ttave.0000513360');  
 % >> xi=-179:2:180;yi=-89:2:90;  
 % >> ti=cyl2cart(t,xi,yi);  
 %  
4    
5  NN=size(c);  NN=size(c);
 %[theta rho nz]=size(c);  
6  [x y nz]=size(c);  [x y nz]=size(c);
7  %[RHO,THETA] = meshgrid(1:rho,-pi+2*pi/theta:2*pi/theta:pi);  stepx=(x+1)/(x);
8  [Y,X] = meshgrid(-(x-1)/2:(x-1)/2,-(y-1)/2:(y-1)/2);  stepy=(y+1)/(y);
9  %[x,y] = pol2cart(THETA,RHO);  [Y,X] = meshgrid(-(x)/2:stepx:(x)/2,-(y)/2:stepy:(y)/2);
10  [theta,rho] = cart2pol(X,Y);  [theta,rho] = cart2pol(X,Y);
11  theta=(theta./(pi*2)+0.5).*size(thetai,2);  theta=(theta./(pi*2)+0.5).*(size(thetai,2));
12  rho=max(rhoi)*rho/((x-1)/2);  rho=max(rhoi)*rho/((x)/2);
 %theta=rot90(theta.*180./pi,-1);  
 %[nx ny nz]=size(c);  
 %nx=theta;ny=rho;  
13  ntheta=x;nrho=y;  ntheta=x;nrho=y;
14    
 %X=reshape(x,[1 nx*ny]);  
 %Y=reshape(y,[1 nx*ny]);  
15  THETA=reshape(theta,[1 ntheta*nrho]);  THETA=reshape(theta,[1 ntheta*nrho]);
16  RHO=reshape(rho,[1 ntheta*nrho]);  RHO=reshape(rho,[1 ntheta*nrho]);
 %del=griddata_preprocess(Y,X,yi,xi',varargin{:});  
17  del=griddata_preprocess(RHO,THETA,rhoi,thetai',varargin{:});  del=griddata_preprocess(RHO,THETA,rhoi,thetai',varargin{:});
18    
19  for k=1:nz;  for k=1:nz;
20   C=reshape(c(:,:,k),[1 ntheta*nrho]);   C=reshape(c(:,:,k),[1 ntheta*nrho]);
21  z(:,:,k)=griddata(RHO,THETA,C,rhoi,thetai',varargin{:});  z(:,:,k)=griddata(RHO,THETA,C,rhoi,thetai',varargin{:});
 %z(:,:,k)=griddata(Y,X,C,yi,xi',varargin{:});  
 % z(:,:,k)=griddata_fast(del,[C C(il) C(ig)],varargin{:});  
22  end % k  end % k
23    
24  % Split vertical and time dimensions  % Split vertical and time dimensions

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.4

  ViewVC Help
Powered by ViewVC 1.1.22