Merge pull request #302 from IBCornelsen/Jens

Tabellen A9, A10 und A11 fertiggestellt
This commit is contained in:
Jens Cornelsen
2025-01-31 22:11:12 +01:00
committed by GitHub
12 changed files with 285 additions and 120 deletions

View File

@@ -36,7 +36,7 @@
<th colspan="3" class="border border-gray-300 p-2"></th> <th colspan="3" class="border border-gray-300 p-2"></th>
<th colspan="1" class="border border-gray-300 p-2"> (3) = f<sub>A-w</sub><br>aus Tabelle 142 bzw. Tabelle 143</th> <th colspan="1" class="border border-gray-300 p-2"> (3) = f<sub>A-w</sub><br>aus Tabelle 142 bzw. Tabelle 143</th>
<tr class="text-center h-10"> <tr class="text-center h-10">
<th colspan="3" class="border border-gray-300 p-2"></th> <th colspan="3" class="border border-gray-300 p-2"></th>
<th colspan="1" class="border border-gray-300 p-2 bg-blue-100">{result.FaktorNutzbareWaermeTrinkwarmwasser}</th> <th colspan="1" class="border border-gray-300 p-2 bg-blue-100">{result.FaktorNutzbareWaermeTrinkwarmwasser}</th>
</tr> </tr>
</thead> </thead>
@@ -46,75 +46,76 @@
<!-- Monatszeilen --> <!-- Monatszeilen -->
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Januar</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Januar</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.Januar)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Januar)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Januar)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Februar</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Februar</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">28</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">28</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.Februar)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Februar)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Februar)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">März</td> <td class="w-1/4 border border-gray-300 p-2 text-center">März</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.Maerz)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Maerz)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Maerz)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">April</td> <td class="w-1/4 border border-gray-300 p-2 text-center">April</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.April)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.April)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.April)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Mai</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Mai</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.Mai)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Mai)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Mai)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Juni</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Juni</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.Juni)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Juni)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Juni)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Juli</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Juli</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.Juli)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Juli)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Juli)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">August</td> <td class="w-1/4 border border-gray-300 p-2 text-center">August</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.August)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.August)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.August)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">September</td> <td class="w-1/4 border border-gray-300 p-2 text-center">September</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.September)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.September)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.September)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Oktober</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Oktober</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.Oktober)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Oktober)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Oktober)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">November</td> <td class="w-1/4 border border-gray-300 p-2 text-center">November</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.November)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.November)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.November)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Dezember</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Dezember</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border border-gray-300 p-2 text-center bg-yellow-100"></td> <td class="border border-gray-300 p-2 text-center bg-yellow-100">{Math.round(result.trinkwasserWaermebedarf.Dezember)}</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Dezember)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(result.WaermeQuellenAnlagentechnikTrinkwarmwasser.Dezember)}</td>
</tr>
<!-- Summenzeile --> <!-- Summenzeile -->
</tbody> </tbody>

View File

