Index: /issm/trunk/src/c/solutions/prognostic_core_ad.cpp
===================================================================
--- /issm/trunk/src/c/solutions/prognostic_core_ad.cpp	(revision 9686)
+++ /issm/trunk/src/c/solutions/prognostic_core_ad.cpp	(revision 9686)
@@ -0,0 +1,35 @@
+/*!\file: prognostic_core_ad.cpp
+ * \brief: core of the ad (automatic differentiation)  prognostic solution  
+ */ 
+
+#include "../toolkits/toolkits.h"
+#include "../objects/objects.h"
+#include "../shared/shared.h"
+#include "../EnumDefinitions/EnumDefinitions.h"
+#include "./solutions.h"
+#include "../modules/modules.h"
+#include "../solvers/solvers.h"
+
+void prognostic_core_ad(FemModel* femmodel){
+
+	/*parameters: */
+	int solution_type;
+	bool control_analysis;
+
+	/*activate formulation: */
+	femmodel->SetCurrentConfiguration(PrognosticAnalysisEnum);
+	
+	/*recover parameters: */
+	femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
+	femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
+
+	_printf_(VerboseSolution(),"   call computational core\n");
+	solver_linear(femmodel);
+		
+	if(solution_type==PrognosticSolutionEnum && !control_analysis){
+		_printf_(VerboseSolution(),"   saving results\n");
+		InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ThicknessEnum);
+	}
+	
+}
+
