diff --git a/src/components/Tabellen/A5WaermeTransferMaxStroemeBauteile.svelte b/src/components/Tabellen/A5WaermeTransferMaxStroemeBauteile.svelte index c7b34679..2b1907dd 100644 --- a/src/components/Tabellen/A5WaermeTransferMaxStroemeBauteile.svelte +++ b/src/components/Tabellen/A5WaermeTransferMaxStroemeBauteile.svelte @@ -88,135 +88,19 @@ maximaler Wärmestrom
T,i = HT,i · ΔΘmax
(W) - + {#each result.ErgebnisseBauteile as bauteil, index} - Außenwand West - {result.AussenWandFlaecheWest} - {result.WaermeDurchgangsKoeffizientAussenWandWest} - {Math.round(result.WaermeTransferKoeffizientAussenwandWest*100)/100} - {result.TemperaturKorrekturFaktorAussenwand} - {Math.round(result.WaermeTransferKoeffizientAussenwandWestKorrektur*100)/100} - {Math.round(result.maximalerWaermestromAussenwandWest)} - - - Außenwand Süd - {result.AussenWandFlaecheSued} - {result.WaermeDurchgangsKoeffizientAussenWandSued} - {Math.round(result.WaermeTransferKoeffizientAussenwandSued*100)/100} - {result.TemperaturKorrekturFaktorAussenwand} - {Math.round(result.WaermeTransferKoeffizientAussenwandSuedKorrektur*100)/100} - {Math.round(result.maximalerWaermestromAussenwandSued)} - - - Außenwand Nord - {result.AussenWandFlaecheNord} - {result.WaermeDurchgangsKoeffizientAussenWandNord} - {Math.round(result.WaermeTransferKoeffizientAussenwandNord*100)/100} - {result.TemperaturKorrekturFaktorAussenwand} - {Math.round(result.WaermeTransferKoeffizientAussenwandNordKorrektur*100)/100} - {Math.round(result.maximalerWaermestromAussenwandNord)} - - - Außenwand Ost - {result.AussenWandFlaecheOst} - {result.WaermeDurchgangsKoeffizientAussenWandOst} - {Math.round(result.WaermeTransferKoeffizientAussenwandOst*100)/100} - {result.TemperaturKorrekturFaktorAussenwand} - {Math.round(result.WaermeTransferKoeffizientAussenwandOstKorrektur*100)/100} - {Math.round(result.maximalerWaermestromAussenwandOst)} - - - Fenster West - {result.FensterFlaecheWest} - {result.WaermeDurchgangsKoeffizientFensterWest} - {Math.round(result.WaermeTransferKoeffizientFensterWest*100)/100} - {result.TemperaturKorrekturFaktorFenster} - {Math.round(result.WaermeTransferKoeffizientFensterWestKorrektur*100)/100} - {Math.round(result.maximalerWaermestromFensterWest)} - - - Fenster Süd - {result.FensterFlaecheSued} - {result.WaermeDurchgangsKoeffizientFensterSued} - {Math.round(result.WaermeTransferKoeffizientFensterSued*100)/100} - {result.TemperaturKorrekturFaktorFenster} - {Math.round(result.WaermeTransferKoeffizientFensterSuedKorrektur*100)/100} - {Math.round(result.maximalerWaermestromFensterSued)} - - - Fenster Nord - {result.FensterFlaecheNord} - {result.WaermeDurchgangsKoeffizientFensterNord} - {Math.round(result.WaermeTransferKoeffizientFensterNord*100)/100} - {result.TemperaturKorrekturFaktorFenster} - {Math.round(result.WaermeTransferKoeffizientFensterNordKorrektur*100)/100} - {Math.round(result.maximalerWaermestromFensterNord)} - - - Fenster Ost - {result.FensterFlaecheOst} - {result.WaermeDurchgangsKoeffizientFensterOst} - {Math.round(result.WaermeTransferKoeffizientFensterOst*100)/100} - {result.TemperaturKorrekturFaktorFenster} - {Math.round(result.WaermeTransferKoeffizientFensterOstKorrektur*100)/100} - {Math.round(result.maximalerWaermestromFensterOst)} - - - Fenstertür - - - - - - - - - Haustür - {result.HaustuerFlaeche} - {result.WaermeDurchgangsKoeffizientHaustuer} - {Math.round(result.WaermeTransferKoeffizientHaustuer*100)/100} - {result.TemperaturKorrekturFaktorHaustuer} - {Math.round(result.WaermeTransferKoeffizientHaustuerKorrektur*100)/100} - {Math.round(result.maximalerWaermestromHaustuer)} - - - Flachdach - {result.FlachdachFlaeche} - {result.WaermeDurchgangsKoeffizientFlachdach} - {Math.round(result.WaermeTransferKoeffizientFlachdach*100)/100} - {result.TemperaturKorrekturFaktorFlachdach} - {Math.round(result.WaermeTransferKoeffizientFlachdachKorrektur*100)/100} - {Math.round(result.maximalerWaermestromFlachdach)} - - - Oberste Geschossdecke - - - - - - - - - Wand gegen Abseitenraum - - - - - - - - - Bodenplatte - {result.BodenplatteFlaeche} - {result.WaermeDurchgangsKoeffizientBodenplatte} - {Math.round(result.WaermeTransferKoeffizientBodenplatte*100)/100} - {result.TemperaturKorrekturFaktorBodenplatte} - {Math.round(result.WaermeTransferKoeffizientBodenplatteKorrektur*100)/100} - {Math.round(result.maximalerWaermestromBodenplatte)} + {bauteil.Art} {bauteil.Orientierung} + {bauteil.Flaeche} + {bauteil.WaermeDurchgangsKoeffizient} + {Math.round(bauteil.WaermeTransferKoeffizient*100)/100} + {bauteil.TemperaturKorrekturFaktor} + {Math.round(bauteil.WaermeTransferKoeffizientKorrektur*100)/100} + {Math.round(bauteil.maximalerWaermestrom)} + {/each} diff --git a/src/components/Tabellen/A7WaermequellenSolareEinstrahlung.svelte b/src/components/Tabellen/A7WaermequellenSolareEinstrahlung.svelte index b0b9bef1..98b5815a 100644 --- a/src/components/Tabellen/A7WaermequellenSolareEinstrahlung.svelte +++ b/src/components/Tabellen/A7WaermequellenSolareEinstrahlung.svelte @@ -27,8 +27,8 @@ $: result = BerechnungWaermequellenSolareEinstrahlung(); Orientierung - {#each result.PlanungswerteFenster as fenster, index} - {fenster.OrientierungFensterFlaeche} + {#each result.PlanungswerteBauteil as fenster, index} + {fenster.Orientierung} {/each} Gesamtfläche @@ -38,42 +38,42 @@ $: result = BerechnungWaermequellenSolareEinstrahlung(); Neigung - {#each result.PlanungswerteFenster as fenster, index} - {fenster.NeigungFensterflaeche} + {#each result.PlanungswerteBauteil as fenster, index} + {fenster.Neigung} {/each} [m²] Bauteilfläche A [m²] (1) - {#each result.PlanungswerteFenster as fenster, index} - {fenster.FensterFlaeche} + {#each result.PlanungswerteBauteil as fenster, index} + {fenster.Flaeche} {/each} - {Math.round(result.summeFensterFlaeche*100)/100} + {Math.round(result.summeFlaeche*100)/100} Gesamtenergiedurchlassgrad g (2) - {#each result.PlanungswerteFenster as fenster, index} + {#each result.PlanungswerteBauteil as fenster, index} {fenster.GesamtEnergieDurchlassGrad} {/each} Abm. Rahmenanteil FF (3) - {#each result.PlanungswerteFenster as fenster, index} + {#each result.PlanungswerteBauteil as fenster, index} {fenster.RahmenAnteil} {/each} Abm. Strahlungseinfluss Fw (4) - {#each result.PlanungswerteFenster as fenster, index} + {#each result.PlanungswerteBauteil as fenster, index} {fenster.StrahlungsEinfluss} {/each} Abm. Verschattung Fs (5) - {#each result.PlanungswerteFenster as fenster, index} + {#each result.PlanungswerteBauteil as fenster, index} {fenster.Verschattung} {/each} diff --git a/src/lib/Berechnungen/BedarfsausweisWohnen/BerechnungWaermeTransferMaxStroemeBauteile.ts b/src/lib/Berechnungen/BedarfsausweisWohnen/BerechnungWaermeTransferMaxStroemeBauteile.ts index 5edaf945..e1447273 100644 --- a/src/lib/Berechnungen/BedarfsausweisWohnen/BerechnungWaermeTransferMaxStroemeBauteile.ts +++ b/src/lib/Berechnungen/BedarfsausweisWohnen/BerechnungWaermeTransferMaxStroemeBauteile.ts @@ -7,45 +7,11 @@ export function BerechnungWaermeTransferMaxStroemeBauteile() { let WohnEinheiten = 0; let NettoGrundflaeche = 0; let GeschossHoehe = 0; - - let AussenWandFlaecheWest = 0; - let AussenWandFlaecheSued = 0; - let AussenWandFlaecheNord = 0; - let AussenWandFlaecheOst = 0; - let WaermeDurchgangsKoeffizientAussenWandWest = 0; - let WaermeDurchgangsKoeffizientAussenWandSued = 0; - let WaermeDurchgangsKoeffizientAussenWandNord = 0; - let WaermeDurchgangsKoeffizientAussenWandOst = 0; - - let FensterFlaecheWest = 0; - let FensterFlaecheSued = 0; - let FensterFlaecheNord = 0; - let FensterFlaecheOst = 0; - let WaermeDurchgangsKoeffizientFensterWest = 0; - let WaermeDurchgangsKoeffizientFensterSued = 0; - let WaermeDurchgangsKoeffizientFensterNord = 0; - let WaermeDurchgangsKoeffizientFensterOst = 0; - - let HaustuerFlaeche = 0; - let WaermeDurchgangsKoeffizientHaustuer = 0; - - let FlachdachFlaeche = 0; - let WaermeDurchgangsKoeffizientFlachdach = 0; - - let BodenplatteFlaeche = 0; - let WaermeDurchgangsKoeffizientBodenplatte = 0; // Definition Variablen (Konstanten) let minimaleAussentemperatur = 0; let innenTemperatur = 0; let DeckenStaerke = 0; - - let TemperaturKorrekturFaktorAussenwand = 0; - let TemperaturKorrekturFaktorFenster = 0; - let TemperaturKorrekturFaktorHaustuer = 0; - let TemperaturKorrekturFaktorFlachdach = 0; - let TemperaturKorrekturFaktorBodenplatte = 0; - let WaermeBrueckenZuschlag = 0; // Definition Variablen (Berechnung) @@ -54,53 +20,8 @@ export function BerechnungWaermeTransferMaxStroemeBauteile() { let maximaleTemperaturDifferenz = 0; let LichteRaumHoehe = 0; - let WaermeTransferKoeffizientAussenwandWest = 0; - let WaermeTransferKoeffizientAussenwandSued = 0; - let WaermeTransferKoeffizientAussenwandNord = 0; - let WaermeTransferKoeffizientAussenwandOst = 0; - let WaermeTransferKoeffizientAussenwandWestKorrektur = 0; - let WaermeTransferKoeffizientAussenwandSuedKorrektur = 0; - let WaermeTransferKoeffizientAussenwandNordKorrektur = 0; - let WaermeTransferKoeffizientAussenwandOstKorrektur = 0; - - let maximalerWaermestromAussenwandWest = 0; - let maximalerWaermestromAussenwandSued = 0; - let maximalerWaermestromAussenwandNord = 0; - let maximalerWaermestromAussenwandOst = 0; - - let WaermeTransferKoeffizientFensterWest = 0; - let WaermeTransferKoeffizientFensterSued = 0; - let WaermeTransferKoeffizientFensterNord = 0; - let WaermeTransferKoeffizientFensterOst = 0; - let WaermeTransferKoeffizientFensterWestKorrektur = 0; - let WaermeTransferKoeffizientFensterSuedKorrektur = 0; - let WaermeTransferKoeffizientFensterNordKorrektur = 0; - let WaermeTransferKoeffizientFensterOstKorrektur = 0; - - let maximalerWaermestromFensterWest = 0; - let maximalerWaermestromFensterSued = 0; - let maximalerWaermestromFensterNord = 0; - let maximalerWaermestromFensterOst = 0; - - let WaermeTransferKoeffizientHaustuer = 0; - let WaermeTransferKoeffizientHaustuerKorrektur = 0; - - let maximalerWaermestromHaustuer = 0; - - let WaermeTransferKoeffizientFlachdach = 0; - let WaermeTransferKoeffizientFlachdachKorrektur = 0; - - let maximalerWaermestromFlachdach = 0; - - let WaermeTransferKoeffizientBodenplatte = 0; - let WaermeTransferKoeffizientBodenplatteKorrektur = 0; - - let maximalerWaermestromBodenplatte = 0; - - let GesamtHuellFlaeche = 0; let WaermeTransferKoeffizientWaeremebruecken = 0; let maximalerWaermestromWaermebruecken = 0; - let WaermeTransferKoeffizientBauteile = 0; let maximalerWaermestromBauteile = 0; let HuellFlaechenVolumenVerhaeltnis = 0; @@ -113,113 +34,185 @@ export function BerechnungWaermeTransferMaxStroemeBauteile() { NettoGrundflaeche = 154.2; GeschossHoehe = 2.83; DeckenStaerke = 0.24; - - AussenWandFlaecheWest = 32.27; - AussenWandFlaecheSued = 40.97; - AussenWandFlaecheNord = 57.63; - AussenWandFlaecheOst = 44.52; - FensterFlaecheWest = 18.91; - FensterFlaecheSued = 19.62; - FensterFlaecheNord = 2.97; - FensterFlaecheOst = 4.3; - HaustuerFlaeche = 2.35; - FlachdachFlaeche = 89.09; - BodenplatteFlaeche = 89.09; - - WaermeDurchgangsKoeffizientAussenWandWest = 0.2; - WaermeDurchgangsKoeffizientAussenWandSued = 0.2; - WaermeDurchgangsKoeffizientAussenWandNord = 0.2; - WaermeDurchgangsKoeffizientAussenWandOst = 0.2; - - WaermeDurchgangsKoeffizientFensterWest = 0.95; - WaermeDurchgangsKoeffizientFensterSued = 0.95; - WaermeDurchgangsKoeffizientFensterNord = 0.95; - WaermeDurchgangsKoeffizientFensterOst = 0.95; - - WaermeDurchgangsKoeffizientHaustuer = 1.3; - - WaermeDurchgangsKoeffizientFlachdach = 0.13; - - WaermeDurchgangsKoeffizientBodenplatte = 0.21; + + const PlanungswerteBauteil = [ + { + Art: "Fenster", + Flaeche: 18.91, + WaermeDurchgangsKoeffizient: 0.95, + Neigung: 90, + GesamtEnergieDurchlassGrad: 0.6, + RahmenAnteil: 0.7, + StrahlungsEinfluss: 0.9, + Verschattung: 0.9, + TemperaturKorrekturFaktor: 1, + Orientierung: "West" + }, + { + Art: "Fenster", + Flaeche: 19.62, + WaermeDurchgangsKoeffizient: 0.95, + Neigung: 90, + GesamtEnergieDurchlassGrad: 0.6, + RahmenAnteil: 0.7, + StrahlungsEinfluss: 0.9, + Verschattung: 0.9, + TemperaturKorrekturFaktor: 1, + Orientierung: "Süd" + }, + { + Art: "Fenster", + Flaeche: 2.97, + WaermeDurchgangsKoeffizient: 0.95, + Neigung: 90, + GesamtEnergieDurchlassGrad: 0.6, + RahmenAnteil: 0.7, + StrahlungsEinfluss: 0.9, + Verschattung: 0.9, + TemperaturKorrekturFaktor: 1, + Orientierung: "Nord" + }, + { + Art: "Fenster", + Flaeche: 4.3, + WaermeDurchgangsKoeffizient: 0.95, + Neigung: 90, + GesamtEnergieDurchlassGrad: 0.6, + RahmenAnteil: 0.7, + StrahlungsEinfluss: 0.9, + Verschattung: 0.9, + TemperaturKorrekturFaktor: 1, + Orientierung: "Ost" + }, + { + Art: "Außenwand", + Flaeche: 32.27, + WaermeDurchgangsKoeffizient: 0.2, + Neigung: 90, + GesamtEnergieDurchlassGrad: 0, + RahmenAnteil: 0, + StrahlungsEinfluss: 0, + Verschattung: 0, + TemperaturKorrekturFaktor: 1, + Orientierung: "West" + }, + { + Art: "Außenwand", + Flaeche: 40.97, + WaermeDurchgangsKoeffizient: 0.2, + Neigung: 90, + GesamtEnergieDurchlassGrad: 0, + RahmenAnteil: 0, + StrahlungsEinfluss: 0, + Verschattung: 0, + TemperaturKorrekturFaktor: 1, + Orientierung: "Süd" + }, + { + Art: "Außenwand", + Flaeche: 57.63, + WaermeDurchgangsKoeffizient: 0.2, + Neigung: 90, + GesamtEnergieDurchlassGrad: 0, + RahmenAnteil: 0, + StrahlungsEinfluss: 0, + Verschattung: 0, + TemperaturKorrekturFaktor: 1, + Orientierung: "Nord" + }, + { + Art: "Außenwand", + Flaeche: 44.52, + WaermeDurchgangsKoeffizient: 0.2, + Neigung: 90, + GesamtEnergieDurchlassGrad: 0, + RahmenAnteil: 0, + StrahlungsEinfluss: 0, + Verschattung: 0, + TemperaturKorrekturFaktor: 1, + Orientierung: "Ost" + }, + { + Art: "Haustür", + Flaeche: 2.35, + WaermeDurchgangsKoeffizient: 1.3, + Neigung: 90, + GesamtEnergieDurchlassGrad: 0, + RahmenAnteil: 0, + StrahlungsEinfluss: 0, + Verschattung: 0, + TemperaturKorrekturFaktor: 1, + Orientierung: "West" + }, + { + Art: "Flachdach", + Flaeche: 89.09, + WaermeDurchgangsKoeffizient: 0.13, + Neigung: 0, + GesamtEnergieDurchlassGrad: 0, + RahmenAnteil: 0, + StrahlungsEinfluss: 0, + Verschattung: 0, + TemperaturKorrekturFaktor: 1, + Orientierung: "Horizontal" + }, + { + Art: "Bodenplatte", + Flaeche: 89.09, + WaermeDurchgangsKoeffizient: 0.21, + Neigung: 0, + GesamtEnergieDurchlassGrad: 0, + RahmenAnteil: 0, + StrahlungsEinfluss: 0, + Verschattung: 0, + TemperaturKorrekturFaktor: 0.8, + Orientierung: "Horizontal" + } + ]; + // Konstanten werden aus Eingabe geholt minimaleAussentemperatur = -12; innenTemperatur = 20; - - TemperaturKorrekturFaktorAussenwand = 1; - TemperaturKorrekturFaktorFenster = 1; - TemperaturKorrekturFaktorHaustuer = 1; - TemperaturKorrekturFaktorFlachdach = 1; - TemperaturKorrekturFaktorBodenplatte = 0.8; - WaermeBrueckenZuschlag = 0.03; // Berechnung + maximaleTemperaturDifferenz = innenTemperatur - minimaleAussentemperatur; LichteRaumHoehe = GeschossHoehe - DeckenStaerke; ObjektNettoVolumen = NettoGrundflaeche * LichteRaumHoehe; if (WohnEinheiten < 3) {FaktorNettoVolumen = 0.76;} else {FaktorNettoVolumen = 0.8;} ObjektNettoVolumenAlternativ = ObjektBruttoVolumen * FaktorNettoVolumen; - - WaermeTransferKoeffizientAussenwandWest = WaermeDurchgangsKoeffizientAussenWandWest * AussenWandFlaecheWest; - WaermeTransferKoeffizientAussenwandSued = WaermeDurchgangsKoeffizientAussenWandSued * AussenWandFlaecheSued; - WaermeTransferKoeffizientAussenwandNord = WaermeDurchgangsKoeffizientAussenWandNord * AussenWandFlaecheNord; - WaermeTransferKoeffizientAussenwandOst = WaermeDurchgangsKoeffizientAussenWandOst * AussenWandFlaecheOst; - WaermeTransferKoeffizientAussenwandWestKorrektur = WaermeTransferKoeffizientAussenwandWest * TemperaturKorrekturFaktorAussenwand; - WaermeTransferKoeffizientAussenwandSuedKorrektur = WaermeTransferKoeffizientAussenwandSued * TemperaturKorrekturFaktorAussenwand; - WaermeTransferKoeffizientAussenwandNordKorrektur = WaermeTransferKoeffizientAussenwandNord * TemperaturKorrekturFaktorAussenwand; - WaermeTransferKoeffizientAussenwandOstKorrektur = WaermeTransferKoeffizientAussenwandOst * TemperaturKorrekturFaktorAussenwand; + const ErgebnisseBauteile = PlanungswerteBauteil.map(bauteil => { + const WaermeTransferKoeffizient = bauteil.WaermeDurchgangsKoeffizient * bauteil.Flaeche; + const WaermeTransferKoeffizientKorrektur = WaermeTransferKoeffizient * bauteil.TemperaturKorrekturFaktor; + const maximalerWaermestrom = WaermeTransferKoeffizientKorrektur * maximaleTemperaturDifferenz; + return { + Art: bauteil.Art, + Orientierung: bauteil.Orientierung, + Flaeche: bauteil.Flaeche, + WaermeDurchgangsKoeffizient: bauteil.WaermeDurchgangsKoeffizient, + WaermeTransferKoeffizient, + TemperaturKorrekturFaktor: bauteil.TemperaturKorrekturFaktor, + WaermeTransferKoeffizientKorrektur, + maximalerWaermestrom + }; + }); - maximalerWaermestromAussenwandWest = WaermeTransferKoeffizientAussenwandWestKorrektur * maximaleTemperaturDifferenz; - maximalerWaermestromAussenwandSued = WaermeTransferKoeffizientAussenwandSuedKorrektur * maximaleTemperaturDifferenz; - maximalerWaermestromAussenwandNord = WaermeTransferKoeffizientAussenwandNordKorrektur * maximaleTemperaturDifferenz; - maximalerWaermestromAussenwandOst = WaermeTransferKoeffizientAussenwandOstKorrektur * maximaleTemperaturDifferenz; + const GesamtHuellFlaeche = PlanungswerteBauteil.reduce((sum, bauteil) => sum + bauteil.Flaeche, 0); - WaermeTransferKoeffizientFensterWest = WaermeDurchgangsKoeffizientFensterWest * FensterFlaecheWest; - WaermeTransferKoeffizientFensterSued = WaermeDurchgangsKoeffizientFensterSued * FensterFlaecheSued; - WaermeTransferKoeffizientFensterNord = WaermeDurchgangsKoeffizientFensterNord * FensterFlaecheNord; - WaermeTransferKoeffizientFensterOst = WaermeDurchgangsKoeffizientFensterOst * FensterFlaecheOst; - - WaermeTransferKoeffizientFensterWestKorrektur = WaermeTransferKoeffizientFensterWest * TemperaturKorrekturFaktorFenster; - WaermeTransferKoeffizientFensterSuedKorrektur = WaermeTransferKoeffizientFensterSued * TemperaturKorrekturFaktorFenster; - WaermeTransferKoeffizientFensterNordKorrektur = WaermeTransferKoeffizientFensterNord * TemperaturKorrekturFaktorFenster; - WaermeTransferKoeffizientFensterOstKorrektur = WaermeTransferKoeffizientFensterOst * TemperaturKorrekturFaktorFenster; - - maximalerWaermestromFensterWest = WaermeTransferKoeffizientFensterWestKorrektur * maximaleTemperaturDifferenz; - maximalerWaermestromFensterSued = WaermeTransferKoeffizientFensterSuedKorrektur * maximaleTemperaturDifferenz; - maximalerWaermestromFensterNord = WaermeTransferKoeffizientFensterNordKorrektur * maximaleTemperaturDifferenz; - maximalerWaermestromFensterOst = WaermeTransferKoeffizientFensterOstKorrektur * maximaleTemperaturDifferenz; - - WaermeTransferKoeffizientHaustuer = WaermeDurchgangsKoeffizientHaustuer * HaustuerFlaeche; - WaermeTransferKoeffizientHaustuerKorrektur = WaermeTransferKoeffizientHaustuer * TemperaturKorrekturFaktorHaustuer; - maximalerWaermestromHaustuer = WaermeTransferKoeffizientHaustuerKorrektur * maximaleTemperaturDifferenz; - - WaermeTransferKoeffizientFlachdach = WaermeDurchgangsKoeffizientFlachdach * FlachdachFlaeche; - WaermeTransferKoeffizientFlachdachKorrektur = WaermeTransferKoeffizientFlachdach * TemperaturKorrekturFaktorFlachdach; - maximalerWaermestromFlachdach = WaermeTransferKoeffizientFlachdachKorrektur * maximaleTemperaturDifferenz; - - WaermeTransferKoeffizientBodenplatte = WaermeDurchgangsKoeffizientBodenplatte * BodenplatteFlaeche; - WaermeTransferKoeffizientBodenplatteKorrektur = WaermeTransferKoeffizientBodenplatte * TemperaturKorrekturFaktorBodenplatte; - maximalerWaermestromBodenplatte = WaermeTransferKoeffizientBodenplatteKorrektur * maximaleTemperaturDifferenz; - - GesamtHuellFlaeche = AussenWandFlaecheWest + AussenWandFlaecheSued + AussenWandFlaecheNord + AussenWandFlaecheOst + FensterFlaecheWest + - FensterFlaecheSued + FensterFlaecheNord + FensterFlaecheOst + HaustuerFlaeche + FlachdachFlaeche + BodenplatteFlaeche; - HuellFlaechenVolumenVerhaeltnis = GesamtHuellFlaeche / ObjektNettoVolumenAlternativ; WaermeTransferKoeffizientWaeremebruecken = GesamtHuellFlaeche * WaermeBrueckenZuschlag; maximalerWaermestromWaermebruecken = WaermeTransferKoeffizientWaeremebruecken * maximaleTemperaturDifferenz; - - WaermeTransferKoeffizientBauteile = WaermeTransferKoeffizientAussenwandWestKorrektur + WaermeTransferKoeffizientAussenwandSuedKorrektur + - WaermeTransferKoeffizientAussenwandNordKorrektur + WaermeTransferKoeffizientAussenwandOstKorrektur + WaermeTransferKoeffizientFensterWestKorrektur + - WaermeTransferKoeffizientFensterSuedKorrektur + WaermeTransferKoeffizientFensterNordKorrektur + WaermeTransferKoeffizientFensterOstKorrektur + - WaermeTransferKoeffizientHaustuerKorrektur + WaermeTransferKoeffizientFlachdachKorrektur + WaermeTransferKoeffizientBodenplatteKorrektur + - WaermeTransferKoeffizientWaeremebruecken; - - maximalerWaermestromBauteile = WaermeTransferKoeffizientBauteile * maximaleTemperaturDifferenz; + const WaermeTransferKoeffizientBauteile = + (ErgebnisseBauteile.reduce((sum, bauteil) => sum + bauteil.WaermeTransferKoeffizientKorrektur, 0)) + + WaermeTransferKoeffizientWaeremebruecken; + + maximalerWaermestromBauteile = WaermeTransferKoeffizientBauteile * maximaleTemperaturDifferenz; return { @@ -233,74 +226,13 @@ export function BerechnungWaermeTransferMaxStroemeBauteile() { ObjektNettoVolumen, FaktorNettoVolumen, ObjektNettoVolumenAlternativ, - WaermeDurchgangsKoeffizientAussenWandWest, - WaermeTransferKoeffizientAussenwandWest, - WaermeDurchgangsKoeffizientAussenWandSued, - WaermeTransferKoeffizientAussenwandSued, - WaermeDurchgangsKoeffizientAussenWandNord, - WaermeTransferKoeffizientAussenwandNord, - WaermeDurchgangsKoeffizientAussenWandOst, - WaermeTransferKoeffizientAussenwandOst, - TemperaturKorrekturFaktorAussenwand, - WaermeTransferKoeffizientAussenwandWestKorrektur, - WaermeTransferKoeffizientAussenwandSuedKorrektur, - WaermeTransferKoeffizientAussenwandNordKorrektur, - WaermeTransferKoeffizientAussenwandOstKorrektur, - maximalerWaermestromAussenwandWest, - maximalerWaermestromAussenwandSued, - maximalerWaermestromAussenwandNord, - maximalerWaermestromAussenwandOst, - WaermeDurchgangsKoeffizientFensterWest, - WaermeTransferKoeffizientFensterWest, - WaermeDurchgangsKoeffizientFensterSued, - WaermeTransferKoeffizientFensterSued, - WaermeDurchgangsKoeffizientFensterNord, - WaermeTransferKoeffizientFensterNord, - WaermeDurchgangsKoeffizientFensterOst, - WaermeTransferKoeffizientFensterOst, - TemperaturKorrekturFaktorFenster, - WaermeTransferKoeffizientFensterWestKorrektur, - WaermeTransferKoeffizientFensterSuedKorrektur, - WaermeTransferKoeffizientFensterNordKorrektur, - WaermeTransferKoeffizientFensterOstKorrektur, - maximalerWaermestromFensterWest, - maximalerWaermestromFensterSued, - maximalerWaermestromFensterNord, - maximalerWaermestromFensterOst, - WaermeDurchgangsKoeffizientHaustuer, - WaermeTransferKoeffizientHaustuer, - TemperaturKorrekturFaktorHaustuer, - WaermeTransferKoeffizientHaustuerKorrektur, - maximalerWaermestromHaustuer, - WaermeDurchgangsKoeffizientFlachdach, - WaermeTransferKoeffizientFlachdach, - TemperaturKorrekturFaktorFlachdach, - WaermeTransferKoeffizientFlachdachKorrektur, - maximalerWaermestromFlachdach, - WaermeDurchgangsKoeffizientBodenplatte, - WaermeTransferKoeffizientBodenplatte, - TemperaturKorrekturFaktorBodenplatte, - WaermeTransferKoeffizientBodenplatteKorrektur, - maximalerWaermestromBodenplatte, GesamtHuellFlaeche, + ErgebnisseBauteile, WaermeBrueckenZuschlag, WaermeTransferKoeffizientWaeremebruecken, maximalerWaermestromWaermebruecken, WaermeTransferKoeffizientBauteile, maximalerWaermestromBauteile, HuellFlaechenVolumenVerhaeltnis, - AussenWandFlaecheWest, - AussenWandFlaecheSued, - AussenWandFlaecheNord, - AussenWandFlaecheOst, - FensterFlaecheWest, - FensterFlaecheSued, - FensterFlaecheNord, - FensterFlaecheOst, - HaustuerFlaeche, - FlachdachFlaeche, - BodenplatteFlaeche, - - } } \ No newline at end of file diff --git a/src/lib/Berechnungen/BedarfsausweisWohnen/BerechnungWaermequellenSolareEinstrahlung.ts b/src/lib/Berechnungen/BedarfsausweisWohnen/BerechnungWaermequellenSolareEinstrahlung.ts index 857421d4..b2ea3117 100644 --- a/src/lib/Berechnungen/BedarfsausweisWohnen/BerechnungWaermequellenSolareEinstrahlung.ts +++ b/src/lib/Berechnungen/BedarfsausweisWohnen/BerechnungWaermequellenSolareEinstrahlung.ts @@ -1,3 +1,4 @@ +import FensterImage from "#components/Ausweis/FensterImage.svelte"; import { funktionSolareBestrahlungsEnergie } from "#lib/Berechnungen/BedarfsausweisWohnen/funktionSolareBestrahlungsEnergie.js"; export function BerechnungWaermequellenSolareEinstrahlung() { @@ -30,73 +31,85 @@ export function BerechnungWaermequellenSolareEinstrahlung() { // Aus Planung, Konstante für Neigung Fensterfläche (bei Dachfenstern kann die Neigung zwischen 0 und 85) - const PlanungswerteFenster = [ + const PlanungswerteBauteil = [ { - FensterFlaeche: 18.91, - NeigungFensterflaeche: 90, + Art: "Fenster", + Flaeche: 18.91, + WaermeDurchgangsKoeffizient: 0.95, + Neigung: 90, GesamtEnergieDurchlassGrad: 0.6, RahmenAnteil: 0.7, StrahlungsEinfluss: 0.9, Verschattung: 0.9, - OrientierungFensterFlaeche: "West" + TemperaturKorrekturFaktor: 1, + Orientierung: "West" }, { - FensterFlaeche: 19.62, - NeigungFensterflaeche: 90, + Art: "Fenster", + Flaeche: 19.62, + WaermeDurchgangsKoeffizient: 0.95, + Neigung: 90, GesamtEnergieDurchlassGrad: 0.6, RahmenAnteil: 0.7, StrahlungsEinfluss: 0.9, Verschattung: 0.9, - OrientierungFensterFlaeche: "Süd" + TemperaturKorrekturFaktor: 1, + Orientierung: "Süd" }, { - FensterFlaeche: 2.97, - NeigungFensterflaeche: 90, + Art: "Fenster", + Flaeche: 2.97, + WaermeDurchgangsKoeffizient: 0.95, + Neigung: 90, GesamtEnergieDurchlassGrad: 0.6, RahmenAnteil: 0.7, StrahlungsEinfluss: 0.9, Verschattung: 0.9, - OrientierungFensterFlaeche: "Nord" + TemperaturKorrekturFaktor: 1, + Orientierung: "Nord" }, { - FensterFlaeche: 4.3, - NeigungFensterflaeche: 90, + Art: "Fenster", + Flaeche: 4.3, + WaermeDurchgangsKoeffizient: 0.95, + Neigung: 90, GesamtEnergieDurchlassGrad: 0.6, RahmenAnteil: 0.7, StrahlungsEinfluss: 0.9, Verschattung: 0.9, - OrientierungFensterFlaeche: "Ost" + TemperaturKorrekturFaktor: 1, + Orientierung: "Ost" } ]; - // const MonatsWerteWest = funktionSolareBestrahlungsEnergie(NeigungFensterflaeche, OrientierungFensterFlaecheWest); + // Berechnung der solaren Wärmequellen pro Fenster und Monat - PlanungswerteFenster.forEach(item => { - const MonatsWerte = funktionSolareBestrahlungsEnergie(item.NeigungFensterflaeche, item.OrientierungFensterFlaeche); + PlanungswerteBauteil.forEach(item => { + const MonatsWerte = funktionSolareBestrahlungsEnergie(item.Neigung, item.Orientierung); if (MonatsWerte) { - const SolareWaermequelleJanuar = MonatsWerte.jan * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleJanuar = MonatsWerte.jan * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteJanuar = MonatsWerte.jan; - const SolareWaermequelleFebruar = MonatsWerte.feb * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleFebruar = MonatsWerte.feb * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteFebruar = MonatsWerte.feb; - const SolareWaermequelleMaerz = MonatsWerte.mrz * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleMaerz = MonatsWerte.mrz * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteMaerz = MonatsWerte.mrz; - const SolareWaermequelleApril = MonatsWerte.apr * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleApril = MonatsWerte.apr * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteApril = MonatsWerte.apr; - const SolareWaermequelleMai = MonatsWerte.mai * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleMai = MonatsWerte.mai * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteMai = MonatsWerte.mai; - const SolareWaermequelleJuni = MonatsWerte.jun * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleJuni = MonatsWerte.jun * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteJuni = MonatsWerte.jun; - const SolareWaermequelleJuli = MonatsWerte.jul * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleJuli = MonatsWerte.jul * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteJuli = MonatsWerte.jul; - const SolareWaermequelleAugust = MonatsWerte.aug * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleAugust = MonatsWerte.aug * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteAugust = MonatsWerte.aug; - const SolareWaermequelleSeptember = MonatsWerte.sep * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleSeptember = MonatsWerte.sep * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteSeptember = MonatsWerte.sep; - const SolareWaermequelleOktober = MonatsWerte.okt * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleOktober = MonatsWerte.okt * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteOktober = MonatsWerte.okt; - const SolareWaermequelleNovember = MonatsWerte.nov * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleNovember = MonatsWerte.nov * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteNovember = MonatsWerte.nov; - const SolareWaermequelleDezember = MonatsWerte.dez * item.FensterFlaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; + const SolareWaermequelleDezember = MonatsWerte.dez * item.Flaeche * item.RahmenAnteil * item.GesamtEnergieDurchlassGrad * item.StrahlungsEinfluss * item.Verschattung; const MonatsWerteDezember = MonatsWerte.dez; ErgebnisseJanuar.push(SolareWaermequelleJanuar); @@ -154,10 +167,10 @@ export function BerechnungWaermequellenSolareEinstrahlung() { summeErgebnisseAugust + summeErgebnisseSeptember + summeErgebnisseOktober + summeErgebnisseNovember + summeErgebnisseDezember; - const summeFensterFlaeche = PlanungswerteFenster.reduce((acc, val) => acc + val.FensterFlaeche, 0); + const summeFlaeche = PlanungswerteBauteil.reduce((acc, val) => acc + val.Flaeche, 0); return { - PlanungswerteFenster, + PlanungswerteBauteil, ErgebnisseJanuar, ErgebnisseMonatsWerteJanuar, ErgebnisseFebruar, @@ -196,6 +209,6 @@ export function BerechnungWaermequellenSolareEinstrahlung() { summeErgebnisseDezember, summeErgebnisseJahr, ErgebnisseWirksamerGesamtEnergieDurchlassGrad, - summeFensterFlaeche, + summeFlaeche, } }