@@ -19,8 +19,8 @@
<th colspan="2" class="border border-gray-300 p-2">Interne Wärmequellen q<sub>i</sub> [Wh/m<sup>2</sup>d]<br> <th colspan="2" class="border border-gray-300 p-2">Interne Wärmequellen q<sub>i</sub> [Wh/m<sup>2</sup>d]<br>
(DIN V 18599-10:2018-09, Tabelle 4) (2)</th> (DIN V 18599-10:2018-09, Tabelle 4) (2)</th>
<th colspan="4" class="border border-gray-300 p-2"></th> <th colspan="4" class="border border-gray-300 p-2"></th>
<tr class="text-center h-10"> <tr class="text-center h-10">
<th colspan="1" class="border border-gray-300 p-2 bg-yellow-100"></th> <th colspan="1" class="border border-gray-300 p-2 bg-yellow-100">{result.NettoGrundflaeche}</th>
<th colspan="2" class="border border-gray-300 p-2 bg-yellow-100">{result.WaermeQuellenBewohner}</th> <th colspan="2" class="border border-gray-300 p-2 bg-yellow-100">{result.WaermeQuellenBewohner}</th>
<th colspan="4" class="border border-gray-300 p-2"></th> <th colspan="4" class="border border-gray-300 p-2"></th>
</tr> </tr>
@@ -57,116 +57,117 @@
<td class="border border-gray-300 px-4 py-2">Januar</td> <td class="border border-gray-300 px-4 py-2">Januar</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Januar}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Januar}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Januar*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Januar*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseJanuar*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseJanuar*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.Januar)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.Januar)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Januar)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Januar)}</td>
</tr> </tr>
<tr> <tr>
<td class="border border-gray-300 px-4 py-2">Februar</td> <td class="border border-gray-300 px-4 py-2">Februar</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Februar}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Februar}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Februar*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Februar*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseFebruar*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseFebruar*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.Februar)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.Februar)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Februar)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Februar)}</td>
</tr> </tr>
<tr> <tr>
<td class="border border-gray-300 px-4 py-2">März</td> <td class="border border-gray-300 px-4 py-2">März</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.März}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Maerz}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Maerz*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Maerz*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseMaerz*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseMaerz*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.Maerz)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.Maerz)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Maerz)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Maerz)}</td>
</tr> </tr>
<tr> <tr>
<td class="border border-gray-300 px-4 py-2">April</td> <td class="border border-gray-300 px-4 py-2">April</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.April}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.April}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.April*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.April*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseApril*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseApril*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.April)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.April)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.April)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.April)}</td>
</tr> </tr>
<tr> <tr>
<td class="border border-gray-300 px-4 py-2">Mai</td> <td class="border border-gray-300 px-4 py-2">Mai</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Mai}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Mai}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Mai*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Mai*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseMai*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseMai*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.Mai)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.Mai)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Mai)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Mai)}</td>
</tr> </tr>
<tr> <tr>
<td class="border border-gray-300 px-4 py-2">Juni</td> <td class="border border-gray-300 px-4 py-2">Juni</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Juni}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Juni}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Juni*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Juni*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseJuni*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseJuni*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.Juni)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.Juni)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Juni)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Juni)}</td>
</tr> </tr>
<tr> <tr>
<td class="border border-gray-300 px-4 py-2">Juli</td> <td class="border border-gray-300 px-4 py-2">Juli</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Juli}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Juli}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Juli*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Juli*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseJuli*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseJuli*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.Juli)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.Juli)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Juli)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Juli)}</td>
</tr> </tr>
<tr> <tr>
<td class="border border-gray-300 px-4 py-2">August</td> <td class="border border-gray-300 px-4 py-2">August</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.August}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.August}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.August*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.August*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseAugust*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseAugust*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.August)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.August)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.August)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.August)}</td>
</tr> </tr>
<tr> <tr>
<td class="border border-gray-300 px-4 py-2">September</td> <td class="border border-gray-300 px-4 py-2">September</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.September}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.September}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.September*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.September*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseSeptember*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseSeptember*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.September)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.September)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.September)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.September)}</td>
</tr> </tr>
<tr> <tr>
<td class="border border-gray-300 px-4 py-2">Oktober</td> <td class="border border-gray-300 px-4 py-2">Oktober</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Oktober}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Oktober}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Oktober*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Oktober*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseOktober*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseOktober*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.Oktober)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.Oktober)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Oktober)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Oktober)}</td>
</tr> </tr>
<tr> <tr>
<td class="border border-gray-300 px-4 py-2">November</td> <td class="border border-gray-300 px-4 py-2">November</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.November}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.November}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.November*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.November*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseNovember*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseNovember*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.November)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.November)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.November)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.November)}</td>
</tr> </tr>
<tr> <tr>
<td class="border border-gray-300 px-4 py-2">Dezember</td> <td class="border border-gray-300 px-4 py-2">Dezember</td>
<td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Dezember}</td> <td class="border border-gray-300 px-4 py-2 bg-gray-100">{result.TageMonat.Dezember}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Dezember*100)/100}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.interneWaermeQuellenProMonat.Dezember*100)/100}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseDezember*100)/100}</td> <td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(result.summeErgebnisseDezember*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenAnlagentechnikGesamt.Dezember)}</td>
<td class="border-2 border-gray-600 px-4 py-2"></td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamt.Dezember)}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Dezember)}</td> <td class="border-2 border-gray-600 px-4 py-2">{Math.round(result.WaermeQuellenGesamtLeistung.Dezember)}</td>
</tr>
<tr class="text-center h-10"> <tr class="text-center h-10">
<th colspan="2" class="border border-gray-300 p-2">Jahressummen</th> <th colspan="2" class="border border-gray-300 p-2">Jahressummen</th>
<th colspan="1" class="border-2 border-gray-600 p-2"></th> <th colspan="1" class="border-2 border-gray-600 p-2">{Math.round(result.interneWaermeQuellenGesamt)}</th>
<th colspan="1" class="border-2 border-gray-600 p-2"></th> <th colspan="1" class="border-2 border-gray-600 p-2">{Math.round(result.summeErgebnisseGesamt)}</th>
<th colspan="1" class="border-2 border-gray-600 p-2"></th> <th colspan="1" class="border-2 border-gray-600 p-2">{Math.round(result.summeWaermeQuellenAnlagentechnikGesamt)}</th>
<th colspan="1" class="border-2 border-gray-600 p-2"></th> <th colspan="1" class="border-2 border-gray-600 p-2">{Math.round(result.summeWaermeQuellenGesamt)}</th>
<th colspan="1" class="border-2 border-gray-600 p-2">{Math.round(result.summeWaermeQuellenGesamtLeistung)}</th> <th colspan="1" class="border-2 border-gray-600 p-2">{Math.round(result.summeWaermeQuellenGesamtLeistung)}</th>
</tr> </tr>
</tbody> </tbody>

View File

@@ -32,7 +32,7 @@ $: result = A8BerechnungWaermequellenAusAnlagentechnikHeizung();
<tr class="text-center h-10"> <tr class="text-center h-10">
<th colspan="6" class="border border-gray-300 p-2"></th> <th colspan="6" class="border border-gray-300 p-2"></th>
<th colspan="1" class="border border-gray-300 p-2"></th> <th colspan="1" class="border border-gray-300 p-2"></th>
<th colspan="1" class="border border-gray-300 p-2 bg-blue-100"></th> <th colspan="1" class="border border-gray-300 p-2 bg-blue-100">{result.FaktorNutzbareWaerme}</th>
</tr> </tr>
</thead> </thead>

