Index: /issm/trunk-jpl/src/c/classes/Params/ControlParam.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Params/ControlParam.cpp	(revision 27721)
+++ /issm/trunk-jpl/src/c/classes/Params/ControlParam.cpp	(revision 27722)
@@ -214,12 +214,12 @@
 	/*Get list of ids for this element and this control*/
 	_assert_(N==this->M); //FIXME
-	int*        idlist = xNew<int>(this->M);
+	int* idlist = xNew<int>(this->M);
+	for(int i=0;i<this->M;i++) idlist[i] = offset+i;
+
+	/*Get data*/
 	IssmDouble* values = xNew<IssmDouble>(this->M);
-
-	for(int i=0;i<this->M;i++){
-		idlist[i] = offset+i;
-		values[i] = this->value[i];
-	}
-
+	GetParameterValue(&values, NULL, data);
+
+	/*Enter data in vector*/
 	vector->SetValues(this->M,idlist,values,INS_VAL);
 
Index: /issm/trunk-jpl/src/c/cores/controladm1qn3_core.cpp
===================================================================
--- /issm/trunk-jpl/src/c/cores/controladm1qn3_core.cpp	(revision 27721)
+++ /issm/trunk-jpl/src/c/cores/controladm1qn3_core.cpp	(revision 27722)
@@ -234,12 +234,6 @@
 	double  *XL = NULL;
 	double  *XU = NULL;
-	if(IsParamEnum(control_enum[0])){
-		femmodel->parameters->FindControlParamAndMakePassive(&XL,NULL,control_enum[0],"lowerbound");
-		femmodel->parameters->FindControlParamAndMakePassive(&XU,NULL,control_enum[0],"upperbound");
-	}
-	else{
-		GetPassiveVectorFromControlInputsx(&XL,NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,"lowerbound");
-		GetPassiveVectorFromControlInputsx(&XU,NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,"upperbound");
-	}
+	GetPassiveVectorFromControlInputsx(&XL,NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,"lowerbound");
+	GetPassiveVectorFromControlInputsx(&XU,NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,"upperbound");
 
 	int offset = 0;
@@ -656,12 +650,6 @@
 	double  *XL = NULL;
 	double  *XU = NULL;
-	if(IsParamEnum(control_enum[0])){
-		femmodel->parameters->FindControlParamAndMakePassive(&XL,NULL,control_enum[0],"lowerbound");
-		femmodel->parameters->FindControlParamAndMakePassive(&XU,NULL,control_enum[0],"upperbound");
-	}
-	else{
-		GetPassiveVectorFromControlInputsx(&XL,NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,"lowerbound");
-		GetPassiveVectorFromControlInputsx(&XU,NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,"upperbound");
-	}
+	GetPassiveVectorFromControlInputsx(&XL,NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,"lowerbound");
+	GetPassiveVectorFromControlInputsx(&XU,NULL,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,"upperbound");
 
    offset = 0;
