Index: /issm/trunk/src/c/parallel/transient_core_3d.cpp
===================================================================
--- /issm/trunk/src/c/parallel/transient_core_3d.cpp	(revision 3332)
+++ /issm/trunk/src/c/parallel/transient_core_3d.cpp	(revision 3333)
@@ -189,4 +189,21 @@
 		result=new Result(results->Size()+1,time,step,"t_g",t_g); results->AddObject(result);
 		result=new Result(results->Size()+1,time,step,"m_g",m_g); results->AddObject(result);
+
+		//Save temporary results every 5 steps
+		if (step%5==0){
+			_printf_("%s","      saving temporary results...");
+
+			DataSet* processed_results=NULL;
+			char*    outputfilename=NULL;
+
+			model->FindParam(&outputfilename,"outputfilename");
+			ProcessResults(&processed_results,results,model,TransientAnalysisEnum());
+			OutputResults(processed_results,outputfilename);
+
+			delete processed_results;
+			xfree((void**)&outputfilename);
+
+			_printf_("%s\n"," done.");
+		}
 	}
 
