PluginAixLib
How to install?
Step by step
To install PluginAixLib: you need to do the following
(in the root directory of the repo, here is the pyproject.toml file)
pip install -e '.[PluginAixLib]'
The bim2sim core installation needs to be done before.
Test install
Examples
Please also take a look at
bim2sim/plugins/PluginAixLib/bim2sim_aixlib/examples, which provides some
runnable examples for the AixLib plugin. You can use these examples to test your
installation and learn from them. Additionally, they serve as good starting
points for your own projects.”
Structure of the plugin
The following figure shows the structure of the AixLib plugin. Here you see which tasks are used and how they are combined.
---
title: plugin AixLib
---
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 ifc files for their quality regarding
simulation. " )
end
stateCheckIfc[("state
(reads/touches)")]
stateCheckIfc -- ifc_files --> tCheckIfc
direction RL
end
subgraph taskCreateElementsOnIfcTypes["task CreateElementsOnIfcTypes"]
subgraph ""
tCreateElementsOnIfcTypes["bim2sim > tasks > common >
CreateElementsOnIfcTypes"]
extCreateElementsOnIfcTypes(" Create bim2sim elements based on information of
IFC types. " )
end
stateCreateElementsOnIfcTypes[("state
(reads/touches)")]
stateCreateElementsOnIfcTypes -- ifc_files --> tCreateElementsOnIfcTypes
tCreateElementsOnIfcTypes -- elements, _initial_elements, ifc_files --> stateCreateElementsOnIfcTypes
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(" None. " )
end
stateMakeGraph[("state
(reads/touches)")]
stateMakeGraph -- elements --> tMakeGraph
tMakeGraph -- graph --> stateMakeGraph
end
subgraph taskExpansionTanks["task ExpansionTanks"]
subgraph ""
tExpansionTanks["bim2sim > tasks > hvac >
ExpansionTanks"]
extExpansionTanks(" None. " )
end
stateExpansionTanks[("state
(reads/touches)")]
stateExpansionTanks -- graph --> tExpansionTanks
tExpansionTanks -- graph --> stateExpansionTanks
end
subgraph taskReduce["task Reduce"]
subgraph ""
tReduce["bim2sim > tasks > hvac >
Reduce"]
extReduce(" None. " )
end
stateReduce[("state
(reads/touches)")]
stateReduce -- graph --> tReduce
tReduce -- graph --> stateReduce
end
subgraph taskDeadEnds["task DeadEnds"]
subgraph ""
tDeadEnds["bim2sim > tasks > hvac >
DeadEnds"]
extDeadEnds(" None. " )
end
stateDeadEnds[("state
(reads/touches)")]
stateDeadEnds -- graph --> tDeadEnds
tDeadEnds -- graph --> stateDeadEnds
end
subgraph taskLoadLibrariesAixLib["task LoadLibrariesAixLib"]
subgraph ""
tLoadLibrariesAixLib["
LoadLibrariesAixLib"]
extLoadLibrariesAixLib(" Load AixLib library for export. " )
end
stateLoadLibrariesAixLib[("state
(reads/touches)")]
tLoadLibrariesAixLib -- libraries --> stateLoadLibrariesAixLib
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
tExport -- modelica_model --> stateExport
end
taskLoadIFC --> taskCheckIfc
taskCheckIfc --> taskCreateElementsOnIfcTypes
taskCreateElementsOnIfcTypes --> taskConnectElements
taskConnectElements --> taskMakeGraph
taskMakeGraph --> taskExpansionTanks
taskExpansionTanks --> taskReduce
taskReduce --> taskDeadEnds
taskDeadEnds --> taskLoadLibrariesAixLib
taskLoadLibrariesAixLib --> taskExport
This figure is generated by the script template_mermaid.py (see Visualization of bim2sim plugin structure).