Index: /issm/trunk/src/c/modules/ModelProcessorx/CreateParameters.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/CreateParameters.cpp	(revision 9467)
+++ /issm/trunk/src/c/modules/ModelProcessorx/CreateParameters.cpp	(revision 9468)
@@ -26,8 +26,8 @@
 
 	/*Convert some parameters to Enums*/
-	iomodel->FetchData(&rheology_law,RheologyLawEnum);
-	if      (strcmp(rheology_law,"none")==0)      parameters->AddObject(new IntParam(RheologyLawEnum,NoneEnum));
-	else if (strcmp(rheology_law,"paterson")==0)  parameters->AddObject(new IntParam(RheologyLawEnum,PatersonEnum));
-	else if (strcmp(rheology_law,"arrhenius")==0) parameters->AddObject(new IntParam(RheologyLawEnum,ArrheniusEnum));
+	iomodel->Constant(&rheology_law,RheologyLawEnum);
+	if      (strcmp(rheology_law,"none")==0)      parameters->SetParam(RheologyLawEnum,NoneEnum);
+	else if (strcmp(rheology_law,"paterson")==0)  parameters->SetParam(RheologyLawEnum,PatersonEnum);
+	else if (strcmp(rheology_law,"arrhenius")==0) parameters->SetParam(RheologyLawEnum,ArrheniusEnum);
 	else _error_("rheology law %s not supported",rheology_law);
 
Index: /issm/trunk/src/c/objects/IoModel.cpp
===================================================================
--- /issm/trunk/src/c/objects/IoModel.cpp	(revision 9467)
+++ /issm/trunk/src/c/objects/IoModel.cpp	(revision 9468)
@@ -108,4 +108,13 @@
 /*FUNCTION IoModel::Constant(double* poutput,int constant_enum){{{1*/
 void IoModel::Constant(double* poutput,int constant_enum){
+
+	_assert_(constant_enum>=0);
+	_assert_(this->constants);
+
+	this->constants->FindParam(poutput,constant_enum);
+}
+/*}}}*/
+/*FUNCTION IoModel::Constant(char** poutput,int constant_enum){{{1*/
+void IoModel::Constant(char** poutput,int constant_enum){
 
 	_assert_(constant_enum>=0);
Index: /issm/trunk/src/c/objects/IoModel.h
===================================================================
--- /issm/trunk/src/c/objects/IoModel.h	(revision 9467)
+++ /issm/trunk/src/c/objects/IoModel.h	(revision 9468)
@@ -43,4 +43,5 @@
 		void        Constant(int    *poutput,int constant_enum);
 		void        Constant(double *poutput,int constant_enum);
+		void        Constant(char  **poutput,int constant_enum);
 		Parameters *CopyConstants(void);
 		double     *Data(int dataenum);
Index: /issm/trunk/src/m/model/ismodelselfconsistent.m
===================================================================
--- /issm/trunk/src/m/model/ismodelselfconsistent.m	(revision 9467)
+++ /issm/trunk/src/m/model/ismodelselfconsistent.m	(revision 9468)
@@ -176,5 +176,5 @@
 	message(['model not consistent: model ' md.name ' hydrostatic_adjustment field should be AbsoluteEnum or IncrementalEnum']);
 end
-if ~ismember({md.rheology_law},{'none' 'paterson' 'arrhenius']),
+if ~ismember({md.rheology_law},{'none' 'paterson' 'arrhenius'}),
 	message(['model not consistent: model ' md.name ' rheology_law field should be ''none'' ''paterson'' or ''arrhenius''']);
 end
