Metadata-Version: 2.1
Name: pandapipes-extended
Version: 1.0.0
Summary: Erweiterung für pandapipes zur einfachen Modellierung von VDI3803-Mouldings und Raumstrukturen.
Home-page: UNKNOWN
Author: ObodaX
License: MIT
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pandapipes>=0.11.0
Requires-Dist: numpy>=1.26.0

# pandapipes_extended – Anleitung und Beispiel

Dieses Repository erweitert [pandapipes](https://github.com/e2nIEE/pandapipes) um komfortable Funktionen für die Modellierung von Formstücken (Mouldings) nach VDI 3803 und deren einfache Zuordnung zu Räumen.

## Installation

1. **Repository klonen**

```powershell
git clone <REPO-URL>
cd pandapipes-vdi3803-extension
```

2. **Virtuelle Umgebung anlegen und aktivieren**

**Windows (CMD):**
```cmd
python -m venv venv
venv\Scripts\activate.bat
```

**Windows (PowerShell):**
```powershell
python -m venv venv
.\venv\Scripts\Activate.ps1
```

**macOS / Linux (Bash):**
```bash
python3 -m venv venv
source venv/bin/activate
```

3. **Abhängigkeiten installieren**

```powershell
pip install -e .`
```

## Nutzung

### Beispiel: Anwendung im eigenen Python-Skript

```python
import pandapipes as pp
from pandapipes_extended import Room, Moulding

# Netz und Knoten anlegen
net = pp.create_empty_network(fluid="air")
junction0 = pp.create_junction(net, pn_bar=1.05, tfluid_k=293.15, type="p", name="Junction 0")
junction1 = pp.create_junction(net, pn_bar=1.0, tfluid_k=293.15, name="Junction 1")
# ...weitere Junctions...

# Rohre anlegen
pipe0 = pp.create_pipe_from_parameters(net, from_junction=junction0, to_junction=junction1, length_km=0.002, diameter_m=0.2022, name="Pipe 0")
# ...weitere Pipes...

# Quelle und Sinks
pp.create_ext_grid(net, junction=junction0, p_bar=1.05, t_k=293.15)
sink0 = pp.create_sink(net, junction=junction1, mdot_kg_per_s=0.0855, name="Sink 0", loss_coefficient=1.2)

# Netz berechnen
pp.pipeflow(net)

# Moulding anlegen und VDI-Berechnung durchführen
moulding = Moulding(net, pipe_idx=pipe0, name="Main-T-Stueck 1")
moulding.A22_T_Stueck_Stromtrennung_rechtwinkligem_Abgang_Abzweig_wA(0)
moulding.create()

# Raum anlegen und Moulding zuordnen
room = Room(net, name="Room 0", sink=sink0)
room.add_moulding(moulding)

# Zeta-Werte ausgeben
print("Room0 Total_Lost_Coefficient:", room.calculate_total_loss_coefficient())
```

### Weitere Beispiele

Siehe den Ordner `examples/` für komplexere Anwendungsfälle, z.B. `Netzbeispiel1.0.py`.

## Features
- Komfortable Erstellung und Verwaltung von Mouldings nach VDI 3803
- Automatische Berechnung der Verlustbeiwerte (loss_coefficient)
- Einfache Zuordnung von Mouldings zu Räumen (Room)
- Summierung der Zeta-Werte pro Raum

## Hinweise
- Das Paket `pandapipes_extended` muss im Python-Importpfad liegen (Standard nach Installation mit `pip install -e .`).
- Die VDI-Berechnungen sind als Methoden in der Klasse `Moulding` implementiert.
- Für eigene Erweiterungen siehe die Dateien im Ordner `pandapipes_extended/`.

---

**Tipp:** Für eigene VDI-Berechnungen siehe die Methoden in `pandapipes_extended/moulding_class.py` und passe sie nach Bedarf an.


