clear

load_llc2160
tic
    gcmfaces_lines_zonal;
toc    

nx=2160; ny=nx*13; nz=90;
pp='/nobackupp11/dmenemen/DYAMOND/c1440_llc2160/mit_output/STATS/';

%year
fin=[pp 'U/U_year.bin'];
disp(fin)
UU=readbin(fin,[nx ny nz]);
fin=[pp 'V/V_year.bin'];
disp(fin)
VV=readbin(fin,[nx ny nz]);

%fldU=UVELMASS.*mygrid.mskW; fldV=VVELMASS.*mygrid.mskS;
%replaced by:
fldU=convert2gcmfaces(UU).*mygrid.hFacW; %UVEL==>UVELMASS
fldV=convert2gcmfaces(VV).*mygrid.hFacS;
fldU=fldU.*mygrid.mskW;
fldV=fldV.*mygrid.mskS;

tic
    gmoc=calc_overturn(fldU,fldV);
toc

tic
    mskC=v4_basin({'atlExt'}); mskC=mk3D(mskC,fldU);
    amoc=calc_overturn(fldU.*mskC,fldV.*mskC);
toc

tic
    mskC=v4_basin({'pacExt','indExt'}); mskC=mk3D(mskC,fldU);
    pmoc=calc_overturn(fldU.*mskC,fldV.*mskC);
toc

save MOC_year gmoc amoc pmoc

%next monthly:
gmoc=nan(179, 91, 12);
amoc=nan(179, 91, 12);
pmoc=nan(179, 91, 12);

yr=2020;
for mn=3:14 %
tic
	f_mon=datestr(datenum(yr,mn,1),'yyyymm');
	fin=[pp 'U/U_' f_mon '.bin'];
	disp(fin)
	UU=readbin(fin,[nx ny nz]);
	fin=[pp 'V/V_' f_mon '.bin'];
	disp(fin)
	VV=readbin(fin,[nx ny nz]);

fldU=convert2gcmfaces(UU).*mygrid.hFacW; %UVEL==>UVELMASS
fldV=convert2gcmfaces(VV).*mygrid.hFacS;
fldU=fldU.*mygrid.mskW;
fldV=fldV.*mygrid.mskS;

    gmoc(:,:,mn-3+1)=calc_overturn(fldU,fldV);

    mskC=v4_basin({'atlExt'}); mskC=mk3D(mskC,fldU);
    amoc(:,:,mn-3+1)=calc_overturn(fldU.*mskC,fldV.*mskC);

    mskC=v4_basin({'pacExt','indExt'}); mskC=mk3D(mskC,fldU);
    pmoc(:,:,mn-3+1)=calc_overturn(fldU.*mskC,fldV.*mskC);
toc
end

save MOC_month gmoc amoc pmoc
