Index: /issm/trunk-jpl/src/c/analyses/MasstransportAnalysis.cpp
===================================================================
--- /issm/trunk-jpl/src/c/analyses/MasstransportAnalysis.cpp	(revision 24373)
+++ /issm/trunk-jpl/src/c/analyses/MasstransportAnalysis.cpp	(revision 24374)
@@ -156,8 +156,7 @@
 	if(isgroundingline) 	iomodel->FetchDataToInput(inputs2,elements,"md.geometry.bed",BedEnum);
 	/*Initialize cumdeltalthickness input*/
-	IssmDouble zero =0.; //For AD we need to initialize it with a IssmDouble variable
-	InputUpdateFromConstantx(inputs2,elements,zero,SealevelriseCumDeltathicknessEnum);
+	InputUpdateFromConstantx(inputs2,elements,0.,SealevelriseCumDeltathicknessEnum);
 	/*Initialize ThicknessResidual input*/
-	InputUpdateFromConstantx(inputs2,elements,zero,ThicknessResidualEnum);
+	InputUpdateFromConstantx(inputs2,elements,0.,ThicknessResidualEnum);
 
 	/*Get what we need for ocean-induced basal melting*/
Index: /issm/trunk-jpl/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.cpp
===================================================================
--- /issm/trunk-jpl/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.cpp	(revision 24373)
+++ /issm/trunk-jpl/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.cpp	(revision 24374)
@@ -70,2 +70,17 @@
 	}
 }
+#ifdef _HAVE_AD_
+void InputUpdateFromConstantx(Inputs2* inputs2,Elements* elements,IssmPDouble constant, int name){
+
+	if(VerboseModule()) _printf0_("   Input updates from constant\n");
+
+	/*Convert to active variable!*/
+	IssmDouble constant2 = constant;
+
+	/*Elements and loads drive the update: */
+	for(int i=0;i<elements->Size();i++){
+		Element* element=xDynamicCast<Element*>(elements->GetObjectByOffset(i));
+		element->SetElementInput(inputs2,name,constant2);
+	}
+}
+#endif
Index: /issm/trunk-jpl/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.h
===================================================================
--- /issm/trunk-jpl/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.h	(revision 24373)
+++ /issm/trunk-jpl/src/c/modules/InputUpdateFromConstantx/InputUpdateFromConstantx.h	(revision 24374)
@@ -13,4 +13,7 @@
 void InputUpdateFromConstantx(FemModel* femmodel,int        constant,int name);
 void InputUpdateFromConstantx(FemModel* femmodel,IssmDouble constant,int name);
+#ifdef _HAVE_AD_
+void InputUpdateFromConstantx(Inputs2* inputs2,Elements* elements,IssmPDouble constant,int name);
+#endif
 void InputUpdateFromConstantx(Inputs2* inputs2,Elements* elements,IssmDouble constant,int name);
 void InputUpdateFromConstantx(Inputs2* inputs2,Elements* elements,bool       constant,int name);
