From 2f74e41cf5706334fcde64ae0e86a33c4fef884f Mon Sep 17 00:00:00 2001 From: Samo Penic <samo.penic@gmail.com> Date: Sat, 28 May 2016 21:13:20 +0000 Subject: [PATCH] A small fix. If a continuation of simulation with a starting snapshot is requested, the last known vtk from the directory is used as a snapshot. --- python/trisurf/trisurf.py | 18 +++++++++++++++++- 1 files changed, 17 insertions(+), 1 deletions(-) diff --git a/python/trisurf/trisurf.py b/python/trisurf/trisurf.py index 8b36d27..46a3624 100644 --- a/python/trisurf/trisurf.py +++ b/python/trisurf/trisurf.py @@ -382,10 +382,18 @@ return cwd=Directory(maindir=os.getcwd()) + lastVTU=self.getLastVTU() #we get last VTU file in case we need to continue the simulation from last snapshot. Need to be done before the Dir.goto() call. self.Dir.goto() print("Starting trisurf-ng executable in "+self.Dir.fullpath()) if(self.fromSnapshot==True): - params=["trisurf", "--restore-from-vtk","initial_snapshot.vtu"]+self.runArgs + #here we try to determine whether we should continue the simulation or start from last known VTU snapshot. + if(lastVTU==None): + initSnap="initial_snapshot.vtu" + else: + initSnap=lastVTU + print("WARNING: Not using initial snapshot as starting point, but selecting "+initSnap+" as a starting vesicle") + params=["trisurf", "--restore-from-vtk",initSnap]+self.runArgs + print("InitSnap is: "+initSnap) else: #veify if dump exists. If not it is a first run and shoud be run with --force-from-tape if(os.path.isfile("dump.bin")==False): @@ -451,6 +459,14 @@ self.Comment=FileContent(os.path.join(self.Dir.fullpath(),".comment")) self.Comment.writefile(data,mode=mode) + + def getLastVTU(self): + vtuidx=self.getLastIteration() + if vtuidx<0: + return None + else: + return 'timestep_{:06d}.vtu'.format(vtuidx) + def __str__(self): if(self.getStatus()==0): str=" not running." -- Gitblit v1.9.3