# PluginHKESim (HowtoInstallHKESim)= ## How to install? ### Step by step To install `PluginHKESim`: you need to do the following (in the root directory of the repo, here is the pyproject.toml file) ```shell pip install -e '.[PluginHKESim]' ``` The [bim2sim core installation](coreInstalltion) needs to be done before. ### Test install ## Structure of the plugin The following figure shows the structure of the HKESim plugin. Here you see which tasks are used and how they are combined. (Hint: firefox has issue display mermaid figures completely, for more infos see issue [#766](https://github.com/BIM2SIM/bim2sim/issues/766)) ```{mermaid} --- title: plugin HKESim --- flowchart TB subgraph taskLoadIFC["task LoadIFC"] subgraph "" tLoadIFC["bim2sim > tasks > common > LoadIFC"] extLoadIFC(" Load all IFC files from PROJECT. " ) end stateLoadIFC[("state (reads/touches)")] tLoadIFC -- ifc_files --> stateLoadIFC end subgraph taskCheckIfc["task CheckIfc"] subgraph "" tCheckIfc["bim2sim > tasks > common > CheckIfc"] extCheckIfc(" Check an IFC file, for a number of conditions (missing information, incorrect information, etc) that could lead on future tasks to fatal errors. " ) end stateCheckIfc[("state (reads/touches)")] stateCheckIfc -- ifc_files --> tCheckIfc direction RL end subgraph taskCreateElements["task CreateElements"] subgraph "" tCreateElements["bim2sim > tasks > common > CreateElements"] extCreateElements(" Create bim2sim elements based on information in IFC. " ) end stateCreateElements[("state (reads/touches)")] stateCreateElements -- ifc_files --> tCreateElements tCreateElements -- elements, ifc_files --> stateCreateElements end subgraph taskConnectElements["task ConnectElements"] subgraph "" tConnectElements["bim2sim > tasks > hvac > ConnectElements"] extConnectElements(" Analyses IFC, creates element elements and connects them. " ) end stateConnectElements[("state (reads/touches)")] stateConnectElements -- elements --> tConnectElements tConnectElements -- elements --> stateConnectElements end subgraph taskMakeGraph["task MakeGraph"] subgraph "" tMakeGraph["bim2sim > tasks > hvac > MakeGraph"] extMakeGraph(" Instantiate HVACGraph. " ) end stateMakeGraph[("state (reads/touches)")] stateMakeGraph -- elements --> tMakeGraph tMakeGraph -- graph --> stateMakeGraph end subgraph taskExpansionTanks["task ExpansionTanks"] subgraph "" tExpansionTanks["bim2sim > tasks > hvac > ExpansionTanks"] extExpansionTanks(" Analyses graph network for expansion tanks and removes them. " ) end stateExpansionTanks[("state (reads/touches)")] stateExpansionTanks -- graph --> tExpansionTanks tExpansionTanks -- graph --> stateExpansionTanks end subgraph taskReduce["task Reduce"] subgraph "" tReduce["bim2sim > tasks > hvac > Reduce"] extReduce(" Reduce number of elements by aggregation. " ) end stateReduce[("state (reads/touches)")] stateReduce -- graph --> tReduce tReduce -- graph --> stateReduce end subgraph taskDeadEnds["task DeadEnds"] subgraph "" tDeadEnds["bim2sim > tasks > hvac > DeadEnds"] extDeadEnds(" Analyses graph network for dead ends and removes ports due to dead ends. " ) end stateDeadEnds[("state (reads/touches)")] stateDeadEnds -- graph --> tDeadEnds tDeadEnds -- graph --> stateDeadEnds end subgraph taskLoadLibrariesHKESim["task LoadLibrariesHKESim"] subgraph "" tLoadLibrariesHKESim[" LoadLibrariesHKESim"] extLoadLibrariesHKESim(" Load HKESim library for export. " ) end stateLoadLibrariesHKESim[("state (reads/touches)")] tLoadLibrariesHKESim -- libraries --> stateLoadLibrariesHKESim end subgraph taskExport["task Export"] subgraph "" tExport["bim2sim > tasks > hvac > Export"] extExport(" Export to Dymola/Modelica. " ) end stateExport[("state (reads/touches)")] stateExport -- libraries, graph --> tExport direction RL end taskLoadIFC --> taskCheckIfc taskCheckIfc --> taskCreateElements taskCreateElements --> taskConnectElements taskConnectElements --> taskMakeGraph taskMakeGraph --> taskExpansionTanks taskExpansionTanks --> taskReduce taskReduce --> taskDeadEnds taskDeadEnds --> taskLoadLibrariesHKESim taskLoadLibrariesHKESim --> taskExport ``` This figure is generated by the script template_mermaid.py (see [Visualization of bim2sim plugin structure](genVisPlugins)). ## How to create a project? ## How to load an IFC file? ## How to configure my project? ### Simulation settings ### Configuration file ### Default tasks ### Additional templates ## How to run the project? ## How to run the simulation? ## How to analyze the project? ### What kind of results exist? ### What programs/tools to use for further analysis?