11 UMLClass 341 759 286 462 MainApp -- + zoomcount: int = 0 + thrd: Thread = None + container: Container() + comp: ComponentSelector() + scene: Graphics.QGraphicsScene() -- + menuBar() + buttonHandler() + help() + BinPhaseEnv() + selectCompounds() + currentTime() + simulate(mode) + terminate() + zoomReset() + zoomOut() + zoomIn() + component() + new() + deleteCall() + undo_redo_helper() + undo() + redo() + save() + open() UMLClass 363 484 242 187 QMainWindow -- graphicsView.keyPressEvent textBrowser: UC1 -- setUpUi() graphicsView.setScene() graphicsView.setMouseTracking() setDockNestingEnabled() setCorner() addDockWidget() Relation 473 660 33 121 lt=<<<- 10.0;10.0;10.0;90.0 UMLClass 385 330 187 66 UC1 (textBrowserClass) -- setText() Relation 462 385 33 121 lt=<<. 10.0;10.0;10.0;90.0 UMLClass 715 352 352 363 ComponentSelector -- + Dict1: dictionary = dict() + instance: list = [ChemsepDatabase()] + lines: list = [] + model: QStringListModel() + completer: QCompleter() -- + final_list(*list_name) + isCompSelected() + get_object(component) + get_original_name(component, removing_attrib) + compoundSelection() _+ setCompounds(compounds)_ + addToTable(a) + addCompToList(comp) + removeItems() + Show_Error() + cancel() + getComp() + final_mo() UMLClass 737 748 253 462 Container -- + unitOp: list = [] + termoPackage = None + compounds = None + conn: dictionary = defaultdict(list) + op: dictionary = defaultdict(list) + ip: dictionary = defaultdict(list) + msg + opl: list = [] + result: list = [] + graphics: Graphics(unitOp) + scene : graphics.getScene() -- + currentTime() + addUnitOp(obj, graphicsView) + delete(l) + fetchObject(name) + addCompounds(comp) + add_thermoPackage(thermo) + msgBrowser() + simulate(mode) + flatlist(lst) + PUSH(fileName, data) + CLEAN_FILE(fileName) + POP(fileName) + get_last_list(fileName) UMLClass 1078 836 374 187 Graphics -- + scene: QGraphicsScene() + pos: QPointF = None + unitOp: list = unitOp -- + getScene() + getComponentSelector() + createNodeItem(unitOpr, container, graphicsView) + boundingRect() + loadCanvas(obj) UMLClass 1144 528 231 165 QDialog -- lineEdit: UC2 compoundSelectButton: UC3 pushButton: UC4 pushButton_2: UC4 pshButton_3: UC4 -- setupUi() show() UMLClass 1144 220 231 55 QStringListModel -- setStringList() UMLClass 1430 517 231 77 UC3 (selectButtonClass) -- clicked.connect() setAutoDefault() UMLClass 1144 297 231 77 QCompleter -- setCaseSensitivity() setModel() UMLClass 1144 407 231 55 UC2 (lineEditClass) -- setCompleter() UMLClass 1430 616 231 55 UC4 (pushButtonClass) -- clicked.connect() UMLClass 1045 1089 440 583 NodeItem -- + obj: UnitOperation = unitOpr + container: Container = container + graphicsView: QGraphicsView = graphicsView + name: string = obj.name + type: string = obj.type + default_tooltip: string + default_tooltip_dict: dictionary + nin: int = obj.no_of_inputs + nop: int = obj.no_of_outputs + text: string = user_input + ok: boolean = user_input + dockWidget: DockWidget() or DockWidgetMaterialStream() or DockWidgetMixer() or DockWidgetSplitter() or DockWidgetFlash() or DockWidgetCompoundSeparator() or DockWidgetDistillationColumn() or DockWidgetShortcutColumn() + mainwindow = findMainWindow() + pic: QPixmap() + rect: QRect() + text: QGraphicsTextItem() + f: QFont() + brush: QBrush() + pen: QPen() + selPen: QPen() + Input:list = [NodeSocket(type)] + Output:list = [NodeSocket(type)] -- shape() boundingRect() paint() mouseMoveEvent(event) mouseDoubleClickEvent(event) + initializeSockets(type) UMLClass 1012 1705 187 77 QtWidgets.QGraphicsItem -- setTooltip(default_tooltip) setFlag UMLClass 1331 1782 231 55 QtWidgets.QInputDialog -- getText() UMLClass 1254 1870 231 55 QtGui.QFont -- setPointSize() UMLClass 1012 1826 231 121 QtWidgets.QGraphicTextItem -- setFont() setDefaultTextColor() setParentItem() setPos() setPlainText() UMLClass 759 1265 176 66 QtGui.QBrush -- setStyle() setColor() UMLClass 462 1265 231 88 QtGui.QPen -- setStyle() setColor() setWidth() UMLClass 737 1419 231 363 NodeSocket -- + rect: QRect = rect + type: string = socketType + parent: NodeItem = parent + newLine: NodeLine = None + otherLine: NodeLine = None + brush: QBrush() + pen: QPen() + outLines: list = [] + inLines: list = [] -- shape() boundingRect() paint() mousePressEvent(event) mouseMoveEvent(event) mouseReleaseEvent(event) hoverEnterEvent(event) hoverLeaveEvent(event) + getCenter() UMLClass 385 1419 231 418 NodeLine -- + _pointA: QPointF = pointA + _pointB: QPointF = pointB + _source: QPointF = None + _targer: QPointF = None + socket: string = socket + pen: QPen() -- updatePath() paint() __delete__(instance) + pointA() + pointA(point) + pointB() + pointB(poing) + source() + target() UMLClass 220 1265 231 88 QtWigets.QGraphicsPathItem -- setZValue() setBrush() setPen() UMLClass 2101 396 264 330 DockWidgetMaterialStream -- + name: string = name + obj: UnitOperations = obj + type: string = comptype + inputdict: dictionary = {} + dict: dictionary = {} + x_pclist: list = [] + nameType: string = None + container: Container = container + header: QTreeWidgetItem() -- + modes() + modeSelection() + inputparamslist() + param() + resultsCategory(name) + _showResult(lst)_ + Show_Error() UMLClass 1430 704 231 55 UC5 (comboBoxClass) -- currentIndexChanged.connect() UMLClass 1716 616 264 308 DockWidget -- + name: string = name + obj: UnitOperations = obj + type: string = comptype + inputdict: dictionary = {} + dict: dictionary = {} + x_pclist: list = [] + nameType: string = None + container: Container = container -- + modes() + modeSelection() + inputparamslist() + param() + resultsCategory(name) _+ showResult(lst)_ + Show_Error() UMLClass 1760 385 231 176 QDockWidget -- pushButton_2: UC4 comboBox: UC5 btn:UC4 -- setupUi() setWindowTitle() hide() UMLClass 2101 1232 264 275 DockWidgetShortcutColumn -- + name: string = name + obj: UnitOperations = obj + type: string = comptype + inputdict: list = [] + dict: list = [] + nameType: string = None + container: Container = container -- + inputparamslist() + fun() + param() + Show_Error() _+ showResult(lst)_ + resultCategory(name) UMLClass 2101 1012 264 198 DockWidgetMixer DockWidgetCompoundSeparator -- + name: string = name + obj: UnitOperations = obj + type: string = comptype + inputdict: list = [] + dict: list = [] -- + inputparamslist() + param() + Show_Error() UMLClass 2101 770 264 220 DockWidgetSplitter DockWidgetFlash -- + name: string = name + obj: UnitOperations = obj + type: string = comptype + inputdict: list = [] + dict: list = [] -- + inputparamslist() + fun() + param() + Show_Error() UMLClass 1606 957 451 473 Flowsheet -- + sim_name: string = 'Simulator' + sim_method: string = '' + UnitOpn: list = [] + data: list = [] + compounds: list = [] + interface: string = '' + omc_path: string = None + omc_path: string = cwd() + sim_dir_path: string = join(curr_path, sim_name) + Flomo_path: string = join(ssim_dir_path, 'Flowsheet.mo') + eqn_mos_path: string = join(sim_dir_path, 'simlateEQN.mos') + sm_mos_path: string = join(sim_dir_path, 'simulateSM.mos') + resdata: list = [] + stdout = None + stderr = None -- + get_omc_path() + add_UnitOpn() + remove_UnitOpn() + add_comp_list() + send_for_simulationEqn() + send_for_simulationSM() + ExtData() + simulateEQN() + simulateSM() UMLClass 1650 1694 297 517 MaterialStream -- _+ counter: int = 1_ + name: string = 'MaterialStream' + counter + type: string = 'MaterialStream' + CompNames: string = CompNames + count: int = counter + thermoPackage: string = 'RaoultsLaw' + mode1: string = 'P' + mode2: string = 'T' + mode1val: string = '' + mode2Val: string = '' + OM_data_init: string = '' + OM_data_eqn: string = '' + no_of_inputs: int = 1 + no_of_outputs: int = 2 + x: int = 2500-30 + y: int = 2500-30 + startDict: dictionary = {} + eqnDict: dictionary = {} + modesList: list = ['PT',...] + variables: dictionary = {'P':{..},...} -- + paramgetter(mode) + paramsetter(params) + setPos(pos) + GetMinEqnValues() + GetStartValues() + OM_Flowsheet_Initialize() + OM_Flowsheet_Equation() UMLClass 2068 1694 297 572 UnitOperations -- _+ counter: int = 1_ + OM_data_eqn: string = '' + OM_data_init: string = '' + InputStms: list = [] + OutputStms: list = [] + compounds: list = compound_selected + name: string = '' + mode: string = None + modeVal: string = None + type: string = None + no_of_inputs: int = 1 + no_of_outputs: int = 1 + x: int = 2500-30 + y: int = 2500-30 + pos: QPointF(x, y) + count: int = counter + variables: dictionary = {} + modesList: list = [] + parameters: list = [] + extra: list = [] + ForNaming: list = [] + multidict: list = [] + ThermoPackReq: boolean = False + thermoPackage: list = None -- + paramgetter(mode) + paramsetter(params) + setPos(pos) + add_connection(flag, UnitOpr) + OM_Flowsheet_Initialize() + OM_Flowsheet_Equation() UMLClass 0 935 275 264 Bin_Phase_env -- + comp: CompoundSelector = comp + compounds: list = comp.getComp() + lines: list = [line.rstrip('\n')...] + counter: int = 1 -- setupUi() + button_handler() + T_xy() + P_xy() + get_omc_path() + plot() + pressEvent(evt) + entered(items) UMLClass 770 154 231 154 ChemsepDatabase -- + comp_name_list: list = list() + name: string = 'chemsep' + comp_prop_list: list = list() -- + get_comp_name_list() + get_value(comps, attrib) + get_comp_prop(comps) Relation 616 704 132 132 lt=<- 100.0;10.0;100.0;100.0;10.0;100.0 Relation 616 902 143 33 lt=<- 110.0;10.0;10.0;10.0 Relation 869 297 33 77 lt=<<<- 10.0;10.0;10.0;50.0 Relation 1056 594 110 33 lt=<<<- 80.0;10.0;10.0;10.0 Relation 1243 451 33 99 lt=<<. 10.0;10.0;10.0;70.0 Relation 1243 363 33 66 10.0;10.0;10.0;40.0 Relation 1243 264 33 55 10.0;10.0;10.0;30.0 Relation 1364 550 88 33 lt=<<. 60.0;10.0;10.0;10.0 Relation 1364 627 88 33 lt=<<. 60.0;10.0;10.0;10.0 Relation 979 935 121 33 lt=<- 90.0;10.0;10.0;10.0 Relation 1243 1012 33 99 lt=<- 10.0;70.0;10.0;10.0 Relation 957 1529 110 33 lt=<- 10.0;10.0;80.0;10.0 Relation 605 1529 154 33 lt=<- 10.0;10.0;120.0;10.0 Relation 341 1342 165 99 lt=<<. 10.0;10.0;130.0;70.0 Relation 495 1342 99 99 lt=<<. 70.0;10.0;10.0;70.0 Relation 847 1320 33 121 lt=<<. 10.0;10.0;10.0;90.0 Relation 924 1298 143 33 lt=<<. 10.0;10.0;110.0;10.0 Relation 1100 1661 33 66 lt=<<. 10.0;40.0;10.0;10.0 Relation 1441 1661 33 143 lt=<<. 10.0;110.0;10.0;10.0 Relation 1287 1661 33 231 lt=<<. 10.0;190.0;10.0;10.0 Relation 1210 1661 33 187 lt=<<. 10.0;150.0;10.0;10.0 Relation 979 1034 649 33 lt=<- 570.0;10.0;10.0;10.0 Relation 1529 1034 704 682 lt=<- 620.0;600.0;620.0;520.0;10.0;520.0;10.0;10.0 Relation 1782 1595 33 121 lt=<- 10.0;90.0;10.0;10.0 Relation 1474 539 1023 1023 lt=<- 810.0;10.0;910.0;10.0;910.0;910.0;10.0;910.0 Relation 2354 858 143 33 lt=<- 10.0;10.0;110.0;10.0 Relation 2354 1100 143 33 lt=<- 10.0;10.0;110.0;10.0 Relation 2354 1353 143 33 lt=<- 10.0;10.0;110.0;10.0 Relation 1969 737 528 33 lt=<- 10.0;10.0;460.0;10.0 Relation 1826 550 33 88 lt=<<. 10.0;10.0;10.0;60.0 Relation 1980 429 143 33 lt=<<. 10.0;10.0;110.0;10.0 Relation 1980 462 154 330 lt=<<. 10.0;10.0;120.0;280.0 Relation 1980 506 143 528 lt=<<. 10.0;10.0;110.0;460.0 Relation 1980 550 143 715 lt=<<. 10.0;10.0;110.0;630.0 Relation 264 1012 99 33 lt=<<<- 10.0;10.0;70.0;10.0 Relation 1650 638 88 33 lt=<<. 10.0;10.0;60.0;10.0 Relation 1650 726 88 33 lt=<<. 10.0;10.0;60.0;10.0 UMLNote 1804 165 176 55 UC is the abbreviation for unknown class. bg=white UMLClass 1793 242 231 77 Graphics.py -- findMainWindow() UMLNote 1100 0 341 187 OMCS Class Diagram -- Initial version : Author - Saurabh Agarwala Date - 7th December 2019 Contact - saur.agarwala@gmail.com -- Current final version : Author - Thiha Min Maung Date - 19th February 2020 Contact - lucaszhao999@gmail.com bg=white UMLClass 2442 2145 231 187 Heater Cooler AdiabaticCompressor AdiabaticExpander Valve Pump Flash -- UMLClass 2442 1925 231 55 Mixer -- + Pout_modes: list = [...] UMLClass 2442 1991 231 55 Splitter -- + CalcType_modes: list = [...] UMLClass 2442 2068 231 55 CompoundSeparator -- + SepFact_modes: list = [...] UMLClass 2442 1716 275 110 DistillationColumn -- + EngStm1:string = 'EngStm1'+name + EngStm2: string = 'EngStm2'+name + Cspec_list: list = [...] + Rsepc_list: list = [...] UMLClass 2442 1837 275 77 ShortcutColumn -- + EngStm1:string = 'EngStm1'+name + EngStm2: string = 'EngStm2'+name Relation 2354 1760 110 33 lt=<<- 10.0;10.0;80.0;10.0 Relation 2354 1859 110 33 lt=<<- 10.0;10.0;80.0;10.0 Relation 2354 1947 110 33 lt=<<- 10.0;10.0;80.0;10.0 Relation 2354 2024 110 33 lt=<<- 10.0;10.0;80.0;10.0 Relation 2354 2090 110 33 lt=<<- 10.0;10.0;80.0;10.0 Relation 2354 2211 110 33 lt=<<- 10.0;10.0;80.0;10.0