Index: /issm/trunk-jpl/src/c/analyses/DamageEvolutionAnalysis.cpp
===================================================================
--- /issm/trunk-jpl/src/c/analyses/DamageEvolutionAnalysis.cpp	(revision 18032)
+++ /issm/trunk-jpl/src/c/analyses/DamageEvolutionAnalysis.cpp	(revision 18033)
@@ -23,4 +23,5 @@
 	parameters->AddObject(iomodel->CopyConstantObject(DamageMaxiterEnum));
 	parameters->AddObject(iomodel->CopyConstantObject(DamageMaxDamageEnum));
+	parameters->AddObject(iomodel->CopyConstantObject(DamageElementinterpEnum));
 
 	/*Requested outputs*/
@@ -47,5 +48,7 @@
 void DamageEvolutionAnalysis::UpdateElements(Elements* elements,IoModel* iomodel,int analysis_counter,int analysis_type){/*{{{*/
 
-	int finiteelement = P1Enum;
+	int finiteelement;
+
+	iomodel->Constant(&finiteelement,DamageElementinterpEnum);
 
 	/*Update elements: */
@@ -75,5 +78,7 @@
 void DamageEvolutionAnalysis::CreateNodes(Nodes* nodes,IoModel* iomodel){/*{{{*/
 
-	int finiteelement = P1Enum;
+	int finiteelement;
+
+	iomodel->Constant(&finiteelement,DamageElementinterpEnum);
 
 	if(iomodel->domaintype!=Domain2DhorizontalEnum) iomodel->FetchData(1,MeshVertexonbaseEnum);
@@ -84,6 +89,7 @@
 
 	int stabilization;
-	int finiteelement = P1Enum;
+	int finiteelement;
 	iomodel->Constant(&stabilization,DamageStabilizationEnum);
+	iomodel->Constant(&finiteelement,DamageElementinterpEnum);
 
 	IoModelToConstraintsx(constraints,iomodel,DamageSpcdamageEnum,DamageEvolutionAnalysisEnum,finiteelement);
@@ -469,6 +475,4 @@
 		damage_input = element->GetInput(DamageDEnum);   _assert_(damage_input);
 	}
-
-
 
 	/*retrieve the desired type of equivalent stress*/
@@ -509,5 +513,5 @@
 
 	/*Add input*/
-	element->AddInput(DamageFEnum,f,P1Enum);
+	element->AddInput(DamageFEnum,f,element->GetElementType());
 	
 	/*Clean up and return*/
