<script lang="ts">
  import { A14BerechnungAufwandszahlenMittlereBelastung } from "#lib/Berechnungen/BedarfsausweisWohnen/A14BerechnungAufwandszahlenMittlereBelastung.js";
    import { funktionNennleistungWaermeerzeugerWarmwasserT139 } from "#lib/Berechnungen/BedarfsausweisWohnen/funktionNennleistungWaermeerzeugerWarmwasserT139.js";
    import { SystemModule } from "@faker-js/faker";

$: result = A14BerechnungAufwandszahlenMittlereBelastung(); 

</script>

<div class="overflow-x-auto mt-16">
    <table class="table-auto border-collapse border border-gray-300 w-full text-sm">
      <thead>
        <tr class="bg-gray-200 text-left">
          <th colspan="10" class="border border-gray-300 p-2">
            <h2>Tabelle A.14 — Anlage gesamt - Aufwandszahlen und mittlere Belastungen (Heizung)</h2>
          </th>
        <tr class="text-center">
          <tr class="bg-gray-200 text-left">
            <th colspan="10" class="border border-gray-300 p-2 text-xl">
              Anlagenteilbereiche
            </th>
          </tr> 
          <tr>
            <th colspan="1" class="border border-gray-300 px-4 py-2 text-center">Objekt:</th>
            <th colspan="9" class="border border-gray-300 px-4 py-2 text-center bg-yellow-100"></th>
          </tr>
          <tr>
            <th colspan="1" class="border border-gray-300 px-4 py-2 text-center">Anlage:</th>
            <th colspan="3" class="border border-gray-300 px-4 py-2 text-center bg-yellow-100"></th>
            <th colspan="1" class="border border-gray-300 px-4 py-2 text-center">Q<sub>h,b</sub> [kWh/a]<br>aus Tabelle A.12:</th>
            <th colspan="1" class="border border-gray-300 px-4 py-2 text-center bg-yellow-100">{Math.round(result.gesamtNutzenergieHeizung)}</th>
            <th colspan="1" class="border border-gray-300 px-4 py-2 text-center">t<sub>h,m</sub> [h/a]<br>aus Tabelle A.12:</th>
            <th colspan="1" class="border border-gray-300 px-4 py-2 text-center bg-yellow-100">{Math.round(result.gesamtHeizstunden)}</th>
            <th colspan="1" class="border border-gray-300 px-4 py-2 text-center">Φ<sub>h,max</sub>  [W]<br>aus Tabelle A.6:</th>
            <th colspan="1" class="border border-gray-300 px-4 py-2 text-center bg-yellow-100">{Math.round(result.maximaleHeizlast)}</th>
          </tr>
          <tr>
            <th colspan="10" class="px-4 py-2 text-center"></th>
          </tr>
          <tr>
          <th class="border border-gray-300 px-4 py-2"></th>
          <th class="border border-gray-300 px-4 py-2">Anteil</th>  
          <th colspan="2" class="border border-gray-300 px-4 py-2 text-center">Übergabe</th>
          <th colspan="2" class="border border-gray-300 px-4 py-2 text-center">Verteilung</th>
          <th colspan="2" class="border border-gray-300 px-4 py-2 text-center">Speicherung</th>
          <th colspan="2" class="border border-gray-300 px-4 py-2 text-center">Erzeugung {Math.round(result.NennleistungWaermeerzeuger*100)/100}</th>
        </tr>
        <tr>
          <th class="border border-gray-300 px-4 py-2"></th>
          <th class="border border-gray-300 px-4 py-2">A<sub>h,m</sub> / A<br>aus Planung</th>
          <th class="border border-gray-300 px-4 py-2 text-center">β<sub>h,ce</sub> =<br>(Q<sub>h,b</sub> / t<sub>h,m</sub> · Φ<sub>h,max</sub>) · 1000</th>
          <th class="border border-gray-300 px-4 py-2 text-center">e<sub>h,ce</sub><br>aus Tabellen<br>20 - 25</th>
          <th class="border border-gray-300 px-4 py-2 text-center">β<sub>h,d</sub> =<br>β<sub>h,ce</sub> · e<sub><sub>h,ce</sub> · f<sub>hydr</sub></th>
          <th class="border border-gray-300 px-4 py-2 text-center">e<sub>h,d</sub><br>aus Tabellen<br>30 - 36</th>
          <th class="border border-gray-300 px-4 py-2 text-center">β<sub>h,s</sub> =<br>β<sub>h,d</sub> · e<sub>h,d</sub></th>
          <th class="border border-gray-300 px-4 py-2 text-center">e<sub>h,s</sub><br>aus Tabellen<br>50-52</th>
          <th class="border border-gray-300 px-4 py-2 text-center">β<sub>h,g</sub> =<br>β<sub>h,s · e<sub>h,s</sub></sub></th>
          <th class="border border-gray-300 px-4 py-2 text-center">e<sub>h,g</sub><br>für Kessel aus<br>Tabellen 77-81</th>
        </tr>
      </thead>
      <tbody>
        {#each result.ErgebnisseAufwandsZahlenBelastungHeizung as system, index}
        <tr class="text-center">
          <td colspan="2" class="text-left border border-gray-300 px-4 py-2">flächenbezogene Heizlast [W/m²]</td>
          <td colspan="2" class="border-2 border-gray-600 px-4 py-2">{Math.round(system.flaechenbezogeneLeistungUebergabeHeizung*100)/100}</td>
          <td colspan="2" class="border-2 border-gray-600 px-4 py-2">{Math.round(system.flaechenbezogeneLeistungVerteilungHeizung*100)/100}</td>
          <td colspan="2" class="border-2 border-gray-600 px-4 py-2">{Math.round(system.flaechenbezogeneLeistungSpeicherungHeizung*100)/100}</td>
          <td colspan="2" class="border-2 border-gray-600 px-4 py-2"></td>
        </tr>
        <tr class="text-center">
          <td class="border border-gray-300 px-4 py-2">{system.Bezeichnung}</td>
          <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(system.VersorgteFlaeche*100)/100}</td>
          <td class="border-2 border-gray-600 px-4 py-2">{Math.round(system.mittlereBelastungUebergabeHeizung*1000)/1000}</td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100">{Math.round(system.AufwandsZahlUebergabeHeizung*1000)/1000}</td>
          <td class="border-2 border-gray-600 px-4 py-2">{Math.round(system.mittlereBelastungVerteilungHeizung*1000)/1000}</td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100">{Math.round(system.AufwandsZahlVerteilungHeizung*1000)/1000}</td>
          <td class="border-2 border-gray-600 px-4 py-2">{Math.round(system.mittlereBelastungSpeicherungHeizung*1000)/1000}</td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100">{Math.round(system.AufwandsZahlSpeicherungHeizung*1000)/1000}</td>
          <td class="border-2 border-gray-600 px-4 py-2">{Math.round(system.mittlereBelastungErzaegungHeizung*1000)/1000}</td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100">{Math.round(system.AufwandsZahlErzeugungHeizung*1000)/1000}</td>
        </tr>
        {/each}
        <tr>
          <th colspan="10" class="px-4 py-2 text-center"></th>
        </tr>
        <tr>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 text-center">A<sub>w,m</sub> / A<br>[%]<br>aus Planung</td>
          <td class="border border-gray-300 px-4 py-2 text-center"></td>
          <td class="border border-gray-300 px-4 py-2 text-center">e<sub>w,ce</sub><br>aus Tabelle<br>29</td>
          <td class="border border-gray-300 px-4 py-2 text-center"></td>
          <td class="border border-gray-300 px-4 py-2 text-center">e<sub>w,d</sub><br>aus Tabellen<br>42-44</td>
          <td class="border border-gray-300 px-4 py-2 text-center"></td>
          <td class="border border-gray-300 px-4 py-2 text-center">e<sub>w,s</sub><br>aus Tabellen<br>55-57</td>
          <td class="border border-gray-300 px-4 py-2 text-center"></td>
          <td class="border border-gray-300 px-4 py-2 text-center">e<sub>w,g</sub><br>aus<br>Tabellen 59-81</td>
        </tr>
        <tr class="h-10">
          <td class="border border-gray-300 px-4 py-2">TWW 1</td>
          <td class="border border-gray-300 px-4 py-2 bg-yellow-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
        </tr>
        <tr class="h-10">
          <td class="border border-gray-300 px-4 py-2">TWW 2</td>
          <td class="border border-gray-300 px-4 py-2 bg-yellow-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
        </tr>
        <tr>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 text-center">A<sub>rv,m</sub> / A<br>[%]<br>aus Planung</td>
          <td class="border border-gray-300 px-4 py-2 text-center"></td>
          <td class="border border-gray-300 px-4 py-2 text-center">e<sub>rv,ce</sub><br>aus Tabelle<br>27</td>
          <td class="border border-gray-300 px-4 py-2 text-center"></td>
          <td class="border border-gray-300 px-4 py-2 text-center">e<sub>rv,d</sub><br>aus Tabellen<br>47</td>
          <td class="border border-gray-300 px-4 py-2 text-center"></td>
          <td class="border border-gray-300 px-4 py-2 text-center">e<sub>rv,s</sub><br>aus Tabellen<br>50-52, 55-57</td>
          <td class="border border-gray-300 px-4 py-2 text-center"></td>
          <td class="border border-gray-300 px-4 py-2 text-center">e<sub>rv,g</sub><br>aus<br>Tabellen </td>120-138,135
        </tr>
        <tr class="h-10">
          <td class="border border-gray-300 px-4 py-2">Lüftung</td>
          <td class="border border-gray-300 px-4 py-2 bg-yellow-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
          <td class="border border-gray-300 px-4 py-2"></td>
          <td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
        </tr>
        <tr class="h-10">
          <td colspan="10" class="border border-gray-300 px-4 py-2">Treten unterschiedliche Übergabesysteme und/oder 
            unterschiedliche Verteilsysteme in dem gleichen Gebäude auf, wird zur Aufteilung des Bedarfs die Fläche 
            als Bezugsgröße herangezogen und mehrere Zeilen für die Anlagentechnik angelegt:
            <b>Q<sub>b,m</sub> = Q<sub>b</sub> &middot;
            A<sub>ce,m</sub> / A </b><br><br>
            Wenn kein Pufferspeicher vorhanden ist: <b>e<sub>h,s</sub> = 1</b><br><br>
            Zu beachten bei vorhandenem Pufferspeicher:<br>
            <b>β<sub>h,g</sub> = 1</b> und die Aufwandszahl für Verteilung muss korrigiert werden: 
            <b>e<sub>h,d,korr</sub> = (e<sub>h,d</sub> - 1) · (8760/t<sub>h,r,L</sub>) + 1</b> (t<sub>h,r,L</sub> siehe Tabelle 13)<br><br>
            Handelt es sich bei den Wärmeerzeugern um Kessel, sind noch folgende zwei Korrekturen vorzunehmen:<br><br>
            Korrektur der Aufwandszahl für Erzeugung für Heizung mit: 
            <b>e<sub>h,g,korr</sub> = (e<sub>h,g</sub> - 1) &middot; t<sub>a</sub> / t<sub>h,rL</sub> + 1</b><br>
            Korrektur der Aufwandszahl für Erzeugung für Trinkwarmwassererwärmung: 
            <b>e<sub>w,g,korr</sub> = (e<sub>w,g</sub> - 1) &middot; t<sub>a</sub> / t<sub>h,rL</sub> + 1</b>
          </td>
        </tr>
      </tbody>
    </table>
  </div>