[cig-commits] commit: Do not actually advect if starting or restarting a calculation

Mercurial hg at geodynamics.org
Sun Nov 20 23:08:16 PST 2011


changeset:   816:a4533511ac63
tag:         tip
user:        Walter Landry <wlandry at caltech.edu>
date:        Sun Nov 20 23:08:07 2011 -0800
files:       SLE/ProvidedSystems/AdvectionDiffusion/src/AdvectionDiffusionSLE.cxx
description:
Do not actually advect if starting or restarting a calculation


diff -r a0b110d7f7d3 -r a4533511ac63 SLE/ProvidedSystems/AdvectionDiffusion/src/AdvectionDiffusionSLE.cxx
--- a/SLE/ProvidedSystems/AdvectionDiffusion/src/AdvectionDiffusionSLE.cxx	Sat Nov 19 10:21:12 2011 -0800
+++ b/SLE/ProvidedSystems/AdvectionDiffusion/src/AdvectionDiffusionSLE.cxx	Sun Nov 20 23:08:07 2011 -0800
@@ -431,17 +431,20 @@ void _AdvectionDiffusionSLE_Initialise( 
 	AdvectionDiffusionSLE_ResetStoredValues( self );
 }
 
-void _AdvectionDiffusionSLE_Execute( void* sle, void* _context ) {
-	AdvectionDiffusionSLE*     self  = (AdvectionDiffusionSLE*) sle;
-	FiniteElementContext*      context = (FiniteElementContext*) _context;
-	double                     dt      = context->dt;
+void _AdvectionDiffusionSLE_Execute(void* sle, void* _context)
+{
+  AdvectionDiffusionSLE* self=(AdvectionDiffusionSLE*)sle;
+  FiniteElementContext* context=(FiniteElementContext*)_context;
+  double dt=context->dt;
 	
-	AdvectionDiffusionSLE_ResetStoredValues( self );
-	self->currentDt = dt;
+  if(context->timeStep!=context->restartTimestep)
+    {
+      AdvectionDiffusionSLE_ResetStoredValues(self);
+      self->currentDt=dt;
 	
-	_SystemLinearEquations_Execute( self, context );
+      _SystemLinearEquations_Execute(self,context);
+    }
 }
-
 
 //Vector* _AdvectionDiffusionSLE_GetResidual( void* sle, Index fv_I ) {
 Vec _AdvectionDiffusionSLE_GetResidual( void* sle, Index fv_I ) {



More information about the CIG-COMMITS mailing list