/[MITgcm]/MITgcm_contrib/gael/matlab_class/gcmfaces_calc/calc_UEVNfromUXVY.m
ViewVC logotype

Annotation of /MITgcm_contrib/gael/matlab_class/gcmfaces_calc/calc_UEVNfromUXVY.m

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


Revision 1.2 - (hide annotations) (download)
Fri Jun 24 01:55:42 2011 UTC (14 years, 1 month ago) by gforget
Branch: MAIN
CVS Tags: checkpoint65x, checkpoint65r, checkpoint65p, checkpoint65q, checkpoint65v, checkpoint65w, checkpoint65t, checkpoint65u, checkpoint66f, checkpoint66e, checkpoint66d, checkpoint66c, checkpoint66b, checkpoint66a, checkpoint66o, HEAD
Changes since 1.1: +3 -0 lines
- added headers

1 gforget 1.1 function [fldUe,fldVn]=calc_UEVNfromUXVY(fldU,fldV);
2 gforget 1.2 %object: compute Eastward/Northward vectors form X/Y vectors
3     %inputs: fldU/fldV are the X/Y vector fields at velocity points
4     %outputs: fldUe/fldVn are the Eastward/Northward vectors at tracer points
5 gforget 1.1
6     global mygrid;
7    
8     %fldU(mygrid.hFacW==0)=NaN; fldV(mygrid.hFacS==0)=NaN;
9     nr=size(fldU.f1,3); fldU(mygrid.hFacW(:,:,1:nr)==0)=NaN; fldV(mygrid.hFacS(:,:,1:nr)==0)=NaN;
10    
11     [FLDU,FLDV]=exch_UV(fldU,fldV);
12    
13     fldUe=fldU; fldVn=fldV;
14     for iF=1:fldU.nFaces;
15     tmp1=FLDU{iF}(1:end-1,:,:); tmp2=FLDU{iF}(2:end,:,:);
16     fldUe{iF}=reshape(nanmean([tmp1(:) tmp2(:)],2),size(tmp1));
17     tmp1=FLDV{iF}(:,1:end-1,:); tmp2=FLDV{iF}(:,2:end,:);
18     fldVn{iF}=reshape(nanmean([tmp1(:) tmp2(:)],2),size(tmp1));
19     end;
20    
21     FLDU=fldUe; FLDV=fldVn;
22     cs=mk3D(mygrid.AngleCS,FLDU); sn=mk3D(mygrid.AngleSN,FLDU);
23    
24     fldUe=+FLDU.*cs-FLDV.*sn;
25     fldVn=FLDU.*sn+FLDV.*cs;
26    
27    

  ViewVC Help
Powered by ViewVC 1.1.22