View File

@@ -6,13 +6,14 @@
import { A9BerechnungNutzenergiebedarfTrinkwarmwasser } from "#lib/Berechnungen/BedarfsausweisWohnen/A9BerechnungNutzenergiebedarfTrinkwarmwasser.js"; import { A9BerechnungNutzenergiebedarfTrinkwarmwasser } from "#lib/Berechnungen/BedarfsausweisWohnen/A9BerechnungNutzenergiebedarfTrinkwarmwasser.js";
let trinkwasserWaermebedarf = 0, flaechenBezogenerWaermebedarf = 0, bezugsflaeche = 0 let trinkwasserWaermebedarf = 0, flaechenBezogenerWaermebedarf = 0, bezugsflaeche = 0, trinkwasserWaermebedarfJahr = 0
$: { $: {
const result = A9BerechnungNutzenergiebedarfTrinkwarmwasser(ausweis, gebaeude_aufnahme) const result = A9BerechnungNutzenergiebedarfTrinkwarmwasser(ausweis, gebaeude_aufnahme)
trinkwasserWaermebedarf = result.trinkwasserWaermebedarf trinkwasserWaermebedarf = result.trinkwasserWaermebedarf
flaechenBezogenerWaermebedarf = result.flaechenBezogenerWaermebedarf flaechenBezogenerWaermebedarf = result.flaechenBezogenerWaermebedarf
bezugsflaeche = result.bezugsflaeche bezugsflaeche = result.bezugsflaeche
trinkwasserWaermebedarfJahr = result.trinkwasserWaermebedarfJahr
} }
</script> </script>
@@ -48,62 +49,62 @@
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Januar</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Januar</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 31)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.Januar)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Februar</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Februar</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">28</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">28</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 28)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.Februar)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">März</td> <td class="w-1/4 border border-gray-300 p-2 text-center">März</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 31)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.Maerz)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">April</td> <td class="w-1/4 border border-gray-300 p-2 text-center">April</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 30)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.April)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Mai</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Mai</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 31)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.Mai)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Juni</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Juni</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 30)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.Juni)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Juli</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Juli</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 31)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.Juli)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">August</td> <td class="w-1/4 border border-gray-300 p-2 text-center">August</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 31)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.August)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">September</td> <td class="w-1/4 border border-gray-300 p-2 text-center">September</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 30)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.September)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Oktober</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Oktober</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 31)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.Oktober)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">November</td> <td class="w-1/4 border border-gray-300 p-2 text-center">November</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">30</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 30)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.November)}</td>
</tr> </tr>
<tr> <tr>
<td class="w-1/4 border border-gray-300 p-2 text-center">Dezember</td> <td class="w-1/4 border border-gray-300 p-2 text-center">Dezember</td>
<td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td> <td class="w-1/4 border border-gray-300 p-2 text-center bg-gray-100">31</td>
<td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf / 365 * 31)}</td> <td class="border-2 border-gray-600 p-2 text-center">{Math.round(trinkwasserWaermebedarf.Dezember)}</td>
</tr> </tr>
<!-- Summenzeile --> <!-- Summenzeile -->
<tr> <tr>
@@ -113,7 +114,7 @@
Jahressumme Q<sub>w,b</sub> [kWh/a] Jahressumme Q<sub>w,b</sub> [kWh/a]
</td> </td>
<td colspan="1" class="border-2 border-gray-600 p-2 text-center font-bold"> <td colspan="1" class="border-2 border-gray-600 p-2 text-center font-bold">
{trinkwasserWaermebedarf} {Math.round(trinkwasserWaermebedarfJahr)}
</td> </td>
</tr> </tr>
<!-- Fußzeile --> <!-- Fußzeile -->

View File

@@ -1,5 +1,31 @@
import { A9BerechnungNutzenergiebedarfTrinkwarmwasser } from "#lib/Berechnungen/BedarfsausweisWohnen/A9BerechnungNutzenergiebedarfTrinkwarmwasser.js";
import { BedarfsausweisWohnenClient, GebaeudeAufnahmeClient } from "#components/Ausweis/types.js";
/**
* Implementierung Tabelle A10
*
* @see 18599-Tabellenverfahren-Wohngebaeude.pdf
* @export
* @param {BedarfsausweisWohnenClient} ausweis
* @param {GebaeudeAufnahmeClient} gebaeude_aufnahme
*/
export function A10BerechnungWaermequellenAnlagentechnikTrinkwarmwasser(ausweis: BedarfsausweisWohnenClient, gebaeude_aufnahme: GebaeudeAufnahmeClient) {
export function A10BerechnungWaermequellenAnlagentechnikTrinkwarmwasser() { const result = A9BerechnungNutzenergiebedarfTrinkwarmwasser(ausweis, gebaeude_aufnahme);
const trinkwasserWaermebedarf = result.trinkwasserWaermebedarf;
const FaktorNutzbareWaermeTrinkwarmwasser = 1.554; // aus Eingabe (Tabelle 143): mit Zirkulation - Verteilung, Speicherung und Erzeugung im beheizten Bereich - 55°C/45°C
const WaermeQuellenAnlagentechnikTrinkwarmwasser = Object.keys(trinkwasserWaermebedarf).reduce((acc: { [key: string]: number }, month) => {
acc[month] = trinkwasserWaermebedarf[month] * FaktorNutzbareWaermeTrinkwarmwasser;
return acc;
}, {});
return {
trinkwasserWaermebedarf,
FaktorNutzbareWaermeTrinkwarmwasser,
WaermeQuellenAnlagentechnikTrinkwarmwasser
}
} }

