253 lines
17 KiB
Plaintext
253 lines
17 KiB
Plaintext
<mxfile host="app.diagrams.net">
|
|
<diagram name="Seite-1" id="P-KqJ_aeJxb4NgLkL2IL">
|
|
<mxGraphModel dx="1132" dy="605" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
|
|
<root>
|
|
<mxCell id="0" />
|
|
<mxCell id="1" parent="0" />
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-1" parent="1" style="whiteSpace=wrap;strokeWidth=2;" value="Benutzer" vertex="1">
|
|
<mxGeometry height="54" width="124" x="20" y="275" as="geometry" />
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-2" parent="1" style="whiteSpace=wrap;strokeWidth=2;fillColor=#f8cecc;strokeColor=#b85450;" value="Excel Input
Planungsdaten" vertex="1">
|
|
<mxGeometry height="78" width="164" x="322" y="222" as="geometry" />
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-3" parent="1" style="whiteSpace=wrap;strokeWidth=2;fillColor=#ffe6cc;strokeColor=#d79b00;" value="React Frontend
Vite Build / App.jsx" vertex="1">
|
|
<mxGeometry height="78" width="200" x="672" y="263" as="geometry" />
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-4" parent="1" style="whiteSpace=wrap;strokeWidth=2;fillColor=#ffe6cc;strokeColor=#d79b00;" value="FastAPI Backend
webapp/backend/main.py" vertex="1">
|
|
<mxGeometry height="78" width="250" x="1128" y="257" as="geometry" />
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-5" parent="1" style="shape=cylinder3;boundedLbl=1;backgroundOutline=1;size=10;strokeWidth=2;whiteSpace=wrap;fillColor=#f8cecc;strokeColor=#b85450;" value="var/jobs
Job-Status, Uploads, Logs, Outputs" vertex="1">
|
|
<mxGeometry height="134" width="215" x="1628" y="217" as="geometry" />
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-6" parent="1" style="whiteSpace=wrap;strokeWidth=2;fillColor=#dae8fc;strokeColor=#6c8ebf;" value="Preprocessing
src/preprocessing/exploration_preprocess.py" vertex="1">
|
|
<mxGeometry height="78" width="386" x="2060" y="88" as="geometry" />
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-7" parent="1" style="whiteSpace=wrap;strokeWidth=2;fillColor=#dae8fc;strokeColor=#6c8ebf;" value="Optimierung
src/optimization/run_optimization.py" vertex="1">
|
|
<mxGeometry height="78" width="333" x="3082" y="249" as="geometry" />
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-8" parent="1" style="whiteSpace=wrap;strokeWidth=2;fillColor=#e1d5e7;strokeColor=#9673a6;" value="Pyomo Modell
src/optimization/model_builder.py" vertex="1">
|
|
<mxGeometry height="78" width="312" x="3665" y="221" as="geometry" />
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-9" parent="1" style="whiteSpace=wrap;strokeWidth=2;fillColor=light-dark(#eeeeee,#1f2020);strokeColor=light-dark(#999999,#cccccc);fontColor=light-dark(#333333,#cccccc);" value="Solver
HiGHS / Gurobi / SCIP" vertex="1">
|
|
<mxGeometry height="78" width="219" x="4227" y="221" as="geometry" />
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-10" parent="1" style="shape=cylinder3;boundedLbl=1;backgroundOutline=1;size=10;strokeWidth=2;whiteSpace=wrap;fillColor=#f8cecc;strokeColor=#b85450;" value="processed Parquet
Job-Verzeichnis" vertex="1">
|
|
<mxGeometry height="103" width="146" x="2696" y="236" as="geometry" />
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-11" parent="1" style="shape=cylinder3;boundedLbl=1;backgroundOutline=1;size=10;strokeWidth=2;whiteSpace=wrap;fillColor=#f8cecc;strokeColor=#b85450;" value="output.xlsx
warmstart.json" vertex="1">
|
|
<mxGeometry height="100" width="124" x="3759" y="465" as="geometry" />
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-12" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-1" style="curved=1;startArrow=none;endArrow=block;exitX=1;exitY=0.17;entryX=0;entryY=0.5;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-2" value="lädt Excel hoch">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="224" y="261" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-13" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-2" style="curved=1;startArrow=none;endArrow=block;exitX=1;exitY=0.5;entryX=0;entryY=0.22;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-3" value="Datei auswählen">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="588" y="261" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-14" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-3" style="curved=1;startArrow=none;endArrow=block;exitX=0.66;exitY=0.01;entryX=0.36;entryY=0.01;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-4" value="POST /api/run
Excel + Parameter + optional Warmstart">
|
|
<mxGeometry relative="1" x="0.2387" y="-60" as="geometry">
|
|
<mxPoint as="offset" />
|
|
<Array as="points">
|
|
<mxPoint x="1000" y="20" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-15" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-4" style="curved=1;startArrow=none;endArrow=block;exitX=0.37;exitY=1.01;entryX=0.65;entryY=1.01;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-3" value="job_id / Status / Daten / Downloads">
|
|
<mxGeometry relative="1" x="-0.3341" y="-88" as="geometry">
|
|
<mxPoint as="offset" />
|
|
<Array as="points">
|
|
<mxPoint x="1000" y="600" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-16" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-4" style="curved=1;startArrow=none;endArrow=block;exitX=1;exitY=0.07;entryX=0;entryY=0.31;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-5" value="Job-Verzeichnis, input.xlsx, job.json schreiben">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="1503" y="228" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-17" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-5" style="curved=1;startArrow=none;endArrow=block;exitX=0.87;exitY=0;entryX=0;entryY=0.28;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-6" value="input.xlsx bereitstellen">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="1951" y="100" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-18" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-4" style="curved=1;startArrow=none;endArrow=block;exitX=0.75;exitY=0.01;entryX=0;entryY=0.64;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-6" value="Subprozess starten">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="1503" y="143" />
|
|
<mxPoint x="1951" y="143" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-19" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-6" style="curved=1;startArrow=none;endArrow=block;exitX=1;exitY=0.5;entryX=0.06;entryY=0;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-10" value="processed/*.parquet schreiben">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="2571" y="127" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-20" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-4" style="curved=1;startArrow=none;endArrow=block;exitX=0.65;exitY=0.01;entryX=0.36;entryY=0;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-7" value="Subprozess starten">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="1503" y="41" />
|
|
<mxPoint x="2962" y="41" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-21" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-10" style="curved=1;startArrow=none;endArrow=block;exitX=1;exitY=0.5;entryX=0;entryY=0.5;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-7" value="processed/*.parquet lesen">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points" />
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-22" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-7" style="curved=1;startArrow=none;endArrow=block;exitX=1;exitY=0.13;entryX=0;entryY=0.34;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-8" value="Modell bauen">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="3540" y="238" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-23" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-8" style="curved=1;startArrow=none;endArrow=block;exitX=1;exitY=0.26;entryX=0;entryY=0.3;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-9" value="Optimierungsproblem senden">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="4102" y="226" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-24" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-9" style="curved=1;startArrow=none;endArrow=block;exitX=0;exitY=0.7;entryX=1;entryY=0.74;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-8" value="Lösung / Status zurückgeben">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="4102" y="294" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-25" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-8" style="curved=1;startArrow=none;endArrow=block;exitX=0.18;exitY=1;entryX=0.92;entryY=1;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-7" value="Lösung bereitstellen">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="3540" y="369" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-26" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-7" style="curved=1;startArrow=none;endArrow=block;exitX=0.66;exitY=1;entryX=0;entryY=0.47;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-11" value="output.xlsx + warmstart.json schreiben">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="3540" y="501" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-27" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-7" style="curved=1;startArrow=none;endArrow=block;exitX=0.31;exitY=1;entryX=0.87;entryY=1;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-5" value="optimization.log schreiben">
|
|
<mxGeometry relative="1" x="-0.0008" as="geometry">
|
|
<mxPoint as="offset" />
|
|
<Array as="points">
|
|
<mxPoint x="2962" y="467" />
|
|
<mxPoint x="1951" y="467" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-28" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-4" style="curved=1;startArrow=none;endArrow=block;exitX=1;exitY=0.51;entryX=0;entryY=0.54;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-5" value="job.json aktualisieren">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="1503" y="296" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-29" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-3" style="curved=1;startArrow=none;endArrow=block;exitX=0.71;exitY=0.01;entryX=0.31;entryY=0.01;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-4" value="GET /api/jobs/job_id">
|
|
<mxGeometry relative="1" x="0.1857" y="-49" as="geometry">
|
|
<mxPoint as="offset" />
|
|
<Array as="points">
|
|
<mxPoint x="1000" y="88" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-30" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-3" style="curved=1;startArrow=none;endArrow=block;exitX=0.78;exitY=0.01;entryX=0.24;entryY=0.01;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-4" value="GET /api/jobs/job_id/logs/name">
|
|
<mxGeometry relative="1" x="-0.1467" y="-38" as="geometry">
|
|
<mxPoint as="offset" />
|
|
<Array as="points">
|
|
<mxPoint x="1000" y="144" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-31" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-3" style="curved=1;startArrow=none;endArrow=block;exitX=1;exitY=0.06;entryX=0;entryY=0.05;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-4" value="GET /api/jobs/job_id/monthly-flows">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="1000" y="224" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-32" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-3" style="curved=1;startArrow=none;endArrow=block;exitX=1;exitY=0.58;entryX=0;entryY=0.63;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-4" value="GET /api/jobs/job_id/capacity-timeseries">
|
|
<mxGeometry relative="1" x="0.015" y="26" as="geometry">
|
|
<mxPoint as="offset" />
|
|
<Array as="points">
|
|
<mxPoint x="1000" y="316" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-33" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-3" style="curved=1;startArrow=none;endArrow=block;exitX=0.97;exitY=1.01;entryX=0.1;entryY=1.01;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-4" value="GET /api/jobs/job_id/output">
|
|
<mxGeometry relative="1" x="-0.1741" y="43" as="geometry">
|
|
<mxPoint as="offset" />
|
|
<Array as="points">
|
|
<mxPoint x="1000" y="396" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-34" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-3" style="curved=1;startArrow=none;endArrow=block;exitX=0.77;exitY=1.01;entryX=0.26;entryY=1.01;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-4" value="GET /api/jobs/job_id/warmstart">
|
|
<mxGeometry relative="1" x="-0.2589" y="69" as="geometry">
|
|
<mxPoint as="offset" />
|
|
<Array as="points">
|
|
<mxPoint x="1000" y="464" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-35" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-3" style="curved=1;startArrow=none;endArrow=block;exitX=0.69;exitY=1.01;entryX=0.33;entryY=1.01;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-4" value="POST /api/jobs/job_id/cancel">
|
|
<mxGeometry relative="1" x="-0.3176" y="79" as="geometry">
|
|
<mxPoint as="offset" />
|
|
<Array as="points">
|
|
<mxPoint x="1000" y="532" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-36" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-4" style="curved=1;startArrow=none;endArrow=block;exitX=1;exitY=0.79;entryX=0;entryY=0.7;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-5" value="job.json / Logs lesen">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="1503" y="340" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-37" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-11" style="curved=1;startArrow=none;endArrow=block;exitX=0;exitY=0.6;entryX=0.65;entryY=1.01;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-4" value="output.xlsx / warmstart.json lesen">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="3540" y="559" />
|
|
<mxPoint x="1503" y="559" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-38" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-10" style="curved=1;startArrow=none;endArrow=block;exitX=0;exitY=0.93;entryX=0.85;entryY=1.01;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-4" value="Kapazitaetsdaten lesen">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="2571" y="408" />
|
|
<mxPoint x="1503" y="408" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
<mxCell id="LSBXT6lm1qTOuGE88BYh-39" edge="1" parent="1" source="LSBXT6lm1qTOuGE88BYh-3" style="curved=1;startArrow=none;endArrow=block;exitX=0;exitY=0.9;entryX=1;entryY=0.97;rounded=0;" target="LSBXT6lm1qTOuGE88BYh-1" value="zeigt Status, Logs, Diagramme, Downloadlinks">
|
|
<mxGeometry relative="1" as="geometry">
|
|
<Array as="points">
|
|
<mxPoint x="588" y="359" />
|
|
<mxPoint x="224" y="359" />
|
|
</Array>
|
|
</mxGeometry>
|
|
</mxCell>
|
|
</root>
|
|
</mxGraphModel>
|
|
</diagram>
|
|
</mxfile>
|