/[MITgcm]/MITgcm/utils/matlab/cube2latlon.m
ViewVC logotype

Contents of /MITgcm/utils/matlab/cube2latlon.m

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


Revision 1.3 - (show annotations) (download)
Tue Aug 28 17:58:03 2001 UTC (19 years, 11 months ago) by adcroft
Branch: MAIN
CVS Tags: checkpoint46n_post, checkpoint48f_post, checkpoint46k_post, checkpoint51k_post, checkpoint47j_post, icebear2, checkpoint53b_pre, checkpoint48d_pre, checkpoint51l_post, checkpoint51j_post, branch-exfmods-tag, checkpoint47e_post, checkpoint44h_pre, release1_p12, checkpoint52l_pre, checkpoint48i_post, checkpoint52e_pre, hrcube4, hrcube5, release1_p10, release1_p16, checkpoint52j_post, release1_p15, release1_p11, checkpoint47f_post, ecco_c44_e16, checkpoint48d_post, checkpoint51o_pre, checkpoint46j_post, checkpoint47c_post, checkpoint50e_post, checkpoint52e_post, checkpoint50c_post, checkpoint46i_post, checkpoint51n_pre, checkpoint47d_post, ecco_c44_e21, ecco_c44_e26, ecco_c44_e27, ecco_c44_e24, icebear5, icebear4, checkpoint44f_pre, checkpoint47a_post, icebear3, checkpoint46f_post, checkpoint52d_pre, ecco_c50_e33a, checkpoint53c_post, checkpoint48a_post, checkpoint51f_pre, release1_p13_pre, checkpoint46d_pre, checkpoint48e_post, checkpoint46e_post, checkpoint48h_post, checkpoint50c_pre, release1-branch_tutorials, ecco_c50_e28, release1_p14, checkpoint44g_post, branchpoint-genmake2, checkpoint46h_pre, checkpoint44h_post, release1_p12_pre, checkpoint44e_post, checkpoint50b_pre, checkpoint52j_pre, checkpoint46e_pre, ecco-branch-mod4, checkpoint43a-release1mods, branch-netcdf, checkpoint50d_pre, checkpoint45d_post, checkpoint51r_post, checkpoint47i_post, checkpoint52b_pre, checkpoint52n_post, checkpoint46l_pre, checkpoint46j_pre, checkpoint45b_post, checkpoint46b_pre, checkpoint51i_post, checkpoint47h_post, checkpoint48c_post, checkpoint46l_post, chkpt44a_pre, release1-branch-end, release1_final_v1, ecco_c44_e19, checkpoint51e_post, checkpoint51b_post, checkpoint46, ecco_c44_e20, checkpoint51l_pre, checkpoint52m_post, checkpoint51c_post, ecco_c50_e32, checkpoint53a_post, ecco_c50_e31, checkpoint44, release1_p13, ecco_c44_e18, checkpoint48, checkpoint49, checkpoint44f_post, checkpoint47b_post, checkpoint53b_post, checkpoint51o_post, checkpoint48g_post, ecco_c44_e17, release1_p17, release1_b1, checkpoint44b_post, checkpoint51q_post, checkpoint52l_post, checkpoint52k_post, chkpt44c_post, ecco_c51_e34, chkpt44d_post, ecco_c50_e29, checkpoint42, release1_p9, checkpoint51, checkpoint50, checkpoint53, checkpoint52, release1_p8, checkpoint50d_post, checkpoint43, checkpoint52d_post, checkpoint46g_pre, release1_p2, release1_p3, release1_p4, checkpoint51b_pre, release1_p6, checkpoint52a_post, checkpoint46a_post, checkpoint47g_post, checkpoint52b_post, chkpt44a_post, checkpoint52f_post, checkpoint44b_pre, checkpoint52c_post, release1_p1, checkpoint46m_post, checkpoint51h_pre, checkpoint46a_pre, ecco_c51_e34e, ecco-branch-mod1, checkpoint50g_post, checkpoint45c_post, release1_p5, checkpoint44e_pre, checkpoint51g_post, ecco_c52_e35, chkpt44c_pre, checkpoint40pre9, release1_p7, ecco_ice2, ecco_ice1, checkpoint46b_post, checkpoint51f_post, checkpoint46d_post, ecco-branch-mod2, checkpoint48b_post, checkpoint50b_post, checkpoint46g_post, checkpoint45a_post, ecco_c51_e34d, ecco_c51_e34f, ecco_c51_e34g, ecco_c51_e34a, ecco_c51_e34b, ecco_c51_e34c, checkpoint50f_post, checkpoint50a_post, checkpoint46c_pre, checkpoint50f_pre, checkpoint52a_pre, ecco-branch-mod3, ecco_c50_e33, checkpoint47d_pre, checkpoint51d_post, ecco_c50_e30, checkpoint48c_pre, ecco-branch-mod5, ecco_c44_e22, release1_beta1, ecco_c44_e23, checkpoint51m_post, checkpoint51t_post, checkpoint53d_pre, release1-branch_branchpoint, checkpoint47, checkpoint46c_post, checkpoint50h_post, checkpoint52i_post, checkpoint51a_post, checkpoint40, checkpoint45, checkpoint46h_post, checkpoint50e_pre, checkpoint50i_post, checkpoint51p_post, checkpoint51n_post, release1_chkpt44d_post, ecco_c44_e25, checkpoint51i_pre, checkpoint52i_pre, checkpoint51u_post, checkpoint52h_pre, checkpoint41, checkpoint52f_pre, hrcube_1, hrcube_2, hrcube_3, checkpoint51s_post
Branch point for: c24_e25_ice, netcdf-sm0, ecco-branch, branch-genmake2, branch-nonh, release1_coupled, icebear, tg2-branch, release1_final, checkpoint51n_branch, release1-branch, release1, release1_50yr, branch-exfmods-curt
Changes since 1.2: +6 -1 lines
Bug fix: 4+ dimensions were concatenated to 3.

