function [ubar]=zon_mean(u,X,Y) %%%%%%%%%%%%%%%%%%%%%%%%%%% % [Ubar]=zon_mean(U,X,Y) %zonal mean of a 2D geophysical field U using trapezoidal rule %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %array : dimension (nx,ny) %X : longitude in degrees (vector (nx)) %Y : latitude in degrees (vector (ny)) %RMK : works for Y scalar as well. %JEG, July 2002 conv=pi/180.; R=6371000.; nx=size(X,1); ny=size(Y,1); if (ny > 1) for jj=1:ny integrd=cos(conv*Y(jj))*array(jj,:); int(jj)=R*conv*trapz(X,integrd); end else integrd=cos(conv*Y)*array(:); int=R*conv*trapz(X,integrd); end