View File

@@ -1,4 +1,7 @@
import { A7A2BerechnungWaermequellenSolareEinstrahlung } from "#lib/Berechnungen/BedarfsausweisWohnen/A7A2BerechnungWaermequellenSolareEinstrahlung.js"; import { A7A2BerechnungWaermequellenSolareEinstrahlung } from "#lib/Berechnungen/BedarfsausweisWohnen/A7A2BerechnungWaermequellenSolareEinstrahlung.js";
import { A8BerechnungWaermequellenAusAnlagentechnikHeizung } from "#lib/Berechnungen/BedarfsausweisWohnen/A8BerechnungWaermequellenAusAnlagentechnikHeizung.js";
import { A10BerechnungWaermequellenAnlagentechnikTrinkwarmwasser } from "#lib/Berechnungen/BedarfsausweisWohnen/A10BerechnungWaermequellenAnlagentechnikTrinkwarmwasser.js";
import { result } from "node_modules/cypress/types/lodash/index.js";
export function A11BerechnungWaermequellenZusammenstellung() { export function A11BerechnungWaermequellenZusammenstellung() {
@@ -16,6 +19,34 @@ export function A11BerechnungWaermequellenZusammenstellung() {
const summeErgebnisseNovember = einstrahlung.summeErgebnisseNovember; const summeErgebnisseNovember = einstrahlung.summeErgebnisseNovember;
const summeErgebnisseDezember = einstrahlung.summeErgebnisseDezember; const summeErgebnisseDezember = einstrahlung.summeErgebnisseDezember;
const summeErgebnisseGesamt = summeErgebnisseJanuar + summeErgebnisseFebruar + summeErgebnisseMaerz +
summeErgebnisseApril + summeErgebnisseMai + summeErgebnisseJuni + summeErgebnisseJuli + summeErgebnisseAugust +
summeErgebnisseSeptember + summeErgebnisseOktober + summeErgebnisseNovember + summeErgebnisseDezember;
const result = A8BerechnungWaermequellenAusAnlagentechnikHeizung();
const ausweis = {}; // Replace with actual BedarfsausweisWohnenClient object
const gebaeude_aufnahme = {}; // Replace with actual GebaeudeAufnahmeClient object
const resultTrinkwarmwasser = A10BerechnungWaermequellenAnlagentechnikTrinkwarmwasser(ausweis, gebaeude_aufnahme);
const WaermeQuellenAnlagentechnikTrinkwarmwasser = resultTrinkwarmwasser.WaermeQuellenAnlagentechnikTrinkwarmwasser;
const WaermeQuellenAnlagentechnikGesamt = {
Januar: result.WaermeQuellenAnlagentechnikHeizungJanuar + WaermeQuellenAnlagentechnikTrinkwarmwasser.Januar,
Februar: result.WaermeQuellenAnlagentechnikHeizungFebruar + WaermeQuellenAnlagentechnikTrinkwarmwasser.Februar,
Maerz: result.WaermeQuellenAnlagentechnikHeizungMaerz + WaermeQuellenAnlagentechnikTrinkwarmwasser.Maerz,
April: result.WaermeQuellenAnlagentechnikHeizungApril + WaermeQuellenAnlagentechnikTrinkwarmwasser.April,
Mai: result.WaermeQuellenAnlagentechnikHeizungMai + WaermeQuellenAnlagentechnikTrinkwarmwasser.Mai,
Juni: result.WaermeQuellenAnlagentechnikHeizungJuni + WaermeQuellenAnlagentechnikTrinkwarmwasser.Juni,
Juli: result.WaermeQuellenAnlagentechnikHeizungJuli + WaermeQuellenAnlagentechnikTrinkwarmwasser.Juli,
August: result.WaermeQuellenAnlagentechnikHeizungAugust + WaermeQuellenAnlagentechnikTrinkwarmwasser.August,
September: result.WaermeQuellenAnlagentechnikHeizungSeptember + WaermeQuellenAnlagentechnikTrinkwarmwasser.September,
Oktober: result.WaermeQuellenAnlagentechnikHeizungOktober + WaermeQuellenAnlagentechnikTrinkwarmwasser.Oktober,
November: result.WaermeQuellenAnlagentechnikHeizungNovember + WaermeQuellenAnlagentechnikTrinkwarmwasser.November,
Dezember: result.WaermeQuellenAnlagentechnikHeizungDezember + WaermeQuellenAnlagentechnikTrinkwarmwasser.Dezember
};
const summeWaermeQuellenAnlagentechnikGesamt = Object.values(WaermeQuellenAnlagentechnikGesamt).reduce((acc, value) => acc + value, 0);
// Beispielwerte Planung werden aus Eingabe geholt // Beispielwerte Planung werden aus Eingabe geholt
let NettoGrundflaeche = 154.2; let NettoGrundflaeche = 154.2;
let WaermeQuellenBewohner = 45; // bis 2 Wohneinheiten sonst 90 let WaermeQuellenBewohner = 45; // bis 2 Wohneinheiten sonst 90
@@ -23,7 +54,7 @@ export function A11BerechnungWaermequellenZusammenstellung() {
let TageMonat = { let TageMonat = {
Januar: 31, Januar: 31,
Februar: 28, Februar: 28,
März: 31, Maerz: 31,
April: 30, April: 30,
Mai: 31, Mai: 31,
Juni: 30, Juni: 30,
@@ -38,7 +69,7 @@ export function A11BerechnungWaermequellenZusammenstellung() {
const interneWaermeQuellenProMonat = { const interneWaermeQuellenProMonat = {
Januar: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Januar) / 1000, Januar: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Januar) / 1000,
Februar: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Februar) / 1000, Februar: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Februar) / 1000,
März: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.März) / 1000, Maerz: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Maerz) / 1000,
April: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.April) / 1000, April: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.April) / 1000,
Mai: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Mai) / 1000, Mai: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Mai) / 1000,
Juni: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Juni) / 1000, Juni: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Juni) / 1000,
@@ -50,6 +81,31 @@ export function A11BerechnungWaermequellenZusammenstellung() {
Dezember: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Dezember) / 1000 Dezember: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Dezember) / 1000
}; };
const interneWaermeQuellenGesamt = Object.values(interneWaermeQuellenProMonat).reduce((acc, value) => acc + value, 0);
const WaermeQuellenGesamt = {
Januar: interneWaermeQuellenProMonat.Januar + summeErgebnisseJanuar + WaermeQuellenAnlagentechnikGesamt.Januar,
Februar: interneWaermeQuellenProMonat.Februar + summeErgebnisseFebruar + WaermeQuellenAnlagentechnikGesamt.Februar,
Maerz: interneWaermeQuellenProMonat.Maerz + summeErgebnisseMaerz + WaermeQuellenAnlagentechnikGesamt.Maerz,
April: interneWaermeQuellenProMonat.April + summeErgebnisseApril + WaermeQuellenAnlagentechnikGesamt.April,
Mai: interneWaermeQuellenProMonat.Mai + summeErgebnisseMai + WaermeQuellenAnlagentechnikGesamt.Mai,
Juni: interneWaermeQuellenProMonat.Juni + summeErgebnisseJuni + WaermeQuellenAnlagentechnikGesamt.Juni,
Juli: interneWaermeQuellenProMonat.Juli + summeErgebnisseJuli + WaermeQuellenAnlagentechnikGesamt.Juli,
August: interneWaermeQuellenProMonat.August + summeErgebnisseAugust + WaermeQuellenAnlagentechnikGesamt.August,
September: interneWaermeQuellenProMonat.September + summeErgebnisseSeptember + WaermeQuellenAnlagentechnikGesamt.September,
Oktober: interneWaermeQuellenProMonat.Oktober + summeErgebnisseOktober + WaermeQuellenAnlagentechnikGesamt.Oktober,
November: interneWaermeQuellenProMonat.November + summeErgebnisseNovember + WaermeQuellenAnlagentechnikGesamt.November,
Dezember: interneWaermeQuellenProMonat.Dezember + summeErgebnisseDezember + WaermeQuellenAnlagentechnikGesamt.Dezember
};
const summeWaermeQuellenGesamt = Object.values(WaermeQuellenGesamt).reduce((acc, value) => acc + value, 0);
const WaermeQuellenGesamtLeistung = Object.keys(WaermeQuellenGesamt).reduce((acc: { [key: string]: number }, month) => {
acc[month] = (WaermeQuellenGesamt[month as keyof typeof WaermeQuellenGesamt] / (24 * TageMonat[month as keyof typeof TageMonat]) * 1000);
return acc;
}, {});
const summeWaermeQuellenGesamtLeistung = Object.values(WaermeQuellenGesamtLeistung).reduce((acc, value) => acc + value, 0);
return { return {
TageMonat, TageMonat,
@@ -65,7 +121,17 @@ export function A11BerechnungWaermequellenZusammenstellung() {
summeErgebnisseOktober, summeErgebnisseOktober,
summeErgebnisseNovember, summeErgebnisseNovember,
summeErgebnisseDezember, summeErgebnisseDezember,
interneWaermeQuellenProMonat interneWaermeQuellenProMonat,
NettoGrundflaeche,
WaermeQuellenBewohner,
WaermeQuellenAnlagentechnikGesamt,
WaermeQuellenGesamt,
WaermeQuellenGesamtLeistung,
summeErgebnisseGesamt,
interneWaermeQuellenGesamt,
summeWaermeQuellenAnlagentechnikGesamt,
summeWaermeQuellenGesamt,
summeWaermeQuellenGesamtLeistung
} }
} }

