Index: /issm/trunk-jpl/src/c/analyses/EnthalpyAnalysis.cpp
===================================================================
--- /issm/trunk-jpl/src/c/analyses/EnthalpyAnalysis.cpp	(revision 21652)
+++ /issm/trunk-jpl/src/c/analyses/EnthalpyAnalysis.cpp	(revision 21653)
@@ -445,5 +445,5 @@
 	/*feed updated variables back into model*/
 	if(dt!=0.){
-		element->AddInput(enthalpy_enum,enthalpies,P1Enum); //TODO: distinguis for steadystate and transient run
+		//element->AddInput(enthalpy_enum,enthalpies,P1Enum); //TODO: distinguis for steadystate and transient run
 		element->AddInput(WatercolumnEnum,watercolumns,P1Enum);
 	}
@@ -1056,15 +1056,12 @@
 
 	/* Intermediaries*/
-	int is, numvertices, numsegments;
+	int is,numsegments;
 	int *pairindices   = NULL;
 
-	numvertices=element->GetNumberOfVertices();
+	int numnodes=element->GetNumberOfNodes();
 	element->VerticalSegmentIndices(&pairindices,&numsegments);
 
-	IssmDouble* watercolumn = xNew<IssmDouble>(numvertices);
 	IssmDouble* drainrate_column  = xNew<IssmDouble>(numsegments);
 	IssmDouble* drainrate_element = xNew<IssmDouble>(numsegments);
-
-	element->GetInputListOnVertices(watercolumn,WatercolumnEnum);
 
 	for(is=0;is<numsegments;is++)	drainrate_column[is]=0.;
@@ -1078,8 +1075,12 @@
 		elementi=elementi->GetUpperElement();			
 	}
+
 	/* add drained water to water column*/
+	IssmDouble* watercolumn = xNew<IssmDouble>(numnodes);
+	element->GetInputListOnNodes(watercolumn,WatercolumnEnum);
 	for(is=0;is<numsegments;is++) watercolumn[is]+=drainrate_column[is];
+
 	/* Feed updated water column back into model */
-	element->AddInput(WatercolumnEnum,watercolumn,P1Enum);
+	element->AddInput(WatercolumnEnum,watercolumn,element->GetElementType());
 
 	xDelete<int>(pairindices);
