--- MITgcm_contrib/enderton/PeriodicCoupling/CalcOcnForcingFields.m 2005/10/05 02:27:21 1.1 +++ MITgcm_contrib/enderton/PeriodicCoupling/CalcOcnForcingFields.m 2005/10/18 16:07:15 1.3 @@ -14,14 +14,14 @@ % Load Data % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% datacpl = rdmnc(cplFiles,'iter','HFtave','TXtave',... -% 'TYtave','FWtave','SICtave'); -% datagrd = rdmnc(gridFiles,'rA','XG','YG','XC','YC'); -% RAC = datagrd.rA; -% XC = datagrd.XC; XG = datagrd.XG(1:size(RAC,1),1:size(RAC,2)); -% YC = datagrd.YC; YG = datagrd.YG(1:size(RAC,1),1:size(RAC,2)); -% save('DataPerCpl.mat','datacpl','RAC','XG','YG','XC','YC'); -load('DataPerCpl.mat'); +datacpl = rdmnc(cplFiles,'iter','HFtave','TXtave',... + 'TYtave','FWtave','SICtave'); +datagrd = rdmnc(gridFiles,'rA','XG','YG','XC','YC'); +RAC = datagrd.rA; +XC = datagrd.XC; XG = datagrd.XG(1:size(RAC,1),1:size(RAC,2)); +YC = datagrd.YC; YG = datagrd.YG(1:size(RAC,1),1:size(RAC,2)); +%save('DataPerCpl.mat','datacpl','RAC','XG','YG','XC','YC'); +%load('DataPerCpl.mat'); % If a new focn is to be calculated, the old Focn must be loaded. @@ -59,14 +59,16 @@ % What if it is not in year increments? Need a more sophisticated % treatment of finding Focn. Should compute monthly mean before. Test % with various sorts of coupled field outputs. - for ifield = 1:length(mncfld) - FocnOld = dataFocnOld.(mncfld{ifield}); FocnNew = mean(dataCplSelect.([mncfld{ifield},'tave']),3); FocnNew = DataCorrections(FocnNew,mncfld{ifield},gravity,RAC); if FocnOnly Focn = FocnNew; else + FocnOld = dataFocnOld.(mncfld{ifield}); + if isequal(mncfld{ifield},'FW') + FocnOld = DataCorrections(FocnOld,mncfld{ifield},gravity,RAC); + end Focn = (gWeight*FocnOld + FocnNew)/(gWeight+1); end fid=fopen([outDir,'/',FocnRoot,'.',fields{ifield},... @@ -171,4 +173,4 @@ else CorrectedData = DataToCorrect; end - \ No newline at end of file +