View File

@@ -3,6 +3,7 @@ import { funktionBilanzInnentemperatur } from "#lib/Berechnungen/BedarfsausweisW
import { funktionAusnutzungsgrad } from "#lib/Berechnungen/BedarfsausweisWohnen/funktionAusnutzungsgrad.js"; import { funktionAusnutzungsgrad } from "#lib/Berechnungen/BedarfsausweisWohnen/funktionAusnutzungsgrad.js";
import { A6BerechnungWaermeTransferMaxStroemeLueftungGesamt } from "#lib/Berechnungen/BedarfsausweisWohnen/A6BerechnungWaermeTransferMaxStroemeLueftungGesamt.js"; import { A6BerechnungWaermeTransferMaxStroemeLueftungGesamt } from "#lib/Berechnungen/BedarfsausweisWohnen/A6BerechnungWaermeTransferMaxStroemeLueftungGesamt.js";
import { A5BerechnungWaermeTransferMaxStroemeBauteile } from "#lib/Berechnungen/BedarfsausweisWohnen/A5BerechnungWaermeTransferMaxStroemeBauteile.js"; import { A5BerechnungWaermeTransferMaxStroemeBauteile } from "#lib/Berechnungen/BedarfsausweisWohnen/A5BerechnungWaermeTransferMaxStroemeBauteile.js";
import { A11BerechnungWaermequellenZusammenstellung } from "#lib/Berechnungen/BedarfsausweisWohnen/A11BerechnungWaermequellenZusammenstellung.js";
export function A12BerechnungNutzenergiebedarfHeizung() { export function A12BerechnungNutzenergiebedarfHeizung() {

View File

@@ -146,8 +146,6 @@ export function A7A2BerechnungWaermequellenSolareEinstrahlung() {
}); });
console.log(ErgebnisseJanuar[1]);
console.log(ErgebnisseMonatsWerteJanuar);
const summeErgebnisseJanuar = ErgebnisseJanuar.reduce((acc, val) => acc + val, 0); const summeErgebnisseJanuar = ErgebnisseJanuar.reduce((acc, val) => acc + val, 0);
const summeErgebnisseFebruar = ErgebnisseFebruar.reduce((acc, val) => acc + val, 0); const summeErgebnisseFebruar = ErgebnisseFebruar.reduce((acc, val) => acc + val, 0);

