Merge pull request #249 from IBCornelsen/Jens

Tooltips Verbrauchsausweis, Formularfelder getauscht,  Funktion Belastungsgrad
This commit is contained in:
Jens Cornelsen
2024-12-22 03:38:23 +01:00
committed by GitHub
10 changed files with 1207 additions and 102 deletions

View File

@@ -54,7 +54,9 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
</select>
<div class="help-label">
<HelpLabel>Bitte wählen Sie den Anlass.</HelpLabel>
<HelpLabel>Bitte wählen Sie aus wofür Sie den Energieausweis benötigen.
<strong>Vermietung, Verkauf oder sonstiges (z.B. zur Vorlage bei der Bank) ist als Anlass für den Verbrauchsausweis zulässig.</strong>
Neubau oder Modernisierung ist Sie hier nicht zulässig.</HelpLabel>
</div>
</div>
@@ -89,7 +91,8 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
</select>
<div class="help-label">
<HelpLabel>Bitte wählen Sie hier den Gebäudetyp aus.</HelpLabel>
<HelpLabel><strong>Der Energieausweis bezieht sich immer auf das gesamte Gebäude</strong> oder den gesamten Wohnteil eines Mischgebäudes.
Für einzelne Wohnungen kann kein Energieausweis ausgestellt werden.</HelpLabel>
</div>
</div>
@@ -136,10 +139,8 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
<div class="help-label">
<HelpLabel>
Bitte geben Sie an ob das Gebäude energetisch saniert oder
unsaniert ist. Wenn das Dach mindestens 12 cm gedämmt und
Heizung sowie Fenster nicht älter als 30 Jahre sind, können Sie
saniert auswählen.
Es geht um den <b>Mindeststandard der Wärmeschutzverordnung von Nov 1977.</b> Wenn das Dach mindestens 12 cm gedämmt und
Heizung sowie Fenster nicht älter als 30 Jahre sind, können Sie saniert auswählen.
</HelpLabel>
</div>
</div>
@@ -152,8 +153,9 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
<TagInput
name="baujahr_gebaeude"
type="number"
minlength={4}
maxlength={4}
onlyUnique={true}
minChars={4}
onFocusIn={() => {
addNotification({
message: "Info",
@@ -176,10 +178,7 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
<div class="help-label">
<HelpLabel>
Bitte geben Sie hier das Baujahr des Gebäudes ein. Sollte eine
eine grundlegende Sanierung von Dach, Fenster und Heizung
stattgefunden haben, dann berücksichtigen Sie das in dem Sie bei
Sanierungsstatus -saniert- angeben.
Bitte geben Sie hier das Baujahr des Gebäudes ein. Sollte eine grundlegende Sanierung stattgefunden haben, dann geben Sie das Sanierungsjahr ebenfalls an.
</HelpLabel>
</div>
</div>
@@ -193,12 +192,13 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
name="baujahr_heizung"
type="number"
onlyUnique={true}
minChars={4}
minlength={4}
maxlength={4}
onFocusIn={() => {
addNotification({
message: "Info",
subtext:
"Wussten sie, dass sie mehrere Jahre angeben können in denen z.B. Renovierungen an ihrer Heizung durchgeführt wurden. Drücken sie dafür einfach <kbd>Enter</kbd> oder <kbd>Space</kbd> nach jedem Jahr.",
"Wussten sie, dass sie weitere Jahre angeben können? Z.B. das Baujahr der Erneuerung wesentlicher Komponenten ihrer Heizung. Drücken sie dafür einfach <kbd>Enter</kbd> oder <kbd>Space</kbd> nach jedem Jahr.",
dismissable: true,
uid: "HEIZUNG_BAUJAHR",
timeout: 0,
@@ -217,8 +217,7 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
<div class="help-label">
<HelpLabel>
Bitte geben Sie hier das Baujahr der Heizungsanlage ein. Sollten
unterschiedliche Baujahre vorliegen, dann geben Sie einen
Zeitbereich ein <br />z.B. 1994-2001.
unterschiedliche Baujahre vorliegen, können Sie mehrere Jahre eingeben.
</HelpLabel>
</div>
</div>

View File

@@ -34,7 +34,7 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
<div class="help-label">
<HelpLabel>
Bitte geben Sie hier die Straße und Hausnummer des Gebäudes ein.
Straße und Hausnummer des betrachteten Gebäudes. Die Angaen werden auf dem Energieausweis vermerkt.
</HelpLabel>
</div>
</div>
@@ -67,7 +67,8 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
<div class="help-label">
<HelpLabel>
Geben Sie die PLZ ein, der Ort des Gebäudes wird automatisch eingetragen.
Bitte geben Sie die PLZ des betrachteten Gebäudes ein, der Ort wird dann angezeigt und kann ausgewählt werden.
Die Angaen werden auf dem Energieausweis vermerkt.
</HelpLabel>
</div>
</div>
@@ -101,30 +102,6 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
</div>
</div>
<!-- Keller * -->
<div class="input-standard order-4 md:order-2 xl:order-4">
<Inputlabel title="Keller *"></Inputlabel>
<select
name="keller"
data-test="keller"
required
bind:value={gebaeude_aufnahme_allgemein.keller}
>
<option disabled selected value={false}>Bitte auswählen</option>
<option value={Enums.Heizungsstatus.NICHT_VORHANDEN}>nicht vorhanden</option>
<option value={Enums.Heizungsstatus.UNBEHEIZT}>unbeheizt</option>
<option value={Enums.Heizungsstatus.BEHEIZT}>beheizt</option>
</select>
<div class="help-label">
<HelpLabel>
TEXT FEHLT
</HelpLabel>
</div>
</div>
<!-- Dachgeschoss *-->
<div class="input-standard order-4 md:order-2 xl:order-4">
@@ -144,7 +121,35 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
<div class="help-label">
<HelpLabel>
TEXT FEHLT
Bei Obergeschoss mit vorhandenen Dachschrägen oder ausgebautem Dachgeschoss beheizt auswählen.
Bei Kaltdächern oder unausgebautem Dachgeschoss bitte unbeheizt auswählen. Bei Flachdächern wird nicht vorhanden ausgewählt.
</HelpLabel>
</div>
</div>
<!-- Keller * -->
<div class="input-standard order-4 md:order-2 xl:order-4">
<Inputlabel title="Keller *"></Inputlabel>
<select
name="keller"
data-test="keller"
required
bind:value={gebaeude_aufnahme_allgemein.keller}
>
<option disabled selected value={false}>Bitte auswählen</option>
<option value={Enums.Heizungsstatus.NICHT_VORHANDEN}>nicht vorhanden</option>
<option value={Enums.Heizungsstatus.UNBEHEIZT}>unbeheizt</option>
<option value={Enums.Heizungsstatus.BEHEIZT}>beheizt</option>
</select>
<div class="help-label">
<HelpLabel>
Diese Angabe hat folgenden Einfluss.<br>
<b>Keller beheizt:<br>Nutzfläche = Wohnfläche x 1,35.</b>
<b>Keller unbeheizt:<br>Nutzfläche = Wohnfläche x 1,2.</b>
Dies ist nur zulässig wenn die Nutzfläche unbekannt ist. Geben Sie diese daher unbedingt im nächsten Feld ein wenn bekannt.
</HelpLabel>
</div>
</div>
@@ -152,7 +157,7 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
<!-- Gesamtfläche * -->
<div class="input-standard order-6 md:order-6 xl:order-6">
<Inputlabel title="Gesamtfläche m² *"></Inputlabel>
<Inputlabel title="Nutzfläche m² *"></Inputlabel>
<input
name="nutzflaeche"
@@ -171,8 +176,8 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
Bitte geben Sie hier die beheizte Gesamtfläche in m² ein
(wenn bekannt). Dabei handelt es sich um die Wohnfläche +
weiterer Flächen innerhalb des Gebäudes (z.B. Fläche des
beheizten Kellers). Diese Fläche wird dann im Energieausweis
als energetische Nutzfläche (An) ausgewiesen.
beheizten Kellers). <b>Diese Fläche wird dann im Energieausweis
als energetische Nutzfläche (An) ausgewiesen.</b>
</HelpLabel>
</div>
</div>

View File

@@ -65,8 +65,8 @@
fuelMap[fuel[0]].push(fuel[1]);
}
let month = ausweis.startdatum?.getMonth() || null;
let year = ausweis.startdatum?.getFullYear() || null;
let month = ausweis.startdatum?.getMonth();
let year = ausweis.startdatum?.getFullYear();
$: {
if (typeof month === "number" && typeof year === "number") {
@@ -158,11 +158,11 @@ xl:grid-cols-3 xl:gap-x-8 xl:gap-y-8
{#each Array.from(availableDates.reduce((a, c) => {
a.add(c.month);
return a;
}, new Set())) as month}
}, new Set())) as availableMonth}
<option
value={month}
selected={ausweis.startdatum?.getMonth() === month}
>{monthNames[month]}</option
value={availableMonth}
selected={month === availableMonth}
>{monthNames[availableMonth]}</option
>
{/each}
{/if}

View File

@@ -12,7 +12,8 @@
export let splitWith: string = ",";
export let name: string = "";
export let disable: boolean = false;
export let minChars: number = 0;
export let minlength: number = 0;
export let maxlength: number = Infinity;
export let readonly: boolean = false;
export let onTagClick: Function = ()=>{};
export let onFocusIn: () => any = () => {};
@@ -25,7 +26,7 @@
return;
}
if (minChars > tag.toString().length) {
if (minlength > tag.toString().length || tag.toString().length > maxlength) {
return;
}
@@ -50,15 +51,14 @@
</script>
<div
class="flex flex-row gap-1 h-10 p-0"
class="flex flex-row h-10 p-0"
>
{#if tags.length > 0}
{#each tags as tag, i}
<button class="rounded-lg bg-white px-1.5 border border-gray-300 flex flex-row items-center justify-between gap-2" type="button" on:click={onTagClick(tag)}>
<button class="bg-white px-1.5 border border-gray-300 flex flex-row items-center justify-between gap-2" type="button" on:click={onTagClick(tag)}>
{tag}
{#if !disable && !readonly}
<span
class="svelte-tags-input-tag-remove"
on:pointerdown={() => removeTag(i)}
>
&#215;</span
@@ -75,12 +75,14 @@
on:focusin={onFocusIn}
on:focusout={onFocusOut}
on:blur={() => {
if (tag.toString().length >= minChars) {
if (tag.toString().length >= minlength && tag.toString().length < maxlength) {
addTag(tag)
tag = ""
}
}}
class="input input-bordered h-10 px-2 py-1.5 {className}"
{minlength}
{maxlength}
disabled={disable}
readonly={readonly}
autocomplete="off"

View File

@@ -0,0 +1,16 @@
<script lang="js">
import { onMount } from "svelte";
export let formula = '';
// Aktualisiere MathJax nach der Komponente-Mount
onMount(() => {
if (window.MathJax) {
MathJax.typesetPromise();
}
});
</script>
<div>
{@html formula}
</div>

View File

@@ -0,0 +1,34 @@
// Funktion zur Berechnung des monatlichen Belastungsgrades aus Tabelle 17,8, (Januar, Zeitkonstante 90)
function monatlicherBelastungsGradT90(
wertZwei: number,
wertEins: number,
maxHeizlast: number,
maxHeizlastEins: number,
maxHeizlastZwei: number
): number {
return (
wertZwei -
((wertZwei - wertEins) * (maxHeizlast - maxHeizlastEins)) /
(maxHeizlastZwei - maxHeizlastEins)
);
}
// Beispielwerte
const wertZwei = 0.541;
const wertEins = 0.548;
const maxHeizlast = 37.86;
const maxHeizlastEins = 25;
const maxHeizlastZwei = 50;
// Berechnung
const monatlicherBelastungsgradT90 = monatlicherBelastungsGradT90(
wertZwei,
wertEins,
maxHeizlast,
maxHeizlastEins,
maxHeizlastZwei
);
console.log("Monatlicher Belastungsgrad T90:", monatlicherBelastungsgradT90);

View File

@@ -68,54 +68,37 @@
loginOverlayHidden = true;
if (ausweis.uid) {
// Anscheinend wurde der Ausweis bereits erstellt und hat eine UID.
// Jetzt müssen wir ihn nun nur noch abspeichern.
try {
await client.v1.verbrauchsausweisWohnen[2016].speichern.mutate({
// Wir speichern den Ausweis ab und leiten auf die "ausweis-gespeichert" Seite weiter.
try {
const response = await verbrauchsausweisWohnenSpeichern(ausweis,
gebaeude,
gebaeude_aufnahme_allgemein,
images,
user)
if (response !== null) {
await bilderHochladen();
// Falls der Nutzer zurück navigiert, sollte er wieder auf seinen Vorgang kommen.
// Sonst müsste er alles neu eingeben...
ausweis.uid = response.uid;
gebaeude.uid = response.gebaeude_uid;
gebaeude_aufnahme_allgemein.uid = response.gebaeude_aufnahme_uid;
return true
}
return false;
} catch (e: any) {
await client.v1.tickets.erstellen.mutate({
titel: "Ausweis konnte nicht gespeichert werden",
beschreibung: e.stack,
email: user.email ?? "",
metadata: JSON.stringify({
ausweis,
gebaeude
})
await bilderHochladen();
return true;
} catch (e) {
// TODO: Ticket mit Fehldermeldung abschicken.
}
} else {
// Wir speichern den Ausweis ab und leiten auf die "ausweis-gespeichert" Seite weiter.
try {
const response = await verbrauchsausweisWohnenSpeichern(ausweis,
gebaeude,
gebaeude_aufnahme_allgemein,
images,
user)
if (response !== null) {
await bilderHochladen();
// Falls der Nutzer zurück navigiert, sollte er wieder auf seinen Vorgang kommen.
// Sonst müsste er alles neu eingeben...
ausweis.uid = response.uid;
gebaeude.uid = response.gebaeude_uid;
gebaeude_aufnahme_allgemein.uid = response.gebaeude_aufnahme_uid;
return true
}
return false;
} catch (e: any) {
await client.v1.tickets.erstellen.mutate({
titel: "Ausweis konnte nicht gespeichert werden",
beschreibung: e.stack,
email: user.email ?? "",
metadata: JSON.stringify({
ausweis,
gebaeude
})
})
// TODO: Ticket mit Fehldermeldung abschicken.
}
})
// TODO: Ticket mit Fehldermeldung abschicken.
}
addNotification({

View File

@@ -0,0 +1,698 @@
---
import Layout from "#layouts/Layout.astro";
---
<Layout title="Tabelle A7">
<h1>Tabellen A1 - A18</h1>
<div class="overflow-x-auto mt-8">
<table class="table-auto border-collapse border border-gray-300 w-full text-sm">
<!-- Tabellenkopf -->
<thead>
<tr class="bg-gray-200 text-left">
<th colspan="6" class="border border-gray-300 p-2 text-xl">
Tabelle A.6 Gebäude Berechnung Wärmetransferkoeffizienten und maximaler Wärmeströme
</th>
</tr>
<tr class="bg-gray-200 text-left">
<th colspan="6" class="border border-gray-300 p-2 text-xl">
Wärmesenken
</th>
</tr>
<tr class="text-center">
<th class="border border-gray-300 p-2">Bauteil</th>
<th class="border border-gray-300 p-2">
Luftwechsel <br> n <br> aus Gleichung (33) <br> 1/h
</th>
<th class="border border-gray-300 p-2">
Volumen <br> V <br> aus Tabelle A.5 <br> m³
</th>
<th class="border border-gray-300 p-2">
Wärmekapazität <br> c · ρ <br> Wh/(m³·K)
</th>
<th class="border border-gray-300 p-2">
H<sub>V,ges</sub> = n · c · ρ · V <br> W/K
</th>
<th class="border border-gray-300 p-2">
maximaler Wärmestrom <br> Q̇<sub>V</sub> = H<sub>V,ges</sub> · ΔΘ<sub>max</sub> <br> W
</th>
</tr>
</thead>
<!-- Tabellenkörper -->
<tbody>
<!-- Zeile für Lüftung -->
<tr>
<td class="border border-gray-300 p-2 text-center">Lüftung</td>
<td class="border border-gray-300 p-2 bg-blue-100 text-center"></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-gray-200">0,34</td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<!-- Summenzeile -->
<tr class="">
<td class="border border-gray-300 p-2 font-bold text-center">Summen</td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
</tbody>
</table>
<br>
<table class="table-auto border-collapse border border-gray-300 w-full text-sm">
<!-- Tabellenkopf -->
<thead>
<tr class="bg-gray-200 text-center">
<th colspan="3" class="border border-gray-300 p-2">
Gesamter Wärmetransferkoeffizient
</th>
</tr>
<tr class="bg-gray-200 text-center">
<th colspan="3" class="border border-gray-300 p-2">
Wärmetransferkoeffizient H<sub>ges</sub> in W/K und maximaler Wärmestrom Q̇<sub>ges</sub> in W
</th>
</tr>
</thead>
<!-- Tabellenkörper -->
<tbody>
<tr>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center">H<sub>ges</sub> = H<sub>T,ges</sub> + H<sub>V,ges</sub></td>
<td class="border border-gray-300 p-2 text-center">Q̇<sub>ges</sub> = H<sub>ges</sub> · ΔΘ<sub>max</sub></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 font-bold text-center">Gesamtsummen</td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
</tbody>
</table>
<br>
<table class="table-auto border-collapse border border-gray-300 w-full text-sm">
<!-- Tabellenkopf -->
<thead>
<tr class="bg-gray-200 text-center">
<th colspan="3" class="border border-gray-300 p-2">Maximale Heizlast</th>
</tr>
<tr class="bg-gray-200 text-center">
<th class="border border-gray-300 p-2">Beschreibung</th>
<th colspan="2" class="border border-gray-300 p-2">Werte</th>
</tr>
</thead>
<!-- Tabellenkörper -->
<tbody>
<tr>
<td class="border border-gray-300 p-4">
<strong>Ohne mechanische Lüftung:</strong><br>
H<sup>*</sup><sub>ges</sub> = H<sub>T,ges</sub> + 0,5 · H<sub>V,ges</sub><br>
Φ<sub>h,max</sub> = H<sup>*</sup><sub>ges</sub> · ΔΘ<sub>max</sub> <br>
= (H<sub>T,ges</sub> + 0,5 · H<sub>V,ges</sub>) · ΔΘ<sub>max</sub>
</td>
<td colspan="2" class="border border-gray-300 p-4 text-center">Φ<sub>h,max</sub> (W)</td>
</tr>
<tr>
<td class="border border-gray-300 p-4">
<strong>Mit mechanischer Lüftung:</strong><br>
H<sup>*</sup><sub>ges</sub> = H<sub>T,ges</sub> + H<sub>V,ges</sub> - 0,5 · V · c · ρ · (n<sub>WRG=0%</sub> - n<sub>Anl</sub>)<br>
Φ<sub>h,max</sub> = H<sup>*</sup><sub>ges</sub> · ΔΘ<sub>max</sub><br>
= (H<sub>T,ges</sub> + H<sub>V,ges</sub> - 0,5 · V · c · ρ · (n<sub>WRG=0%</sub> - n<sub>Anl</sub>)) · ΔΘ<sub>max</sub>
</td>
<td colspan="2" class="border border-gray-300 p-4 text-center">Φ<sub>h,max</sub> (W)</td>
</tr>
<tr>
<td class="border border-gray-300 p-4 text-center font-bold w-1/3">Flächenbezogene Heizlast</td>
<td class="border border-gray-300 p-4 text-center w-1/3"> φ<sub>h,max</sub> = Φ<sub>h,max</sub> / A<sub>NGF</sub> (W/m²)</td>
<td class="border border-gray-300 p-4 text-center w-1/3"></td>
</tr>
</tbody>
</table>
<br>
<table class="table-auto border-collapse border border-gray-300 w-full text-sm">
<!-- Tabellenkopf -->
<thead>
<tr class="bg-gray-200 text-center">
<th colspan="3" class="border border-gray-300 p-2">Zeitkonstante des Gebäudes</th>
</tr>
<tr class="text-center">
<th class="border border-gray-300 p-2 bg-gray-200">Gebäudeschwere</th>
<th class="border border-gray-300 p-2">C<sub>wirk</sub> <br> Wh/(m²·K)</th>
<th class="border border-gray-300 p-2">τ <br> C<sub>wirk</sub> · A<sub>NGF</sub> / H<sub>ges</sub> <br> h</th>
</tr>
</thead>
<!-- Tabellenkörper -->
<tbody>
<tr>
<td class="border border-gray-300 p-2 text-center">leicht</td>
<td class="border border-gray-300 p-2 text-center">50</td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">mittelschwer</td>
<td class="border border-gray-300 p-2 text-center">90</td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">schwer</td>
<td class="border border-gray-300 p-2 text-center">130</td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
</tbody>
</table>
</div>
<br>
<div class="flex flex-row items-start p-4">
<div class="mr-8">
<p class="text-2xl font-semibold">
</p>
</div>
<div>
<p class="text-lg font-semibold text-left">
</p>
</div>
</div>
<div class="overflow-x-auto mt-8">
<table class="table-auto border-collapse border border-gray-300 w-full text-sm">
<!-- Tabelle Kopf -->
<thead>
<tr class="bg-gray-200 text-left">
<th colspan="13" class="border border-gray-300 p-2 text-xl">
Tabelle A.7 — Gebäude Berechnung Wärmequellen durch solare Einstrahlung
</th>
</tr>
<tr class="bg-gray-200 text-left">
<th colspan="13" class="border border-gray-300 p-2 text-xl">
Solare Einstrahlung für transparente Flächen
</th>
</tr>
<tr class="text-center">
<th class="border border-gray-300 p-2">Monat</th>
<th class="border border-gray-300 p-2">E<sub>sol</sub> aus Tabelle 17 kWh/m² (7)</th>
<th class="border border-gray-300 p-2">Q<sub>str</sub> kWh (8)</th>
<th class="border border-gray-300 p-2">E<sub>sol</sub> aus Tabelle 17 kWh/m² (9)</th>
<th class="border border-gray-300 p-2">Q<sub>str</sub> kWh (10)</th>
<th class="border border-gray-300 p-2">E<sub>sol</sub> aus Tabelle 17 kWh/m² (11)</th>
<th class="border border-gray-300 p-2">Q<sub>str</sub> kWh (12)</th>
<th class="border border-gray-300 p-2">E<sub>sol</sub> aus Tabelle 17 kWh/m² (13)</th>
<th class="border border-gray-300 p-2">Q<sub>str</sub> kWh (14)</th>
<th class="border border-gray-300 p-2">E<sub>sol</sub> aus Tabelle 17 kWh/m² (15)</th>
<th class="border border-gray-300 p-2">Q<sub>str</sub> kWh (16)</th>
<th class="border border-gray-300 p-2">ΣQ<sub>str</sub> kWh (17)</th>
</tr>
</thead>
<!-- Tabelle Körper -->
<tbody>
<!-- Monatsdaten -->
<tr>
<td class="border border-gray-300 p-2 text-center">Januar</td>
<td class="border border-gray-300 p-2b bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Februar</td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">März</td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">April</td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Mai</td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Juni</td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Juli</td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">August</td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">September</td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Oktober</td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">November</td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Dezember</td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2 bg-blue-100"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 font-bold text-center">Jahressumme</td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
<td class="border border-gray-300 p-2"></td>
</tr>
</tbody>
</table>
</div>
<div class="flex flex-row items-start p-4 bg-gray-100">
<div class="mr-8">
<p class="text-2xl font-semibold">
<span>Q<sub>str</sub></span> =
<span>A</span> &middot;
<span>F<sub>F</sub></span> &middot;
<span>g<sub>eff</sub></span> &middot;
<span>E<sub>sol</sub></span>
</p>
</div>
<div>
<p class="text-lg font-semibold text-left">
<span>A: Fensterfläche</span><br>
<span>F<sub>F</sub>: Rahmenanteil (Standard 0,7)</span><br>
<span>g<sub>eff</sub>: Gesamtenergiedurchlassgrad g<sub>eff</sub>: g &middot; Fw &middot; Fs</span><br>
<span>g: Energiedurchlassgrad (aus Planung Fenster, Standard 0,75)</span><br>
<span>F<sub>W</sub>: Strahlungseinfluss (Standard 0,9)</span><br>
<span>F<sub>S</sub>: Verschattung (Standard 0,9)</span>
</p>
</div>
</div>
<div class="overflow-x-auto mt-16">
<table class="table-auto border-collapse border border-gray-300 w-full text-sm">
<!-- Tabellenkopf -->
<thead>
<tr class="bg-gray-200 text-left">
<th colspan="8" class="border border-gray-300 p-2 text-xl">
Tabelle A.8 — Heizung Berechnung der monatlichen Wärmequellen aus Anlagentechnik Heizung
</th>
</tr>
<tr class="text-center">
<th class="border border-gray-300 p-2">Monat</th>
<th class="border border-gray-300 p-2">Tage im Monat <br> d<sub>mth</sub> (1)</th>
<th class="border border-gray-300 p-2">P<sub>h,sink</sub> <br> aus Tabelle A.12 <br> W (2)</th>
<th class="border border-gray-300 p-2">(Q<sub>l</sub> + 0,5 · Q<sub>str</sub>) · f<sub>um</sub> <br> Werte zur Berechnung aus Tabelle A.11 <br> W (3)</th>
<th class="border border-gray-300 p-2">P<sup>*</sup><sub>h,sink</sub> <br> W (4)</th>
<th class="border border-gray-300 p-2">Mittlere Belastung <br> β<sub>e,m</sub> / β<sub>e,max</sub> <br> aus Tabelle 9 / Tabelle 11 (5)</th>
<th class="border border-gray-300 p-2">f<sub>a-h</sub> <br> aus Tabelle 141 (6)</th>
<th class="border border-gray-300 p-2">Wärmequellen Anlagentechnik Q<sub>l,source,h</sub> <br> kWh (7)</th>
</tr>
</thead>
<!-- Tabellenkörper -->
<tbody>
<!-- Monatszeilen -->
<tr>
<td class="border border-gray-300 p-2 text-center">Januar</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Februar</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">März</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">April</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Mai</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Juni</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Juli</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">August</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">September</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Oktober</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">November</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<tr>
<td class="border border-gray-300 p-2 text-center">Dezember</td>
<td class="border border-gray-300 p-2 text-center">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"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center bg-blue-100"></td>
<td class="border border-gray-300 p-2 text-center"></td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<!-- Zusatzzeile -->
<tr>
<td colspan="6" class="border border-gray-300 p-2 text-left font-bold">
f<sub>um</sub> = 1000 / (24 · d<sub>mth</sub>)
</td>
<td colspan="1" class="border border-gray-300 p-2 text-center font-bold">
β<sub>e,max</sub> = max[(5)]
</td>
<td colspan="1" class="border border-gray-300 p-2 text-center font-bold"></td>
</tr>
</tbody>
</table>
</div>
<div class="overflow-x-auto mt-16">
<table class="table-auto border-collapse border border-gray-300 w-full text-sm">
<!-- Tabellenkopf -->
<thead>
<tr class="bg-gray-200 text-left text-xl">
<th colspan="3" class="border border-gray-300 p-2">
Tabelle A.9 Trinkwassererwärmung Berechnung des Wärmebedarfs zur Trinkwassererwärmung
</th>
</tr>
<tr class="text-center">
<th class="w-1/4 border border-gray-300 p-2">Bezugsfläche <br> A<sub>NGF</sub> <br> m² (1)</th>
<th class="w-1/4 border border-gray-300 p-2">Flächenbezogener Wärmebedarf <br> q<sub>w,b</sub> <br> kWh/(m²·a) (2)</th>
<th class="border border-gray-300 p-2">Trinkwasserwärmebedarf <br> Q<sub>w,b</sub> <br> kWh (4)</th>
</tr>
<tr class="text-center h-10">
<th class="w-1/4 border border-gray-300 p-2 bg-blue-100"></th>
<th class="w-1/4 border border-gray-300 p-2 bg-yellow-100"></th>
</tr>
<tr class="text-center">
<th class="w-1/4 border border-gray-300 p-2">Monat</th>
<th class="w-1/4 border border-gray-300 p-2">Tage im Monat (3)</th>
</tr>
</thead>
<!-- Tabellenkörper -->
<tbody>
<!-- Monatszeilen -->
<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">31</td>
<td class="border border-gray-300 p-2 text-center"></td>
</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">28</td>
<td class="border border-gray-300 p-2 text-center"></td>
</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">31</td>
<td class="border border-gray-300 p-2 text-center"></td>
</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">30</td>
<td class="border border-gray-300 p-2 text-center"></td>
</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">31</td>
<td class="border border-gray-300 p-2 text-center"></td>
</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">30</td>
<td class="border border-gray-300 p-2 text-center"></td>
</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">31</td>
<td class="border border-gray-300 p-2 text-center"></td>
</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">31</td>
<td class="border border-gray-300 p-2 text-center"></td>
</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">30</td>
<td class="border border-gray-300 p-2 text-center"></td>
</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">31</td>
<td class="border border-gray-300 p-2 text-center"></td>
</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">30</td>
<td class="border border-gray-300 p-2 text-center"></td>
</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">31</td>
<td class="border border-gray-300 p-2 text-center"></td>
</tr>
<!-- Summenzeile -->
<tr>
<td colspan="1" class="border border-gray-300 p-2 text-center font-bold">
</td>
<td colspan="1" class="border border-gray-300 p-2 text-center font-bold">
Jahressumme Q<sub>w,b</sub> kWh/a
</td>
<td colspan="1" class="border border-gray-300 p-2 text-center font-bold">
</td>
</tr>
<!-- Fußzeile -->
<tr>
<td colspan="3" class="border border-gray-300 p-2 text-left text-xs">
(2) Mit dem tatsächlichen Nutzwärmebedarf Trinkwarmwasser q<sub>w,b</sub> nach Tabelle 19.
</td>
</tr>
</tbody>
</table>
</div>
</Layout>

View File

@@ -6,6 +6,7 @@ import Layout from "#layouts/Layout.astro";
<Layout title="GEG 2024">
<h1>GEG 2024 - Formelsammlung</h1>
<div class="container mx-auto max-w-screen-md py-8">
@@ -115,4 +116,68 @@ import Layout from "#layouts/Layout.astro";
</section>
</div>
<div class="formula-container">
<h1>Monatlicher Belastungsgrad T90</h1>
<p>Die folgende Formel berechnet den monatlichen Belastungsgrad aus Tabelle 17 (Zeitkonstante 90):</p>
<div class="formula">
<div>
<span>monatlicherBelastungsgradT90</span> = <span>wertZwei</span> -
</div>
<div class="fraction">
<span class="numerator">
(<span>wertZwei</span> - <span>wertEins</span>) &times; (<span>maxHeizlast</span> - <span>maxHeizlastEins</span>)
</span>
<span class="denominator">
<span>maxHeizlastZwei</span> - <span>maxHeizlastEins</span>
</span>
</div>
</div>
</div>
<style>
.formula-container {
background: #fff;
padding: 20px;
border: 1px solid #ddd;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
max-width: 800px;
margin: 20px auto;
font-family: Arial, sans-serif;
line-height: 1.6;
}
h1 {
text-align: center;
color: #333;
}
.formula {
font-size: 1.2rem;
line-height: 2rem;
margin-top: 20px;
}
.fraction {
display: inline-block;
text-align: center;
vertical-align: middle;
}
.fraction .numerator {
border-bottom: 1px solid #000;
display: block;
padding-bottom: 5px;
margin-bottom: 5px;
}
.fraction .denominator {
display: block;
}
span {
font-family: "Courier New", Courier, monospace;
}
</style>
</Layout>

View File

@@ -0,0 +1,303 @@
---
import Layout from "#layouts/Layout.astro";
import symboleEinheiten from "#components/symboleEinheiten.svelte";
---
<script type="text/javascript" id="MathJax-script" async
src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js">
</script>
<Layout title="GEG 2024">
<h1>DIN 18599 - Symbole und Einheiten</h1>
<div class="overflow-x-auto p-8">
<table class="min-w-full border-collapse border border-gray-300">
<thead class="bg-gray-100">
<tr>
<th class="border border-gray-300 px-4 py-2 text-left">Symbol</th>
<th class="border border-gray-300 px-4 py-2 text-left">Deutsch</th>
<th class="border border-gray-300 px-4 py-2 text-left">Englisch</th>
<th class="border border-gray-300 px-4 py-2 text-left">Einheit</th>
</tr>
</thead>
<tbody>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\eta\)</td>
<td class="border border-gray-300 px-4 py-2">Nutzungsgrad, Effizienz, Ausnutzung</td>
<td class="border border-gray-300 px-4 py-2">Performance ratio, efficiency, utilisation factor</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\beta\)</td>
<td class="border border-gray-300 px-4 py-2">Belastungsgrad</td>
<td class="border border-gray-300 px-4 py-2">Load level, load factor</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">Q˙</td>
<td class="border border-gray-300 px-4 py-2">Wärmeleistung</td>
<td class="border border-gray-300 px-4 py-2">Heating power</td>
<td class="border border-gray-300 px-4 py-2">W, kW</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">𝑉˙</td>
<td class="border border-gray-300 px-4 py-2">Volumenstrom</td>
<td class="border border-gray-300 px-4 py-2">flow rate</td>
<td class="border border-gray-300 px-4 py-2">m<sup>3</sup>/h</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">𝑞˙</td>
<td class="border border-gray-300 px-4 py-2">spezifische Wärmeleistung</td>
<td class="border border-gray-300 px-4 py-2">specific heating power</td>
<td class="border border-gray-300 px-4 py-2">W/m<sup>2</sup></td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\theta\)‾</td>
<td class="border border-gray-300 px-4 py-2">Mittlere Temperatur</td>
<td class="border border-gray-300 px-4 py-2">mean temperature</td>
<td class="border border-gray-300 px-4 py-2">&deg;C</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">A</td>
<td class="border border-gray-300 px-4 py-2">Fläche</td>
<td class="border border-gray-300 px-4 py-2">area</td>
<td class="border border-gray-300 px-4 py-2">m<sup>2</sup></td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">a</td>
<td class="border border-gray-300 px-4 py-2">Anteil</td>
<td class="border border-gray-300 px-4 py-2">fraction</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">b</td>
<td class="border border-gray-300 px-4 py-2">Überdimensionierungsfaktor der Pumpe</td>
<td class="border border-gray-300 px-4 py-2">Pump overdimensioning factor</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">c</td>
<td class="border border-gray-300 px-4 py-2">Koeffizient</td>
<td class="border border-gray-300 px-4 py-2">coefficient</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">C</td>
<td class="border border-gray-300 px-4 py-2">Konstante</td>
<td class="border border-gray-300 px-4 py-2">constant</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">c</td>
<td class="border border-gray-300 px-4 py-2">spezifische Wärmekapazität</td>
<td class="border border-gray-300 px-4 py-2">specific heat capacity</td>
<td class="border border-gray-300 px-4 py-2">kJ/(kg·K)</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">COP</td>
<td class="border border-gray-300 px-4 py-2">Leistungskennzahl</td>
<td class="border border-gray-300 px-4 py-2">coefficient of performance</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">d</td>
<td class="border border-gray-300 px-4 py-2">Zeit, Zeitspanne, Tage</td>
<td class="border border-gray-300 px-4 py-2">Time, time period, days</td>
<td class="border border-gray-300 px-4 py-2">d, d/a, d/mth</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">e</td>
<td class="border border-gray-300 px-4 py-2">Aufwandszahl</td>
<td class="border border-gray-300 px-4 py-2">expenditure factor</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">E</td>
<td class="border border-gray-300 px-4 py-2">monatliche solare Bestrahlungsenergie</td>
<td class="border border-gray-300 px-4 py-2">Monthly solar radiation energy</td>
<td class="border border-gray-300 px-4 py-2">kWh/(m<sup>2</sup>·mth)</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">EEI</td>
<td class="border border-gray-300 px-4 py-2">Energieeffizienzindex</td>
<td class="border border-gray-300 px-4 py-2">Energy efficiency index</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">F</td>
<td class="border border-gray-300 px-4 py-2">Faktor</td>
<td class="border border-gray-300 px-4 py-2">factor</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">FBH</td>
<td class="border border-gray-300 px-4 py-2">Fußbodenheizung</td>
<td class="border border-gray-300 px-4 py-2">underfloor heating</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">g</td>
<td class="border border-gray-300 px-4 py-2">Gesamtenergiedurchlassgrad bei senkrechtem Strahlungseinfall</td>
<td class="border border-gray-300 px-4 py-2">total energy transmittance for perpendicular incidence of solar radiation</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">H</td>
<td class="border border-gray-300 px-4 py-2">Wärmetransferkoeffizient, allgemein</td>
<td class="border border-gray-300 px-4 py-2">heat transfer coefficient, general</td>
<td class="border border-gray-300 px-4 py-2">W/K</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">h</td>
<td class="border border-gray-300 px-4 py-2">Höhe</td>
<td class="border border-gray-300 px-4 py-2">height</td>
<td class="border border-gray-300 px-4 py-2">m</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">HK</td>
<td class="border border-gray-300 px-4 py-2">Heizkörper</td>
<td class="border border-gray-300 px-4 py-2">radiator</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">L</td>
<td class="border border-gray-300 px-4 py-2">Länge</td>
<td class="border border-gray-300 px-4 py-2">length</td>
<td class="border border-gray-300 px-4 py-2">m</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">n</td>
<td class="border border-gray-300 px-4 py-2">Luftwechselrate</td>
<td class="border border-gray-300 px-4 py-2">air change rate</td>
<td class="border border-gray-300 px-4 py-2">h<sup>-1</sup></td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">P</td>
<td class="border border-gray-300 px-4 py-2">Leistung</td>
<td class="border border-gray-300 px-4 py-2">Performance, power</td>
<td class="border border-gray-300 px-4 py-2">W, kW</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">p</td>
<td class="border border-gray-300 px-4 py-2">Druck</td>
<td class="border border-gray-300 px-4 py-2">pressure</td>
<td class="border border-gray-300 px-4 py-2">kPa</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">Q</td>
<td class="border border-gray-300 px-4 py-2">Energie</td>
<td class="border border-gray-300 px-4 py-2">energy</td>
<td class="border border-gray-300 px-4 py-2">kWh</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">q</td>
<td class="border border-gray-300 px-4 py-2">spezifische Energie</td>
<td class="border border-gray-300 px-4 py-2">specific energy</td>
<td class="border border-gray-300 px-4 py-2">Wh/(m<sup>2</sup>·d), kWh/(m<sup>2</sup>·a)</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">t</td>
<td class="border border-gray-300 px-4 py-2">Zeit, Zeitspanne</td>
<td class="border border-gray-300 px-4 py-2">Time, time period, hours</td>
<td class="border border-gray-300 px-4 py-2">h, h/d, h/mth, h/a</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">U</td>
<td class="border border-gray-300 px-4 py-2">Wärmedurchgangskoeffizient</td>
<td class="border border-gray-300 px-4 py-2">thermal transmittance</td>
<td class="border border-gray-300 px-4 py-2">W/(m<sup>2</sup>·K)</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">V</td>
<td class="border border-gray-300 px-4 py-2">Volumen</td>
<td class="border border-gray-300 px-4 py-2">volume</td>
<td class="border border-gray-300 px-4 py-2">m<sup>3</sup></td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">W</td>
<td class="border border-gray-300 px-4 py-2">Hilfsenergie</td>
<td class="border border-gray-300 px-4 py-2">auxiliary energy</td>
<td class="border border-gray-300 px-4 py-2">kWh</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(z\)</td>
<td class="border border-gray-300 px-4 py-2">Tägliche Laufzeit der Zirkulationspumpe</td>
<td class="border border-gray-300 px-4 py-2">Daily running time of the circulation pump</td>
<td class="border border-gray-300 px-4 py-2">h/d</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\alpha\)</td>
<td class="border border-gray-300 px-4 py-2">Anteil</td>
<td class="border border-gray-300 px-4 py-2">fraction</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\gamma\)</td>
<td class="border border-gray-300 px-4 py-2">Wärmequellen-/Wärmesenken-Verhältnis</td>
<td class="border border-gray-300 px-4 py-2">heat-balance ratio, ratio of heat sources to heat sinks</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\Delta\)</td>
<td class="border border-gray-300 px-4 py-2">Differenz</td>
<td class="border border-gray-300 px-4 py-2">difference</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\theta\)</td>
<td class="border border-gray-300 px-4 py-2">Temperatur</td>
<td class="border border-gray-300 px-4 py-2">temperature</td>
<td class="border border-gray-300 px-4 py-2">°C</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\kappa\)</td>
<td class="border border-gray-300 px-4 py-2">Deckungsanteil</td>
<td class="border border-gray-300 px-4 py-2">Cover ratio</td>
<td class="border border-gray-300 px-4 py-2">%</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\sigma\)</td>
<td class="border border-gray-300 px-4 py-2">Stromkennzahl</td>
<td class="border border-gray-300 px-4 py-2">CHP code</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\Phi\)</td>
<td class="border border-gray-300 px-4 py-2">Wärmestrom</td>
<td class="border border-gray-300 px-4 py-2">energy flow rate, power, heat flow</td>
<td class="border border-gray-300 px-4 py-2">W</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(w\)</td>
<td class="border border-gray-300 px-4 py-2">Wichtungsfaktor</td>
<td class="border border-gray-300 px-4 py-2">weighting factor</td>
<td class="border border-gray-300 px-4 py-2">—</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\rho\)</td>
<td class="border border-gray-300 px-4 py-2">Dichte</td>
<td class="border border-gray-300 px-4 py-2">density</td>
<td class="border border-gray-300 px-4 py-2">kg/m<sup>3</sup></td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\tau\)</td>
<td class="border border-gray-300 px-4 py-2">Zeitkonstante (einer Gebäudezone)</td>
<td class="border border-gray-300 px-4 py-2">(thermal) time constant (of a building zone)</td>
<td class="border border-gray-300 px-4 py-2">h</td>
</tr>
<tr>
<td class="text-3xl border border-gray-300 px-4 py-2">\(\vartheta\)</td>
<td class="border border-gray-300 px-4 py-2">Temperatur</td>
<td class="border border-gray-300 px-4 py-2">temperature</td>
<td class="border border-gray-300 px-4 py-2">°C</td>
</tr>
</tbody>
</table>
</div>
</Layout>