From: michael Date: Sat, 30 Jan 2021 20:55:23 +0000 (+0100) Subject: Separated the data depending on salome from the data not depending in salome X-Git-Tag: V9_7_0~57 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=86b9c30019e1ddee7bb367eae674c9515f3d1892;p=tools%2Fsolverlab.git Separated the data depending on salome from the data not depending in salome --- diff --git a/CoreFlows/gui/CFDesktop.py b/CoreFlows/gui/CFDesktop.py new file mode 100755 index 0000000..df83296 --- /dev/null +++ b/CoreFlows/gui/CFDesktop.py @@ -0,0 +1,104 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# Author : A. Bruneton +# + +from PyQt5.QtCore import Qt +from PyQt5.QtWidgets import QMainWindow,QMenu, QDockWidget +from MainCFWidget import MainCFWidget + +class CFDesktop(QMainWindow): + """ + """ + VIEW_TYPE = "COREFLOWS" + + def __init__(self, sgPyQt): + QMainWindow.__init__(self) + self._sgPyQt = sgPyQt + self._mainView = None + self._viewID = -1 + + def initialize(self): + """ Initialize is called later than __init__() so that the Desktop and the SgPyQt + objects can be properly initialized. + """ + self._currID = 1235 + + self._sgDesktop = self._sgPyQt.getDesktop() + self.createIDs() + self.createActions() + + self.createToolbars() + self.createMenus() + + def generateID(self): + self._currID += 1 + return self._currID + + def createIDs(self): + pass + # Actions +# self.itemDelActionID = self.generateID() +# self.cpsActionID = self.generateID() +# self.addPSActionID = self.generateID() +# +# # Menus +# self.etudeMenuID = self.generateID() + + def createActions(self): + pass +# ca = self._sgPyQt.createAction +# self.itemDelAction = ca(self.itemDelActionID, "Delete selected", "Delete selected", "", "") +# self.cpsAction = ca(self.cpsActionID, "Clear plot set", "Clear plot set", "", "") +# self.addPSAction = ca(self.addPSActionID, "Add plot set", "Add plot set", "", "") + + def createToolbars(self): + pass +# self.Toolbar = self._sgPyQt.createTool(self.tr("Toolbar")) +# self._sgPyQt.createTool(self.fileNewAction, self.Toolbar) +# self._sgPyQt.createTool(self.filePrintAction, self.Toolbar) +# sep = self._sgPyQt.createSeparator() +# self._sgPyQt.createTool(sep, self.Toolbar) +# self._sgPyQt.createTool(self.editUndoAction, self.Toolbar) +# self._sgPyQt.createTool(self.editRedoAction, self.Toolbar) + + def createMenus(self): + pass +# curveMenu = self._sgPyQt.createMenu( "Plot management", -1, self.etudeMenuID, self._sgPyQt.defaultMenuGroup() ) +# self._sgPyQt.createMenu(self.itemDelAction, curveMenu) + + def createView(self): + if self._mainView is None: + self._mainView = MainCFWidget() + vid = self._sgPyQt.createView(self.VIEW_TYPE, self._mainView) + return vid + + def showCentralWidget(self): + if self._viewID == -1: + self._viewID = self.createView() + else: + self._sgPyQt.activateView(self._viewID) + + def hideCentralWidget(self): + if self._viewID != -1: + self._sgPyQt.setViewVisible(self._viewID, False) diff --git a/CoreFlows/gui/CMakeLists.txt b/CoreFlows/gui/CMakeLists.txt old mode 100755 new mode 100644 index 1009e35..5fae7d7 --- a/CoreFlows/gui/CMakeLists.txt +++ b/CoreFlows/gui/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright (C) 2012-2014 CEA/DEN, EDF R&D +# Copyright (C) 2012-2021 CEA/DEN, EDF R&D, OPEN CASCADE # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -16,111 +16,41 @@ # # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -cmake_minimum_required (VERSION 3.1) -set(CMAKE_CXX_STANDARD 11) -set(CMAKE_CXX_STANDARD_REQUIRED ON) -INCLUDE(CMakeDependentOption) -# Versioning -# =========== -# Project name, upper case -STRING(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UC) -SET(${PROJECT_NAME_UC}_MAJOR_VERSION 7) -SET(${PROJECT_NAME_UC}_MINOR_VERSION 8) -SET(${PROJECT_NAME_UC}_PATCH_VERSION 0) -SET(${PROJECT_NAME_UC}_VERSION - ${${PROJECT_NAME_UC}_MAJOR_VERSION}.${${PROJECT_NAME_UC}_MINOR_VERSION}.${${PROJECT_NAME_UC}_PATCH_VERSION}) -SET(${PROJECT_NAME_UC}_VERSION_DEV 1) -# User options -# ============ -OPTION(SALOME_BUILD_DOC "Generate SALOME CoreFlows documentation" ON) -OPTION(SALOME_BUILD_TESTS "Generate SALOME CoreFlows tests" ON) - -# Common CMake macros -# =================== -SET(CONFIGURATION_ROOT_DIR $ENV{CONFIGURATION_ROOT_DIR} CACHE PATH "Path to the Salome CMake configuration files") -IF(EXISTS ${CONFIGURATION_ROOT_DIR}) - LIST(APPEND CMAKE_MODULE_PATH "${CONFIGURATION_ROOT_DIR}/cmake") - INCLUDE(SalomeMacros NO_POLICY_SCOPE) -ELSE() - MESSAGE(FATAL_ERROR "We absolutely need the Salome CMake configuration files, please define CONFIGURATION_ROOT_DIR !") -ENDIF() - -# Find KERNEL -# ============== -SET(KERNEL_ROOT_DIR $ENV{KERNEL_ROOT_DIR} CACHE PATH "Path to the Salome KERNEL") -IF( EXISTS ${KERNEL_ROOT_DIR} ) - FIND_PACKAGE(SalomeKERNEL REQUIRED) -ELSE( EXISTS ${KERNEL_ROOT_DIR} ) - MESSAGE(FATAL_ERROR "We absolutely need a Salome KERNEL, please define KERNEL_ROOT_DIR!") -ENDIF( EXISTS ${KERNEL_ROOT_DIR} ) - -# Find SALOME GUI -# ============== -SET(GUI_ROOT_DIR $ENV{GUI_ROOT_DIR} CACHE PATH "Path to the Salome GUI") -IF(EXISTS ${GUI_ROOT_DIR}) - FIND_PACKAGE(SalomeGUI) -ELSE(EXISTS ${GUI_ROOT_DIR}) - MESSAGE(FATAL_ERROR "We absolutely need a Salome GUI, please define GUI_ROOT_DIR!") -ENDIF(EXISTS ${GUI_ROOT_DIR}) - -# Platform setup -# ============== -INCLUDE(SalomeSetupPlatform) # From KERNEL - -# Prerequisites -# ============= - -# Mandatory products -IF( ${SalomeKERNEL_VERSION} STRLESS "7.8.0") - FIND_PACKAGE(SalomePython REQUIRED) -ELSE() - FIND_PACKAGE(SalomePythonInterp REQUIRED) - FIND_PACKAGE(SalomePythonLibs REQUIRED) -ENDIF() -MESSAGE(STATUS "SalomeKERNEL_VERSION is ${SalomeKERNEL_VERSION}") - -# Qt5 -FIND_PACKAGE(SalomeQt5 REQUIRED COMPONENTS QtCore QtGui) - -IF(SALOME_BUILD_DOC) -# FIND_PACKAGE(SalomeDoxygen) -# FIND_PACKAGE(SalomeSphinx) -# SALOME_LOG_OPTIONAL_PACKAGE(Doxygen SALOME_BUILD_DOC) -# SALOME_LOG_OPTIONAL_PACKAGE(Sphinx SALOME_BUILD_DOC) -# ADD_DEFINITIONS(-DDOXYGEN_IS_OK) -ENDIF() - -IF(SALOME_BUILD_TESTS) - ENABLE_TESTING() -ENDIF() - -# Detection summary: -SALOME_PACKAGE_REPORT_AND_CHECK() - -# Directories -# =========== -SET(SALOME_INSTALL_LIBS "${SALOME_INSTALL_LIBS}" CACHE PATH "Install path: SALOME libs") -SET(SALOME_INSTALL_PYTHON "${SALOME_INSTALL_PYTHON}" CACHE PATH - "Install path: SALOME Python scripts") -SET(SALOME_INSTALL_SCRIPT_PYTHON "${SALOME_INSTALL_SCRIPT_PYTHON}" CACHE PATH - "Install path: SALOME Python scripts") -SET(SALOME_INSTALL_CMAKE_LOCAL ${SALOME_INSTALL_CMAKE_LOCAL} CACHE PATH - "Install path: local SALOME CMake files") -SET(SALOME_INSTALL_RES "${SALOME_INSTALL_RES}" CACHE PATH "Install path: SALOME resources") -SET(SALOME_INSTALL_DOC "${SALOME_INSTALL_DOC}" CACHE PATH "Install path: SALOME documentation") -SET(SALOME_INSTALL_HEADERS ${SALOME_INSTALL_HEADERS} CACHE PATH "Install path: SALOME headers") - -# Specific to CoreFlows: -SET(SALOME_CoreFlows_INSTALL_RES_DATA ${SALOME_INSTALL_RES}/coreflows CACHE PATH "Install path: SALOME COREFLOWS specific resources") - -# Sources -# ======== -ADD_SUBDIRECTORY(src) -ADD_SUBDIRECTORY(resources) -IF(SALOME_BUILD_DOC) -# ADD_SUBDIRECTORY(doc) -ENDIF() +SET(GUI_bin_SCRIPTS + ${CMAKE_CURRENT_SOURCE_DIR}/CoreFlows_Standalone.py +) + +SET(GUI_lib_SCRIPTS + ${CMAKE_CURRENT_SOURCE_DIR}/CFDesktop.py +) + + +IF ( (EXISTS $ENV{CONFIGURATION_ROOT_DIR}) AND (EXISTS $ENV{KERNEL_ROOT_DIR}) AND (EXISTS $ENV{GUI_ROOT_DIR}) ) + ADD_SUBDIRECTORY(salome) +ELSE ( (EXISTS $ENV{CONFIGURATION_ROOT_DIR}) AND (EXISTS $ENV{KERNEL_ROOT_DIR}) AND (EXISTS $ENV{GUI_ROOT_DIR}) ) + INSTALL(FILES ${GUI_bin_SCRIPTS} DESTINATION bin/salome) + INSTALL(FILES ${GUI_lib_SCRIPTS} DESTINATION lib/python) + + # Configure file SalomePyQt_MockUp.py + SET(SGPYQT_RES_DIR "share/salome/resources") + configure_file( + SalomePyQt_MockUp.py.in + SalomePyQt_MockUp.py + @ONLY + ) + INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/SalomePyQt_MockUp.py DESTINATION lib/python) + # Configure file utils.py + SET(SALOME_INSTALL_PYTHON "lib/python")#This is to use the same variable as salome + configure_file( + utils.py.in + utils.py + @ONLY + ) + INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/utils.py DESTINATION lib/python) +ENDIF( (EXISTS $ENV{CONFIGURATION_ROOT_DIR}) AND (EXISTS $ENV{KERNEL_ROOT_DIR}) AND (EXISTS $ENV{GUI_ROOT_DIR}) ) + +ADD_SUBDIRECTORY(ui) diff --git a/CoreFlows/gui/CoreFlows_Standalone.py b/CoreFlows/gui/CoreFlows_Standalone.py new file mode 100755 index 0000000..37db116 --- /dev/null +++ b/CoreFlows/gui/CoreFlows_Standalone.py @@ -0,0 +1,60 @@ +# -*- coding: latin-1 -*- +# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# Author : A. Bruneton +# +import sys, os +from PyQt5.QtWidgets import QApplication +#from PyQt5.QtCore import SIGNAL, SLOT + +from CFDesktop import CFDesktop +import SalomePyQt_MockUp +from PyQt5.QtCore import QTimer, QTranslator, Qt + +desktop = None + +def activate(): + """This method mimicks SALOME's module activation """ + global desktop + fv = desktop.showCentralWidget() + return True + +def main(args) : + global desktop + + app = QApplication(args) + + desktop = CFDesktop(None) + sgPyQt = SalomePyQt_MockUp.SalomePyQt(desktop) + desktop._sgPyQt = sgPyQt + desktop.initialize() + activate() + desktop.show() + + + # +# app.connect(app,SIGNAL("lastWindowClosed()"),app,SLOT("quit()")) + app.lastWindowClosed.connect(quit) + app.exec_() + +if __name__ == "__main__" : + main(sys.argv) diff --git a/CoreFlows/gui/SalomePyQt_MockUp.py.in b/CoreFlows/gui/SalomePyQt_MockUp.py.in new file mode 100755 index 0000000..f0b8af1 --- /dev/null +++ b/CoreFlows/gui/SalomePyQt_MockUp.py.in @@ -0,0 +1,154 @@ +# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# Author : A. Bruneton +# + +from PyQt5.QtWidgets import QApplication, QTabWidget +from PyQt5.QtWidgets import QAction, QMenu, QDesktopWidget, QFileDialog +from PyQt5.QtGui import QIcon, QPixmap +#from PyQt5.QtCore import SIGNAL, SLOT, QObject, pyqtSlot, pyqtSignal +from PyQt5.QtCore import QObject, pyqtSlot, pyqtSignal + +RESOURCE_DIR = "@SGPYQT_RES_DIR@" + +class SalomePyQt(QObject): + """ A pure Qt implementation of the SgPyQt API (usually provided in the SALOME context) + This class can be used to mimick the true SALOME object without having to launch + SALOME + """ + currentTabChanged = pyqtSignal(int) + + START_VIEW_ID = 0 + + def __init__(self, mainWindow=None): + QObject.__init__(self) + self._mainWindow = mainWindow + self._tabWidget = QTabWidget() + self._tabWidget.setObjectName("TabWidget") + self._viewIDs = {} + self._menuBar = None + if self._mainWindow: + self._menuBar = self._mainWindow.menuBar() + self._mainWindow.setCentralWidget(self._tabWidget) +# self.connect(self._tabWidget, SIGNAL("currentChanged(int)"), self, SLOT("onTabChanged(int)")) + self._tabWidget.currentChanged.connect(self.onTabChanged) + self._blockSignal = False + + def getDesktop(self): + return self._mainWindow + + def getFileName(self, parent_widget, initial, filters, caption, do_open): + fil = ";;".join([str(f) for f in filters]) + return QFileDialog.getOpenFileName(parent=parent_widget, + caption=caption, directory=initial, filter=fil); + + @pyqtSlot(int) + def onTabChanged(self, index): + if self._blockSignal: + return + invDict = dict([(v, k) for k,v in self._viewIDs.items()]) + if index in invDict: +# if invDict.has_key(index): + self._blockSignal = True + self.currentTabChanged.emit(invDict[index]) + self._blockSignal = False + + def createView(self, name, widget): + self.START_VIEW_ID += 1 + idx = self._tabWidget.insertTab(-1, widget, name) + self._viewIDs[self.START_VIEW_ID] = idx + return self.START_VIEW_ID + + def activateView(self, viewID): + idx = self._viewIDs[viewID] + self._tabWidget.setCurrentIndex(idx) + + def setViewVisible(self, viewID, isVis): + ## TODO: improve to really remove tab + if isVis: + self.activateView(viewID) + + def closeView(self, viewID): + self._blockSignal = True + idxClosed = self._viewIDs[viewID] + # QTabWidget doesn't clean after itself when removing a tab + w = self._tabWidget.widget(idxClosed) + self._tabWidget.removeTab(idxClosed) + try: + w.clearAll() + except: + pass + # Update the other tab indices which are now shifted: + for k, idx in self._viewIDs.items(): + if idx > idxClosed: + self._viewIDs[k] -= 1 + self._blockSignal = False + + def setViewTitle(self, viewID, title): + idx = self._viewIDs[viewID] + self._tabWidget.setTabText(idx, title) + + def createAction(self, id, short_name, long_name, tooltip, icon): + import os + return QAction(QIcon(QPixmap(os.path.normpath(icon))),short_name, None) + + def defaultMenuGroup(self): + return None + + def createMenu(self, name_or_action, pos_or_menu, menuId=-1, menuGroup=None): + if not self._mainWindow is None: + if isinstance(name_or_action, str): + return self.__createMenu1( name_or_action, pos_or_menu, menuId, menuGroup) + else: + return self.__createMenu2(name_or_action, pos_or_menu) + + def __createMenu1(self, name, pos, menuId, menuGroup): + menu = QMenu(name, self._menuBar) + self._menuBar.addMenu(menu) + return menu + + def __createMenu2(self, action, menu): + menu.addAction(action) + + def createSeparator(self): + return None + + def createTool(self, toolbar_name_or_action, toolbar=None): + if not self._mainWindow is None: + if isinstance(toolbar_name_or_action, str): + return self.__createTool1(toolbar_name_or_action) + else: + return self.__createTool2(toolbar_name_or_action, toolbar) + + def __createTool1(self, toolbar_name): + return None + + def __createTool2(self, action, toolbar): + return None + + def loadIcon(self, module_name, file_name): + import os + mod_dir = os.getenv("%s_ROOT_DIR" % module_name) + mod_lc = module_name.lower() + res_path = os.path.join(mod_dir, RESOURCE_DIR, mod_lc, file_name) + # e.g. MODULE_ROOT_DIR/share/resource/module/image.png + return QIcon(res_path) diff --git a/CoreFlows/gui/resources/CMakeLists.txt b/CoreFlows/gui/resources/CMakeLists.txt deleted file mode 100755 index a09b35a..0000000 --- a/CoreFlows/gui/resources/CMakeLists.txt +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright (C) 2010-2015 CEA/DEN, EDF R&D -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# - -SALOME_CONFIGURE_FILE(SalomeApp.xml.in SalomeApp.xml) - -SET(_res_FILES - ${CMAKE_CURRENT_BINARY_DIR}/SalomeApp.xml - icon.png - ) - -INSTALL(FILES ${_res_FILES} DESTINATION ${SALOME_CoreFlows_INSTALL_RES_DATA}) diff --git a/CoreFlows/gui/resources/SalomeApp.xml.in b/CoreFlows/gui/resources/SalomeApp.xml.in deleted file mode 100755 index 26b2369..0000000 --- a/CoreFlows/gui/resources/SalomeApp.xml.in +++ /dev/null @@ -1,36 +0,0 @@ - - -
- - - - - -
-
- - -
-
diff --git a/CoreFlows/gui/resources/icon.png b/CoreFlows/gui/resources/icon.png deleted file mode 100644 index 981c846..0000000 Binary files a/CoreFlows/gui/resources/icon.png and /dev/null differ diff --git a/CoreFlows/gui/salome/CMakeLists.txt b/CoreFlows/gui/salome/CMakeLists.txt new file mode 100755 index 0000000..1009e35 --- /dev/null +++ b/CoreFlows/gui/salome/CMakeLists.txt @@ -0,0 +1,126 @@ +# Copyright (C) 2012-2014 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +cmake_minimum_required (VERSION 3.1) +set(CMAKE_CXX_STANDARD 11) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +INCLUDE(CMakeDependentOption) + +# Versioning +# =========== +# Project name, upper case +STRING(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UC) + +SET(${PROJECT_NAME_UC}_MAJOR_VERSION 7) +SET(${PROJECT_NAME_UC}_MINOR_VERSION 8) +SET(${PROJECT_NAME_UC}_PATCH_VERSION 0) +SET(${PROJECT_NAME_UC}_VERSION + ${${PROJECT_NAME_UC}_MAJOR_VERSION}.${${PROJECT_NAME_UC}_MINOR_VERSION}.${${PROJECT_NAME_UC}_PATCH_VERSION}) +SET(${PROJECT_NAME_UC}_VERSION_DEV 1) + +# User options +# ============ +OPTION(SALOME_BUILD_DOC "Generate SALOME CoreFlows documentation" ON) +OPTION(SALOME_BUILD_TESTS "Generate SALOME CoreFlows tests" ON) + +# Common CMake macros +# =================== +SET(CONFIGURATION_ROOT_DIR $ENV{CONFIGURATION_ROOT_DIR} CACHE PATH "Path to the Salome CMake configuration files") +IF(EXISTS ${CONFIGURATION_ROOT_DIR}) + LIST(APPEND CMAKE_MODULE_PATH "${CONFIGURATION_ROOT_DIR}/cmake") + INCLUDE(SalomeMacros NO_POLICY_SCOPE) +ELSE() + MESSAGE(FATAL_ERROR "We absolutely need the Salome CMake configuration files, please define CONFIGURATION_ROOT_DIR !") +ENDIF() + +# Find KERNEL +# ============== +SET(KERNEL_ROOT_DIR $ENV{KERNEL_ROOT_DIR} CACHE PATH "Path to the Salome KERNEL") +IF( EXISTS ${KERNEL_ROOT_DIR} ) + FIND_PACKAGE(SalomeKERNEL REQUIRED) +ELSE( EXISTS ${KERNEL_ROOT_DIR} ) + MESSAGE(FATAL_ERROR "We absolutely need a Salome KERNEL, please define KERNEL_ROOT_DIR!") +ENDIF( EXISTS ${KERNEL_ROOT_DIR} ) + +# Find SALOME GUI +# ============== +SET(GUI_ROOT_DIR $ENV{GUI_ROOT_DIR} CACHE PATH "Path to the Salome GUI") +IF(EXISTS ${GUI_ROOT_DIR}) + FIND_PACKAGE(SalomeGUI) +ELSE(EXISTS ${GUI_ROOT_DIR}) + MESSAGE(FATAL_ERROR "We absolutely need a Salome GUI, please define GUI_ROOT_DIR!") +ENDIF(EXISTS ${GUI_ROOT_DIR}) + +# Platform setup +# ============== +INCLUDE(SalomeSetupPlatform) # From KERNEL + +# Prerequisites +# ============= + +# Mandatory products +IF( ${SalomeKERNEL_VERSION} STRLESS "7.8.0") + FIND_PACKAGE(SalomePython REQUIRED) +ELSE() + FIND_PACKAGE(SalomePythonInterp REQUIRED) + FIND_PACKAGE(SalomePythonLibs REQUIRED) +ENDIF() +MESSAGE(STATUS "SalomeKERNEL_VERSION is ${SalomeKERNEL_VERSION}") + +# Qt5 +FIND_PACKAGE(SalomeQt5 REQUIRED COMPONENTS QtCore QtGui) + +IF(SALOME_BUILD_DOC) +# FIND_PACKAGE(SalomeDoxygen) +# FIND_PACKAGE(SalomeSphinx) +# SALOME_LOG_OPTIONAL_PACKAGE(Doxygen SALOME_BUILD_DOC) +# SALOME_LOG_OPTIONAL_PACKAGE(Sphinx SALOME_BUILD_DOC) +# ADD_DEFINITIONS(-DDOXYGEN_IS_OK) +ENDIF() + +IF(SALOME_BUILD_TESTS) + ENABLE_TESTING() +ENDIF() + +# Detection summary: +SALOME_PACKAGE_REPORT_AND_CHECK() + +# Directories +# =========== +SET(SALOME_INSTALL_LIBS "${SALOME_INSTALL_LIBS}" CACHE PATH "Install path: SALOME libs") +SET(SALOME_INSTALL_PYTHON "${SALOME_INSTALL_PYTHON}" CACHE PATH + "Install path: SALOME Python scripts") +SET(SALOME_INSTALL_SCRIPT_PYTHON "${SALOME_INSTALL_SCRIPT_PYTHON}" CACHE PATH + "Install path: SALOME Python scripts") +SET(SALOME_INSTALL_CMAKE_LOCAL ${SALOME_INSTALL_CMAKE_LOCAL} CACHE PATH + "Install path: local SALOME CMake files") +SET(SALOME_INSTALL_RES "${SALOME_INSTALL_RES}" CACHE PATH "Install path: SALOME resources") +SET(SALOME_INSTALL_DOC "${SALOME_INSTALL_DOC}" CACHE PATH "Install path: SALOME documentation") +SET(SALOME_INSTALL_HEADERS ${SALOME_INSTALL_HEADERS} CACHE PATH "Install path: SALOME headers") + +# Specific to CoreFlows: +SET(SALOME_CoreFlows_INSTALL_RES_DATA ${SALOME_INSTALL_RES}/coreflows CACHE PATH "Install path: SALOME COREFLOWS specific resources") + +# Sources +# ======== +ADD_SUBDIRECTORY(src) +ADD_SUBDIRECTORY(resources) +IF(SALOME_BUILD_DOC) +# ADD_SUBDIRECTORY(doc) +ENDIF() + diff --git a/CoreFlows/gui/salome/resources/CMakeLists.txt b/CoreFlows/gui/salome/resources/CMakeLists.txt new file mode 100755 index 0000000..a09b35a --- /dev/null +++ b/CoreFlows/gui/salome/resources/CMakeLists.txt @@ -0,0 +1,27 @@ +# Copyright (C) 2010-2015 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + +SALOME_CONFIGURE_FILE(SalomeApp.xml.in SalomeApp.xml) + +SET(_res_FILES + ${CMAKE_CURRENT_BINARY_DIR}/SalomeApp.xml + icon.png + ) + +INSTALL(FILES ${_res_FILES} DESTINATION ${SALOME_CoreFlows_INSTALL_RES_DATA}) diff --git a/CoreFlows/gui/salome/resources/SalomeApp.xml.in b/CoreFlows/gui/salome/resources/SalomeApp.xml.in new file mode 100755 index 0000000..26b2369 --- /dev/null +++ b/CoreFlows/gui/salome/resources/SalomeApp.xml.in @@ -0,0 +1,36 @@ + + +
+ + + + + +
+
+ + +
+
diff --git a/CoreFlows/gui/salome/resources/icon.png b/CoreFlows/gui/salome/resources/icon.png new file mode 100644 index 0000000..981c846 Binary files /dev/null and b/CoreFlows/gui/salome/resources/icon.png differ diff --git a/CoreFlows/gui/salome/src/.CMakeLists.txt.swp b/CoreFlows/gui/salome/src/.CMakeLists.txt.swp new file mode 100755 index 0000000..01f1117 Binary files /dev/null and b/CoreFlows/gui/salome/src/.CMakeLists.txt.swp differ diff --git a/CoreFlows/gui/salome/src/CMakeLists.txt b/CoreFlows/gui/salome/src/CMakeLists.txt new file mode 100755 index 0000000..a606ff0 --- /dev/null +++ b/CoreFlows/gui/salome/src/CMakeLists.txt @@ -0,0 +1,38 @@ +# Copyright (C) 2012-2014 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + + +SET(SGPYQT_RES_DIR "${SALOME_INSTALL_RES}") +SALOME_CONFIGURE_FILE(SalomePyQt_MockUp.py.in mockup/SalomePyQt_MockUp.py) +SALOME_CONFIGURE_FILE(utils.py.in ${CMAKE_CURRENT_BINARY_DIR}/utils.py) + +SET(_bin_SCRIPTS + SOLVERLABGUI.py + ${GUI_bin_SCRIPTS} +) + +SET(_lib_SCRIPTS + ${GUI_lib_SCRIPTS} + ${CMAKE_CURRENT_BINARY_DIR}/mockup/SalomePyQt_MockUp.py + ${CMAKE_CURRENT_BINARY_DIR}/utils.py +) + +SALOME_INSTALL_SCRIPTS("${_bin_SCRIPTS}" ${SALOME_INSTALL_SCRIPT_PYTHON}) +SALOME_INSTALL_SCRIPTS("${_lib_SCRIPTS}" ${SALOME_INSTALL_PYTHON}) + diff --git a/CoreFlows/gui/salome/src/SOLVERLABGUI.py b/CoreFlows/gui/salome/src/SOLVERLABGUI.py new file mode 100755 index 0000000..9f6813c --- /dev/null +++ b/CoreFlows/gui/salome/src/SOLVERLABGUI.py @@ -0,0 +1,109 @@ +# -*- coding: latin-1 -*- +# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# Author : A. Bruneton +# +import sys, os +from CFDesktop import CFDesktop + +desktop = None + +# Get SALOME PyQt interface +import SalomePyQt +import libSALOME_Swig + +######################################################## +# Global variables +######################################################## + +sgPyQt = SalomePyQt.SalomePyQt() +sg = libSALOME_Swig.SALOMEGUI_Swig() +sgDesktop = sgPyQt.getDesktop() + +moduleDesktop = {} + +######################################################## +# Internal methods +######################################################## + +def getStudyId(): + """This method returns the active study ID""" + return sgPyQt.getStudyId() + +def getStudy(): + """This method returns the active study""" + + studyId = _getStudyId() + study = getStudyManager().GetStudyByID( studyId ) + return study + +def getDesktop(): + """This method returns the current TRUST_PLOT2D desktop""" + + global desktop + return desktop + +def setDesktop( studyID ): + """This method sets and returns TRUST_PLOT2D desktop""" + + global moduleDesktop, desktop + + if not moduleDesktop.has_key( studyID ): + moduleDesktop[studyID] = CFDesktop( sgPyQt ) + moduleDesktop[studyID].initialize() + desktop = moduleDesktop[studyID] + return desktop + +################################################ +# Callback functions +################################################ + +def initialize(): + """This method is called when module is initialized. It performs initialization actions""" + setDesktop( getStudyId() ) + pass + +def activeStudyChanged( studyID ): + """This method is called when active study is changed""" + + setDesktop( getStudyId() ) + pass + +def windows(): + """This method is called when module is initialized. It returns a map of popup windows to be used by the module""" + wm = {} + return wm + +def views(): + """This method is called when module is initialized. It returns a list of 2D/3D views to be used by the module""" + return [] + +def activate(): + """This method mimicks SALOME's module activation """ + global desktop + fv = desktop.showCentralWidget() + return True + +def deactivate(): + """This method is called when module is deactivated""" + global moduleDesktop, widgetDialogBox + moduleDesktop[getStudyId()].hideCentralWidget() diff --git a/CoreFlows/gui/src/.CMakeLists.txt.swp b/CoreFlows/gui/src/.CMakeLists.txt.swp deleted file mode 100755 index 01f1117..0000000 Binary files a/CoreFlows/gui/src/.CMakeLists.txt.swp and /dev/null differ diff --git a/CoreFlows/gui/src/CFDesktop.py b/CoreFlows/gui/src/CFDesktop.py deleted file mode 100755 index df83296..0000000 --- a/CoreFlows/gui/src/CFDesktop.py +++ /dev/null @@ -1,104 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE -# -# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# Author : A. Bruneton -# - -from PyQt5.QtCore import Qt -from PyQt5.QtWidgets import QMainWindow,QMenu, QDockWidget -from MainCFWidget import MainCFWidget - -class CFDesktop(QMainWindow): - """ - """ - VIEW_TYPE = "COREFLOWS" - - def __init__(self, sgPyQt): - QMainWindow.__init__(self) - self._sgPyQt = sgPyQt - self._mainView = None - self._viewID = -1 - - def initialize(self): - """ Initialize is called later than __init__() so that the Desktop and the SgPyQt - objects can be properly initialized. - """ - self._currID = 1235 - - self._sgDesktop = self._sgPyQt.getDesktop() - self.createIDs() - self.createActions() - - self.createToolbars() - self.createMenus() - - def generateID(self): - self._currID += 1 - return self._currID - - def createIDs(self): - pass - # Actions -# self.itemDelActionID = self.generateID() -# self.cpsActionID = self.generateID() -# self.addPSActionID = self.generateID() -# -# # Menus -# self.etudeMenuID = self.generateID() - - def createActions(self): - pass -# ca = self._sgPyQt.createAction -# self.itemDelAction = ca(self.itemDelActionID, "Delete selected", "Delete selected", "", "") -# self.cpsAction = ca(self.cpsActionID, "Clear plot set", "Clear plot set", "", "") -# self.addPSAction = ca(self.addPSActionID, "Add plot set", "Add plot set", "", "") - - def createToolbars(self): - pass -# self.Toolbar = self._sgPyQt.createTool(self.tr("Toolbar")) -# self._sgPyQt.createTool(self.fileNewAction, self.Toolbar) -# self._sgPyQt.createTool(self.filePrintAction, self.Toolbar) -# sep = self._sgPyQt.createSeparator() -# self._sgPyQt.createTool(sep, self.Toolbar) -# self._sgPyQt.createTool(self.editUndoAction, self.Toolbar) -# self._sgPyQt.createTool(self.editRedoAction, self.Toolbar) - - def createMenus(self): - pass -# curveMenu = self._sgPyQt.createMenu( "Plot management", -1, self.etudeMenuID, self._sgPyQt.defaultMenuGroup() ) -# self._sgPyQt.createMenu(self.itemDelAction, curveMenu) - - def createView(self): - if self._mainView is None: - self._mainView = MainCFWidget() - vid = self._sgPyQt.createView(self.VIEW_TYPE, self._mainView) - return vid - - def showCentralWidget(self): - if self._viewID == -1: - self._viewID = self.createView() - else: - self._sgPyQt.activateView(self._viewID) - - def hideCentralWidget(self): - if self._viewID != -1: - self._sgPyQt.setViewVisible(self._viewID, False) diff --git a/CoreFlows/gui/src/CMakeLists.txt b/CoreFlows/gui/src/CMakeLists.txt deleted file mode 100755 index de2a067..0000000 --- a/CoreFlows/gui/src/CMakeLists.txt +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright (C) 2012-2014 CEA/DEN, EDF R&D -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# - - -ADD_SUBDIRECTORY(ui) - -SET(SGPYQT_RES_DIR "${SALOME_INSTALL_RES}") -SALOME_CONFIGURE_FILE(SalomePyQt_MockUp.py.in mockup/SalomePyQt_MockUp.py) -SALOME_CONFIGURE_FILE(utils.py.in ${CMAKE_CURRENT_BINARY_DIR}/utils.py) - -SET(_bin_SCRIPTS - SOLVERLABGUI.py - CoreFlows_Standalone.py -) - -SET(_lib_SCRIPTS - CFDesktop.py - ${CMAKE_CURRENT_BINARY_DIR}/mockup/SalomePyQt_MockUp.py - ${CMAKE_CURRENT_BINARY_DIR}/utils.py -) - -SALOME_INSTALL_SCRIPTS("${_bin_SCRIPTS}" ${SALOME_INSTALL_SCRIPT_PYTHON}) -SALOME_INSTALL_SCRIPTS("${_lib_SCRIPTS}" ${SALOME_INSTALL_PYTHON}) - diff --git a/CoreFlows/gui/src/CoreFlows_Standalone.py b/CoreFlows/gui/src/CoreFlows_Standalone.py deleted file mode 100755 index 37db116..0000000 --- a/CoreFlows/gui/src/CoreFlows_Standalone.py +++ /dev/null @@ -1,60 +0,0 @@ -# -*- coding: latin-1 -*- -# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE -# -# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# Author : A. Bruneton -# -import sys, os -from PyQt5.QtWidgets import QApplication -#from PyQt5.QtCore import SIGNAL, SLOT - -from CFDesktop import CFDesktop -import SalomePyQt_MockUp -from PyQt5.QtCore import QTimer, QTranslator, Qt - -desktop = None - -def activate(): - """This method mimicks SALOME's module activation """ - global desktop - fv = desktop.showCentralWidget() - return True - -def main(args) : - global desktop - - app = QApplication(args) - - desktop = CFDesktop(None) - sgPyQt = SalomePyQt_MockUp.SalomePyQt(desktop) - desktop._sgPyQt = sgPyQt - desktop.initialize() - activate() - desktop.show() - - - # -# app.connect(app,SIGNAL("lastWindowClosed()"),app,SLOT("quit()")) - app.lastWindowClosed.connect(quit) - app.exec_() - -if __name__ == "__main__" : - main(sys.argv) diff --git a/CoreFlows/gui/src/SOLVERLABGUI.py b/CoreFlows/gui/src/SOLVERLABGUI.py deleted file mode 100755 index 9f6813c..0000000 --- a/CoreFlows/gui/src/SOLVERLABGUI.py +++ /dev/null @@ -1,109 +0,0 @@ -# -*- coding: latin-1 -*- -# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE -# -# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# Author : A. Bruneton -# -import sys, os -from CFDesktop import CFDesktop - -desktop = None - -# Get SALOME PyQt interface -import SalomePyQt -import libSALOME_Swig - -######################################################## -# Global variables -######################################################## - -sgPyQt = SalomePyQt.SalomePyQt() -sg = libSALOME_Swig.SALOMEGUI_Swig() -sgDesktop = sgPyQt.getDesktop() - -moduleDesktop = {} - -######################################################## -# Internal methods -######################################################## - -def getStudyId(): - """This method returns the active study ID""" - return sgPyQt.getStudyId() - -def getStudy(): - """This method returns the active study""" - - studyId = _getStudyId() - study = getStudyManager().GetStudyByID( studyId ) - return study - -def getDesktop(): - """This method returns the current TRUST_PLOT2D desktop""" - - global desktop - return desktop - -def setDesktop( studyID ): - """This method sets and returns TRUST_PLOT2D desktop""" - - global moduleDesktop, desktop - - if not moduleDesktop.has_key( studyID ): - moduleDesktop[studyID] = CFDesktop( sgPyQt ) - moduleDesktop[studyID].initialize() - desktop = moduleDesktop[studyID] - return desktop - -################################################ -# Callback functions -################################################ - -def initialize(): - """This method is called when module is initialized. It performs initialization actions""" - setDesktop( getStudyId() ) - pass - -def activeStudyChanged( studyID ): - """This method is called when active study is changed""" - - setDesktop( getStudyId() ) - pass - -def windows(): - """This method is called when module is initialized. It returns a map of popup windows to be used by the module""" - wm = {} - return wm - -def views(): - """This method is called when module is initialized. It returns a list of 2D/3D views to be used by the module""" - return [] - -def activate(): - """This method mimicks SALOME's module activation """ - global desktop - fv = desktop.showCentralWidget() - return True - -def deactivate(): - """This method is called when module is deactivated""" - global moduleDesktop, widgetDialogBox - moduleDesktop[getStudyId()].hideCentralWidget() diff --git a/CoreFlows/gui/src/SalomePyQt_MockUp.py.in b/CoreFlows/gui/src/SalomePyQt_MockUp.py.in deleted file mode 100755 index f0b8af1..0000000 --- a/CoreFlows/gui/src/SalomePyQt_MockUp.py.in +++ /dev/null @@ -1,154 +0,0 @@ -# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE -# -# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# Author : A. Bruneton -# - -from PyQt5.QtWidgets import QApplication, QTabWidget -from PyQt5.QtWidgets import QAction, QMenu, QDesktopWidget, QFileDialog -from PyQt5.QtGui import QIcon, QPixmap -#from PyQt5.QtCore import SIGNAL, SLOT, QObject, pyqtSlot, pyqtSignal -from PyQt5.QtCore import QObject, pyqtSlot, pyqtSignal - -RESOURCE_DIR = "@SGPYQT_RES_DIR@" - -class SalomePyQt(QObject): - """ A pure Qt implementation of the SgPyQt API (usually provided in the SALOME context) - This class can be used to mimick the true SALOME object without having to launch - SALOME - """ - currentTabChanged = pyqtSignal(int) - - START_VIEW_ID = 0 - - def __init__(self, mainWindow=None): - QObject.__init__(self) - self._mainWindow = mainWindow - self._tabWidget = QTabWidget() - self._tabWidget.setObjectName("TabWidget") - self._viewIDs = {} - self._menuBar = None - if self._mainWindow: - self._menuBar = self._mainWindow.menuBar() - self._mainWindow.setCentralWidget(self._tabWidget) -# self.connect(self._tabWidget, SIGNAL("currentChanged(int)"), self, SLOT("onTabChanged(int)")) - self._tabWidget.currentChanged.connect(self.onTabChanged) - self._blockSignal = False - - def getDesktop(self): - return self._mainWindow - - def getFileName(self, parent_widget, initial, filters, caption, do_open): - fil = ";;".join([str(f) for f in filters]) - return QFileDialog.getOpenFileName(parent=parent_widget, - caption=caption, directory=initial, filter=fil); - - @pyqtSlot(int) - def onTabChanged(self, index): - if self._blockSignal: - return - invDict = dict([(v, k) for k,v in self._viewIDs.items()]) - if index in invDict: -# if invDict.has_key(index): - self._blockSignal = True - self.currentTabChanged.emit(invDict[index]) - self._blockSignal = False - - def createView(self, name, widget): - self.START_VIEW_ID += 1 - idx = self._tabWidget.insertTab(-1, widget, name) - self._viewIDs[self.START_VIEW_ID] = idx - return self.START_VIEW_ID - - def activateView(self, viewID): - idx = self._viewIDs[viewID] - self._tabWidget.setCurrentIndex(idx) - - def setViewVisible(self, viewID, isVis): - ## TODO: improve to really remove tab - if isVis: - self.activateView(viewID) - - def closeView(self, viewID): - self._blockSignal = True - idxClosed = self._viewIDs[viewID] - # QTabWidget doesn't clean after itself when removing a tab - w = self._tabWidget.widget(idxClosed) - self._tabWidget.removeTab(idxClosed) - try: - w.clearAll() - except: - pass - # Update the other tab indices which are now shifted: - for k, idx in self._viewIDs.items(): - if idx > idxClosed: - self._viewIDs[k] -= 1 - self._blockSignal = False - - def setViewTitle(self, viewID, title): - idx = self._viewIDs[viewID] - self._tabWidget.setTabText(idx, title) - - def createAction(self, id, short_name, long_name, tooltip, icon): - import os - return QAction(QIcon(QPixmap(os.path.normpath(icon))),short_name, None) - - def defaultMenuGroup(self): - return None - - def createMenu(self, name_or_action, pos_or_menu, menuId=-1, menuGroup=None): - if not self._mainWindow is None: - if isinstance(name_or_action, str): - return self.__createMenu1( name_or_action, pos_or_menu, menuId, menuGroup) - else: - return self.__createMenu2(name_or_action, pos_or_menu) - - def __createMenu1(self, name, pos, menuId, menuGroup): - menu = QMenu(name, self._menuBar) - self._menuBar.addMenu(menu) - return menu - - def __createMenu2(self, action, menu): - menu.addAction(action) - - def createSeparator(self): - return None - - def createTool(self, toolbar_name_or_action, toolbar=None): - if not self._mainWindow is None: - if isinstance(toolbar_name_or_action, str): - return self.__createTool1(toolbar_name_or_action) - else: - return self.__createTool2(toolbar_name_or_action, toolbar) - - def __createTool1(self, toolbar_name): - return None - - def __createTool2(self, action, toolbar): - return None - - def loadIcon(self, module_name, file_name): - import os - mod_dir = os.getenv("%s_ROOT_DIR" % module_name) - mod_lc = module_name.lower() - res_path = os.path.join(mod_dir, RESOURCE_DIR, mod_lc, file_name) - # e.g. MODULE_ROOT_DIR/share/resource/module/image.png - return QIcon(res_path) diff --git a/CoreFlows/gui/src/ui/CMakeLists.txt b/CoreFlows/gui/src/ui/CMakeLists.txt deleted file mode 100755 index fcacbf6..0000000 --- a/CoreFlows/gui/src/ui/CMakeLists.txt +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright (C) 2012-2014 CEA/DEN, EDF R&D, OPEN CASCADE -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# - -# --- resources --- - -# uic files -SET(_pyuic_files - MainCFWidget.ui -) - -# --- scripts --- -SET(_all_lib_SCRIPTS - MainCFWidget.py -) - -# --- rules --- -SALOME_INSTALL_SCRIPTS("${_pyuic_SCRIPTS}" ${SALOME_INSTALL_PYTHON}) -SALOME_INSTALL_SCRIPTS("${_all_lib_SCRIPTS}" ${SALOME_INSTALL_PYTHON}) - -INSTALL(FILES ${_pyuic_files} DESTINATION ${SALOME_INSTALL_PYTHON}) diff --git a/CoreFlows/gui/src/ui/MainCFWidget.py b/CoreFlows/gui/src/ui/MainCFWidget.py deleted file mode 100755 index cc7cd41..0000000 --- a/CoreFlows/gui/src/ui/MainCFWidget.py +++ /dev/null @@ -1,253 +0,0 @@ -# -*- coding: utf-8 -*- -from PyQt5 import QtWidgets, QtCore -from PyQt5.uic import loadUi -from utils import completeResPath - -import CoreFlows as cf -import cdmath as cm - -class MainCFWidget(QtWidgets.QTabWidget): - def __init__(self): - QtWidgets.QTabWidget.__init__(self) - loadUi(completeResPath("MainCFWidget.ui"), self) - self._python_dump = [] - - def scanWidgets(self): - print(self.tabModel) - dictCF={} - for k in self.__dict__: - att = self.__dict__[k] - if isinstance(att, QtWidgets.QWidget): - name = str(att.objectName()) - if name != "": -# print(name) - if name.endswith("RadioButton"): - assert(isinstance(att, QtWidgets.QRadioButton)) - if att.isChecked() : - # parse name - name=name[:len(name)-len("_RadioButton")]#On retire le suffixe _Radiobutton - if name.startswith("Dim") : - dictCF["spaceDim"]=int(name[len("Dim")]) - elif name.endswith("Model") or name.startswith("SinglePhase") or name.endswith("Equation") or name.endswith("TwoFluid") : - dictCF["ModelName"]=name - elif name=="InputFileName" : - dictCF["InputFileName"]=True - elif name=="MeshCreation" : - dictCF["MeshCreation"]=True - elif name.endswith("spinBox") : - assert(isinstance(att, QtWidgets.QSpinBox)) - val = att.value() - # parse name - name=name[:len(name)-len("_spinBox")]#On retire le suffixe _SpinBox - if name=="Nx" : - dictCF["Nx"]=val - elif name=="Ny" : - dictCF["Ny"]=val - elif name=="Nz" : - dictCF["Nz"]=val - elif name=="NO_MaxNbOfTimeStep" : - dictCF["MaxNbOfTimeStep"]=val - elif name=="NO_FreqSave" : - dictCF["FreqSave"]=val - elif name.endswith("doubleSpinBox"): - assert(isinstance(att, QtWidgets.QDoubleSpinBox)) - val = att.value() - # parse name - name=name[:len(name)-len("_doubleSpinBox")]#On retire le suffixe _doubleSpinBox - if name.endswith("Conductivity") : - dictCF["Conductivity"]=val - elif name.endswith("Conductivity_Phase1") : - dictCF["Conductivity1"]=val - elif name.endswith("Conductivity_Phase2") : - dictCF["Conductivity2"]=val - elif name.endswith("Viscosity") : - dictCF["Viscosity"]=val - elif name.endswith("Viscosity_Phase1") : - dictCF["Viscosity1"]=val - elif name.endswith("Viscosity_Phase2") : - dictCF["Viscosity2"]=val - elif name.endswith("HeatSource") : - dictCF["HeatSource"]=val - elif name.endswith("FrictionCoefficients") : - dictCF["FrictionCoefficients"]=val - elif name.endswith("Gravity_1d") : - dictCF["Gravity_1d"]=val - elif name.endswith("Gravity_2d") : - dictCF["Gravity_2d"]=val - elif name.endswith("Gravity_3d") : - dictCF["Gravity_3d"]=val - elif name=="Xinf" : - dictCF["Xinf"]=val - elif name=="Xsup" : - dictCF["Xsup"]=val - elif name=="Yinf" : - dictCF["Yinf"]=val - elif name=="Ysup" : - dictCF["Ysup"]=val - elif name=="Zinf" : - dictCF["Zinf"]=val - elif name=="Zsup" : - dictCF["Zsup"]=val - elif name=="NO_TimeMax" : - dictCF["TimeMax"]=val - elif name=="NO_Precision" : - dictCF["Precision"]=val - elif name=="NO_CFL" : - dictCF["CFL"]=val - elif name.endswith("_IC") :#Initial conditions - name=name[:len(name)-len("_IC")]#On retire le suffixe _IC - if name.endswith("Concentration") : - dictCF["InitialConcentration"]=val - elif name.endswith("Alpha") : - dictCF["InitialAlpha"]=val - elif name.endswith("Pressure") : - dictCF["InitialPressure"]=val - elif name.endswith("Temperature") : - dictCF["InitialTemperature"]=val - elif name.endswith("Velocity_1d") : - dictCF["InitialVelocity_1d"]=val - elif name.endswith("Velocity_2d") : - dictCF["InitialVelocity_2d"]=val - elif name.endswith("Velocity_3d") : - dictCF["InitialVelocity_3d"]=val - elif name.endswith("_BC") :#Boundary conditions - name=name[3:len(name)-len("_BC")]#On retire le préfixe SP_ ou DM_ au début et le suffixe _BC à la fin - dictCF[name]=val - elif name.endswith('comboBox'): - assert(isinstance(att, QtWidgets.QComboBox)) - val = att.currentText() - # parse name - name=name[:len(name)-len("_comboBox")]#On retire le suffixe _comboBox - if name.endswith("1barOr155bar") : - dictCF["pressureEstimate"]=val - elif name.endswith("GasOrLiquid") : - dictCF["fluidType"]=val - elif name.endswith("_BC") :#Boundary conditions - name=name[4:len(name)-len("_BC")]#On retire le préfixe SP_ ou DM_ au début et le suffixe _BC à la fin - dictCF[name]=val - elif name=="NO_Method" : - dictCF["Method"]=val - elif name=="NO_LS" : - dictCF["LS"]=val #Linear solver - elif name=="NO_Scheme" : - dictCF["Scheme"]=val - elif name=="NO_Scheme_type" : - dictCF["Scheme_type"]=val - elif name=="NO_Preconditioner" : - dictCF["Preconditioner"]=val - elif name.endswith('lineEdit'): - assert(isinstance(att, QtWidgets.QLineEdit)) - val = str(att.text()) - # parse name - name=name[:len(name)-len("_lineEdit")]#On retire le suffixe _comboBox - #print(name,val) - if name=="NO_ResultFileName" : - dictCF["ResultFileName"]=val - elif name=="InputFileName" : - dictCF["InputFileName"]=val - - return dictCF - - def onLaunchSimu(self): - print("Reading widgets") - dictCF = self.scanWidgets() - - print("Setting Model, ModelName = ", dictCF["ModelName"], ", pressureEstimate = ", dictCF["pressureEstimate"], ", InitialPressure = ", dictCF["InitialPressure"], ", InitialVelocity_1d = ", dictCF["InitialVelocity_1d"], ", InitialTemperature= ", dictCF["InitialTemperature"]) - ######## Setting Model and initil state ######################### - if dictCF["ModelName"]=="SinglePhase" : - myProblem = eval('cf.%s(cf.%s,cf.%s,%s)' % (dictCF["ModelName"],dictCF["fluidType"],dictCF["pressureEstimate"],dictCF["spaceDim"])) - nVar = myProblem.getNumberOfVariables() - VV_Constant =[0]*nVar - VV_Constant[0] = dictCF["InitialPressure"] - VV_Constant[1] = dictCF["InitialVelocity_1d"] - if dictCF["spaceDim"] >1 : - VV_Constant[2] = dictCF["InitialVelocity_2d"] - if dictCF["spaceDim"] >2 : - VV_Constant[3] = dictCF["InitialVelocity_3d"] - VV_Constant[nVar-1] = dictCF["InitialTemperature"] - elif dictCF["ModelName"]=="DriftModel" : - myProblem = eval("cf.%s(cf.%s,%s)" % (dictCF["ModelName"],dictCF["pressureEstimate"],dictCF["spaceDim"])) - nVar = myProblem.getNumberOfVariables() - VV_Constant =[0]*nVar - VV_Constant[0] = dictCF["InitialConcentration"] - VV_Constant[1] = dictCF["InitialPressure"] - VV_Constant[2] = dictCF["InitialVelocity_1d"] - if dictCF["spaceDim"] >1 : - VV_Constant[3] = dictCF["InitialVelocity_2d"] - if dictCF["spaceDim"] >2 : - VV_Constant[4] = dictCF["InitialVelocity_3d"] - VV_Constant[nVar-1] = dictCF["InitialTemperature"] - else : - raise NameError('Model not yet handled', dictCF["ModelName"]) - - print("Setting initial data, spaceDim = ", dictCF["spaceDim"], ", Nx = ", dictCF["Nx"], ", Xinf= ", dictCF["Xinf"], ", Xsup = ", dictCF["Xsup"]) - ############ setting initial data ################################ - if dictCF["spaceDim"] ==1 : - myProblem.setInitialFieldConstant( dictCF["spaceDim"], VV_Constant, dictCF["Xinf"], dictCF["Xsup"], dictCF["Nx"],"Left","Right"); - print("Initial field set") - elif dictCF["spaceDim"] ==2 : - myProblem.setInitialFieldConstant( dictCF["spaceDim"], VV_Constant, dictCF["Xinf"], dictCF["Xsup"], dictCF["Nx"],"Left","Right", dictCF["Yinf"], dictCF["Ysup"], dictCF["Ny"],"Bottom","Top"); - elif dictCF["spaceDim"] ==3 : - myProblem.setInitialFieldConstant( dictCF["spaceDim"], VV_Constant, dictCF["Xinf"], dictCF["Xsup"], dictCF["Nx"],"Back","Front", dictCF["Yinf"], dictCF["Ysup"], dictCF["Ny"],"Left","Right", dictCF["Zinf"], dictCF["Zsup"], dictCF["Nz"],"Bottom","Top"); - else : - raise NameError('Dimension should be 1, 2 or 3', dictCF["spaceDim"]) - -# for k, v in dictCF.items(): -# line = "cf.set%s(%s)" % (k, v) -# #exec(line) -# self._python_dump.append(line) - - print("Setting boundary conditions, Temperature_Left = ", dictCF["Temperature_Left"], ", Velocity_1d_Left = ", dictCF["Velocity_1d_Left"], ", Pressure_Right = ", dictCF["Pressure_Right"]) - ######## 1D for the moment ###################### - if dictCF["ModelName"]=="SinglePhase" : - myProblem.setInletBoundaryCondition("Left",dictCF["Temperature_Left"],dictCF["Velocity_1d_Left"]) - myProblem.setOutletBoundaryCondition("Right", dictCF["Pressure_Right"]); - elif dictCF["ModelName"]=="DriftModel" : - myProblem.setInletBoundaryCondition("Left",dictCF["DM_Temperature_Left"],dictCF["DM_Concentration_Left"],dictCF["DM_Velocity_1d_Left"]) - myProblem.setOutletBoundaryCondition("Right", dictCF["DM_Pressure_Right"]); - - print("Setting source terms, HeatSource = ", dictCF["HeatSource"], ", Gravity_1d = ", dictCF["Gravity_1d"]) - ########## Physical forces ################# - myProblem.setHeatSource(dictCF["HeatSource"]); - gravite=[0]*dictCF["spaceDim"] - gravite[0]=dictCF["Gravity_1d"] - if dictCF["spaceDim"] >1 : - gravite[1]=dictCF["Gravity_2d"] - if dictCF["spaceDim"] >2 : - gravite[2]=dictCF["Gravity_3d"] - myProblem.setGravity(gravite) - - print("Setting numerical options, NumericalScheme = ", dictCF["Scheme"], ", NumericalMethod = ", dictCF["Method"], ", CFL = ", dictCF["CFL"]) - ########## Numerical options ############### - eval("myProblem.setNumericalScheme(cf.%s, cf.%s)" % (dictCF["Scheme"],dictCF["Method"])) - myProblem.setWellBalancedCorrection(True); - - myProblem.setCFL(dictCF["CFL"]); - myProblem.setPrecision(dictCF["Precision"]); - myProblem.setMaxNbOfTimeStep(dictCF["MaxNbOfTimeStep"]); - myProblem.setTimeMax(dictCF["TimeMax"]); - myProblem.setFreqSave(dictCF["FreqSave"]); - myProblem.setFileName(dictCF["ResultFileName"]); - myProblem.saveConservativeField(True); - #myProblem.setVerbose(True); - myProblem.usePrimitiveVarsInNewton(True); - if(dictCF["spaceDim"]>1): - myProblem.saveVelocity(); - pass - - myProblem.initialize() - - ok = myProblem.run() - - if (ok): - print( "Simulation " + dictCF["ResultFileName"] + " is successful !" ); - pass - else: - print( "Simulation " + dictCF["ResultFileName"] + " failed ! " ); - pass - - print( "------------ End of calculation !!! -----------" ); - - myProblem.terminate() - - # TODO use a helper object here. diff --git a/CoreFlows/gui/src/ui/MainCFWidget.ui b/CoreFlows/gui/src/ui/MainCFWidget.ui deleted file mode 100755 index ff68df5..0000000 --- a/CoreFlows/gui/src/ui/MainCFWidget.ui +++ /dev/null @@ -1,12910 +0,0 @@ - - - TabWidget - - - - 0 - 0 - 1221 - 851 - - - - - 1221 - 16777215 - - - - TabWidget - - - <html><head/><body><p><br/></p></body></html> - - - <html><head/><body><p><br/></p></body></html> - - - - - - 8 - - - - Model choice - - - - - - Qt::Horizontal - - - - 542 - 20 - - - - - - - - - 428 - 66 - - - - - 428 - 66 - - - - Dimension - - - - - - - 402 - 30 - - - - Qt::Horizontal - - - - true - - - - 130 - 30 - - - - - 130 - 30 - - - - true - - - false - - - 1 - - - true - - - - - - 130 - 30 - - - - - 130 - 30 - - - - 2 - - - - - true - - - - 130 - 30 - - - - - 130 - 30 - - - - true - - - false - - - 3 - - - true - - - false - - - - - - - - - - - Qt::Horizontal - - - - 151 - 20 - - - - - - - - Qt::Horizontal - - - - 1010 - 20 - - - - - - - - Qt::Vertical - - - - 20 - 663 - - - - - - - - - 180 - 0 - - - - <html><head/><body><p><span style=" font-size:18pt; font-weight:600; text-decoration: underline;">COREFLOWS</span></p></body></html> - - - - - - - - 462 - 300 - - - - - 462 - 300 - - - - Model choice - - - - - - - 180 - 30 - - - - - 180 - 30 - - - - <html><head/><body><p><span style=" text-decoration: underline;">Scalar models</span></p></body></html> - - - - - - - - 250 - 30 - - - - - 250 - 30 - - - - Transport equation - - - - - - - - 180 - 30 - - - - - 180 - 30 - - - - <html><head/><body><p/></body></html> - - - - - - - - 250 - 30 - - - - - 250 - 30 - - - - Diffusion equation - - - - - - - Qt::Vertical - - - - 20 - 18 - - - - - - - - Qt::Vertical - - - - 20 - 18 - - - - - - - - - 180 - 30 - - - - - 180 - 30 - - - - <html><head/><body><p><span style=" text-decoration: underline;">Single phase model</span></p></body></html> - - - - - - - - 250 - 30 - - - - - 250 - 30 - - - - Navier-Stokes equations - - - true - - - - - - - Qt::Vertical - - - - 20 - 18 - - - - - - - - Qt::Vertical - - - - 20 - 18 - - - - - - - - - 180 - 30 - - - - - 180 - 30 - - - - <html><head/><body><p><span style=" text-decoration: underline;">Two-phase models</span></p></body></html> - - - - - - - - 250 - 30 - - - - - 250 - 30 - - - - Drift model - - - - - - - - 180 - 30 - - - - - 180 - 30 - - - - <html><head/><body><p/></body></html> - - - - - - - - 250 - 30 - - - - - 250 - 30 - - - - Isothermal two-fluid model - - - - - - - - 180 - 30 - - - - - 180 - 30 - - - - <html><head/><body><p/></body></html> - - - - - - - - 250 - 30 - - - - - 250 - 30 - - - - Five equation two-fluid model - - - - - - - - - - - Mesh - - - - - - - - - 120 - 0 - - - - <html><head/><body><p><span style=" font-size:18pt; font-weight:600; text-decoration: underline;">Mesh</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 838 - 20 - - - - - - - - Qt::Vertical - - - - 20 - 508 - - - - - - - - - - - 480 - 30 - - - - - 472 - 30 - - - - Qt::Horizontal - - - - - 90 - 30 - - - - - 90 - 30 - - - - Mesh file - - - true - - - - - - 350 - 30 - - - - - 350 - 30 - - - - - - - 30 - 30 - - - - - 30 - 30 - - - - ... - - - - - - - - - 856 - 200 - - - - - 856 - 231 - - - - Qt::Vertical - - - - - 856 - 30 - - - - Qt::Horizontal - - - - - 90 - 30 - - - - - 90 - 30 - - - - Creation - - - true - - - true - - - - - - 760 - 30 - - - - - 760 - 30 - - - - - 11 - 50 - false - - - - - - - - - - - 740 - 225 - - - - - 846 - 200 - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - - 11 - 50 - false - - - - - - - - - - 770 - 200 - - - - - 770 - 200 - - - - - Century Schoolbook L - 14 - 50 - false - - - - - - - - - - - - - - 191 - 102 - - - - - 191 - 92 - - - - Qt::Vertical - - - - - 191 - 30 - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - - 11 - 50 - false - - - - Xinf (m) - - - - - - 110 - 30 - - - - - 110 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000099.990000009536743 - - - -5.000000000000000 - - - - - - - 191 - 30 - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - - 11 - 50 - false - - - - Xsup (m) - - - - - - 110 - 30 - - - - - 110 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000099.990000009536743 - - - 5.000000000000000 - - - - - - - 191 - 30 - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - - 11 - 50 - false - - - - Nx - - - - - - 110 - 30 - - - - - 110 - 30 - - - - - 11 - - - - 2147483647 - - - 20 - - - - - - - - - - - - - - - - 191 - 102 - - - - - 191 - 92 - - - - Qt::Vertical - - - - - 191 - 30 - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - - 11 - 50 - false - - - - Yinf (m) - - - - - - 110 - 30 - - - - - 110 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000099.990000009536743 - - - -5.000000000000000 - - - - - - - 191 - 30 - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - - 11 - 50 - false - - - - Ysup (m) - - - - - - 110 - 30 - - - - - 110 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000099.990000009536743 - - - 5.000000000000000 - - - - - - - 191 - 30 - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - - 11 - 50 - false - - - - Ny - - - - - - 110 - 30 - - - - - 110 - 30 - - - - - 11 - - - - 2147483647 - - - 20 - - - - - - - - - - - - - - - - 191 - 102 - - - - - 191 - 92 - - - - Qt::Vertical - - - - - 191 - 30 - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - - 11 - 50 - false - - - - Zinf (m) - - - - - - 110 - 30 - - - - - 110 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000099.990000009536743 - - - -5.000000000000000 - - - - - - - 191 - 30 - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - - 11 - 50 - false - - - - Zsup (m) - - - - - - 110 - 30 - - - - - 110 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000099.990000009536743 - - - 5.000000000000000 - - - - - - - 191 - 30 - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - - 11 - 50 - false - - - - Nz - - - - - - 110 - 30 - - - - - 110 - 30 - - - - - 11 - - - - 2147483647 - - - 20 - - - - - - - - - - - - - - - - - - 770 - 225 - - - - - 770 - 225 - - - - - Century Schoolbook L - 11 - 75 - false - true - - - - - - - - - - - - - - - - - - Physical - - - - - - - 200 - 40 - - - - - 200 - 40 - - - - <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">Single Phase</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 990 - 17 - - - - - - - - Qt::Vertical - - - - 20 - 728 - - - - - - - - - - - 510 - 250 - - - - - 510 - 250 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Physical options - - - - - - - - - 180 - 30 - - - - - 180 - 30 - - - - - 11 - - - - Heat Source ( W/m^dim ) - - - - - - - - 200 - 30 - - - - - 200 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - - - - - - 180 - 30 - - - - - 180 - 30 - - - - - 11 - - - - Viscosity (Pa*s) - - - - - - - - 200 - 30 - - - - - 200 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - - - - - - 180 - 30 - - - - - 180 - 30 - - - - - 11 - - - - Conductivity (W/m/K) - - - - - - - - 200 - 30 - - - - - 200 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - - - - - - 180 - 30 - - - - - 180 - 30 - - - - - 11 - - - - Gravity (m/s²) - - - - - - - - - - 62 - 30 - - - - - 62 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 62 - 30 - - - - - 62 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 62 - 30 - - - - - 62 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 180 - 30 - - - - - 180 - 30 - - - - - 11 - - - - Porosity friction - - - - - - - - 200 - 30 - - - - - 200 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 0.000001000000000 - - - - - - - - - - - - - 420 - 140 - - - - - 420 - 140 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Initial condition - - - - - - - - - 120 - 30 - - - - - 120 - 30 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Pressure (Pa)</span></p></body></html> - - - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1.000000000000000 - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - 120 - 30 - - - - - 120 - 30 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Velocity (m/s) </span></p></body></html> - - - - - - - - - - 66 - 30 - - - - - 66 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 66 - 30 - - - - - 66 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 66 - 30 - - - - - 66 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 120 - 30 - - - - - 120 - 30 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Temperature (K)</span></p></body></html> - - - - - - - - 220 - 30 - - - - - 200 - 30 - - - - - 11 - - - - 100.000000000000000 - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - - - - - - 350 - 130 - - - - - 350 - 130 - - - - - Century Schoolbook L - 14 - 75 - true - - - - Fluid Parameters - - - - - - - 140 - 30 - - - - - 140 - 30 - - - - - 11 - 50 - false - - - - <html><head/><body><p><span style=" color:#ff0000;">Phase</span></p></body></html> - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - - Liquid - - - - - -- - - - - - Vapour - - - - - - - - - 140 - 30 - - - - - 140 - 30 - - - - - 11 - 50 - false - - - - <html><head/><body><p><span style=" color:#ff0000;">Estimate pressure</span></p></body></html> - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - - around1bar300K - - - - - -- - - - - - around155bars600K - - - - - - - - - - - - Century Schoolbook L - 14 - 75 - true - - - - Boundary condition - - - - - - - 361 - 202 - - - - - 361 - 202 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Left - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Wall - - - - - Inlet - - - - - Outlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - - - - 361 - 202 - - - - - 361 - 202 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Top - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Outlet - - - - - Wall - - - - - Inlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - - - - 361 - 202 - - - - - 361 - 202 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Front - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Wall - - - - - Inlet - - - - - Outlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - - - 361 - 202 - - - - - 361 - 202 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Right - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Wall - - - - - Inlet - - - - - Outlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - - - - - 361 - 202 - - - - - 361 - 202 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Bottom - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Inlet - - - - - Wall - - - - - Outlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - - - 361 - 202 - - - - - 361 - 202 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Back - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Wall - - - - - Inlet - - - - - Outlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - - - - - SinglePhase - verticalSpacer_8 - horizontalSpacer_32 - - - - - Physical - - - - - - - 180 - 0 - - - - <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">Drift Model</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 1161 - 20 - - - - - - - - Qt::Vertical - - - - 20 - 728 - - - - - - - - - - - 471 - 221 - - - - - 471 - 221 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Physical options - - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - Heat Source ( W/m^dim ) - - - - - - - - 246 - 30 - - - - - 246 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - Viscosity ( Pa*s ) - - - - - - - - 246 - 30 - - - - Qt::Horizontal - - - - - 120 - 30 - - - - - 120 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - - - - 120 - 30 - - - - - 120 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - Conductivity ( W/m/K ) - - - - - - - - 246 - 30 - - - - Qt::Horizontal - - - - - 120 - 30 - - - - - 120 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - - - - 120 - 30 - - - - - 120 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - Gravity ( m/s² ) - - - - - - - - 246 - 30 - - - - - 236 - 30 - - - - Qt::Horizontal - - - - - 78 - 30 - - - - - 78 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 78 - 30 - - - - - 78 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 78 - 30 - - - - - 78 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - Porosity friction coefficient - - - - - - - - 246 - 30 - - - - Qt::Horizontal - - - - - 120 - 30 - - - - - 120 - 30 - - - - - 11 - - - - 4 - - - 100000.000000000000000 - - - 0.010000000000000 - - - - - - 120 - 30 - - - - - 120 - 30 - - - - - 11 - - - - 4 - - - 10000.000000000000000 - - - 0.010000000000000 - - - - - - - - - - - - - - 450 - 176 - - - - - 450 - 176 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Initial condition - - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Concentration</span></p></body></html> - - - - - - - - 222 - 30 - - - - - 222 - 30 - - - - - 11 - - - - 4 - - - 1.000000000000000 - - - 0.010000000000000 - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Pressure (Pa)</span></p></body></html> - - - - - - - - 222 - 30 - - - - - 222 - 30 - - - - - 11 - - - - 1.000000000000000 - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Velocity (m/s)</span></p></body></html> - - - - - - - - 222 - 30 - - - - Qt::Horizontal - - - - - 70 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 70 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 70 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Temperature (K)</span></p></body></html> - - - - - - - - 222 - 30 - - - - - 222 - 30 - - - - - 11 - - - - 200.000000000000000 - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Fluid Parameters - - - - - - - 140 - 30 - - - - - 140 - 30 - - - - - 11 - 50 - false - - - - <html><head/><body><p><span style=" color:#ff0000;">Estimate pressure</span></p></body></html> - - - - - - - - 190 - 30 - - - - - 190 - 30 - - - - - 11 - - - - - around1bar300K - - - - - around155bars600K - - - - - - - - - - - - Century Schoolbook L - 14 - 75 - true - - - - Boundary condition - - - - - - - 361 - 215 - - - - - 361 - 215 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Left - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Wall - - - - - Inlet - - - - - Outlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 4 - - - 1.000000000000000 - - - 0.010000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - - - 361 - 215 - - - - - 361 - 215 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Top - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Outlet - - - - - Wall - - - - - Inlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 4 - - - 1.000000000000000 - - - 0.010000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - - - 361 - 215 - - - - - 361 - 215 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Front - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Wall - - - - - Inlet - - - - - Outlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 4 - - - 1.000000000000000 - - - 0.010000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - - - 361 - 215 - - - - - 361 - 215 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Right - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Wall - - - - - Inlet - - - - - Outlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 4 - - - 1.000000000000000 - - - 0.010000000000000 - - - 1.000000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - - - 361 - 215 - - - - - 361 - 215 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Bottom - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Inlet - - - - - Wall - - - - - Outlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 4 - - - 1.000000000000000 - - - 0.010000000000000 - - - 1.000000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - - - 361 - 215 - - - - - 361 - 215 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Back - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - Wall - - - - - Inlet - - - - - Outlet - - - - - Neumann - - - - - Dirichlet - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 300.000000000000000 - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 4 - - - 1.000000000000000 - - - 0.010000000000000 - - - 1.000000000000000 - - - - - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> - - - - - - 220 - 30 - - - - - 212 - 30 - - - - Qt::Horizontal - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - 68 - 30 - - - - - 70 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 338 - 30 - - - - - 331 - 30 - - - - Qt::Horizontal - - - - - 110 - 30 - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> - - - - - - 220 - 30 - - - - - 220 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - - - - - DriftModelPage - horizontalSpacer_33 - verticalSpacer_10 - - - - Physical - - - - - 1330 - 70 - 626 - 218 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Initial condition - - - - - - - - - - - 11 - - - - Vapour volume fraction - - - - - - - - 11 - - - - Pressure ( Pa ) - - - - - - - - 11 - - - - Velocity phase 1 ( m/s ) - - - - - - - - 11 - - - - Velocity phase 2 ( m/s ) - - - - - - - - 11 - - - - Mean temperature (K) - - - - - - - - - - - - 11 - - - - 1.000000000000000 - - - - - - - - 11 - - - - 999999999.990000009536743 - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 11 - - - - 999999999.990000009536743 - - - - - - - - - - - - - 10 - 10 - 425 - 40 - - - - - 120 - 0 - - - - <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">Five equation two-fluid model</span></p></body></html> - - - - - - 37 - 285 - 1215 - 124 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Fluid Parameters - - - - - 70 - 30 - 751 - 30 - - - - Qt::Horizontal - - - - - 11 - - - - Liquid/Fluid - - - - - - 11 - - - - - -- - - - - - Fluid - - - - - Liquid - - - - - - - 11 - - - - - -- - - - - - Arround1bar - - - - - Arround155bar - - - - - - - - - 37 - 415 - 1215 - 378 - - - - - Century Schoolbook L - 14 - 75 - true - - - - Boundary condition - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - wall - - - - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature ( K )</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 1 ( m/s )</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 2 (m/s)</span></p></body></html> - - - - - - - - - - - - - - - 11 - - - - 999999999.990000009536743 - - - 300.000000000000000 - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Inlet - - - - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature ( K )</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Vapour volume fraction</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 1 (m/s)</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 2 (m/s)</span></p></body></html> - - - - - - - - - - - - - - - 11 - - - - 999999999.990000009536743 - - - 300.000000000000000 - - - - - - - - 11 - - - - 1.000000000000000 - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Neumann - - - - - 17 - 25 - 285 - 36 - - - - Qt::Horizontal - - - - <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Outlet - - - - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure ( Pa ) </span></p></body></html> - - - - - - - - - - - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - - - - - - - - - 60 - 60 - 655 - 220 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Physical options - - - - - - Qt::Horizontal - - - - - - - - 11 - - - - Heat Source ( W/m^dim ) - - - - - - - - 11 - - - - Viscosity ( Pa*s ) - - - - - - - - 11 - - - - Conductivity ( W/m/K ) - - - - - - - - 11 - - - - Gravity ( m/s² ) - - - - - - - - 11 - - - - Interfacial friction coefficients - - - - - - - - - - - - 11 - - - - 999999999.990000009536743 - - - - - - - - - - 11 - - - - 999999999.990000009536743 - - - - - - - - 11 - - - - 999999999.990000009536743 - - - - - - - - - - - - 11 - - - - 999999999.990000009536743 - - - - - - - - 11 - - - - 999999999.990000009536743 - - - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - 11 - - - - 1.000000000000000 - - - - - - - - 11 - - - - 1.000000000000000 - - - - - - - - - - - - - - - Physical - - - - - 9 - 9 - 1304 - 752 - - - - Qt::Vertical - - - - - - - - 120 - 0 - - - - <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">Isothermal two fluid model</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 508 - 20 - - - - - - - - - - - - Qt::Vertical - - - - 20 - 708 - - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Physical options - - - - - - - - - - - 11 - - - - Heat Source ( W/m^dim ) - - - - - - - - 11 - - - - Viscosity ( Pa *s ) - - - - - - - - 11 - - - - Conductivity ( W/m/K ) - - - - - - - - 11 - - - - Gravity ( m/s² ) - - - - - - - - 11 - - - - Interfacial friction coefficients - - - - - - - - - - - - 11 - - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - 1000000000.000000000000000 - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - 11 - - - - 1.000000000000000 - - - - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Initial condition - - - - - - - - - - - 11 - - - - Vapour volume fraction - - - - - - - - 11 - - - - Pressure ( Pa ) - - - - - - - - 11 - - - - Velocity phase 1 ( m/ s ) - - - - - - - - 11 - - - - Velocity phase 2 ( m/ s ) - - - - - - - - - - - - 11 - - - - 1.000000000000000 - - - - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Fluid Parameters - - - - - 50 - 40 - 261 - 30 - - - - Qt::Horizontal - - - - - 11 - - - - Estimate pressure - - - - - - 11 - - - - - -- - - - - - Arround1bar - - - - - Arround155bar - - - - - - - - - - - Century Schoolbook L - 14 - 75 - true - - - - Boundary condition - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - wall - - - - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 1 ( m/s )</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 2 ( m/s )</span></p></body></html> - - - - - - - - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Inlet - - - - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Vapour volume fraction</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 1 ( m/s )</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 2 ( m/s )</span></p></body></html> - - - - - - - - - - - - - - - 11 - - - - 1.000000000000000 - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Neumann - - - - - 17 - 25 - 285 - 36 - - - - Qt::Horizontal - - - - <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Outlet - - - - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> - - - - - - - <html><head/><body><p><span style=" font-size:10pt;">Pressure</span></p></body></html> - - - - - - - - - - - - - - - 11 - - - - 1000000000.000000000000000 - - - 100000.000000000000000 - - - - - - - - - - - - - - - - - - - - - - - - Physical - - - - - - - 320 - 40 - - - - - 320 - 40 - - - - <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">The diffusion equation</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 870 - 20 - - - - - - - - Qt::Vertical - - - - 20 - 671 - - - - - - - - - 440 - 176 - - - - - 440 - 176 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Physical options - - - - - - Qt::Horizontal - - - - - - - - 180 - 30 - - - - - 11 - - - - Heat power ( J/m^dim ) - - - - - - - - 180 - 30 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Heat capacity ( J/Kg/K )</span></p></body></html> - - - - - - - - 180 - 30 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Conductivity ( W/m/K )</span></p></body></html> - - - - - - - - 179 - 29 - - - - - 181 - 31 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Density (Kg/m^dim)</span></p></body></html> - - - - - - - - - - - - 199 - 29 - - - - - 201 - 31 - - - - - 11 - - - - 999999999.990000009536743 - - - - - - - - 199 - 30 - - - - - 200 - 30 - - - - - 11 - - - - 0.000000000000000 - - - 999999999.990000009536743 - - - 300.000000000000000 - - - - - - - - 200 - 30 - - - - - 200 - 30 - - - - - 11 - - - - 999999999.990000009536743 - - - 5.000000000000000 - - - - - - - - 200 - 30 - - - - - 200 - 30 - - - - - 11 - - - - 0.100000000000000 - - - 1000000000.000000000000000 - - - 10000.000000000000000 - - - - - - - - - - - - - - - 410 - 89 - - - - - 410 - 89 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Initial condition - - - - - - - 378 - 0 - - - - - 373 - 30 - - - - Qt::Horizontal - - - - - 169 - 30 - - - - - 171 - 31 - - - - - 11 - - - - Temperature (K) - - - - - - 199 - 29 - - - - - 201 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 500.000000000000000 - - - - - - - - - - - - 821 - 359 - - - - - 821 - 359 - - - - - Century Schoolbook L - 12 - 75 - true - - - - Boundary condition - - - - - - - - - Century Schoolbook L - 12 - 50 - false - - - - Top - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Dirichlet - - - - - -- - - - - - Neumann - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 500.000000000000000 - - - - - - - - - - - - Century Schoolbook L - 12 - 50 - false - - - - Front - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Dirichlet - - - - - Neumann - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 500.000000000000000 - - - - - - - - - - - - Century Schoolbook L - 12 - 50 - false - - - - Left - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Dirichlet - - - - - Neumann - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 500.000000000000000 - - - - - - - - - - - - Century Schoolbook L - 12 - 50 - false - - - - Bottom - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Dirichlet - - - - - Neumann - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 500.000000000000000 - - - - - - - - - - - - Century Schoolbook L - 12 - 50 - false - - - - Back - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Dirichlet - - - - - Neumann - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 500.000000000000000 - - - - - - - - - - - - Century Schoolbook L - 12 - 50 - false - - - - Right - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Dirichlet - - - - - Neumann - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 500.000000000000000 - - - - - - - - - - - - - - - - - Physical - - - - - - - 290 - 40 - - - - - 290 - 40 - - - - <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">Transport equation</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 900 - 37 - - - - - - - - Qt::Vertical - - - - 20 - 636 - - - - - - - - - 550 - 176 - - - - - 550 - 176 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Physical options - - - - - - Qt::Horizontal - - - - - 218 - 30 - - - - - 218 - 30 - - - - - 11 - - - - Heat Source ( W/m^dim ) - - - - - - 270 - 30 - - - - - 270 - 30 - - - - - 11 - - - - 999999999.990000009536743 - - - - - - - - - 404 - 104 - - - - - 404 - 104 - - - - - Century Schoolbook L - 11 - 50 - false - - - - Fluid Parameters - - - - - - - 160 - 30 - - - - - 160 - 30 - - - - - 11 - 50 - false - - - - <html><head/><body><p><span style=" color:#ff0000;">Estimate pressure</span></p></body></html> - - - - - - - - 0 - 30 - - - - - 190 - 30 - - - - - 11 - - - - - Arround 1bar 300K - - - - - Arround 155bar 600K - - - - - - - - - 160 - 30 - - - - - 160 - 30 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Constant velocity (m/s) </span></p></body></html> - - - - - - - - - - 66 - 30 - - - - - 66 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 66 - 30 - - - - - 66 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - 66 - 30 - - - - - 66 - 30 - - - - - 11 - - - - -1000000000.000000000000000 - - - 1000000000.000000000000000 - - - - - - - - - - - - - - - - 445 - 66 - - - - - 445 - 66 - - - - - Century Schoolbook L - 14 - 50 - false - - - - Initial condition - - - - - - - 354 - 30 - - - - - 363 - 31 - - - - Qt::Horizontal - - - - - 116 - 29 - - - - - 130 - 31 - - - - - 11 - - - - <html><head/><body><p><span style=" color:#ff0000;">Enthalpy ( J/Kg )</span></p></body></html> - - - - - - 230 - 29 - - - - - 232 - 31 - - - - - 11 - - - - 999999999.990000009536743 - - - 420000.000000000000000 - - - - - - - - Qt::Horizontal - - - - 58 - 20 - - - - - - splitter_9 - horizontalSpacer_20 - - - - - - - 780 - 371 - - - - - 780 - 371 - - - - - Century Schoolbook L - 14 - 75 - true - - - - Boundary condition - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Right - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Outlet - - - - - Inlet - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 420000.000000000000000 - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Bottom - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Outlet - - - - - Inlet - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 420000.000000000000000 - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Front - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Inlet - - - - - Outlet - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 420000.000000000000000 - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Top - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Inlet - - - - - Outlet - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 420000.000000000000000 - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Left - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Inlet - - - - - Outlet - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 420000.000000000000000 - - - - - - - - - - - - Century Schoolbook L - 14 - 50 - false - - - - Back - - - - - - Qt::Horizontal - - - - - 75 - 30 - - - - - 75 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> - - - - - - 230 - 30 - - - - - 230 - 30 - - - - - Outlet - - - - - Inlet - - - - - - - - - Qt::Horizontal - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> - - - - - - 130 - 30 - - - - - 130 - 30 - - - - - 11 - - - - 1000000000.000000000000000 - - - 420000.000000000000000 - - - - - - - - - - - - - Qt::Horizontal - - - - 58 - 20 - - - - - - - - - - - - Numerical - - - - - - - 230 - 40 - - - - - 230 - 40 - - - - <html><head/><body><p><span style=" font-size:18pt; font-weight:600; text-decoration: underline;">Numerical Options</span></p></body></html> - - - - - - - Qt::Horizontal - - - - 960 - 20 - - - - - - - - Qt::Vertical - - - - 20 - 499 - - - - - - - - - 420 - 210 - - - - - 420 - 210 - - - - Simulation parameters - - - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" color:#ff0000;">Number of time steps</span></p></body></html> - - - - - - - - 210 - 30 - - - - - 210 - 30 - - - - 999999999 - - - 100 - - - - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" color:#ff0000;">Save frequency </span></p></body></html> - - - - - - - - 210 - 30 - - - - - 210 - 30 - - - - 999999999 - - - 1 - - - - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" color:#ff0000;">Maximum time</span></p></body></html> - - - - - - - - 210 - 30 - - - - - 210 - 30 - - - - 1.000000000000000 - - - 0.000001000000000 - - - 1.000000000000000 - - - - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" color:#ff0000;">Precision</span></p></body></html> - - - - - - - - 175 - 30 - - - - - 175 - 30 - - - - <html><head/><body><p><span style=" color:#ff0000;">CFL number</span></p></body></html> - - - - - - - - 210 - 30 - - - - - 210 - 30 - - - - 999999999.990000009536743 - - - 1.000000000000000 - - - 1.000000000000000 - - - - - - - - 210 - 30 - - - - - 210 - 30 - - - - 10 - - - 999999999.990000009536743 - - - 0.000001000000000 - - - 0.000100000000000 - - - - - - - - - - - 390 - 210 - - - - - 390 - 210 - - - - - - - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-weight:600;">Method</span></p></body></html> - - - - - - - - 246 - 30 - - - - - 246 - 30 - - - - - Explicit - - - - - -- - - - - - Implicit - - - - - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-weight:600;">Linear Solver</span></p></body></html> - - - - - - - - 246 - 30 - - - - - 246 - 30 - - - - - GMRES - - - - - BICGSTAB - - - - - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-weight:600;">Scheme</span></p></body></html> - - - - - - - - 246 - 30 - - - - Qt::Horizontal - - - - - 120 - 30 - - - - - 120 - 30 - - - - - upwind - - - - - -- - - - - - centred - - - - - staggered - - - - - lowMach - - - - - pressureCorrection - - - - - - - 120 - 30 - - - - - 120 - 30 - - - - - Standard - - - - - -- - - - - - Entropic - - - - - Well-balanced - - - - - - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-weight:600;">Preconditioner</span></p></body></html> - - - - - - - - 246 - 30 - - - - - 246 - 30 - - - - - LU - - - - - ILU - - - - - None - - - - - - - - - 110 - 30 - - - - <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Result file Name</span></p></body></html> - - - - - - - - 246 - 30 - - - - - 246 - 30 - - - - MyCoreFlowsSimulation - - - - - - - - - - - 280 - 30 - - - - - 280 - 30 - - - - Launch simulation - - - - - - - - Dim1_RadioButton - Dim2_RadioButton - Dim3_RadioButton - TransportEquation_RadioButton - DiffusionEquation_RadioButton - SinglePhase_RadioButton - DriftModel_RadioButton - IsothermalTwoFluid_RadioButton - FiveEqsTwoFluid_RadioButton - MeshInputFileName_RadioButton - MeshCreation_RadioButton - MeshInputFileName_toolButton - Xinf_doubleSpinBox - Xsup_doubleSpinBox - Nx_spinBox - Yinf_doubleSpinBox - Ysup_doubleSpinBox - Ny_spinBox - Zinf_doubleSpinBox - Zsup_doubleSpinBox - Nz_spinBox - SP_HeatSource_doubleSpinBox - SP_Viscosity_doubleSpinBox - SP_Conductivity_doubleSpinBox - SP_Gravity_1d_doubleSpinBox - SP_Gravity_2d_doubleSpinBox - SP_Gravity_3d_doubleSpinBox - SP_FrictionCoefficients_doubleSpinBox - SP_Pressure_IC_doubleSpinBox - SP_Velocity_1d_IC_doubleSpinBox - SP_Velocity_2d_IC_doubleSpinBox - SP_Velocity_3d_IC_doubleSpinBox - SP_Temperature_IC_doubleSpinBox - SP_GasOrLiquid_comboBox - SP_1barOr155bar_comboBox - SP_Type_Left_BC_ComboBox - SP_Temperature_Left_BC_doubleSpinBox - SP_Velocity_1d_Left_BC_doubleSpinBox - SP_Velocity_2d_Left_BC_doubleSpinBox - SP_Velocity_3d_Left_BC_doubleSpinBox - SP_Pressure_Left_BC_doubleSpinBox - FEqs_pressure_doubleSpinBox - SP_Type_Right_BC_ComboBox - SP_Temperature_Right_BC_doubleSpinBox - SP_Velocity_1d_Right_BC_doubleSpinBox - SP_Velocity_2d_Right_BC_doubleSpinBox - SP_Velocity_3d_Right_BC_doubleSpinBox - SP_Pressure_Right_BC_doubleSpinBox - SP_Type_Top_BC_ComboBox - SP_Temperature_Top_BC_doubleSpinBox - SP_Velocity_1d_Top_BC_doubleSpinBox - SP_Velocity_2d_Top_BC_doubleSpinBox - SP_Velocity_3d_Top_BC_doubleSpinBox - SP_Pressure_Top_BC_doubleSpinBox - SP_Type_Bottom_BC_ComboBox - SP_Temperature_Bottom_BC_doubleSpinBox - SP_Velocity_1d_Bottom_BC_doubleSpinBox - SP_Velocity_2d_Bottom_BC_doubleSpinBox - SP_Velocity_3d_Bottom_BC_doubleSpinBox - SP_Pressure_Bottom_BC_doubleSpinBox - SP_Type_Front_BC_ComboBox - SP_Temperature_Front_BC_doubleSpinBox - SP_Velocity_1d_Front_BC_doubleSpinBox - SP_Velocity_2d_Front_BC_doubleSpinBox - SP_Velocity_3d_Front_BC_doubleSpinBox - SP_Pressure_Front_BC_doubleSpinBox - SP_Type_Back_BC_ComboBox - SP_Temperature_Back_BC_doubleSpinBox - SP_Velocity_1d_Back_BC_doubleSpinBox - SP_Velocity_2d_Back_BC_doubleSpinBox - SP_Velocity_3d_Back_BC_doubleSpinBox - SP_Pressure_Back_BC_doubleSpinBox - DM_HeatSource_doubleSpinBox - DM_Viscosity_Phase1_doubleSpinBox - DM_Viscosity_Phase2_doubleSpinBox - DM_Conductivity_Phase1_doubleSpinBox - DM_Conductivity_Phase2_doubleSpinBox_2 - DM_Gravity_1d_doubleSpinBox - DM_Gravity_2d_doubleSpinBox - DM_Gravity_3d_doubleSpinBox - DM_FrictionCoefficients_Phase1_doubleSpinBox - DM_FrictionCoefficients_Phase2_doubleSpinBox - DM_Concentration_IC_doubleSpinBox - DM_Pressure_IC_doubleSpinBox - DM_Velocity_1d_IC_doubleSpinBox - DM_Velocity_2d_IC_doubleSpinBox - DM_Velocity_3d_IC_doubleSpinBox - DM_Temperature_IC_doubleSpinBox - DM_1barOr155bar - DM_Type_Left_BC_ComboBox - DM_Temperature_Left_BC_doubleSpinBox - DM_Concentration_Left_BC_doubleSpinBox - DM_Velocity_1d_Left_BC_doubleSpinBox - DM_Velocity_2d_Left_BC_doubleSpinBox - DM_Velocity_3d_Left_BC_doubleSpinBox - DM_Pressure_Left_BC_doubleSpinBox - DM_Type_Right_BC_ComboBox - DM_Temperature_Right_BC_doubleSpinBox - DM_Concentration_Right_BC_doubleSpinBox - DM_Velocity_1d_Right_BC_doubleSpinBox - DM_Velocity_2d_Right_BC_doubleSpinBox - DM_Velocity_3d_Right_BC_doubleSpinBox - DM_Pressure_Right_BC_doubleSpinBox - DM_Type_Top_BC_ComboBox - Iso2F_BC_Inlet_VelocityP2_1d_doubleSpinBox - DM_Temperature_Top_BC_doubleSpinBox - DM_Concentration_Top_BC_doubleSpinBox - DM_Velocity_1d_Top_BC_doubleSpinBox - DM_Velocity_2d_Top_BC_doubleSpinBox - DM_Velocity_3d_Top_BC_doubleSpinBox - DM_Pressure_Top_BC_doubleSpinBox - DM_Type_Bottom_BC_ComboBox - DM_Temperature_Bottom_BC_doubleSpinBox - DM_Concentration_Bottom_BC_doubleSpinBox - DM_Velocity_1d_Bottom_BC_doubleSpinBox - DM_Velocity_2d_Bottom_BC_doubleSpinBox - DM_Velocity_3d_Bottom_BC_doubleSpinBox - DM_Pressure_Bottom_BC_doubleSpinBox - DM_Type_Front_BC_ComboBox - DM_Temperature_Front_BC_doubleSpinBox - DM_Concentration_Front_BC_doubleSpinBox - DM_Velocity_1d_Front_BC_doubleSpinBox - DM_Velocity_2d_Front_BC_doubleSpinBox - DM_Velocity_3d_Front_BC_doubleSpinBox - DM_Pressure_Front_BC_doubleSpinBox - DM_Type_Back_BC_ComboBox - DM_Temperature_Back_BC_doubleSpinBox - DM_Concentration_Back_BC_doubleSpinBox - DM_Velocity_1d_Back_BC_doubleSpinBox - DM_Velocity_2d_Back_BC_doubleSpinBox - DM_Velocity_3d_Back_BC_doubleSpinBox - DM_Pressure_Back_BC_doubleSpinBox - FEqs_HeatSource_doubleSpinBox - FEqs_Viscosity_Phase1_doubleSpinBox - FEqs_Viscosity_Phase2_doubleSpinBox - FEqs_Conductivity_Phase1_doubleSpinBox - FEqs_Conductivity_Phase2_doubleSpinBox - FEqs_Gravity_1d_doubleSpinBox - FEqs_Gravity_2d_doubleSpinBox - FEqs_Gravity_3d_doubleSpinBox - FEqs_FrictionCoefficients_Phase1_doubleSpinBox - FEqs_FrictionCoefficients_Phase2_doubleSpinBox - FEqs_FluidOrLiquid - FEqs_1barOr155bar - FEqs_BC_Wall_GroupName_lineEdit - FEqs_BC_Wall_Temperature_doubleSpinBox - FEqs_BC_Wall_VelocityP1_1d_doubleSpinBox - FEqs_BC_Wall_VelocityP1_2d_doubleSpinBox - FEqs_BC_Wall_VelocityP1_3d_doubleSpinBox - FEqs_BC_Wall_VelocityP2_1d_doubleSpinBox - FEqs_BC_Wall_VelocityP2_2d_doubleSpinBox - FEqs_BC_Wall_VelocityP2_3d_doubleSpinBox - FEqs_BC_Inlet_GroupName_lineEdit - FEqs_BC_Inlet_Temperature_doubleSpinBox - FEqs_BC_Inlet_Alpha_doubleSpinBox - FEqs_BC_Inlet_VelocityP1_1d_doubleSpinBox - FEqs_BC_Inlet_VelocityP1_2d_doubleSpinBox - FEqs_BC_Inlet_VelocityP1_3d_doubleSpinBox - FEqs_BC_Inlet_VelocityP2_1d_doubleSpinBox - FEqs_BC_Inlet_VelocityP2_2d_doubleSpinBox - FEqs_BC_Inlet_VelocityP2_3d_doubleSpinBox - FEqs_BC_Neumann_GroupName_lineEdit - FEqs_BC_Outlet_GroupNamelineEdit - FEqs_BC_Outlet_PressuredoubleSpinBox - Iso2F_HeatSource_doubleSpinBox - Iso2F_ViscositydoubleSpinBox - Iso2F_Conductivity_doubleSpinBox - Iso2F_Gravity_1d_doubleSpinBox - Iso2F_Gravity_2d_doubleSpinBox - Iso2F_Gravity_3d_doubleSpinBox - Iso2F_FrictionCoefficients_doubleSpinBox - Iso2F_Alpha_IC_doubleSpinBox - Iso2F_Pressure_IC_doubleSpinBox - Iso2F_VelocityPhase1_1d_IC_doubleSpinBox - Iso2F_VelocityPhase1_2d_IC_doubleSpinBox - Iso2F_VelocityPhase1_3d_IC_doubleSpinBox - Iso2F_VelocityPhase2_1d_IC_doubleSpinBox - Iso2F_VelocityPhase2_2d_IC_doubleSpinBox - Iso2F_VelocityPhase2_3d_IC_doubleSpinBox - Iso2f_1barOr155bar - Iso2F_BC_Wall_GroupName_lineEdit - Iso2F_BC_Wall_VelocityP1_1d_doubleSpinBox - DEq_HeatSource_doubleSpinBox - DEq_Viscosity_doubleSpinBox - DEq_Conductivity_doubleSpinBox - DEq_Density_doubleSpinBox - DEq_SolidTmperature_doubleSpinBox - DEq_BC_Left_comboBox - DEq_BC_Left_Temperature_doubleSpinBox - DEq_BC_Right_comboBox - DEq_BC_Right_Temperature_doubleSpinBox - TEq_BC_Top_comboBox_2 - TEq_BC_Top_Temperature_doubleSpinBox_2 - TEq_BC_Bottom_comboBox_2 - TEq_BC_Bottom_Temperature_doubleSpinBox_2 - DEq_BC_Front_comboBox - DEq_BC_Front_Temperature_doubleSpinBox - DEq_BC_Back_comboBox - DEq_BC_Back_Temperature_doubleSpinBox - TEq_HeatSource_doubleSpinBox - FEqs_CommonTemperature_doubleSpinBox - TEq_FluidEnthalpy_doubleSpinBox - TEq_BC_Left_comboBox - TEq_BC_Left_Temperature_doubleSpinBox - TEq_BC_Back_comboBox_5 - TEq_BC_Right_Temperature_doubleSpinBox - TEq_BC_Top_comboBox - TEq_BC_Top_Temperature_doubleSpinBox - TEq_BC_Bottom_comboBox - TEq_BC_Bottom_Temperature_doubleSpinBox - TEq_BC_Front_comboBox - TEq_BC_Front_Temperature_doubleSpinBox - TEq_BC_Back_comboBox - TEq_BC_Back_Temperature_doubleSpinBox - NO_MaxNbOfTimeStep_spinBox - NO_FreqSave_spinBox - NO_TimeMax_doubleSpinBox - NO_Precision_doubleSpinBox - NO_CFL_doubleSpinBox - NO_Method_comboBox - NO_LS_comboBox - NO_Scheme_comboBox - NO_Scheme_type_comboBox - NO_Preconditioner_comboBox - NO_ResultFileName_lineEdit - FEqs_VelocityP1_3d_doubleSpinBox - Iso2F_BC_Wall_VelocityP1_3d_doubleSpinBox - Iso2F_BC_Wall_VelocityP2_1d_doubleSpinBox - FEqs_VelocityP2_3d_doubleSpinBox - Iso2F_BC_Wall_VelocityP1_2d_doubleSpinBox - FEqs_VelocityP2_2d_doubleSpinBox - FEqs_VelocityP1_2d_doubleSpinBox - FEqs_VelocityP2_1d_doubleSpinBox - Iso2F_BC_Inlet_VelocityP2_3d_doubleSpinBox - Iso2F_BC_Inlet_Alpha_doubleSpinBox - Iso2F_BC_Inlet_VelocityP1_1d_doubleSpinBox - Iso2F_BC_Outlet_PressuredoubleSpinBox - Iso2F_BC_Neumann_GroupName_lineEdit - Iso2F_BC_Outlet_GroupNamelineEdit - Iso2F_BC_Inlet_VelocityP1_3d_doubleSpinBox - Iso2F_BC_Inlet_VelocityP1_2d_doubleSpinBox - Iso2F_BC_Inlet_GroupName_lineEdit - Iso2F_BC_Inlet_VelocityP2_2d_doubleSpinBox - Iso2F_BC_Wall_VelocityP2_2d_doubleSpinBox - MeshInputFileName_lineEdit - Iso2F_BC_Wall_VelocityP2_3d_doubleSpinBox - FEqs_VelocityP1_1d_doubleSpinBox - FEqs_Alpha_doubleSpinBox - - - - - Dim3_RadioButton - toggled(bool) - WidgetCreation3d - setEnabled(bool) - - - 618 - 212 - - - 858 - 377 - - - - - Dim2_RadioButton - toggled(bool) - WidgetCreation2d - setEnabled(bool) - - - 482 - 212 - - - 608 - 377 - - - - - Dim1_RadioButton - toggled(bool) - WidgetCreation1d - setEnabled(bool) - - - 346 - 212 - - - 358 - 377 - - - - - MeshCreation_RadioButton - toggled(bool) - Mesh_Creation - setEnabled(bool) - - - 183 - 249 - - - 604 - 370 - - - - - pushButton - clicked() - TabWidget - onLaunchSimu() - - - 989 - 753 - - - 918 - 551 - - - - - - onTransportSelected(bool) - onDriftModelSelected(bool) - onSinglePhaseSelected(bool) - onIsothermal2FluidSelected(bool) - onDiffusionSelected(bool) - on5Eq2FluidSelected(bool) - Dim_1(bool) - Dim_2(bool) - Dim_3(bool) - onLaunchSimu() - - diff --git a/CoreFlows/gui/src/utils.py.in b/CoreFlows/gui/src/utils.py.in deleted file mode 100755 index 8064712..0000000 --- a/CoreFlows/gui/src/utils.py.in +++ /dev/null @@ -1,8 +0,0 @@ -def completeResPath(fileName): - import os - subPath = "@SALOME_INSTALL_PYTHON@" - rd = os.environ.get("COREFLOWS_ROOT_DIR", None) - if rd is None: - raise Exception("COREFLOWS_ROOT_DIR is not defined!") - filePath = os.path.join(rd, subPath, fileName) - return filePath diff --git a/CoreFlows/gui/ui/CMakeLists.txt b/CoreFlows/gui/ui/CMakeLists.txt new file mode 100755 index 0000000..e0fef09 --- /dev/null +++ b/CoreFlows/gui/ui/CMakeLists.txt @@ -0,0 +1,38 @@ +# Copyright (C) 2012-2014 CEA/DEN, EDF R&D, OPEN CASCADE +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + +# uic files +SET(_pyuic_files + ${CMAKE_CURRENT_SOURCE_DIR}/MainCFWidget.ui +) + +# --- scripts --- +SET(_all_lib_SCRIPTS + ${CMAKE_CURRENT_SOURCE_DIR}/MainCFWidget.py +) + + +IF ( (EXISTS $ENV{CONFIGURATION_ROOT_DIR}) AND (EXISTS $ENV{KERNEL_ROOT_DIR}) AND (EXISTS $ENV{GUI_ROOT_DIR}) ) + SALOME_INSTALL_SCRIPTS("${_pyuic_SCRIPTS}" ${SALOME_INSTALL_PYTHON})#file MainCFWidget.ui + SALOME_INSTALL_SCRIPTS("${_all_lib_SCRIPTS}" ${SALOME_INSTALL_PYTHON})#file MainCFWidget.py +ELSE ( (EXISTS $ENV{CONFIGURATION_ROOT_DIR}) AND (EXISTS $ENV{KERNEL_ROOT_DIR}) AND (EXISTS $ENV{GUI_ROOT_DIR}) ) + INSTALL(FILES ${_pyuic_files} DESTINATION lib/python) + INSTALL(FILES ${_all_lib_SCRIPTS} DESTINATION lib/python) +ENDIF( (EXISTS $ENV{CONFIGURATION_ROOT_DIR}) AND (EXISTS $ENV{KERNEL_ROOT_DIR}) AND (EXISTS $ENV{GUI_ROOT_DIR}) ) + diff --git a/CoreFlows/gui/ui/MainCFWidget.py b/CoreFlows/gui/ui/MainCFWidget.py new file mode 100755 index 0000000..cc7cd41 --- /dev/null +++ b/CoreFlows/gui/ui/MainCFWidget.py @@ -0,0 +1,253 @@ +# -*- coding: utf-8 -*- +from PyQt5 import QtWidgets, QtCore +from PyQt5.uic import loadUi +from utils import completeResPath + +import CoreFlows as cf +import cdmath as cm + +class MainCFWidget(QtWidgets.QTabWidget): + def __init__(self): + QtWidgets.QTabWidget.__init__(self) + loadUi(completeResPath("MainCFWidget.ui"), self) + self._python_dump = [] + + def scanWidgets(self): + print(self.tabModel) + dictCF={} + for k in self.__dict__: + att = self.__dict__[k] + if isinstance(att, QtWidgets.QWidget): + name = str(att.objectName()) + if name != "": +# print(name) + if name.endswith("RadioButton"): + assert(isinstance(att, QtWidgets.QRadioButton)) + if att.isChecked() : + # parse name + name=name[:len(name)-len("_RadioButton")]#On retire le suffixe _Radiobutton + if name.startswith("Dim") : + dictCF["spaceDim"]=int(name[len("Dim")]) + elif name.endswith("Model") or name.startswith("SinglePhase") or name.endswith("Equation") or name.endswith("TwoFluid") : + dictCF["ModelName"]=name + elif name=="InputFileName" : + dictCF["InputFileName"]=True + elif name=="MeshCreation" : + dictCF["MeshCreation"]=True + elif name.endswith("spinBox") : + assert(isinstance(att, QtWidgets.QSpinBox)) + val = att.value() + # parse name + name=name[:len(name)-len("_spinBox")]#On retire le suffixe _SpinBox + if name=="Nx" : + dictCF["Nx"]=val + elif name=="Ny" : + dictCF["Ny"]=val + elif name=="Nz" : + dictCF["Nz"]=val + elif name=="NO_MaxNbOfTimeStep" : + dictCF["MaxNbOfTimeStep"]=val + elif name=="NO_FreqSave" : + dictCF["FreqSave"]=val + elif name.endswith("doubleSpinBox"): + assert(isinstance(att, QtWidgets.QDoubleSpinBox)) + val = att.value() + # parse name + name=name[:len(name)-len("_doubleSpinBox")]#On retire le suffixe _doubleSpinBox + if name.endswith("Conductivity") : + dictCF["Conductivity"]=val + elif name.endswith("Conductivity_Phase1") : + dictCF["Conductivity1"]=val + elif name.endswith("Conductivity_Phase2") : + dictCF["Conductivity2"]=val + elif name.endswith("Viscosity") : + dictCF["Viscosity"]=val + elif name.endswith("Viscosity_Phase1") : + dictCF["Viscosity1"]=val + elif name.endswith("Viscosity_Phase2") : + dictCF["Viscosity2"]=val + elif name.endswith("HeatSource") : + dictCF["HeatSource"]=val + elif name.endswith("FrictionCoefficients") : + dictCF["FrictionCoefficients"]=val + elif name.endswith("Gravity_1d") : + dictCF["Gravity_1d"]=val + elif name.endswith("Gravity_2d") : + dictCF["Gravity_2d"]=val + elif name.endswith("Gravity_3d") : + dictCF["Gravity_3d"]=val + elif name=="Xinf" : + dictCF["Xinf"]=val + elif name=="Xsup" : + dictCF["Xsup"]=val + elif name=="Yinf" : + dictCF["Yinf"]=val + elif name=="Ysup" : + dictCF["Ysup"]=val + elif name=="Zinf" : + dictCF["Zinf"]=val + elif name=="Zsup" : + dictCF["Zsup"]=val + elif name=="NO_TimeMax" : + dictCF["TimeMax"]=val + elif name=="NO_Precision" : + dictCF["Precision"]=val + elif name=="NO_CFL" : + dictCF["CFL"]=val + elif name.endswith("_IC") :#Initial conditions + name=name[:len(name)-len("_IC")]#On retire le suffixe _IC + if name.endswith("Concentration") : + dictCF["InitialConcentration"]=val + elif name.endswith("Alpha") : + dictCF["InitialAlpha"]=val + elif name.endswith("Pressure") : + dictCF["InitialPressure"]=val + elif name.endswith("Temperature") : + dictCF["InitialTemperature"]=val + elif name.endswith("Velocity_1d") : + dictCF["InitialVelocity_1d"]=val + elif name.endswith("Velocity_2d") : + dictCF["InitialVelocity_2d"]=val + elif name.endswith("Velocity_3d") : + dictCF["InitialVelocity_3d"]=val + elif name.endswith("_BC") :#Boundary conditions + name=name[3:len(name)-len("_BC")]#On retire le préfixe SP_ ou DM_ au début et le suffixe _BC à la fin + dictCF[name]=val + elif name.endswith('comboBox'): + assert(isinstance(att, QtWidgets.QComboBox)) + val = att.currentText() + # parse name + name=name[:len(name)-len("_comboBox")]#On retire le suffixe _comboBox + if name.endswith("1barOr155bar") : + dictCF["pressureEstimate"]=val + elif name.endswith("GasOrLiquid") : + dictCF["fluidType"]=val + elif name.endswith("_BC") :#Boundary conditions + name=name[4:len(name)-len("_BC")]#On retire le préfixe SP_ ou DM_ au début et le suffixe _BC à la fin + dictCF[name]=val + elif name=="NO_Method" : + dictCF["Method"]=val + elif name=="NO_LS" : + dictCF["LS"]=val #Linear solver + elif name=="NO_Scheme" : + dictCF["Scheme"]=val + elif name=="NO_Scheme_type" : + dictCF["Scheme_type"]=val + elif name=="NO_Preconditioner" : + dictCF["Preconditioner"]=val + elif name.endswith('lineEdit'): + assert(isinstance(att, QtWidgets.QLineEdit)) + val = str(att.text()) + # parse name + name=name[:len(name)-len("_lineEdit")]#On retire le suffixe _comboBox + #print(name,val) + if name=="NO_ResultFileName" : + dictCF["ResultFileName"]=val + elif name=="InputFileName" : + dictCF["InputFileName"]=val + + return dictCF + + def onLaunchSimu(self): + print("Reading widgets") + dictCF = self.scanWidgets() + + print("Setting Model, ModelName = ", dictCF["ModelName"], ", pressureEstimate = ", dictCF["pressureEstimate"], ", InitialPressure = ", dictCF["InitialPressure"], ", InitialVelocity_1d = ", dictCF["InitialVelocity_1d"], ", InitialTemperature= ", dictCF["InitialTemperature"]) + ######## Setting Model and initil state ######################### + if dictCF["ModelName"]=="SinglePhase" : + myProblem = eval('cf.%s(cf.%s,cf.%s,%s)' % (dictCF["ModelName"],dictCF["fluidType"],dictCF["pressureEstimate"],dictCF["spaceDim"])) + nVar = myProblem.getNumberOfVariables() + VV_Constant =[0]*nVar + VV_Constant[0] = dictCF["InitialPressure"] + VV_Constant[1] = dictCF["InitialVelocity_1d"] + if dictCF["spaceDim"] >1 : + VV_Constant[2] = dictCF["InitialVelocity_2d"] + if dictCF["spaceDim"] >2 : + VV_Constant[3] = dictCF["InitialVelocity_3d"] + VV_Constant[nVar-1] = dictCF["InitialTemperature"] + elif dictCF["ModelName"]=="DriftModel" : + myProblem = eval("cf.%s(cf.%s,%s)" % (dictCF["ModelName"],dictCF["pressureEstimate"],dictCF["spaceDim"])) + nVar = myProblem.getNumberOfVariables() + VV_Constant =[0]*nVar + VV_Constant[0] = dictCF["InitialConcentration"] + VV_Constant[1] = dictCF["InitialPressure"] + VV_Constant[2] = dictCF["InitialVelocity_1d"] + if dictCF["spaceDim"] >1 : + VV_Constant[3] = dictCF["InitialVelocity_2d"] + if dictCF["spaceDim"] >2 : + VV_Constant[4] = dictCF["InitialVelocity_3d"] + VV_Constant[nVar-1] = dictCF["InitialTemperature"] + else : + raise NameError('Model not yet handled', dictCF["ModelName"]) + + print("Setting initial data, spaceDim = ", dictCF["spaceDim"], ", Nx = ", dictCF["Nx"], ", Xinf= ", dictCF["Xinf"], ", Xsup = ", dictCF["Xsup"]) + ############ setting initial data ################################ + if dictCF["spaceDim"] ==1 : + myProblem.setInitialFieldConstant( dictCF["spaceDim"], VV_Constant, dictCF["Xinf"], dictCF["Xsup"], dictCF["Nx"],"Left","Right"); + print("Initial field set") + elif dictCF["spaceDim"] ==2 : + myProblem.setInitialFieldConstant( dictCF["spaceDim"], VV_Constant, dictCF["Xinf"], dictCF["Xsup"], dictCF["Nx"],"Left","Right", dictCF["Yinf"], dictCF["Ysup"], dictCF["Ny"],"Bottom","Top"); + elif dictCF["spaceDim"] ==3 : + myProblem.setInitialFieldConstant( dictCF["spaceDim"], VV_Constant, dictCF["Xinf"], dictCF["Xsup"], dictCF["Nx"],"Back","Front", dictCF["Yinf"], dictCF["Ysup"], dictCF["Ny"],"Left","Right", dictCF["Zinf"], dictCF["Zsup"], dictCF["Nz"],"Bottom","Top"); + else : + raise NameError('Dimension should be 1, 2 or 3', dictCF["spaceDim"]) + +# for k, v in dictCF.items(): +# line = "cf.set%s(%s)" % (k, v) +# #exec(line) +# self._python_dump.append(line) + + print("Setting boundary conditions, Temperature_Left = ", dictCF["Temperature_Left"], ", Velocity_1d_Left = ", dictCF["Velocity_1d_Left"], ", Pressure_Right = ", dictCF["Pressure_Right"]) + ######## 1D for the moment ###################### + if dictCF["ModelName"]=="SinglePhase" : + myProblem.setInletBoundaryCondition("Left",dictCF["Temperature_Left"],dictCF["Velocity_1d_Left"]) + myProblem.setOutletBoundaryCondition("Right", dictCF["Pressure_Right"]); + elif dictCF["ModelName"]=="DriftModel" : + myProblem.setInletBoundaryCondition("Left",dictCF["DM_Temperature_Left"],dictCF["DM_Concentration_Left"],dictCF["DM_Velocity_1d_Left"]) + myProblem.setOutletBoundaryCondition("Right", dictCF["DM_Pressure_Right"]); + + print("Setting source terms, HeatSource = ", dictCF["HeatSource"], ", Gravity_1d = ", dictCF["Gravity_1d"]) + ########## Physical forces ################# + myProblem.setHeatSource(dictCF["HeatSource"]); + gravite=[0]*dictCF["spaceDim"] + gravite[0]=dictCF["Gravity_1d"] + if dictCF["spaceDim"] >1 : + gravite[1]=dictCF["Gravity_2d"] + if dictCF["spaceDim"] >2 : + gravite[2]=dictCF["Gravity_3d"] + myProblem.setGravity(gravite) + + print("Setting numerical options, NumericalScheme = ", dictCF["Scheme"], ", NumericalMethod = ", dictCF["Method"], ", CFL = ", dictCF["CFL"]) + ########## Numerical options ############### + eval("myProblem.setNumericalScheme(cf.%s, cf.%s)" % (dictCF["Scheme"],dictCF["Method"])) + myProblem.setWellBalancedCorrection(True); + + myProblem.setCFL(dictCF["CFL"]); + myProblem.setPrecision(dictCF["Precision"]); + myProblem.setMaxNbOfTimeStep(dictCF["MaxNbOfTimeStep"]); + myProblem.setTimeMax(dictCF["TimeMax"]); + myProblem.setFreqSave(dictCF["FreqSave"]); + myProblem.setFileName(dictCF["ResultFileName"]); + myProblem.saveConservativeField(True); + #myProblem.setVerbose(True); + myProblem.usePrimitiveVarsInNewton(True); + if(dictCF["spaceDim"]>1): + myProblem.saveVelocity(); + pass + + myProblem.initialize() + + ok = myProblem.run() + + if (ok): + print( "Simulation " + dictCF["ResultFileName"] + " is successful !" ); + pass + else: + print( "Simulation " + dictCF["ResultFileName"] + " failed ! " ); + pass + + print( "------------ End of calculation !!! -----------" ); + + myProblem.terminate() + + # TODO use a helper object here. diff --git a/CoreFlows/gui/ui/MainCFWidget.ui b/CoreFlows/gui/ui/MainCFWidget.ui new file mode 100755 index 0000000..ca621d9 --- /dev/null +++ b/CoreFlows/gui/ui/MainCFWidget.ui @@ -0,0 +1,12910 @@ + + + TabWidget + + + + 0 + 0 + 1221 + 851 + + + + + 1221 + 16777215 + + + + TabWidget + + + <html><head/><body><p><br/></p></body></html> + + + <html><head/><body><p><br/></p></body></html> + + + + + + 0 + + + + Model choice + + + + + + Qt::Horizontal + + + + 542 + 20 + + + + + + + + + 428 + 66 + + + + + 428 + 66 + + + + Dimension + + + + + + + 402 + 30 + + + + Qt::Horizontal + + + + true + + + + 130 + 30 + + + + + 130 + 30 + + + + true + + + false + + + 1 + + + true + + + + + + 130 + 30 + + + + + 130 + 30 + + + + 2 + + + + + true + + + + 130 + 30 + + + + + 130 + 30 + + + + true + + + false + + + 3 + + + true + + + false + + + + + + + + + + + Qt::Horizontal + + + + 151 + 20 + + + + + + + + Qt::Horizontal + + + + 1010 + 20 + + + + + + + + Qt::Vertical + + + + 20 + 663 + + + + + + + + + 180 + 0 + + + + <html><head/><body><p><span style=" font-size:18pt; font-weight:600; text-decoration: underline;">SOLVERLAB</span></p></body></html> + + + + + + + + 462 + 300 + + + + + 462 + 300 + + + + Model choice + + + + + + + 180 + 30 + + + + + 180 + 30 + + + + <html><head/><body><p><span style=" text-decoration: underline;">Scalar models</span></p></body></html> + + + + + + + + 250 + 30 + + + + + 250 + 30 + + + + Transport equation + + + + + + + + 180 + 30 + + + + + 180 + 30 + + + + <html><head/><body><p/></body></html> + + + + + + + + 250 + 30 + + + + + 250 + 30 + + + + Diffusion equation + + + + + + + Qt::Vertical + + + + 20 + 18 + + + + + + + + Qt::Vertical + + + + 20 + 18 + + + + + + + + + 180 + 30 + + + + + 180 + 30 + + + + <html><head/><body><p><span style=" text-decoration: underline;">Single phase model</span></p></body></html> + + + + + + + + 250 + 30 + + + + + 250 + 30 + + + + Navier-Stokes equations + + + true + + + + + + + Qt::Vertical + + + + 20 + 18 + + + + + + + + Qt::Vertical + + + + 20 + 18 + + + + + + + + + 180 + 30 + + + + + 180 + 30 + + + + <html><head/><body><p><span style=" text-decoration: underline;">Two-phase models</span></p></body></html> + + + + + + + + 250 + 30 + + + + + 250 + 30 + + + + Drift model + + + + + + + + 180 + 30 + + + + + 180 + 30 + + + + <html><head/><body><p/></body></html> + + + + + + + + 250 + 30 + + + + + 250 + 30 + + + + Isothermal two-fluid model + + + + + + + + 180 + 30 + + + + + 180 + 30 + + + + <html><head/><body><p/></body></html> + + + + + + + + 250 + 30 + + + + + 250 + 30 + + + + Five equation two-fluid model + + + + + + + + + + + Mesh + + + + + + + + + 120 + 0 + + + + <html><head/><body><p><span style=" font-size:18pt; font-weight:600; text-decoration: underline;">Mesh</span></p></body></html> + + + + + + + Qt::Horizontal + + + + 838 + 20 + + + + + + + + Qt::Vertical + + + + 20 + 508 + + + + + + + + + + + 480 + 30 + + + + + 472 + 30 + + + + Qt::Horizontal + + + + + 90 + 30 + + + + + 90 + 30 + + + + Mesh file + + + true + + + + + + 350 + 30 + + + + + 350 + 30 + + + + + + + 30 + 30 + + + + + 30 + 30 + + + + ... + + + + + + + + + 856 + 200 + + + + + 856 + 231 + + + + Qt::Vertical + + + + + 856 + 30 + + + + Qt::Horizontal + + + + + 90 + 30 + + + + + 90 + 30 + + + + Creation + + + true + + + true + + + + + + 760 + 30 + + + + + 760 + 30 + + + + + 11 + 50 + false + + + + + + + + + + + 740 + 225 + + + + + 846 + 200 + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + + 11 + 50 + false + + + + + + + + + + 770 + 200 + + + + + 770 + 200 + + + + + Century Schoolbook L + 14 + 50 + false + + + + + + + + + + + + + + 191 + 102 + + + + + 191 + 92 + + + + Qt::Vertical + + + + + 191 + 30 + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + + 11 + 50 + false + + + + Xinf (m) + + + + + + 110 + 30 + + + + + 110 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000099.990000009536743 + + + -5.000000000000000 + + + + + + + 191 + 30 + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + + 11 + 50 + false + + + + Xsup (m) + + + + + + 110 + 30 + + + + + 110 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000099.990000009536743 + + + 5.000000000000000 + + + + + + + 191 + 30 + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + + 11 + 50 + false + + + + Nx + + + + + + 110 + 30 + + + + + 110 + 30 + + + + + 11 + + + + 2147483647 + + + 20 + + + + + + + + + + + + + + + + 191 + 102 + + + + + 191 + 92 + + + + Qt::Vertical + + + + + 191 + 30 + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + + 11 + 50 + false + + + + Yinf (m) + + + + + + 110 + 30 + + + + + 110 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000099.990000009536743 + + + -5.000000000000000 + + + + + + + 191 + 30 + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + + 11 + 50 + false + + + + Ysup (m) + + + + + + 110 + 30 + + + + + 110 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000099.990000009536743 + + + 5.000000000000000 + + + + + + + 191 + 30 + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + + 11 + 50 + false + + + + Ny + + + + + + 110 + 30 + + + + + 110 + 30 + + + + + 11 + + + + 2147483647 + + + 20 + + + + + + + + + + + + + + + + 191 + 102 + + + + + 191 + 92 + + + + Qt::Vertical + + + + + 191 + 30 + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + + 11 + 50 + false + + + + Zinf (m) + + + + + + 110 + 30 + + + + + 110 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000099.990000009536743 + + + -5.000000000000000 + + + + + + + 191 + 30 + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + + 11 + 50 + false + + + + Zsup (m) + + + + + + 110 + 30 + + + + + 110 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000099.990000009536743 + + + 5.000000000000000 + + + + + + + 191 + 30 + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + + 11 + 50 + false + + + + Nz + + + + + + 110 + 30 + + + + + 110 + 30 + + + + + 11 + + + + 2147483647 + + + 20 + + + + + + + + + + + + + + + + + + 770 + 225 + + + + + 770 + 225 + + + + + Century Schoolbook L + 11 + 75 + false + true + + + + + + + + + + + + + + + + + + Physical + + + + + + + 200 + 40 + + + + + 200 + 40 + + + + <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">Navier-Stokes</span></p></body></html> + + + + + + + Qt::Horizontal + + + + 990 + 17 + + + + + + + + Qt::Vertical + + + + 20 + 728 + + + + + + + + + + + 510 + 250 + + + + + 510 + 250 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Physical options + + + + + + + + + 180 + 30 + + + + + 180 + 30 + + + + + 11 + + + + Heat Source ( W/m^dim ) + + + + + + + + 200 + 30 + + + + + 200 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + + + + + + 180 + 30 + + + + + 180 + 30 + + + + + 11 + + + + Viscosity (Pa*s) + + + + + + + + 200 + 30 + + + + + 200 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + + + + + + 180 + 30 + + + + + 180 + 30 + + + + + 11 + + + + Conductivity (W/m/K) + + + + + + + + 200 + 30 + + + + + 200 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + + + + + + 180 + 30 + + + + + 180 + 30 + + + + + 11 + + + + Gravity (m/s²) + + + + + + + + + + 62 + 30 + + + + + 62 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 62 + 30 + + + + + 62 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 62 + 30 + + + + + 62 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 180 + 30 + + + + + 180 + 30 + + + + + 11 + + + + Porosity friction + + + + + + + + 200 + 30 + + + + + 200 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 0.000001000000000 + + + + + + + + + + + + + 420 + 140 + + + + + 420 + 140 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Initial condition + + + + + + + + + 120 + 30 + + + + + 120 + 30 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Pressure (Pa)</span></p></body></html> + + + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1.000000000000000 + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + 120 + 30 + + + + + 120 + 30 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Velocity (m/s) </span></p></body></html> + + + + + + + + + + 66 + 30 + + + + + 66 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 66 + 30 + + + + + 66 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 66 + 30 + + + + + 66 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 120 + 30 + + + + + 120 + 30 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Temperature (K)</span></p></body></html> + + + + + + + + 220 + 30 + + + + + 200 + 30 + + + + + 11 + + + + 100.000000000000000 + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + + + + + + 350 + 130 + + + + + 350 + 130 + + + + + Century Schoolbook L + 14 + 75 + true + + + + Fluid Parameters + + + + + + + 140 + 30 + + + + + 140 + 30 + + + + + 11 + 50 + false + + + + <html><head/><body><p><span style=" color:#ff0000;">Phase</span></p></body></html> + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + + Liquid + + + + + -- + + + + + Vapour + + + + + + + + + 140 + 30 + + + + + 140 + 30 + + + + + 11 + 50 + false + + + + <html><head/><body><p><span style=" color:#ff0000;">Estimate pressure</span></p></body></html> + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + + around1bar300K + + + + + -- + + + + + around155bars600K + + + + + + + + + + + + Century Schoolbook L + 14 + 75 + true + + + + Boundary condition + + + + + + + 361 + 202 + + + + + 361 + 202 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Left + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Wall + + + + + Inlet + + + + + Outlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + + + + 361 + 202 + + + + + 361 + 202 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Top + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Outlet + + + + + Wall + + + + + Inlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + + + + 361 + 202 + + + + + 361 + 202 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Front + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Wall + + + + + Inlet + + + + + Outlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + + + 361 + 202 + + + + + 361 + 202 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Right + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Wall + + + + + Inlet + + + + + Outlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + + + + + 361 + 202 + + + + + 361 + 202 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Bottom + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Inlet + + + + + Wall + + + + + Outlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + + + 361 + 202 + + + + + 361 + 202 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Back + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Wall + + + + + Inlet + + + + + Outlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + + + + + SinglePhase + verticalSpacer_8 + horizontalSpacer_32 + + + + + Physical + + + + + + + 180 + 0 + + + + <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">Drift Model</span></p></body></html> + + + + + + + Qt::Horizontal + + + + 1161 + 20 + + + + + + + + Qt::Vertical + + + + 20 + 728 + + + + + + + + + + + 471 + 221 + + + + + 471 + 221 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Physical options + + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + Heat Source ( W/m^dim ) + + + + + + + + 246 + 30 + + + + + 246 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + Viscosity ( Pa*s ) + + + + + + + + 246 + 30 + + + + Qt::Horizontal + + + + + 120 + 30 + + + + + 120 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + + + + 120 + 30 + + + + + 120 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + Conductivity ( W/m/K ) + + + + + + + + 246 + 30 + + + + Qt::Horizontal + + + + + 120 + 30 + + + + + 120 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + + + + 120 + 30 + + + + + 120 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + Gravity ( m/s² ) + + + + + + + + 246 + 30 + + + + + 236 + 30 + + + + Qt::Horizontal + + + + + 78 + 30 + + + + + 78 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 78 + 30 + + + + + 78 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 78 + 30 + + + + + 78 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + Porosity friction coefficient + + + + + + + + 246 + 30 + + + + Qt::Horizontal + + + + + 120 + 30 + + + + + 120 + 30 + + + + + 11 + + + + 4 + + + 100000.000000000000000 + + + 0.010000000000000 + + + + + + 120 + 30 + + + + + 120 + 30 + + + + + 11 + + + + 4 + + + 10000.000000000000000 + + + 0.010000000000000 + + + + + + + + + + + + + + 450 + 176 + + + + + 450 + 176 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Initial condition + + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Concentration</span></p></body></html> + + + + + + + + 222 + 30 + + + + + 222 + 30 + + + + + 11 + + + + 4 + + + 1.000000000000000 + + + 0.010000000000000 + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Pressure (Pa)</span></p></body></html> + + + + + + + + 222 + 30 + + + + + 222 + 30 + + + + + 11 + + + + 1.000000000000000 + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Velocity (m/s)</span></p></body></html> + + + + + + + + 222 + 30 + + + + Qt::Horizontal + + + + + 70 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 70 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 70 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Temperature (K)</span></p></body></html> + + + + + + + + 222 + 30 + + + + + 222 + 30 + + + + + 11 + + + + 200.000000000000000 + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Fluid Parameters + + + + + + + 140 + 30 + + + + + 140 + 30 + + + + + 11 + 50 + false + + + + <html><head/><body><p><span style=" color:#ff0000;">Estimate pressure</span></p></body></html> + + + + + + + + 190 + 30 + + + + + 190 + 30 + + + + + 11 + + + + + around1bar300K + + + + + around155bars600K + + + + + + + + + + + + Century Schoolbook L + 14 + 75 + true + + + + Boundary condition + + + + + + + 361 + 215 + + + + + 361 + 215 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Left + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Wall + + + + + Inlet + + + + + Outlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 4 + + + 1.000000000000000 + + + 0.010000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + + + 361 + 215 + + + + + 361 + 215 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Top + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Outlet + + + + + Wall + + + + + Inlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 4 + + + 1.000000000000000 + + + 0.010000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + + + 361 + 215 + + + + + 361 + 215 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Front + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Wall + + + + + Inlet + + + + + Outlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 4 + + + 1.000000000000000 + + + 0.010000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + + + 361 + 215 + + + + + 361 + 215 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Right + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Wall + + + + + Inlet + + + + + Outlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 4 + + + 1.000000000000000 + + + 0.010000000000000 + + + 1.000000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + + + 361 + 215 + + + + + 361 + 215 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Bottom + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Inlet + + + + + Wall + + + + + Outlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 4 + + + 1.000000000000000 + + + 0.010000000000000 + + + 1.000000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + + + 361 + 215 + + + + + 361 + 215 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Back + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + Wall + + + + + Inlet + + + + + Outlet + + + + + Neumann + + + + + Dirichlet + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 300.000000000000000 + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Concentration</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 4 + + + 1.000000000000000 + + + 0.010000000000000 + + + 1.000000000000000 + + + + + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity (m/s)</span></p></body></html> + + + + + + 220 + 30 + + + + + 212 + 30 + + + + Qt::Horizontal + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + 68 + 30 + + + + + 70 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 338 + 30 + + + + + 331 + 30 + + + + Qt::Horizontal + + + + + 110 + 30 + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure (Pa)</span></p></body></html> + + + + + + 220 + 30 + + + + + 220 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + + + + + DriftModelPage + horizontalSpacer_33 + verticalSpacer_10 + + + + Physical + + + + + 1330 + 70 + 626 + 218 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Initial condition + + + + + + + + + + + 11 + + + + Vapour volume fraction + + + + + + + + 11 + + + + Pressure ( Pa ) + + + + + + + + 11 + + + + Velocity phase 1 ( m/s ) + + + + + + + + 11 + + + + Velocity phase 2 ( m/s ) + + + + + + + + 11 + + + + Mean temperature (K) + + + + + + + + + + + + 11 + + + + 1.000000000000000 + + + + + + + + 11 + + + + 999999999.990000009536743 + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 11 + + + + 999999999.990000009536743 + + + + + + + + + + + + + 10 + 10 + 425 + 40 + + + + + 120 + 0 + + + + <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">Five equation two-fluid model</span></p></body></html> + + + + + + 37 + 285 + 1215 + 124 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Fluid Parameters + + + + + 70 + 30 + 751 + 30 + + + + Qt::Horizontal + + + + + 11 + + + + Liquid/Fluid + + + + + + 11 + + + + + -- + + + + + Fluid + + + + + Liquid + + + + + + + 11 + + + + + -- + + + + + Arround1bar + + + + + Arround155bar + + + + + + + + + 37 + 415 + 1215 + 378 + + + + + Century Schoolbook L + 14 + 75 + true + + + + Boundary condition + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + wall + + + + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature ( K )</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 1 ( m/s )</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 2 (m/s)</span></p></body></html> + + + + + + + + + + + + + + + 11 + + + + 999999999.990000009536743 + + + 300.000000000000000 + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Inlet + + + + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature ( K )</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Vapour volume fraction</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 1 (m/s)</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 2 (m/s)</span></p></body></html> + + + + + + + + + + + + + + + 11 + + + + 999999999.990000009536743 + + + 300.000000000000000 + + + + + + + + 11 + + + + 1.000000000000000 + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Neumann + + + + + 17 + 25 + 285 + 36 + + + + Qt::Horizontal + + + + <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Outlet + + + + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure ( Pa ) </span></p></body></html> + + + + + + + + + + + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + + + + + + + + + 60 + 60 + 655 + 220 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Physical options + + + + + + Qt::Horizontal + + + + + + + + 11 + + + + Heat Source ( W/m^dim ) + + + + + + + + 11 + + + + Viscosity ( Pa*s ) + + + + + + + + 11 + + + + Conductivity ( W/m/K ) + + + + + + + + 11 + + + + Gravity ( m/s² ) + + + + + + + + 11 + + + + Interfacial friction coefficients + + + + + + + + + + + + 11 + + + + 999999999.990000009536743 + + + + + + + + + + 11 + + + + 999999999.990000009536743 + + + + + + + + 11 + + + + 999999999.990000009536743 + + + + + + + + + + + + 11 + + + + 999999999.990000009536743 + + + + + + + + 11 + + + + 999999999.990000009536743 + + + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + 11 + + + + 1.000000000000000 + + + + + + + + 11 + + + + 1.000000000000000 + + + + + + + + + + + + + + + Physical + + + + + 9 + 9 + 1304 + 752 + + + + Qt::Vertical + + + + + + + + 120 + 0 + + + + <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">Isothermal two fluid model</span></p></body></html> + + + + + + + Qt::Horizontal + + + + 508 + 20 + + + + + + + + + + + + Qt::Vertical + + + + 20 + 708 + + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Physical options + + + + + + + + + + + 11 + + + + Heat Source ( W/m^dim ) + + + + + + + + 11 + + + + Viscosity ( Pa *s ) + + + + + + + + 11 + + + + Conductivity ( W/m/K ) + + + + + + + + 11 + + + + Gravity ( m/s² ) + + + + + + + + 11 + + + + Interfacial friction coefficients + + + + + + + + + + + + 11 + + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + 1000000000.000000000000000 + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + 11 + + + + 1.000000000000000 + + + + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Initial condition + + + + + + + + + + + 11 + + + + Vapour volume fraction + + + + + + + + 11 + + + + Pressure ( Pa ) + + + + + + + + 11 + + + + Velocity phase 1 ( m/ s ) + + + + + + + + 11 + + + + Velocity phase 2 ( m/ s ) + + + + + + + + + + + + 11 + + + + 1.000000000000000 + + + + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Fluid Parameters + + + + + 50 + 40 + 261 + 30 + + + + Qt::Horizontal + + + + + 11 + + + + Estimate pressure + + + + + + 11 + + + + + -- + + + + + Arround1bar + + + + + Arround155bar + + + + + + + + + + + Century Schoolbook L + 14 + 75 + true + + + + Boundary condition + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + wall + + + + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 1 ( m/s )</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 2 ( m/s )</span></p></body></html> + + + + + + + + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Inlet + + + + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Vapour volume fraction</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 1 ( m/s )</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Velocity phase 2 ( m/s )</span></p></body></html> + + + + + + + + + + + + + + + 11 + + + + 1.000000000000000 + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Neumann + + + + + 17 + 25 + 285 + 36 + + + + Qt::Horizontal + + + + <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Outlet + + + + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Group Name</span></p></body></html> + + + + + + + <html><head/><body><p><span style=" font-size:10pt;">Pressure</span></p></body></html> + + + + + + + + + + + + + + + 11 + + + + 1000000000.000000000000000 + + + 100000.000000000000000 + + + + + + + + + + + + + + + + + + + + + + + + Physical + + + + + + + 320 + 40 + + + + + 320 + 40 + + + + <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">The diffusion equation</span></p></body></html> + + + + + + + Qt::Horizontal + + + + 870 + 20 + + + + + + + + Qt::Vertical + + + + 20 + 671 + + + + + + + + + 440 + 176 + + + + + 440 + 176 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Physical options + + + + + + Qt::Horizontal + + + + + + + + 180 + 30 + + + + + 11 + + + + Heat power ( J/m^dim ) + + + + + + + + 180 + 30 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Heat capacity ( J/Kg/K )</span></p></body></html> + + + + + + + + 180 + 30 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Conductivity ( W/m/K )</span></p></body></html> + + + + + + + + 179 + 29 + + + + + 181 + 31 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Density (Kg/m^dim)</span></p></body></html> + + + + + + + + + + + + 199 + 29 + + + + + 201 + 31 + + + + + 11 + + + + 999999999.990000009536743 + + + + + + + + 199 + 30 + + + + + 200 + 30 + + + + + 11 + + + + 0.000000000000000 + + + 999999999.990000009536743 + + + 300.000000000000000 + + + + + + + + 200 + 30 + + + + + 200 + 30 + + + + + 11 + + + + 999999999.990000009536743 + + + 5.000000000000000 + + + + + + + + 200 + 30 + + + + + 200 + 30 + + + + + 11 + + + + 0.100000000000000 + + + 1000000000.000000000000000 + + + 10000.000000000000000 + + + + + + + + + + + + + + + 410 + 89 + + + + + 410 + 89 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Initial condition + + + + + + + 378 + 0 + + + + + 373 + 30 + + + + Qt::Horizontal + + + + + 169 + 30 + + + + + 171 + 31 + + + + + 11 + + + + Temperature (K) + + + + + + 199 + 29 + + + + + 201 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 500.000000000000000 + + + + + + + + + + + + 821 + 359 + + + + + 821 + 359 + + + + + Century Schoolbook L + 12 + 75 + true + + + + Boundary condition + + + + + + + + + Century Schoolbook L + 12 + 50 + false + + + + Top + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Dirichlet + + + + + -- + + + + + Neumann + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 500.000000000000000 + + + + + + + + + + + + Century Schoolbook L + 12 + 50 + false + + + + Front + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Dirichlet + + + + + Neumann + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 500.000000000000000 + + + + + + + + + + + + Century Schoolbook L + 12 + 50 + false + + + + Left + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Dirichlet + + + + + Neumann + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 500.000000000000000 + + + + + + + + + + + + Century Schoolbook L + 12 + 50 + false + + + + Bottom + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Dirichlet + + + + + Neumann + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 500.000000000000000 + + + + + + + + + + + + Century Schoolbook L + 12 + 50 + false + + + + Back + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Dirichlet + + + + + Neumann + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 500.000000000000000 + + + + + + + + + + + + Century Schoolbook L + 12 + 50 + false + + + + Right + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Dirichlet + + + + + Neumann + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Temperature (K)</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 500.000000000000000 + + + + + + + + + + + + + + + + + Physical + + + + + + + 290 + 40 + + + + + 290 + 40 + + + + <html><head/><body><p><span style=" font-size:22pt; font-weight:600; text-decoration: underline;">Transport equation</span></p></body></html> + + + + + + + Qt::Horizontal + + + + 900 + 37 + + + + + + + + Qt::Vertical + + + + 20 + 636 + + + + + + + + + 550 + 176 + + + + + 550 + 176 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Physical options + + + + + + Qt::Horizontal + + + + + 218 + 30 + + + + + 218 + 30 + + + + + 11 + + + + Heat Source ( W/m^dim ) + + + + + + 270 + 30 + + + + + 270 + 30 + + + + + 11 + + + + 999999999.990000009536743 + + + + + + + + + 404 + 104 + + + + + 404 + 104 + + + + + Century Schoolbook L + 11 + 50 + false + + + + Fluid Parameters + + + + + + + 160 + 30 + + + + + 160 + 30 + + + + + 11 + 50 + false + + + + <html><head/><body><p><span style=" color:#ff0000;">Estimate pressure</span></p></body></html> + + + + + + + + 0 + 30 + + + + + 190 + 30 + + + + + 11 + + + + + Arround 1bar 300K + + + + + Arround 155bar 600K + + + + + + + + + 160 + 30 + + + + + 160 + 30 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Constant velocity (m/s) </span></p></body></html> + + + + + + + + + + 66 + 30 + + + + + 66 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 66 + 30 + + + + + 66 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + 66 + 30 + + + + + 66 + 30 + + + + + 11 + + + + -1000000000.000000000000000 + + + 1000000000.000000000000000 + + + + + + + + + + + + + + + + 445 + 66 + + + + + 445 + 66 + + + + + Century Schoolbook L + 14 + 50 + false + + + + Initial condition + + + + + + + 354 + 30 + + + + + 363 + 31 + + + + Qt::Horizontal + + + + + 116 + 29 + + + + + 130 + 31 + + + + + 11 + + + + <html><head/><body><p><span style=" color:#ff0000;">Enthalpy ( J/Kg )</span></p></body></html> + + + + + + 230 + 29 + + + + + 232 + 31 + + + + + 11 + + + + 999999999.990000009536743 + + + 420000.000000000000000 + + + + + + + + Qt::Horizontal + + + + 58 + 20 + + + + + + splitter_9 + horizontalSpacer_20 + + + + + + + 780 + 371 + + + + + 780 + 371 + + + + + Century Schoolbook L + 14 + 75 + true + + + + Boundary condition + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Right + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Outlet + + + + + Inlet + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 420000.000000000000000 + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Bottom + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Outlet + + + + + Inlet + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 420000.000000000000000 + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Front + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Inlet + + + + + Outlet + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 420000.000000000000000 + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Top + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Inlet + + + + + Outlet + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 420000.000000000000000 + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Left + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Inlet + + + + + Outlet + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 420000.000000000000000 + + + + + + + + + + + + Century Schoolbook L + 14 + 50 + false + + + + Back + + + + + + Qt::Horizontal + + + + + 75 + 30 + + + + + 75 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Type</span></p></body></html> + + + + + + 230 + 30 + + + + + 230 + 30 + + + + + Outlet + + + + + Inlet + + + + + + + + + Qt::Horizontal + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" font-size:10pt;">Enthalpy ( J/Kg )</span></p></body></html> + + + + + + 130 + 30 + + + + + 130 + 30 + + + + + 11 + + + + 1000000000.000000000000000 + + + 420000.000000000000000 + + + + + + + + + + + + + Qt::Horizontal + + + + 58 + 20 + + + + + + + + + + + + Numerical + + + + + + + 230 + 40 + + + + + 230 + 40 + + + + <html><head/><body><p><span style=" font-size:18pt; font-weight:600; text-decoration: underline;">Numerical Options</span></p></body></html> + + + + + + + Qt::Horizontal + + + + 960 + 20 + + + + + + + + Qt::Vertical + + + + 20 + 499 + + + + + + + + + 420 + 210 + + + + + 420 + 210 + + + + Simulation parameters + + + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" color:#ff0000;">Number of time steps</span></p></body></html> + + + + + + + + 210 + 30 + + + + + 210 + 30 + + + + 999999999 + + + 100 + + + + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" color:#ff0000;">Save frequency </span></p></body></html> + + + + + + + + 210 + 30 + + + + + 210 + 30 + + + + 999999999 + + + 1 + + + + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" color:#ff0000;">Maximum time</span></p></body></html> + + + + + + + + 210 + 30 + + + + + 210 + 30 + + + + 1.000000000000000 + + + 0.000001000000000 + + + 1.000000000000000 + + + + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" color:#ff0000;">Precision</span></p></body></html> + + + + + + + + 175 + 30 + + + + + 175 + 30 + + + + <html><head/><body><p><span style=" color:#ff0000;">CFL number</span></p></body></html> + + + + + + + + 210 + 30 + + + + + 210 + 30 + + + + 999999999.990000009536743 + + + 1.000000000000000 + + + 1.000000000000000 + + + + + + + + 210 + 30 + + + + + 210 + 30 + + + + 10 + + + 999999999.990000009536743 + + + 0.000001000000000 + + + 0.000100000000000 + + + + + + + + + + + 390 + 210 + + + + + 390 + 210 + + + + + + + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-weight:600;">Method</span></p></body></html> + + + + + + + + 246 + 30 + + + + + 246 + 30 + + + + + Explicit + + + + + -- + + + + + Implicit + + + + + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-weight:600;">Linear Solver</span></p></body></html> + + + + + + + + 246 + 30 + + + + + 246 + 30 + + + + + GMRES + + + + + BICGSTAB + + + + + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-weight:600;">Scheme</span></p></body></html> + + + + + + + + 246 + 30 + + + + Qt::Horizontal + + + + + 120 + 30 + + + + + 120 + 30 + + + + + upwind + + + + + -- + + + + + centred + + + + + staggered + + + + + lowMach + + + + + pressureCorrection + + + + + + + 120 + 30 + + + + + 120 + 30 + + + + + Standard + + + + + -- + + + + + Entropic + + + + + Well-balanced + + + + + + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-weight:600;">Preconditioner</span></p></body></html> + + + + + + + + 246 + 30 + + + + + 246 + 30 + + + + + LU + + + + + ILU + + + + + None + + + + + + + + + 110 + 30 + + + + <html><head/><body><p><span style=" font-weight:600; color:#ff0000;">Result file Name</span></p></body></html> + + + + + + + + 246 + 30 + + + + + 246 + 30 + + + + MyCoreFlowsSimulation + + + + + + + + + + + 280 + 30 + + + + + 280 + 30 + + + + Launch simulation + + + + + + + + Dim1_RadioButton + Dim2_RadioButton + Dim3_RadioButton + TransportEquation_RadioButton + DiffusionEquation_RadioButton + SinglePhase_RadioButton + DriftModel_RadioButton + IsothermalTwoFluid_RadioButton + FiveEqsTwoFluid_RadioButton + MeshInputFileName_RadioButton + MeshCreation_RadioButton + MeshInputFileName_toolButton + Xinf_doubleSpinBox + Xsup_doubleSpinBox + Nx_spinBox + Yinf_doubleSpinBox + Ysup_doubleSpinBox + Ny_spinBox + Zinf_doubleSpinBox + Zsup_doubleSpinBox + Nz_spinBox + SP_HeatSource_doubleSpinBox + SP_Viscosity_doubleSpinBox + SP_Conductivity_doubleSpinBox + SP_Gravity_1d_doubleSpinBox + SP_Gravity_2d_doubleSpinBox + SP_Gravity_3d_doubleSpinBox + SP_FrictionCoefficients_doubleSpinBox + SP_Pressure_IC_doubleSpinBox + SP_Velocity_1d_IC_doubleSpinBox + SP_Velocity_2d_IC_doubleSpinBox + SP_Velocity_3d_IC_doubleSpinBox + SP_Temperature_IC_doubleSpinBox + SP_GasOrLiquid_comboBox + SP_1barOr155bar_comboBox + SP_Type_Left_BC_ComboBox + SP_Temperature_Left_BC_doubleSpinBox + SP_Velocity_1d_Left_BC_doubleSpinBox + SP_Velocity_2d_Left_BC_doubleSpinBox + SP_Velocity_3d_Left_BC_doubleSpinBox + SP_Pressure_Left_BC_doubleSpinBox + FEqs_pressure_doubleSpinBox + SP_Type_Right_BC_ComboBox + SP_Temperature_Right_BC_doubleSpinBox + SP_Velocity_1d_Right_BC_doubleSpinBox + SP_Velocity_2d_Right_BC_doubleSpinBox + SP_Velocity_3d_Right_BC_doubleSpinBox + SP_Pressure_Right_BC_doubleSpinBox + SP_Type_Top_BC_ComboBox + SP_Temperature_Top_BC_doubleSpinBox + SP_Velocity_1d_Top_BC_doubleSpinBox + SP_Velocity_2d_Top_BC_doubleSpinBox + SP_Velocity_3d_Top_BC_doubleSpinBox + SP_Pressure_Top_BC_doubleSpinBox + SP_Type_Bottom_BC_ComboBox + SP_Temperature_Bottom_BC_doubleSpinBox + SP_Velocity_1d_Bottom_BC_doubleSpinBox + SP_Velocity_2d_Bottom_BC_doubleSpinBox + SP_Velocity_3d_Bottom_BC_doubleSpinBox + SP_Pressure_Bottom_BC_doubleSpinBox + SP_Type_Front_BC_ComboBox + SP_Temperature_Front_BC_doubleSpinBox + SP_Velocity_1d_Front_BC_doubleSpinBox + SP_Velocity_2d_Front_BC_doubleSpinBox + SP_Velocity_3d_Front_BC_doubleSpinBox + SP_Pressure_Front_BC_doubleSpinBox + SP_Type_Back_BC_ComboBox + SP_Temperature_Back_BC_doubleSpinBox + SP_Velocity_1d_Back_BC_doubleSpinBox + SP_Velocity_2d_Back_BC_doubleSpinBox + SP_Velocity_3d_Back_BC_doubleSpinBox + SP_Pressure_Back_BC_doubleSpinBox + DM_HeatSource_doubleSpinBox + DM_Viscosity_Phase1_doubleSpinBox + DM_Viscosity_Phase2_doubleSpinBox + DM_Conductivity_Phase1_doubleSpinBox + DM_Conductivity_Phase2_doubleSpinBox_2 + DM_Gravity_1d_doubleSpinBox + DM_Gravity_2d_doubleSpinBox + DM_Gravity_3d_doubleSpinBox + DM_FrictionCoefficients_Phase1_doubleSpinBox + DM_FrictionCoefficients_Phase2_doubleSpinBox + DM_Concentration_IC_doubleSpinBox + DM_Pressure_IC_doubleSpinBox + DM_Velocity_1d_IC_doubleSpinBox + DM_Velocity_2d_IC_doubleSpinBox + DM_Velocity_3d_IC_doubleSpinBox + DM_Temperature_IC_doubleSpinBox + DM_1barOr155bar + DM_Type_Left_BC_ComboBox + DM_Temperature_Left_BC_doubleSpinBox + DM_Concentration_Left_BC_doubleSpinBox + DM_Velocity_1d_Left_BC_doubleSpinBox + DM_Velocity_2d_Left_BC_doubleSpinBox + DM_Velocity_3d_Left_BC_doubleSpinBox + DM_Pressure_Left_BC_doubleSpinBox + DM_Type_Right_BC_ComboBox + DM_Temperature_Right_BC_doubleSpinBox + DM_Concentration_Right_BC_doubleSpinBox + DM_Velocity_1d_Right_BC_doubleSpinBox + DM_Velocity_2d_Right_BC_doubleSpinBox + DM_Velocity_3d_Right_BC_doubleSpinBox + DM_Pressure_Right_BC_doubleSpinBox + DM_Type_Top_BC_ComboBox + Iso2F_BC_Inlet_VelocityP2_1d_doubleSpinBox + DM_Temperature_Top_BC_doubleSpinBox + DM_Concentration_Top_BC_doubleSpinBox + DM_Velocity_1d_Top_BC_doubleSpinBox + DM_Velocity_2d_Top_BC_doubleSpinBox + DM_Velocity_3d_Top_BC_doubleSpinBox + DM_Pressure_Top_BC_doubleSpinBox + DM_Type_Bottom_BC_ComboBox + DM_Temperature_Bottom_BC_doubleSpinBox + DM_Concentration_Bottom_BC_doubleSpinBox + DM_Velocity_1d_Bottom_BC_doubleSpinBox + DM_Velocity_2d_Bottom_BC_doubleSpinBox + DM_Velocity_3d_Bottom_BC_doubleSpinBox + DM_Pressure_Bottom_BC_doubleSpinBox + DM_Type_Front_BC_ComboBox + DM_Temperature_Front_BC_doubleSpinBox + DM_Concentration_Front_BC_doubleSpinBox + DM_Velocity_1d_Front_BC_doubleSpinBox + DM_Velocity_2d_Front_BC_doubleSpinBox + DM_Velocity_3d_Front_BC_doubleSpinBox + DM_Pressure_Front_BC_doubleSpinBox + DM_Type_Back_BC_ComboBox + DM_Temperature_Back_BC_doubleSpinBox + DM_Concentration_Back_BC_doubleSpinBox + DM_Velocity_1d_Back_BC_doubleSpinBox + DM_Velocity_2d_Back_BC_doubleSpinBox + DM_Velocity_3d_Back_BC_doubleSpinBox + DM_Pressure_Back_BC_doubleSpinBox + FEqs_HeatSource_doubleSpinBox + FEqs_Viscosity_Phase1_doubleSpinBox + FEqs_Viscosity_Phase2_doubleSpinBox + FEqs_Conductivity_Phase1_doubleSpinBox + FEqs_Conductivity_Phase2_doubleSpinBox + FEqs_Gravity_1d_doubleSpinBox + FEqs_Gravity_2d_doubleSpinBox + FEqs_Gravity_3d_doubleSpinBox + FEqs_FrictionCoefficients_Phase1_doubleSpinBox + FEqs_FrictionCoefficients_Phase2_doubleSpinBox + FEqs_FluidOrLiquid + FEqs_1barOr155bar + FEqs_BC_Wall_GroupName_lineEdit + FEqs_BC_Wall_Temperature_doubleSpinBox + FEqs_BC_Wall_VelocityP1_1d_doubleSpinBox + FEqs_BC_Wall_VelocityP1_2d_doubleSpinBox + FEqs_BC_Wall_VelocityP1_3d_doubleSpinBox + FEqs_BC_Wall_VelocityP2_1d_doubleSpinBox + FEqs_BC_Wall_VelocityP2_2d_doubleSpinBox + FEqs_BC_Wall_VelocityP2_3d_doubleSpinBox + FEqs_BC_Inlet_GroupName_lineEdit + FEqs_BC_Inlet_Temperature_doubleSpinBox + FEqs_BC_Inlet_Alpha_doubleSpinBox + FEqs_BC_Inlet_VelocityP1_1d_doubleSpinBox + FEqs_BC_Inlet_VelocityP1_2d_doubleSpinBox + FEqs_BC_Inlet_VelocityP1_3d_doubleSpinBox + FEqs_BC_Inlet_VelocityP2_1d_doubleSpinBox + FEqs_BC_Inlet_VelocityP2_2d_doubleSpinBox + FEqs_BC_Inlet_VelocityP2_3d_doubleSpinBox + FEqs_BC_Neumann_GroupName_lineEdit + FEqs_BC_Outlet_GroupNamelineEdit + FEqs_BC_Outlet_PressuredoubleSpinBox + Iso2F_HeatSource_doubleSpinBox + Iso2F_ViscositydoubleSpinBox + Iso2F_Conductivity_doubleSpinBox + Iso2F_Gravity_1d_doubleSpinBox + Iso2F_Gravity_2d_doubleSpinBox + Iso2F_Gravity_3d_doubleSpinBox + Iso2F_FrictionCoefficients_doubleSpinBox + Iso2F_Alpha_IC_doubleSpinBox + Iso2F_Pressure_IC_doubleSpinBox + Iso2F_VelocityPhase1_1d_IC_doubleSpinBox + Iso2F_VelocityPhase1_2d_IC_doubleSpinBox + Iso2F_VelocityPhase1_3d_IC_doubleSpinBox + Iso2F_VelocityPhase2_1d_IC_doubleSpinBox + Iso2F_VelocityPhase2_2d_IC_doubleSpinBox + Iso2F_VelocityPhase2_3d_IC_doubleSpinBox + Iso2f_1barOr155bar + Iso2F_BC_Wall_GroupName_lineEdit + Iso2F_BC_Wall_VelocityP1_1d_doubleSpinBox + DEq_HeatSource_doubleSpinBox + DEq_Viscosity_doubleSpinBox + DEq_Conductivity_doubleSpinBox + DEq_Density_doubleSpinBox + DEq_SolidTmperature_doubleSpinBox + DEq_BC_Left_comboBox + DEq_BC_Left_Temperature_doubleSpinBox + DEq_BC_Right_comboBox + DEq_BC_Right_Temperature_doubleSpinBox + TEq_BC_Top_comboBox_2 + TEq_BC_Top_Temperature_doubleSpinBox_2 + TEq_BC_Bottom_comboBox_2 + TEq_BC_Bottom_Temperature_doubleSpinBox_2 + DEq_BC_Front_comboBox + DEq_BC_Front_Temperature_doubleSpinBox + DEq_BC_Back_comboBox + DEq_BC_Back_Temperature_doubleSpinBox + TEq_HeatSource_doubleSpinBox + FEqs_CommonTemperature_doubleSpinBox + TEq_FluidEnthalpy_doubleSpinBox + TEq_BC_Left_comboBox + TEq_BC_Left_Temperature_doubleSpinBox + TEq_BC_Back_comboBox_5 + TEq_BC_Right_Temperature_doubleSpinBox + TEq_BC_Top_comboBox + TEq_BC_Top_Temperature_doubleSpinBox + TEq_BC_Bottom_comboBox + TEq_BC_Bottom_Temperature_doubleSpinBox + TEq_BC_Front_comboBox + TEq_BC_Front_Temperature_doubleSpinBox + TEq_BC_Back_comboBox + TEq_BC_Back_Temperature_doubleSpinBox + NO_MaxNbOfTimeStep_spinBox + NO_FreqSave_spinBox + NO_TimeMax_doubleSpinBox + NO_Precision_doubleSpinBox + NO_CFL_doubleSpinBox + NO_Method_comboBox + NO_LS_comboBox + NO_Scheme_comboBox + NO_Scheme_type_comboBox + NO_Preconditioner_comboBox + NO_ResultFileName_lineEdit + FEqs_VelocityP1_3d_doubleSpinBox + Iso2F_BC_Wall_VelocityP1_3d_doubleSpinBox + Iso2F_BC_Wall_VelocityP2_1d_doubleSpinBox + FEqs_VelocityP2_3d_doubleSpinBox + Iso2F_BC_Wall_VelocityP1_2d_doubleSpinBox + FEqs_VelocityP2_2d_doubleSpinBox + FEqs_VelocityP1_2d_doubleSpinBox + FEqs_VelocityP2_1d_doubleSpinBox + Iso2F_BC_Inlet_VelocityP2_3d_doubleSpinBox + Iso2F_BC_Inlet_Alpha_doubleSpinBox + Iso2F_BC_Inlet_VelocityP1_1d_doubleSpinBox + Iso2F_BC_Outlet_PressuredoubleSpinBox + Iso2F_BC_Neumann_GroupName_lineEdit + Iso2F_BC_Outlet_GroupNamelineEdit + Iso2F_BC_Inlet_VelocityP1_3d_doubleSpinBox + Iso2F_BC_Inlet_VelocityP1_2d_doubleSpinBox + Iso2F_BC_Inlet_GroupName_lineEdit + Iso2F_BC_Inlet_VelocityP2_2d_doubleSpinBox + Iso2F_BC_Wall_VelocityP2_2d_doubleSpinBox + MeshInputFileName_lineEdit + Iso2F_BC_Wall_VelocityP2_3d_doubleSpinBox + FEqs_VelocityP1_1d_doubleSpinBox + FEqs_Alpha_doubleSpinBox + + + + + Dim3_RadioButton + toggled(bool) + WidgetCreation3d + setEnabled(bool) + + + 618 + 212 + + + 858 + 377 + + + + + Dim2_RadioButton + toggled(bool) + WidgetCreation2d + setEnabled(bool) + + + 482 + 212 + + + 608 + 377 + + + + + Dim1_RadioButton + toggled(bool) + WidgetCreation1d + setEnabled(bool) + + + 346 + 212 + + + 358 + 377 + + + + + MeshCreation_RadioButton + toggled(bool) + Mesh_Creation + setEnabled(bool) + + + 183 + 249 + + + 604 + 370 + + + + + pushButton + clicked() + TabWidget + onLaunchSimu() + + + 989 + 753 + + + 918 + 551 + + + + + + onTransportSelected(bool) + onDriftModelSelected(bool) + onSinglePhaseSelected(bool) + onIsothermal2FluidSelected(bool) + onDiffusionSelected(bool) + on5Eq2FluidSelected(bool) + Dim_1(bool) + Dim_2(bool) + Dim_3(bool) + onLaunchSimu() + + diff --git a/CoreFlows/gui/utils.py.in b/CoreFlows/gui/utils.py.in new file mode 100755 index 0000000..9ba0f55 --- /dev/null +++ b/CoreFlows/gui/utils.py.in @@ -0,0 +1,8 @@ +def completeResPath(fileName): + import os + subPath = "@SALOME_INSTALL_PYTHON@" + rd = os.environ.get("SOLVERLAB_ROOT_DIR", None) + if rd is None: + raise Exception("SOLVERLAB_ROOT_DIR is not defined!") + filePath = os.path.join(rd, subPath, fileName) + return filePath