1 function [z] = cube2latlon(x,y,c,xi,yi)
2 % z=cube2latlon(x,y,c,xi,yi);
3 %
4 % Re-grids model output on expanded spherical cube to lat-lon grid.
5 % x,y are 2-D arrays of the cell-centered coordinates
6 % c is a 2-D or 3-D scalar field
7 % xi,yi are vectors of the new regular lat-lon grid to interpolate to.
8 % z is the interpolated data with dimensions of size(xi) by size(yi).
9 %
10 % e.g.
11 % >> x=rdmds('XC');
12 % >> y=rdmds('YC');
13 % >> t=rdmds('Ttave.0000513360');
14 % >> xi=-179:2:180;yi=-89:2:90;
15 % >> ti=cube2latlon(x,y,t,xi,yi);
16 %
17 % $Header: /u/gcmpack/models/MITgcmUV/utils/matlab/cube2latlon.m,v 1.2 2001/05/29 14:01:40 adcroft Exp $
18
19 NN=size(c);
20 [nx ny nz]=size(c);
21
22 for k=1:nz;
23 X=x;
24 Y=y;
25 C=c(:,:,k);
26
27 i=3*ny+(1:ny);j=floor(ny/2);
28 X(end+1,:)=X(i,j)'-360; Y(end+1,:)=Y(i,j)'; C(end+1,:)=C(i,j)';
29 i=3*ny+(1:ny);j=floor(ny/2)+1;
30 X(end+1,:)=X(i,j)'+360; Y(end+1,:)=Y(i,j)'; C(end+1,:)=C(i,j)';
31 i=5*ny+round(ny/2);j=1:floor(ny/2);
32 X(end+1,j)=X(i,j)+360;
33 Y(end+1,j)=Y(i,j);
34 C(end+1,j)=C(i,j);
35 i=5*ny+round(ny/2)+1;j=1:floor(ny/2);
36 X(end,j+ny/2)=X(i,j)-360;
37 Y(end,j+ny/2)=Y(i,j);
38 C(end,j+ny/2)=C(i,j);
39 i=2*32+(ny/2+1:ny);j=floor(ny/2);
40 X(end+1,1:ny/2)=X(i,j)'-360;
41 Y(end+1,1:ny/2)=Y(i,j)';
42 C(end+1,1:ny/2)=C(i,j)';
43 i=2*32+(ny/2+1:ny);j=floor(ny/2)+1;
44 X(end,ny/2+1:ny)=X(i,j)'+360;
45 Y(end,ny/2+1:ny)=Y(i,j)';
46 C(end,ny/2+1:ny)=C(i,j)';
47
48 z(:,:,k)=griddata(Y,X,C,yi,xi');
49 end % k
50
51 if size(NN,2)>2
52 z=reshape(z,[size(z,1) size(z,2) NN(3:end)]);
53 end

  ViewVC Help
Powered by ViewVC 1.1.22