/[MITgcm]/MITgcm_contrib/enderton/PeriodicCoupling/MakePcForcing.m
ViewVC logotype

Diff of /MITgcm_contrib/enderton/PeriodicCoupling/MakePcForcing.m

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

--- MITgcm_contrib/enderton/PeriodicCoupling/MakePcForcing.m	2006/03/09 00:23:38	1.2
+++ MITgcm_contrib/enderton/PeriodicCoupling/MakePcForcing.m	2006/06/16 16:57:05	1.3
@@ -1,6 +1,6 @@
 function MakePcForcing(cplFiles,atmFiles,gridFiles,prevFocnFiles,...
-                       period,outDir,FocnRoot,focnRoot,iter,...
-                       dtC,gWeight,FocnOnly,InspectFocn,Inspectfocn)
+                       period,outDir,FocnRoot,focnRoot,iterO,iterA,...
+                       dtC,dtA,gWeight,FocnOnly,InspectFocn,Inspectfocn)
 
 % Make fields for forcing ocean component of periodic coupling.
 
@@ -22,13 +22,13 @@
 %                                 Load Data                               %
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-datacpl = rdmnc(cplFiles,'iter','HFtave','TXtave','TYtave','FWtave','T');
-dataatm = rdmnc(atmFiles,'iter','THETA'   ,'ALBVISDF','RADSWG'  ,...
-                                'DWNLWG'  ,'TS'      ,'QS'      ,...
-                                'WINDS'   ,'PRECON'  ,'PRECLS','T');
-datagrd = rdmnc(gridFiles,'rA','XG','YG','XC','YC','HFacC');
+% datacpl = rdmnc(cplFiles,'iter','HFtave','TXtave','TYtave','FWtave','T');
+% dataatm = rdmnc(atmFiles,'iter','THETA'   ,'ALBVISDF','RADSWG'  ,...
+%                                 'DWNLWG'  ,'TS'      ,'QS'      ,...
+%                                 'WINDS'   ,'PRECON'  ,'PRECLS','T');
+% datagrd = rdmnc(gridFiles,'rA','XG','YG','XC','YC','HFacC');
 % save('DataPerCpl.mat','datacpl','dataatm','datagrd');
-% load('DataPerCpl.mat');
+load('DataPerCpl.mat');
 nc = size(datagrd.rA,2);
 RAC = datagrd.rA;
 mask = datagrd.HFacC(:,:,1);
@@ -57,23 +57,30 @@
 %                      Select Coupled Field Data                          %
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-if ~isequal(datacpl.iter,dataatm.iter./8)
-    disp('datacpl.iter');    datacpl.iter
-    disp('dataatm.iter/8');  dataatm.iter./8
+if ~isequal(datacpl.iter,dataatm.iter./(dtC./dtA))
+    disp('datacpl.iter');           datacpl.iter
+    disp('dataatm.iter/dt_ratio');  dataatm.iter./(dtC./dtA)
     error('Iterations for coupled and atmospheric data do not match.');
 end
-test  = ismember(iter,datacpl.iter);
-index = ismember(datacpl.iter,iter);
+test   = ismember(iterO,datacpl.iter);
+indexO = ismember(datacpl.iter,iterO);
 if ~isempty(find(test==0))
     error('Specified indecies not present in cpl_tave.* files.');
+else
+    for ifield = 1:length(fieldscpl)
+        data.(fieldscpl{ifield}) = ...
+            datacpl.(fieldscpl{ifield})(1:6*nc,1:nc,indexO);
+    end
 end
-for ifield = 1:length(fieldscpl)
-    data.(fieldscpl{ifield}) = ...
-        datacpl.(fieldscpl{ifield})(1:6*nc,1:nc,index);
-end
-for ifield = 1:length(fieldsatm)
-    data.(fieldsatm{ifield}) = ...
-        dataatm.(fieldsatm{ifield})(1:6*nc,1:nc,index);
+test   = ismember(iterA,dataatm.iter);
+indexA = ismember(dataatm.iter,iterA);
+if ~isempty(find(test==0))
+    error('Specified indecies not present in DiagAtmForcing.* files.');
+else
+    for ifield = 1:length(fieldsatm)
+        data.(fieldsatm{ifield}) = ...
+            dataatm.(fieldsatm{ifield})(1:6*nc,1:nc,indexA);
+    end
 end
 % field = 'PREC';
 % merccube_mod(XG,YG,dataCplSelect.(field));
@@ -126,7 +133,7 @@
 
 if ~FocnOnly
     
-    years = iter.*dtC./31104000;
+    years = iterO.*dtC./31104000;
     yrfrc = rem(years,floor(years));
     yrfrc(yrfrc == 0) = 1;
     uyrfrc = sort(unique(yrfrc));

 

  ViewVC Help
Powered by ViewVC 1.1.22