Index: /issm/trunk-jpl/src/m/classes/clusters/pfe.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/clusters/pfe.m	(revision 20041)
+++ /issm/trunk-jpl/src/m/classes/clusters/pfe.m	(revision 20042)
@@ -71,15 +71,5 @@
 
 			 %now, check cluster.cpuspernode according to processor type
-			 if (strcmpi(cluster.processor,'har') | strcmpi(cluster.processor,'neh')),
-				 if cluster.hyperthreading,
-					 if ((cluster.cpuspernode>16 ) | (cluster.cpuspernode<1)),
-						 md = checkmessage(md,'cpuspernode should be between 1 and 16 for ''neh'' and ''har'' processors in hyperthreading mode');
-					 end
-				 else
-					 if ((cluster.cpuspernode>8 ) | (cluster.cpuspernode<1)),
-						 md = checkmessage(md,'cpuspernode should be between 1 and 8 for ''neh'' and ''har'' processors');
-					 end
-				 end
-			 elseif strcmpi(cluster.processor,'wes'),
+			 if strcmpi(cluster.processor,'wes'),
 				 if cluster.hyperthreading,
 					 if ((cluster.cpuspernode>24 ) | (cluster.cpuspernode<1)),
@@ -101,7 +91,29 @@
 					 end
 				 end
-
-			 else
-				 md = checkmessage(md,'unknown processor type, should be ''neh'',''wes'' or ''har'' or ''ivy''');
+			 
+			 elseif strcmpi(cluster.processor,'has'),
+				 if cluster.hyperthreading,
+					 if ((cluster.cpuspernode>48 ) | (cluster.cpuspernode<1)),
+						 md = checkmessage(md,'cpuspernode should be between 1 and 48 for ''has'' processors in hyperthreading mode');
+					 end
+				 else
+					 if ((cluster.cpuspernode>24 ) | (cluster.cpuspernode<1)),
+						 md = checkmessage(md,'cpuspernode should be between 1 and 24 for ''has'' processors');
+					 end
+				 end
+			 
+			 elseif strcmpi(cluster.processor,'san'),
+				 if cluster.hyperthreading,
+					 if ((cluster.cpuspernode>32 ) | (cluster.cpuspernode<1)),
+						 md = checkmessage(md,'cpuspernode should be between 1 and 32 for ''san'' processors in hyperthreading mode');
+					 end
+				 else
+					 if ((cluster.cpuspernode>16 ) | (cluster.cpuspernode<1)),
+						 md = checkmessage(md,'cpuspernode should be between 1 and 16 for ''san'' processors');
+					 end
+				 end
+
+			 else
+				 md = checkmessage(md,'unknown processor type, should be ''wes'' or ''has'' or ''ivy'' or ''san''');
 			 end
 
