class MatdynTask(QETask): def __init__(self, filename = None,configString = None, cleanOutDir = False,\ sectionName = None): QETask.__init__(self, filename, configString, cleanOutDir) self.setSerial() configDic = { 'matdynInput': 'matdyn.in', # 'flfrc': None, 'matdynOutput': 'matdyn.out', # 'flvec': None, # 'flfrq': None, # 'fldos': None } # QE input file's path containing variables' defaults (will be moved to # QE input parser) self._path_defaults = { 'flfrc': None, 'flvec': 'matdyn.modes', 'flfrq': 'matdyn.freq', 'fldos': 'matdyn.dos' } if sectionName == None: name = self.name() else: name = sectionName self.setting.section(name, configDic) self.input = MatdynInput(filename = self.setting.get('matdynInput')) self.output = QEOutput(self.setting, type = 'matdyn') # self._cmdStr = "matdyn.x -inp " + self.setting.matdynInput + " > " + \ # self.setting.matdynOutput def cmdLine(self): return self._getCmdLine('matdyn.x', 'matdynInput', 'matdynOutput') def name(self): return 'matdyn.x' def syncSetting(self): """ When this method is called on launch(), the input file is already parsed and will be saved before the run... """ self.input.parse() for varName in self._path_defaults.keys(): self.setting.syncPathInNamelist(varName, 'input', varName, \ self.input, self._path_defaults)
class MatdynTask(QETask): def __init__(self, filename = None,configString = None, cleanOutDir = False,\ sectionName = None): QETask.__init__(self, filename, configString, cleanOutDir) self.setSerial() configDic = { 'matdynInput': 'matdyn.in', # 'flfrc': None, 'matdynOutput': 'matdyn.out', # 'flvec': None, # 'flfrq': None, # 'fldos': None } # QE input file's path containing variables' defaults (will be moved to # QE input parser) self._path_defaults = { 'flfrc': None, 'flvec': 'matdyn.modes', 'flfrq': 'matdyn.freq', 'fldos': 'matdyn.dos' } if sectionName == None: name = self.name() else: name = sectionName self.setting.section(name, configDic) self.input = MatdynInput(filename=self.setting.get('matdynInput')) self.output = QEOutput(self.setting, type='matdyn') # self._cmdStr = "matdyn.x -inp " + self.setting.matdynInput + " > " + \ # self.setting.matdynOutput def cmdLine(self): return self._getCmdLine('matdyn.x', 'matdynInput', 'matdynOutput') def name(self): return 'matdyn.x' def syncSetting(self): """ When this method is called on launch(), the input file is already parsed and will be saved before the run... """ self.input.parse() for varName in self._path_defaults.keys(): self.setting.syncPathInNamelist(varName, 'input', varName, \ self.input, self._path_defaults)