def transferSystemValue(systemIndex,systemData): ''' Transer Variable data in PySystem to C++ code. :param int systemIndex: PySystem index(0:MainSystem;1,2,...:SubSystem) :param PySystem systemData: PySystem data ''' for variable in systemData.variableList: FrontEndAdapter.reqAppendVariableToSystem(systemIndex,variable.name,variable.value)
def transferToCppCode(self): ''' Transfer Python data to C++ as intermediate data. ''' # Convert to Core Program FrontEndAdapter.reqAppendStepperData(self.stepper.ID,self.stepper.voxelRadius,self.stepper.searchVacant,self.stepper.stepperName,self.stepper.rngSeed) for n in range(0,len(self.SystemList)): FrontEndAdapter.reqAppendSystem(self.SystemList[n].ID,self.SystemList[n].StepperID) transferSystemValue(n,self.SystemList[n]) transferSystemProcess(n,self.SystemList[n])
def transferSystemProcess(systemIndex,systemData): ''' Transfer PyProcess data to C++ code. :param int systemIndex: PySystem index(0:MainSystem;1,2,...:SubSystem) :param PySystem systemData: PySystem data ''' for process in systemData.processList: # FrontEndAdapter.reqAppendProcessToSystem(systemIndex,process.ID,process.processName) for varRef in process.variableReferenceList: FrontEndAdapter.reqAppendVariableReferenceToProcess(systemIndex,process.ID,varRef.name,varRef.value) for prop in process.propertyList: FrontEndAdapter.reqAppendPropertyToProcess(systemIndex,process.ID,prop.name,prop.value) FrontEndAdapter.reqSetFileNameToProcess(systemIndex,process.ID,process.fileName)
def output(self): ''' Output the result of the calculation. ''' FrontEndAdapter.output()
def calculate(self): ''' Start the calculation. ''' # Start Main Program FrontEndAdapter.startMain(BaseModel.Calculation_Span)
def convertToCore(self): ''' SetUp the solver module. ''' FrontEndAdapter.convertToCore()