def saveParams(self, lap, hmodel, SS=None, **kwargs): ''' Save current model to disk ''' if lap in self.SavedIters or self.task_output_path is None: return ElapsedTimeLogger.startEvent("io", "saveparams") self.SavedIters.add(lap) prefix = ModelWriter.makePrefixForLap(lap) with open(self.mkfile('snapshot_lap.txt'), 'a') as f: f.write('%.4f\n' % (lap)) with open(self.mkfile('snapshot_elapsed_time_sec.txt'), 'a') as f: f.write('%.3f\n' % (self.get_elapsed_time())) if self.outputParams['doSaveFullModel']: ModelWriter.save_model( hmodel, self.task_output_path, prefix, doSavePriorInfo=np.allclose(lap, 0.0), doLinkBest=True, doSaveObsModel=self.outputParams['doSaveObsModel']) if self.outputParams['doSaveTopicModel']: ModelWriter.saveTopicModel( hmodel, SS, self.task_output_path, prefix, **kwargs) ElapsedTimeLogger.stopEvent("io", "saveparams")