View File

@@ -1,5 +1,6 @@
import { A12BerechnungNutzenergiebedarfHeizung } from "#lib/Berechnungen/BedarfsausweisWohnen/A12BerechnungNutzenergiebedarfHeizung.js"; import { A12BerechnungNutzenergiebedarfHeizung } from "#lib/Berechnungen/BedarfsausweisWohnen/A12BerechnungNutzenergiebedarfHeizung.js";
import { A11BerechnungWaermequellenZusammenstellung } from "#lib/Berechnungen/BedarfsausweisWohnen/A11BerechnungWaermequellenZusammenstellung.js"; import { A7A2BerechnungWaermequellenSolareEinstrahlung } from "#lib/Berechnungen/BedarfsausweisWohnen/A7A2BerechnungWaermequellenSolareEinstrahlung.js";
import { funktionInterneWaermequellen } from "./funktionInterneWaermequellen.js";
export function A8BerechnungWaermequellenAusAnlagentechnikHeizung() { export function A8BerechnungWaermequellenAusAnlagentechnikHeizung() {
@@ -7,20 +8,22 @@ const result = A12BerechnungNutzenergiebedarfHeizung();
const waermeSenken = result.waermeSenken; const waermeSenken = result.waermeSenken;
const belastungsgrade = result.belastungsgrade; const belastungsgrade = result.belastungsgrade;
const resultA11 = A11BerechnungWaermequellenZusammenstellung(); const einstrahlung = A7A2BerechnungWaermequellenSolareEinstrahlung();
const interneWaermeQuellenProMonat = resultA11.interneWaermeQuellenProMonat; const summeErgebnisseJanuar = einstrahlung.summeErgebnisseJanuar;
const summeErgebnisseJanuar = resultA11.summeErgebnisseJanuar; const summeErgebnisseFebruar = einstrahlung.summeErgebnisseFebruar;
const summeErgebnisseFebruar = resultA11.summeErgebnisseFebruar; const summeErgebnisseMaerz = einstrahlung.summeErgebnisseMaerz;
const summeErgebnisseMaerz = resultA11.summeErgebnisseMaerz; const summeErgebnisseApril = einstrahlung.summeErgebnisseApril;
const summeErgebnisseApril = resultA11.summeErgebnisseApril; const summeErgebnisseMai = einstrahlung.summeErgebnisseMai;
const summeErgebnisseMai = resultA11.summeErgebnisseMai; const summeErgebnisseJuni = einstrahlung.summeErgebnisseJuni;
const summeErgebnisseJuni = resultA11.summeErgebnisseJuni; const summeErgebnisseJuli = einstrahlung.summeErgebnisseJuli;
const summeErgebnisseJuli = resultA11.summeErgebnisseJuli; const summeErgebnisseAugust = einstrahlung.summeErgebnisseAugust;
const summeErgebnisseAugust = resultA11.summeErgebnisseAugust; const summeErgebnisseSeptember = einstrahlung.summeErgebnisseSeptember;
const summeErgebnisseSeptember = resultA11.summeErgebnisseSeptember; const summeErgebnisseOktober = einstrahlung.summeErgebnisseOktober;
const summeErgebnisseOktober = resultA11.summeErgebnisseOktober; const summeErgebnisseNovember = einstrahlung.summeErgebnisseNovember;
const summeErgebnisseNovember = resultA11.summeErgebnisseNovember; const summeErgebnisseDezember = einstrahlung.summeErgebnisseDezember;
const summeErgebnisseDezember = resultA11.summeErgebnisseDezember;
const resultInterneWaermeQuellen = funktionInterneWaermequellen();
const interneWaermeQuellenProMonat = resultInterneWaermeQuellen.interneWaermeQuellenProMonat;
let TageMonat = { let TageMonat = {
Januar: 31, Januar: 31,
@@ -164,7 +167,8 @@ return {
WaermeQuellenAnlagentechnikHeizungSeptember, WaermeQuellenAnlagentechnikHeizungSeptember,
WaermeQuellenAnlagentechnikHeizungOktober, WaermeQuellenAnlagentechnikHeizungOktober,
WaermeQuellenAnlagentechnikHeizungNovember, WaermeQuellenAnlagentechnikHeizungNovember,
WaermeQuellenAnlagentechnikHeizungDezember WaermeQuellenAnlagentechnikHeizungDezember,
FaktorNutzbareWaerme
}; };
} }

View File

@@ -11,10 +11,10 @@ import { linearInterpolation } from "js-interpolate"
* @param {GebaeudeAufnahmeClient} gebaeude_aufnahme * @param {GebaeudeAufnahmeClient} gebaeude_aufnahme
*/ */
export function A9BerechnungNutzenergiebedarfTrinkwarmwasser(ausweis: BedarfsausweisWohnenClient, gebaeude_aufnahme: GebaeudeAufnahmeClient) { export function A9BerechnungNutzenergiebedarfTrinkwarmwasser(ausweis: BedarfsausweisWohnenClient, gebaeude_aufnahme: GebaeudeAufnahmeClient) {
// A_NGF // A_NGF aus Eingabe
const bezugsflaeche = gebaeude_aufnahme.nutzflaeche ?? 0; const bezugsflaeche = 154.2;
const einheiten = gebaeude_aufnahme.einheiten ?? 1; const einheiten = 1;
// A_NGF,WE,m // A_NGF,WE,m
const flaecheProEinheit = bezugsflaeche / einheiten; const flaecheProEinheit = bezugsflaeche / einheiten;
@@ -39,11 +39,34 @@ export function A9BerechnungNutzenergiebedarfTrinkwarmwasser(ausweis: Bedarfsaus
// Q_w,b // Q_w,b
// Trinkwasser Wärmebedarf übers gesamte Jahr gerechnet. Falls ein bestimmter Monat gesucht wird kann man einfach (Q_w,b / 365 * d_mth) rechnen. // Trinkwasser Wärmebedarf übers gesamte Jahr gerechnet. Falls ein bestimmter Monat gesucht wird kann man einfach (Q_w,b / 365 * d_mth) rechnen.
const trinkwasserWaermebedarf = bezugsflaeche * flaechenBezogenerWaermebedarf; const tageMonat = {
Januar: 31,
Februar: 28,
Maerz: 31,
April: 30,
Mai: 31,
Juni: 30,
Juli: 31,
August: 31,
September: 30,
Oktober: 31,
November: 30,
Dezember: 31
};
const trinkwasserWaermebedarf = Object.fromEntries(
Object.entries(tageMonat).map(([monat, tage]) => [
monat,
(bezugsflaeche * flaechenBezogenerWaermebedarf * tage) / 365
])
);
const trinkwasserWaermebedarfJahr = Object.values(trinkwasserWaermebedarf).reduce((sum, value) => sum + value, 0);
return { return {
trinkwasserWaermebedarf, trinkwasserWaermebedarf,
flaechenBezogenerWaermebedarf, flaechenBezogenerWaermebedarf,
bezugsflaeche bezugsflaeche,
trinkwasserWaermebedarfJahr
} }
} }

View File

@@ -0,0 +1,44 @@
export function funktionInterneWaermequellen() {
// Beispielwerte Planung werden aus Eingabe geholt
let NettoGrundflaeche = 154.2;
let WaermeQuellenBewohner = 45; // bis 2 Wohneinheiten sonst 90
let TageMonat = {
Januar: 31,
Februar: 28,
März: 31,
April: 30,
Mai: 31,
Juni: 30,
Juli: 31,
August: 31,
September: 30,
Oktober: 31,
November: 30,
Dezember: 31
};
const interneWaermeQuellenProMonat = {
Januar: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Januar) / 1000,
Februar: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Februar) / 1000,
März: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.März) / 1000,
April: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.April) / 1000,
Mai: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Mai) / 1000,
Juni: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Juni) / 1000,
Juli: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Juli) / 1000,
August: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.August) / 1000,
September: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.September) / 1000,
Oktober: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Oktober) / 1000,
November: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.November) / 1000,
Dezember: (NettoGrundflaeche * WaermeQuellenBewohner * TageMonat.Dezember) / 1000
};
return {
interneWaermeQuellenProMonat
}
}

