Index: /issm/trunk-jpl/src/m/classes/SMBd18opdd.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/SMBd18opdd.m	(revision 22853)
+++ /issm/trunk-jpl/src/m/classes/SMBd18opdd.m	(revision 22854)
@@ -43,5 +43,5 @@
 			if(self.isd18opd),self.precipitations_presentday=project3d(md,'vector',self.precipitations_presentday,'type','node');end
 			if(self.istemperaturescaled==0),self.temperatures_reconstructed=project3d(md,'vector',self.temperatures_reconstructed,'type','node');end
-			if(self.isprecipscaled),self.precipitations_reconstructed=project3d(md,'vector',self.precipitations_reconstructed,'type','node');end
+			if(self.isprecipscaled==0),self.precipitations_reconstructed=project3d(md,'vector',self.precipitations_reconstructed,'type','node');end
 			if(self.issetpddfac), self.pddfac_snow=project3d(md,'vector',self.pddfac_snow,'type','node');end
 			if(self.issetpddfac), self.pddfac_ice=project3d(md,'vector',self.pddfac_ice,'type','node');end
@@ -90,10 +90,16 @@
 				md = checkfield(md,'fieldname','smb.rlapslgm','>=',0,'numel',1);
 				if(self.isd18opd==1) 
-					lent=size(self.temperatures_presentday,2);
-					lenp=size(self.precipitations_presentday,2);
-					multt=ceil(lent/12)*12;
-					multp=ceil(lenp/12)*12;
-					md = checkfield(md,'fieldname','smb.temperatures_presentday','size',[md.mesh.numberofvertices+1 multt],'NaN',1,'Inf',1,'timeseries',1);
-					md = checkfield(md,'fieldname','smb.precipitations_presentday','size',[md.mesh.numberofvertices+1 multp],'NaN',1,'Inf',1,'timeseries',1);
+					md = checkfield(md,'fieldname','smb.temperatures_presentday','size',[md.mesh.numberofvertices+1 12],'NaN',1,'Inf',1,'timeseries',1);
+					md = checkfield(md,'fieldname','smb.precipitations_presentday','size',[md.mesh.numberofvertices+1 12],'NaN',1,'Inf',1,'timeseries',1);
+					%cross check that time stamp values are between 0 and 1:
+					i=find(self.temperatures_presentday(end,:)-self.precipitations_presentday(end,:)~=0);
+					if length(i),
+						error('Smb checkconsistency fail: timestamp (last row of matrix) for present day temp and precip must be equal!');
+					end
+					j=find(self.temperatures_presentday(end,:)<0 | self.temperatures_presentday(end,:)>1);
+					if length(j),
+						error('Smb checkconsistency fail: timestamp (last row of matrix) for present day temp and precip must be between 0 and 1!');
+					end
+
 					md = checkfield(md,'fieldname','smb.delta18o','NaN',1,'Inf',1,'size',[2,NaN],'singletimeseries',1);
 					md = checkfield(md,'fieldname','smb.dpermil','>=',0,'numel',1);