View File

@@ -11,7 +11,7 @@ import A5WaermeTransferMaxStroemeBauteile from "#components/Tabellen/A5WaermeTra
import A6WaermeTransferMaxStroemeGesamt from "#components/Tabellen/A6WaermeTransferMaxStroemeGesamt.svelte"; import A6WaermeTransferMaxStroemeGesamt from "#components/Tabellen/A6WaermeTransferMaxStroemeGesamt.svelte";
import A7WaermequellenSolareEinstrahlung from "#components/Tabellen/A7WaermequellenSolareEinstrahlung.svelte"; import A7WaermequellenSolareEinstrahlung from "#components/Tabellen/A7WaermequellenSolareEinstrahlung.svelte";
import A8WaermequellenAnlagentechnikHeizung from "#components/Tabellen/A8WaermequellenAnlagentechnikHeizung.svelte"; import A8WaermequellenAnlagentechnikHeizung from "#components/Tabellen/A8WaermequellenAnlagentechnikHeizung.svelte";
import A9Trinkwassererwaermung from "#components/Tabellen/A9Trinkwassererwaermung.svelte"; import A9NutzenergiebedarfTrinkwarmwasser from "#components/Tabellen/A9NutzenergiebedarfTrinkwarmwasser.svelte";
import A10WaermequellenAnlagentechnikTrinkwarmwasser from "#components/Tabellen/A10WaermequellenAnlagentechnikTrinkwarmwasser.svelte"; import A10WaermequellenAnlagentechnikTrinkwarmwasser from "#components/Tabellen/A10WaermequellenAnlagentechnikTrinkwarmwasser.svelte";
import A11WaermequellenZusammenstellung from "#components/Tabellen/A11WaermequellenZusammenstellung.svelte"; import A11WaermequellenZusammenstellung from "#components/Tabellen/A11WaermequellenZusammenstellung.svelte";
import A12NutzenergiebedarfHeizung from "#components/Tabellen/A12NutzenergiebedarfHeizung.svelte"; import A12NutzenergiebedarfHeizung from "#components/Tabellen/A12NutzenergiebedarfHeizung.svelte";
@@ -94,23 +94,23 @@ const ausweis: BedarfsausweisWohnenClient = {};
<A1AllgemeineAnlagenbeschreibung></A1AllgemeineAnlagenbeschreibung> <A1AllgemeineAnlagenbeschreibung></A1AllgemeineAnlagenbeschreibung>
<A2WaermequellenSolareEinstrahlungWintergarten client:load></A2WaermequellenSolareEinstrahlungWintergarten> <A2WaermequellenSolareEinstrahlungWintergarten></A2WaermequellenSolareEinstrahlungWintergarten>
<A5WaermeTransferMaxStroemeBauteile {ausweis} {gebaeude_aufnahme} client:load></A5WaermeTransferMaxStroemeBauteile> <A5WaermeTransferMaxStroemeBauteile {ausweis} {gebaeude_aufnahme} client:load></A5WaermeTransferMaxStroemeBauteile>
<A6WaermeTransferMaxStroemeGesamt {ausweis} {gebaeude_aufnahme} client:load></A6WaermeTransferMaxStroemeGesamt> <A6WaermeTransferMaxStroemeGesamt {ausweis} {gebaeude_aufnahme} client:load></A6WaermeTransferMaxStroemeGesamt>
<A7WaermequellenSolareEinstrahlung client:load></A7WaermequellenSolareEinstrahlung> <A7WaermequellenSolareEinstrahlung></A7WaermequellenSolareEinstrahlung>
<A8WaermequellenAnlagentechnikHeizung client:load></A8WaermequellenAnlagentechnikHeizung> <A8WaermequellenAnlagentechnikHeizung></A8WaermequellenAnlagentechnikHeizung>
<A9Trinkwassererwaermung {ausweis} {gebaeude_aufnahme} client:load></A9Trinkwassererwaermung> <A9NutzenergiebedarfTrinkwarmwasser {ausweis} {gebaeude_aufnahme}></A9NutzenergiebedarfTrinkwarmwasser>
<A10WaermequellenAnlagentechnikTrinkwarmwasser client:load></A10WaermequellenAnlagentechnikTrinkwarmwasser> <A10WaermequellenAnlagentechnikTrinkwarmwasser client:load></A10WaermequellenAnlagentechnikTrinkwarmwasser>
<A11WaermequellenZusammenstellung client:load></A11WaermequellenZusammenstellung> <A11WaermequellenZusammenstellung></A11WaermequellenZusammenstellung>
<A12NutzenergiebedarfHeizung {ausweis} {gebaeude_aufnahme} client:load></A12NutzenergiebedarfHeizung> <A12NutzenergiebedarfHeizung {ausweis} {gebaeude_aufnahme}></A12NutzenergiebedarfHeizung>
<A13RechnerischeLaufzeitHeizung></A13RechnerischeLaufzeitHeizung> <A13RechnerischeLaufzeitHeizung></A13RechnerischeLaufzeitHeizung>