# Heizlast-Indikator – Berechnungsmethodik Christian Herberth – Wärme & Solar · Modell 3.6.3 · 22.10.2026. Zusätzliche vorsichtige Angebotsregel: keine Nennleistungsklasse unter der mittleren Heizlast. Herstellerkennlinien und Heizlastverfahren unverändert. ## Vorläufige Indikation bei knapper Abweichung (3.6.0) Bei mehr als 30 % bis einschließlich 35 % relativer Abweichung ist ohne weitere Sperrgründe ein ausdrücklich vorläufiger Mittelwert erlaubt. Die Formeln, Energieannahmen, 50/50-Gewichtung und der Sicherheitsaufschlag von 0 % bleiben unverändert. Die automatische Geräteempfehlung bleibt in diesem Übergangsbereich ausgesetzt. Warnhinweis und Status werden in beiden Rechneransichten, der PDF-Angebotsübersicht und dem Aufmaßbericht ausgegeben. Die Grenze ist eine eigene Orientierungsregel, keine normativ bestätigte Auslegung. Einzelheiten stehen unter „Zusammenführung & Unsicherheit“. Validierung: 344 automatisierte Tests bestanden, einschließlich der Grenzen 30 % / 35 % in beiden Richtungen, zusätzlicher Sperrgründe, Solar-Bandgrenzen, unveränderter Energiebilanzen und PDF-Ausgabe. Die anonyme PDF-Prüffassung wurde gerendert und die Angebotsübersicht sowie die Ergebnisdarstellung visuell kontrolliert. ## Getrennte Geschosse und Fassadenkorrektur (3.5.0) Vollgeschosse werden ohne Keller und Dachgeschoss erfasst. Keller/Dachgeschoss jeweils beheizt, teilweise beheizt, unbeheizt, nicht vorhanden oder unbekannt. Bekannte beheizte Teilflächen können optional angegeben werden und sind Teil der Gesamtfläche, niemals ein Zuschlag. Quellenprüfung am 18.10.2026: [TABULA Evaluation Database, Tabellen 3 und 6](https://episcope.eu/fileadmin/tabula/public/docs/report/TABULA_WorkReport_EvaluationDatabase.pdf). **Korrektur eines tatsächlichen Übertragungsfehlers:** Tabelle 6 verwendet für die Fassade die Bezugsfläche des ganzen Gebäudes. Der alte Code multiplizierte den festen Fassadenanteil q zusätzlich mit der Ebenenzahl. Richtig ist `(0,7 × A + q) × h/2,5`; gegenüber der alten Formel entfällt `(N−1) × q × h/2,5`. Dies ist kein pauschaler Heizlast-Abschlag. Keine Änderung von Verbrauchsenergie, Warmwasser, Holz, Plausibilitätsschwellen, Mittelwertbildung oder Heizstabregel. Ergebniszahl weiterhin ohne Sicherheitsaufschlag (0 %). Alte `floors`/`heatedFloors` werden nicht in Vollgeschosse umgedeutet. Bis zur Bestätigung bleiben sie als ausdrücklich markierte alte Ebenennäherung verwendbar; die Fassadenkorrektur gilt auch dort. Bestehende Antworten werden nicht überschrieben. Teilbeheizung/ungeklärte Geometrie/beheizter Keller erhöhen nur die Bandbreite, nicht den Punktwert. Vor Versand ist die neue Vollgeschossangabe erforderlich; Entwurfsspeicherung und PDF bleiben möglich. Holzwärme ist ein realer Teil des bisherigen Haus-Wärmebedarfs und wird aus Menge/Heizwert/Nutzungsgrad berücksichtigt. Eine Jahresmenge belegt keine verlässlich verfügbare Ofenleistung am Auslegungstag. Daher kein automatischer Abzug von der erforderlichen Wärmepumpenleistung; eine auf dauerhaften Ofenbetrieb ausgelegte bivalente Planung benötigt eine gesonderte fachliche Festlegung. Eine spätere Größenänderung lässt sich mit dieser Vorindikation nicht ausschließen. Validierung: `tests/geometry-levels.test.mjs` und `GEOMETRY_VALIDATION_3_5.md`. ## Historischer Stand: Dämmstärken und Solar-Warmwasserbandbreite (3.4.0) Die Zahlen im folgenden 3.4-Prüffall dokumentieren den damaligen Stand vor der Fassadenkorrektur. Aktuelle Vergleichswerte stehen in GEOMETRY_VALIDATION_3_5.md. - Aufmaß-Feld Außenwanddämmung: eindeutige Dicken wie `5 cm`, `50 mm`, `ca. 5 cm` oder `5,5 cm` werden aus „Sonstiges“ übernommen. Ebenso die bestehenden 12-/24-cm-Auswahlen. Ohne Einheit, bei Bereichen oder Teilflächenbeschreibungen bleibt die Dicke ungeklärt; es wird keine Zahl aus beliebigem Text geraten. Prüfbereich 0–60 cm, zentral `CONFIG.insulation.maxWallCm`. - Für eine durchgehend zusätzlich gedämmte Fassade gilt pro Referenzbauteil `U_neu = 1 / (1/U_Referenz + (d_cm/100)/lambda)`. `lambda = 0,04 W/(m K)` ist eine **eigene Materialannahme**, kein nachgewiesener Dämmstoffkennwert. Sie liegt zentral in `CONFIG.insulation.assumedConductivity`. Keine gleichzeitige Anwendung des kategorischen Sanierungs-U-Werts. Ohne bekannte Dicke gelten die bisherigen Zustandsklassen. Die Referenzwand ist eine Baualtersnäherung, kein bekannter Bestandsaufbau; vorhandene Dämmung nicht doppelt erfassen. - Ein beheizter Keller bleibt eine Geometrienäherung: das Modell behandelt seine Wände wie oberirdische Außenwände. Es fehlen erdberührte Flächen, tatsächliche Ebenengrößen und Kellerwandaufbau. Der Hinweis wird deutlicher angezeigt; es gibt keinen beliebigen Kellerabschlag und keine behauptete Erdreichberechnung. - Bei **bestätigter Solarthermie ausschließlich für Warmwasser** und unbekanntem Jahresbeitrag wird eine Bilanzbandbreite gerechnet. `Q_Solar,WW` bleibt als Messwert `null`; nur `solarDhwRange = [0, Q_WW − Q_Ofen,WW]` wird gebildet. Der tatsächliche Solarertrag kann innerhalb der Modellgrenzen liegen, folgt aber nicht aus Kollektorfläche oder einem festen Deckungsanteil. Der Warmwasserbedarf selbst bleibt die bestehende Pauschale. - `Q_WW,Haupt` liegt damit zwischen 0 und `Q_WW − Q_Ofen,WW`. Für beide Grenzen werden Raumwärme, Klimafaktor und Vollbenutzungsstunden angewandt. `kwRange` zeigt diese beiden Verbrauchs-Heizlasten. Der interne `kw` ist ihr rechnerischer Mittelpunkt, **kein gemessener oder wahrscheinlichster Wert**. Er dient nur der ausdrücklich vorläufigen gemeinsamen Indikation mit dem Gebäudeansatz. - Beide Verbrauchsgrenzen werden einzeln mit der Gebäudeschätzung verglichen. Die größere relative Abweichung entscheidet über die unveränderten 15-/30-%-Schwellen. Bei über 30 % bis einschließlich 35 % an der ungünstigeren Grenze ist nur eine vorläufige gemeinsame Indikation erlaubt, ohne LG-Auswahl. Über 35 % bleiben beide gesperrt; weitere Sperrgründe gelten unverändert. Das Unsicherheitsband umhüllt beide Grenzen; Qualitätsstatus mindestens „eingeschränkt“. Keine Stunden-Sensitivität mit scheinbar genauem Punktwert bei unbekanntem Solarertrag. - Ungeklärte Solar-Nutzung oder solare Raumheizung, unbekannte Ofenmenge/Wasserführung, ungültige behauptete Messwerte und unplausible Energiebilanzen bleiben gesperrt. Eine gültige dokumentierte Solarwärmemenge ersetzt die Bandbreite durch die bisherige Punktrechnung. Bestätigt separates Warmwasser wird weiterhin nicht vom Hauptverbrauch abgezogen. - Anonymer Prüffall: 320 m², freistehend, 1978, drei Ebenen inkl. beheiztem Keller, Raumhöhe 2,41 m, Dreifachfenster, Dach teilweise gedämmt, ungedämmte Bodenplatte, 5 cm Fassade. Wand-U 1,00 → 0,444 W/(m² K); Gebäude 23,638 → **17,971 kW**. Bei 3.500 l Öl, Modell-Nutzungsgrad 95 %, fünf Bewohnern, zwei Einheiten mit Zirkulation: Nutzwärme 33.250 kWh, Warmwasser 4.750 kWh. Unbekannte Solar-Warmwasserwärme 0–4.750 kWh ergibt **13,571–15,833 kW** Verbrauch bei 2.100 h. Größte A/B-Abweichung 27,898 %, gemeinsame vorläufige Indikation **16,337 kW**, bestehendes heuristisches Gesamtband 8,550–23,722 kW. Keine der hinterlegten LG-Einzelklassen erfüllt für diesen Fall die Auslegungsregel bei angenommenen −12/55 °C; keine erzwungene Nennleistungsempfehlung. Fachliche Einordnung: Das [BWP](https://api.waermepumpe.de/documentation/heatingLoad) berücksichtigt zusätzliche Dämmstärken und unterscheidet Außenluft, unbeheizte Räume und Erdreich. Unser Ansatz bleibt eine eigene vereinfachte Implementierung. Unsicherheiten von U-Werten, Nutzungsgrad und Warmwasser in Vorabschätzungen erläutert auch der [IWU-Zwischenbericht WP-Hessen, Abschnitt 2.3.1](https://www.iwu.de/fileadmin/publikationen/energie/2023_IWU_Grossklos-EtAl_Zwischenbericht_WP-Hessen.pdf). Die Solarbandbreite und die Gleichgewichtung sind eigene Orientierungsregeln, keine Normmethode und kein Nachweis einer realen Spitzenheizlast. ## Solarthermie und Zusatzöfen (gemeinsam für beide Formulare) Die gemeinsame Berechnung in `calculation.mjs` und `additional-energy.mjs` gilt für den eigenständigen Rechner, Aufmaß, Details, JSON/CRM und PDF. Gas-/Ölverbrauch muss dieselbe Fläche, Nutzung und Zeitspanne wie Solar- und Ofenangaben abdecken. Ungeklärte Bilanz liefert grundsätzlich **keinen Verbrauchs-Punktwert** und keine gemeinsame Heizlast oder LG-Klasse. Einzige begrenzte Ausnahme: bestätigte reine Solar-Warmwasserbereitung mit unbekanntem Beitrag, nach den oben dokumentierten Bandbreitenregeln. Die Gebäudeschätzung bleibt erhalten. - Scheitholz: gestapelte, trockene 33-cm-Scheite bei 15 % Wassergehalt; Buche 1.888 kWh/rm, Fichte 1.320 kWh/rm, gemischt/unbekannt eigener Mittelwert 1.604 kWh/rm. [TFZ-Handbuch, Tabelle 4.9, gedruckte S. 56](https://www.tfz.bayern.de/mam/cms08/festbrennstoffe/dateien/handbuch_bioenergie-kleinanlagen-komplett.pdf). Angenommener Ofen-Nutzungsgrad 70 %, eigene Heuristik. - Pellets: kg/Jahr oder t/Jahr, 1 t = 1.000 kg. Typischer Heizwert 5 kWh/kg nach [DEPI-Pelletlexikon](https://www.depi.de/pelletlexikon/), kein individueller Messwert. Die [ENplus-Norm, Tabelle 4, S. 36](https://enplus-pellets.eu/wp-content/uploads/2023/07/ENplus-ST-1001-ENplus.pdf) nennt 4,6 kWh/kg als **Mindestwert**, nicht als typischen Wert. Angenommener saisonaler Ofen-Nutzungsgrad 80 %, eigene Planungsannahme, weder Herstellerwert noch aus dem Normminimum abgeleitet. Betrieb, Stillstand und Nutzerverhalten können abweichen; siehe [TFZ-Bericht 57](https://www.tfz.bayern.de/mam/cms08/festbrennstoffe/dateien/tfz_bericht_57_optimierungspotenziale_kaminoefen_ges.pdf). Quellen geprüft 16.10.2026. - Holz und Pellets werden als Nutzwärme addiert. Keine Prozent-Hochrechnung. Fehlende Menge bleibt unbekannt, eine ausdrücklich bestätigte Nullmenge ist zulässig. - Wasserführende Öfen: Verwendung nur für Raumheizung bestätigen oder Jahres-Nutzwärme für Trinkwarmwasser zuordnen. Ohne Zuordnung kein Punktwert. Die Raumwärme ist Ofen-Nutzwärme abzüglich Ofen-Warmwasser. Warmwasser darf nicht zugleich vollständig abgezogen und vollständig als Ofen-Raumwärme addiert werden. - Solarthermie nur für Warmwasser: nutzbarer jährlicher Beitrag zu Warmwasser inklusive zugehöriger Zirkulation, **kein Brutto-Kollektorertrag, kein PV-Strom und keine eingesparte Brennstoffenergie**. Status gemessen/dokumentiert oder fachlich geschätzt plus Quelle/Zeitraum. Schätzung erhöht das Unsicherheitsband um 0,10. Keine automatische Ertragsannahme allein aus Kollektorfläche. Unbekannter Beitrag erhält seit 3.4.0 die oben beschriebene Bandbreite. Negative Werte und Beiträge oberhalb des Warmwasserbedarfs werden zurückgewiesen; Solar- und Ofen-Warmwasser zusammen dürfen den Bedarf ebenfalls nicht übersteigen. - Bei bestätigt separater Warmwasserbereitung außerhalb des angegebenen Brennstoffverbrauchs entfällt der Abzug; reine solare Warmwasserwärme erhöht die Raumheizenergie nicht. Ein Ofenanteil für separates Warmwasser bleibt von seiner Raumwärme getrennt. - Solare Raumheizung oder ungeklärte Nutzung benötigt eine gesonderte fachliche Bilanz. Hier wird noch kein Punktwert berechnet. - Optionaler bestätigter Kesseltyp im Aufmaß: neues Feld `boilerType`. Aus dem Baujahr wird kein Brennwertkessel abgeleitet. Unbekannter Typ bleibt als Nutzungsgrad-Annahme plus Bereich der vorhandenen Kesseltypen sichtbar. Ein Nutzer-Override ersetzt die Typannahme. Format 5: `consumption.available=false`, `kw=null`, `bands.consumption=null`, `plausibility.level=unavailable`, `combined=null`, `lg.nominal=null` bei fehlender/ungültiger Verbrauchsbilanz. Keine Null-Heizlast als Ersatz. Gebäude bleibt bei gültigen Gebäudedaten berechenbar. Sensitivitätsstunden bleiben leer. Alte Prozentfelder dienen nur der Migration und werden nicht verrechnet. Gebäudegeometrie, WRG-Regeln, Temperaturen, Plausibilitätsschwellen und LG-Kennlinien werden nicht angepasst, um Ergebnisse anzugleichen. Anonyme Kontrollrechnung: 15.156 kWh × 0,82 − 6.250 kWh, geteilt durch 2.100 h = 2,9418667 kW ohne weitere Quellen. Mit bestätigtem Brennwerttyp (Modellannahme 0,90) = 3,5192381 kW. 3.000 kWh solare Warmwasser-Nutzwärme erhöhen das Verbrauchsergebnis um genau 3.000/2.100 kW. Diese Rechenbeispiele bestätigen keine tatsächliche Gebäudeheizlast. ## Zweck und fachlicher Status Vorvertriebliche Gebäude-Heizlast-Indikation aus wenigen Angaben. Keine Berechnung einzelner Räume, kein hydraulischer Abgleich, kein Energieausweis und keine technische Freigabe. Einheit aller Heizlasten: kW. Die Ausgabe auf eine Dezimalstelle ist eine Darstellungsentscheidung und keine Genauigkeitszusage. **Pilotmodell: physikalisch strukturierte, aber bislang nicht empirisch kalibrierte Heuristik.** Softwaretests bestätigen Rechenwege und Schutzmechanismen, nicht die Übereinstimmung mit realen Norm-Heizlasten. Vor regulärer Angebotsfreigabe ist ein Vergleich mit dokumentierten Objekten erforderlich. Mit den ausdrücklich ergänzten Angaben liegen alle fünf geforderten Beispielpaare weit auseinander; das wird nicht durch nachträgliche Faktorenanpassung verschleiert. Der BWP beschreibt sowohl ein erweitertes Baualtersklassenverfahren mit Referenzbauteilen als auch verbrauchsbasierte Verfahren mit Nutzungsgrad und Vollbenutzungsstunden. Unser Rechner ist eine eigenständige Implementierung mit eigenen Ersatzannahmen, kein Nachbau oder zertifiziertes BWP-Verfahren. [BWP-Methodik](https://api.waermepumpe.de/documentation/heatingLoad), [BWP-Rechner](https://www.waermepumpe.de/werkzeuge/heizlastrechner/). ## Erneute Prüfung und Eingaben in Modell 3.1 Der gemeldete Fall 150 m² / Reihenmittelhaus / 1976 / zweimal 9.600 kWh ist in CONSUMPTION_AUDIT.md unabhängig nachgerechnet. 9,2 kW A und 2,4 kW B sind mit den alten drei-Personen-/NT-2000-Beispielwerten reproduzierbar. Mit zwei Personen, Gas-Warmwasser und Kessel 2001 bei unbekanntem Typ ergibt B unter den sonst unveränderten Annahmen 3,03 kW; A bleibt 9,25 kW. Das ist keine gemessene Heizlast. Die Abweichung bleibt ungeklärt; der Mittelwert und die LG-Auswahl bleiben ausgesetzt. Start jetzt mit einem eigenen leeren Objekt. Beispiele laden nur auf Auswahl; bei Bearbeitung bleiben ihre übrigen Vorgaben sichtbar als Testannahmen markiert. Kesseltyp, Baujahr und Zirkulation sind direkt in Schritt 2 erreichbar. Der Ergebnisbereich zeigt die aktuelle Verbrauchsrechnung und die größten geschätzten Gebäudeverluste. Die A/B-Koeffizienten wurden durch diese Prüfung nicht empirisch kalibriert oder pauschal verändert. Zusätzliches, abwärtskompatibles Format-4-Feld `diagnostics`: `annualCount` (Anzahl), `annualTotal` (Summe in der Eingabeeinheit), `lossContributions` (kW je Bauteilgruppe, Wärmebrücken und Lüftung), `hoursSensitivity` (h/a und kW), `impliedHours` (h/a). Beiträge = H_i × ΔT / 1.000; Summe entspricht A. Sensitivität = korrigierte Raumwärme / Szenariostunden. Zentral gewählte 1.800 / 2.100 / 2.400 h/a sind illustrative Rechenvarianten, keine lokale Klimaspanne oder Fehlergrenzen. `impliedHours` = korrigierte Raumwärme / A ist nur ein algebraischer Gegencheck. Diese Diagnosefelder verändern weder B, die Zusammenführung noch die Geräteauswahl. ## Korrektur der Gebäudegeometrie in Modell 3 Die bisherige Skalierung einzelner Beispielgebäude über Wohnfläche, effektive Geschosse und zusätzliche Expositionsfaktoren entfällt. Sie übertrug objektspezifische Formen auf andere Häuser: im Vergleich 160 m² / 1985 / zwei Geschosse entstanden 331 m² EFH-Außenwand, aber nur 47 m² bei einer Doppelhaushälfte. Ein kleines MFH wurde aus einer 707-m²-Referenz abgeleitet. Das war keine belastbare allgemeine Geometrieabbildung. Neu: Hüllflächen werden separat mit dem veröffentlichten TABULA-Schätzansatz bestimmt. Die Altersklassen liefern weiterhin thermische Bauteileigenschaften. Daher ändern sich auch Doppel-/Reihenhauswerte; deren bisher niedrige Ergebnisse sind kein Kalibrierziel. Verbrauchsrechnung, 50/50-Gewichtung, 30-%-Bewertungsschwelle und LG-Kennlinien blieben bei dieser Geometrieänderung unverändert. Der zusätzliche vorläufige Bereich bis 35 % aus Modell 3.6.0 ist im Abschnitt Zusammenführung beschrieben. Vorher-/Nachher-Vergleich: GEOMETRY_AUDIT.md. ## A – Gebäude und Wärmeverluste ### Nachvollziehbare Referenzdaten Quelle / Attribution: **IEE Projects TABULA + EPISCOPE (www.episcope.eu)**. Nutzung in eigener Software gemäß [Downloadseite](https://episcope.eu/communication/download/). [Öffentliche Excel-Datentabelle](https://episcope.eu/fileadmin/tabula/public/calc/tabula-calculator.xlsx), abgerufen am 30.09.2026. Der Import `extract-tabula.py` liest ausschließlich Daten, keine Makros. Quellblatt `Calc.Set.Building`; Filter: Land DE, Variante 1, Status Typology, ID DE.N.*, Gen, Klassen SFH/TH/MFH. Es resultieren 35 Referenzgebäude. Alle übernommenen Zahlen, die Quell-ID und der SHA-256-Fingerabdruck stehen in `dist/tabula.mjs` und im Konfigurationssnapshot unten. Diese Gebäude sind Beispiele, keine statistischen Durchschnittsgebäude und keine Norm-Heizlasten. Quellfelder: `A_C_Living`, `n_Storey_effective`, `Code_AttachedNeighbours`, `Year1/2_Building`. Wohnfläche, Geschosse und Nachbarschaft des Beispiels bleiben reine Herkunftsmetadaten; sie skalieren keine Zielflächen mehr. Pro Bauteil: `A_Calc_*`, `U_Actual_*` des Baseline-Zustands und `b_Transmission_*`; Fenster/Türen b = 1. Die Baseline kann bereits übliche Instandsetzungen enthalten. „Bauzeitlicher Zustand“ ist daher kein Nachweis völliger Unsaniertheit. EFH → SFH, Doppel-/Reihenhaus → TH, kleines MFH → MFH. Baujahr bestimmt die Referenzklasse. Vor 1860 existiert keine TH-Referenz; älteste vorhandene TH-Klasse als ausdrücklich markierter Ersatz mit Sperre der Zusammenführung. MFH benötigen Gesamtfläche, Gesamtverbrauch und mindestens zwei Wohneinheiten. ### Hüllflächenschätzung und Wärmebilanz Primärquellen: [TABULA Evaluation Database, Kapitel 2 / Tabelle 6, S. 17](https://episcope.eu/fileadmin/tabula/public/docs/report/TABULA_WorkReport_EvaluationDatabase.pdf), [TABULA-Rechenmappe, Calc.Demo.EnvAreaEstim](https://episcope.eu/fileadmin/tabula/public/calc/tabula-calculator.xlsx) und [Common Calculation Method, Kapitel 7, S. 28](https://episcope.eu/fileadmin/tabula/public/docs/report/TABULA_CommonCalculationMethod.pdf). Geprüft am 30.09.2026. Die Flächenschätzung ist ein statistischer Näherungsansatz, keine Norm-Heizlastformel und kein Aufmaß. F = gesamte beheizte Wohnfläche einschließlich beheizter Keller-/Dachflächen, n = beheizte Vollgeschosse ohne Keller und Dachgeschoss, h = mittlere Raumhöhe. Zentral in CONFIG.geometry: 1. Bezugsfläche A = 1,1 × F. Umrechnung ist keine Sicherheitsreserve. Ohne bekannte Teilflächen: effektive Ebenenzahl N = n + f_K × 1 + f_D × 0,75; Geschoss-Bezugsfläche G = A/N. f = 1 beheizt, 0,5 teilweise beheizt, 0 unbeheizt/nicht vorhanden. Tabelle 3, gedruckte Seite 7, enthält 0,75 für Dachgeschosse; der Fließtext auf Seite 9 nennt abweichend 0,7. Hier ausdrücklich die Tabellenkonvention 0,75, keine Normvorgabe. Bei unbekannter Beheizung ist f=0,5 eine **eigene** Mittelannahme mit Zusatzunsicherheit. 2. Sind beheizte Teilflächen K und/oder D bekannt, werden sie von F abgezogen. Der Nenner enthält dann nur n und die Gewichtsterme für die noch unbekannten Teilflächen: G = 1,1 × (F − K_bekannt − D_bekannt) / (n + f_K für unbekannte Kellerfläche + 0,75 × f_D für unbekannte Dachfläche). Bekannte Flächen überschreiben nur die Flächenschätzung, niemals F. Dokumentierte effektive Ebenenzahl = A/G. Nur beheizte/teilbeheizte Bereiche verwenden Teilflächen. Summe bekannter Teilflächen muss kleiner als F sein; sonst Eingabefehler. 3. Bruttofassade = (0,7 × A + q) × h/2,5; q = 50 freistehend, 25 bei einem angebauten Nachbargebäude, 5 bei zwei Nachbarn. q gilt **einmal pro Gebäude**, keine weitere Expositionsmultiplikation. Raumhöhenfaktor ist eine eigene Erweiterung. 4. Öffnungen = 0,18 × A; Türen = 0,01 × A + 1,5; Fenster = Öffnungen − Türen; Außenwand = Bruttofassade − Öffnungen. Öffnungen werden einmal abgezogen. 5. Unterer Abschluss = 1,2 × G + 5. Oberer Abschluss: Decken-/Flachdachszenario C = 1,2 × G + 5; beheiztes Schrägdachszenario R = 1,6 × G + 15. Tatsächlich verwendete Näherung = (1−f_D) × C + f_D × R. Teilweise beheiztes DG verwendet die Dämmzustände von Dach und oberster Geschossdecke, flächengewichtet. Teilweise beheizter Keller verwendet Bodenplatte/Kellerdecke mit Gewicht f_K bzw. 1−f_K. Die Mischung ist eine eigene Näherung, keine exakte Zonierung. Auch mit bekannter Teilfläche bleibt bei „teilweise“ der Grenzflächenanteil 0,5, weil aus beheizter Wohnfläche allein die Grenzflächen nicht gemessen sind. **Grenzen:** Vollgeschosse weiterhin gleich groß angenommen; Dachschrägen, Gauben, Anbauten und Kellerwände sind nicht vermessen. Keller-/Erdreichwärmeverluste bleiben typologische b-Faktoren; keine Berechnung nach DIN EN ISO 13370 und kein zusätzlicher pauschaler Erdreichabschlag. Lüftungsvolumen weiterhin F × h. Bei G außerhalb 15–500 m² oder bekannter Keller-/Dachteilfläche über 1,5-facher Vollgeschossfläche wird die Zusammenführung zur Prüfung gesperrt; eigene zentral konfigurierte Plausibilitätsgrenzen. Unklare/teilweise Beheizung, Altzählweise oder beheizter Keller: +0,05 Gebäudeunsicherheit, höchstens einmal für diese Geometriegruppe. Unbekannte Dämmung zusätzlich verwendeter Teilgrenzen: je +0,05. Keine Änderung des Punktwerts durch diese Unsicherheitszuschläge. MFH: eigene altersabhängige U-/b-Referenz, gesamte beheizte Wohnfläche, tatsächliche Geschosszahl; freistehende Lage als sichtbare Annahme. Zwei Wohneinheiten verdoppeln keine Flächen. Ein angebautes MFH benötigt gesonderte Geometrieprüfung. Gleich große EFH/MFH dürfen ähnliche Hüllflächen haben; unterschiedliche thermische Referenzwerte bleiben wirksam. Innerhalb jeder Bauteilgruppe werden deren geschätzte Gesamtflächen nach den Anteilen der Referenzbauteile aufgeteilt (A_ref,i / Summe A_ref,Gruppe). Damit bleiben gemischte U-/b-Werte erhalten; die absolute Fläche und Form des Beispielgebäudes wird nicht übernommen. H_i = A_i × U_i × b_i. Die b-Werte sind Näherungen für den Auslegungsfall, keine normgerechte Erdreichberechnung. Wärmebrücken: H_WB = Summe(A_i × b_i) × ΔU_WB, mit 0,10 W/(m²·K), bei guter Dach- und Wanddämmung 0,05 (eigene Annahmen). H_T = Summe H_i + H_WB. H_V = 0,34 × (F × h) × n_eff. Q_A = (H_T + H_V) × (T_innen − T_außen) / 1.000. Spezifischer Wert = 1.000 × Q_A / F. Der Luftinhalt nutzt weiterhin F × h, nicht das TABULA-Bruttovolumen. **Sanierungs-U-Werte** sind weiterhin eigene Ersatzannahmen in W/(m²·K): Wand mäßig 0,60 / gut 0,25; Dach teilweise 0,45 / gut 0,18; Boden gedämmt 0,30. min(Referenz-U, Sanierungs-U) verhindert Verschlechterung eines bereits besseren Ausgangszustands. Unbekannt nutzt die Referenz mit Zusatzunsicherheit. Sanierungsjahre erzeugen keinen zweiten Bonus; sie dienen der Vergleichbarkeit der Verbrauchsjahre. Fenster-Uw: Alt-/Einfachglas 4,70; ältere Zweifachverglasung 2,80; moderne Zweifachverglasung 1,30; Dreifachverglasung 0,90. Bei unbekannt: konkreter Referenz-Uw. Fenster-Uw bezieht sich auf das gesamte Fenster. Türen behalten den Referenzwert; individuelle Nachweise noch nicht eingebbar. Lüftungswechsel: Altfenster 0,70 h⁻¹; ältere Zweifachfenster/unbekannt 0,60; moderne Zwei-/Dreifachfenster 0,50. WRG: 0,15 Infiltration + 0,40 × (1 − 0,75) = 0,25 h⁻¹, nur auf Lüftung. Eigene Annahmen, keine Luftdichtheitsmessungen. 0,34 Wh/(m³·K) ist eine Näherung für die volumetrische Wärmekapazität von Luft. Keine internen/solaren Gewinne, kein Aufheiz- oder pauschaler Sicherheitszuschlag, kein empirischer Jahresenergie-Kalibrierfaktor als Heizlast-Abschlag. Die Flächenschätzung kann vom konkreten Haus deutlich abweichen. Die Quellenbasis der Geometrie belegt keine bestimmte Genauigkeit der daraus abgeleiteten Spitzen-Heizlast. ### Standort Die [BWP-Klimakarte](https://www.waermepumpe.de/werkzeuge/klimakarte/) stellt PLZ-bezogene Norm-Außentemperaturen bereit. Nutzer übertragen den Wert mit Quellenangabe. Eine formal gültige fünfstellige PLZ wird nicht automatisch als realer Ort verifiziert. Die [BWP-API](https://api.waermepumpe.de/documentation) verlangt Authentifizierung; kein Token liegt vor. Es werden weder PLZ-Werte erfunden noch fremde Zugangsdaten aus Webseiten extrahiert. Ohne Standortwert: sichtbare Annahme −12 °C. Eine Größenordnung von ±4 K wird als Klimasensitivität genannt; in der Bandbreite ist hierfür pauschal ein zusätzlicher relativer Unsicherheitsbeitrag von 0,12 enthalten. Kein berechnetes lokales Klimaintervall. Ohne belegten Standortpunkt erfolgt keine LG-Empfehlung; die fehlende Angabe wird benannt. ## B – Verbrauchsverfahren Ein bis drei volle Jahre werden arithmetisch gemittelt. Eingabe eines bereits gebildeten Mittels in einer Zeile ist möglich, wird aus Vorsicht als Einjahresangabe behandelt. Endjahr, Einheit und Zusatzannahmen werden gespeichert. - kWh: Faktor 1. - Heizöl Liter: 10 kWh/l, **Heizwertbasis**. - Gas m³: Brennwert Hs × Zustandszahl z. Sichtbare Ersatzwerte 11 kWh/m³ und 0,95; vorzugsweise Werte aus der konkreten Abrechnung oder direkt deren kWh. - Flüssiggas: 6,57 kWh/l bzw. 12,8 kWh/kg, angenommene typische Heizwerte; Zusammensetzung/Dichte prüfen. - Fernwärme und Direktstrom: kWh aus separater Heizenergieabrechnung. Haushaltsstrom darf nicht mitgerechnet werden. - Sonstige: nur nachgewiesene Endenergie-kWh plus expliziter Nutzungsgrad; keine automatische Umrechnung exotischer Brennstoffe. Gasformel gemäß [DVGW Gasabrechnung](https://www.dvgw.de/themen/gas/verbraucherinformationen/gasabrechnung?type=98). Öl-Heizwert 10 kWh/l und Unterschied Heizwert/Brennwert: [KEA-BW, Dokumentation Wärmepreisrechner, 30.01.2026](https://www.kea-bw.de/fileadmin/user_upload/Waermewende/Downloads/2026.01.30_Waermepreisrechner_DokuManual_v1.2_print_.pdf). Die LPG-Werte sind eigene typische Annahmen, keine hier verifizierten Lieferdaten. Auch bei Öl-/LPG-Eingabe in kWh ist die Heizwertbasis erforderlich; bei abweichender Abrechnung muss der Nutzungsgrad passend umgerechnet werden. ### Jahresnutzungsgrade | Energieträger | Brennwertkessel | Niedertemperatur | Standard | Unbekannt | |---|---:|---:|---:|---:| | Gas (Hs) | 0,90 | 0,80 | 0,70 | 0,82 | | Öl (Hi) | 0,95 | 0,82 | 0,72 | 0,80 | | LPG (Hi, konservative Annahme) | 0,90 | 0,80 | 0,70 | 0,82 | Fernwärme 0,95; Stromdirektheizung 1,00. Sonstige intern 0,80, jedoch verhindert der Validator die Nutzung ohne expliziten Override. Bei fossilen Kesseln älter als 25 Jahre: 0,03 absolut abziehen. Nutzer-Override ersetzt Typwert und Altersabschlag. Sämtliche Grade sind Modellannahmen inklusive grober Anlagenverluste, keine Wirkungsgradmessungen. Modelljahr 2026 wird zentral begrenzt; jährlich aktualisieren. Q_nutz = E_end × η. Warmwasser: Q_WW = Bewohner × 750 kWh/(Person·a) + bei bestätigter Zirkulation Wohneinheiten × 500 kWh/a. Nutzwärmeseitige Modellpauschale inklusive grober Speicher-/Verteilverluste. Bei separat erzeugtem Warmwasser ist der Abzug null. Unbekannte Warmwasserzuordnung sperrt die Verbrauchsbilanz. Bei bestätigter reiner Solar-Warmwasserbereitung und unbekanntem Beitrag gilt die oben dokumentierte Bandbreite. Q_WW,Haupt = Q_WW − Q_Solar,WW − Q_Ofen,WW. Q_Ofen,Raum = Q_Holz + Q_Pellets − Q_Ofen,WW. Q_Raum = E_end × η − Q_WW,Haupt + Q_Ofen,Raum. Q_Raum,korr = Q_Raum × k_lokal; Q_B = Q_Raum,korr / Vollbenutzungsstunden. Die Quellenbilanz wird vor der Positivitätsprüfung gebildet. Negativer Haupt-Raumwärmeanteil oder nichtpositive gesamte Raumwärme erfordert Klärung. Bei separatem Warmwasser werden weder solare noch Ofen-Warmwasseranteile dem Hauptverbrauch zugerechnet. Keine automatische Verfügbarkeit eines Zusatzofens am Auslegungstag unterstellen. Vollbenutzungsstunden standardmäßig 2.100 h/a: **nicht klimatologisch verifiziert**. Fachkundige Nutzer können einen regionalen Wert mit Quelle eintragen. Er muss dieselben Klima-/Temperaturbezüge wie die korrigierte Wärme verwenden. Gebäude- und Verbrauchswege tauschen keine ermittelte Heizlast oder spezifischen W/m²-Werte aus. Sie sind rechnerisch getrennte Schätzwege, nicht statistisch unabhängig: Nutzungsannahmen, Fläche und Klimabezüge können korreliert sein. ### Witterungsbereinigung Ohne Nachweis k_lokal = 1; Warnung „keine Bereinigung“. Eingabe eines lokalen Normaljahr-/Verbrauchsjahr-Gradtage-Verhältnisses mit Quelle/Zeitraum. Bei mehreren Jahresverbräuchen muss ein passender gewichteter Gesamtfaktor verwendet werden: Summe(E_raum,j × k_j) / Summe(E_raum,j). Die UI berechnet diesen Faktor nicht aus Wetterrohdaten. Der DWD beschreibt seine Energieausweis-Klimafaktoren als Referenz Potsdam / jeweilige lokale Jahresgradtage. Diese sind **keine reine lokale Witterungskorrektur** und dürfen nicht ungeprüft mit örtlichen Vollbenutzungsstunden kombiniert werden. [DWD-Datensatzbeschreibung v22.3](https://opendata.dwd.de/climate_environment/CDC/derived_germany/techn/monthly/climate_correction_factor/recent/BESCHREIBUNG_derivgermany_techn_monthly_climate_correction_factor_recent_de.pdf). Keine automatische DWD-Anbindung implementiert. Teilbeheizung: Q_A gilt für die gesamte künftig beheizte Fläche, Q_B weiterhin für den bisherigen Verbrauch. Keine falsche lineare Hochrechnung durch den Flächenanteil; stattdessen Zusatzunsicherheit, Rückfrage und Sperre der Zusammenführung. Abweichende Wunschtemperatur ändert A; B bildet historische Nutzung ab und erhält Warnhinweis. Sanierungen führen nicht zu Doppelrabatten; Verbräuche vor/im Sanierungsjahr werden markiert. ## C – Abgleich und Ergebnisband d = |Q_A − Q_B| / ((Q_A + Q_B)/2). Symmetrischer Nenner, keine versteckte Abhängigkeit von der Reihenfolge. Hohe Übereinstimmung d ≤ 0,15; mittel 0,15 < d ≤ 0,30; niedrig d > 0,30. Schwellen sind konfigurierbar. Hohe Übereinstimmung bedeutet nicht hohe absolute Genauigkeit. Relative Basis-Unsicherheit u_A = 0,20, u_B = 0,20. Additive Beiträge: | Auslöser | Gebäude | Verbrauch | |---|---:|---:| | Je unbekanntem Bauteil bzw. WRG | +0,05 | – | | Standortwert unbekannt | +0,12 | – | | Kesseltyp unbekannt, ohne Override | – | +0,08 | | Nur ein Verbrauchsjahr | – | +0,07 | | Zusatzheizung vorhanden | – | +0,10 | | Teilbeheizung | – | +0,12 | | Verbrauch nicht sicher repräsentativ | – | +0,12 | | Ungewöhnliche Geschossfläche / älteste TH-Ersatzklasse | +0,12 | – | | Vollbenutzungsstunden ohne Quellenangabe | – | +0,05 | | Keine Witterungsbereinigung / Quelle | – | +0,05 | | Warmwasser oder Zirkulation unbekannt (einmal) | – | +0,05 | | Gas m³ ohne bestätigte Abrechnungswerte | – | +0,05 | | Verbrauch vor/im Sanierungsjahr (einmal) | – | +0,12 | | Größtes/kleinstes Verbrauchsjahr > 1,40 | – | +0,07 | Deckelung jeweils bei 0,60. Datenqualität „eingeschränkt“, wenn max(u_A,u_B) > 0,35, sonst „orientierend“. Alle Unsicherheitswerte sind eigene Einschätzungen, keine empirischen Standardabweichungen. Reguläre Zusammenführung, wenn d ≤ 0,30 und keine Sperrgründe bestehen. Seit Modell 3.6.0 wird bei 0,30 < d ≤ 0,35 ohne weitere Sperrgründe eine ausdrücklich vorläufige Indikation angezeigt (`provisional = true`, `canCombine = true`, Datenqualität mindestens „eingeschränkt“). Die LG-Auswahl bleibt dabei gesperrt (`lg.mode = blocked`, `lg.reason = provisional-indication`, `lg.nominal = null`). Über 0,35 bleibt auch die gemeinsame Zahl gesperrt. Die 35-%-Grenze ist eine eigene, zentral in CONFIG.plausibility.provisional konfigurierte Prüfregel, kein DIN-Grenzwert und kein Genauigkeitsnachweis. Gerechnet wird mit ungerundeten Werten; Toleranz 1e-12 ausschließlich gegen Gleitkommafehler an den inklusiven Grenzen. Bei Solar-Bandbreiten entscheidet weiterhin die größte Abweichung beider Endpunkte. Der Prüfhinweis erscheint direkt am Ergebnis, in der Angebotsübersicht und im PDF. Sperrgründe: Nutzung nicht bestätigt; teilweise bisher unbeheizte Fläche; ein Verbrauchsjahr vor/im Sanierungsjahr; Verhältnis größtes/kleinstes Jahresverbrauch > 1,40; Endenergieverbrauch < 30 oder > 350 kWh/(m²·a); Geschossfläche außerhalb der Prüfschwellen / fehlende alte TH-Klasse. Die Frage zur Vergleichbarkeit der Nutzung hat im neuen Objekt den Wert „Noch nicht geklärt“. Zulässiger Arbeitswert Q = (0,50 × Q_A + 0,50 × Q_B) × (1 + 0). Gewicht und Sicherheitsaufschlag zentral in CONFIG.combination. Die gleiche Gewichtung ist eine Entscheidungshilfe, keine empirisch optimale Gewichtung. Unsicherheitsannahmen verändern nicht mehr die Gewichte. Bei einer Sperre sind `combined = null`, `canCombine = false`, `lg.mode = blocked`, `lg.nominal = null`; API-Verbraucher müssen Null verarbeiten und dürfen keine Null-kW-Auslegung erzeugen. Für jedes Verfahren separat: [Q_i(1−u_i), Q_i(1+u_i)]. Nur bei zulässiger Zusammenführung wird die gemeinsame Hüllspanne min(Untergrenzen) bis max(Obergrenzen) angezeigt. Intern bleibt sie zur Nachvollziehbarkeit verfügbar. Keine statistischen Konfidenzintervalle oder garantierten Genauigkeiten. Die obere Bandgrenze ist kein Zuschlag auf die angezeigte Indikation. ## D – LG THERMA V R290 Primärquelle: [2026 LG R290 Monobloc Leaflet](https://www.lg.com/content/dam/channelbtb/lgcom/global/business/download/airsolution/2026%20LG%20R290%20Monobloc%20Leaflet_20260922_081622_.pdf), am 29.09.2026 von der offiziellen [LG-Downloadseite](https://www.lg.com/global/business/hvac/residential-solutions/air-to-water-heat-pumps/) abgerufen. Broschürenseiten 16 und 22, PDF-Doppelseiten 9 und 12, tabellarisch und visuell geprüft. HFD-Generation 2026 mit PHCS1 EEWXLEU, nicht automatisch ältere HF UB40/UB60 oder andere Innenmodule. Die ausgewählten, nicht grau markierten Heizleistungspunkte einschließlich Abtaueinfluss stehen vollständig in `CONFIG.lg.curves`. Achsen: Außenluft −20 / −15 / −7 / −4 / −2 / +2 / +7 °C; Vorlauf 35 / 40 / 45 / 50 / 55 °C. Die Tabelle wurde am 30.09.2026 um die 40-/50-°C-Spalten und die wärmeren Außenpunkte ergänzt. LG erlaubt direkte Interpolation, keine Extrapolation. Herstellerhinweise zu Installationsabhängigkeit und nicht garantierten Nicht-Nennwerten gelten weiter. Implementiert: bilineare Interpolation zunächst in der Vorlauftemperatur, dann Außenluft. Beispiel HM161/163HFD: bei A−7/W55 = 12,00 kW; bei A−15/W55 = 9,65 kW. Die Bezeichnung 16 kW ist keine Leistungsgarantie bei tiefen Temperaturen. ### Heizflächen statt manueller Vorlauftemperatur (neu in 2.2) Die Eingabe erfasst Fußbodenheizung, Heizkörper oder beides. Ein unbekannter Zustand ist ebenfalls auswählbar. `CONFIG.heatEmitters` enthält die zentralen Angebotsannahmen: | Heizflächen | Angenommener Vorlauf am Auslegungspunkt | |---|---:| | Fußbodenheizung | 35 °C | | Heizkörper | 55 °C | | Beides | 55 °C | | Unbekannt | kein Temperaturwert und keine Geräteempfehlung | Dies ist eine Vereinfachung der Eingabe, keine Verbesserung der Messgenauigkeit. Aus Heizflächentyp allein ist keine sichere Auslegungstemperatur ableitbar. [Viessmann beschreibt die Abhängigkeit von Größe, Auslegung und Gebäudezustand](https://www.viessmann.de/de/wissen/infos-und-tipps-zum-kauf/vorlauftemperatur-der-waermepumpe.html) und nennt für Flächenheizungen 30–45 °C, für moderne Bad-/Plattenheizkörper 55–60 °C sowie für Niedertemperaturheizkörper 40–50 °C als Richtwerte. Kleine ältere Heizkörper können deutlich höhere Temperaturen benötigen. Die im Rechner gewählten 35/55 °C sind **eigene Vorvertriebsannahmen**, keine Vorgabe für jedes Objekt und kein garantierter oberer Grenzwert. Quellenprüfung 30.09.2026. Bei gemischten Heizflächen wird ein gemeinsamer Wärmeerzeuger auf dem höheren Temperaturniveau angenommen; der Fußbodenheizkreis muss passend versorgt werden. Kein arithmetischer Temperaturmittelwert, kein Nachweis der Hydraulik. Da die konkrete Auslegung fehlt, erscheinen Herkunft und Ungewissheit im Eingabefeld, Ergebnis, Warnungen, Rechendetails, Druck und JSON. Ein höherer tatsächlicher Vorlauf kann eine andere LG-Klasse oder Anpassungen der Heizflächen erfordern. Temperaturänderungen verändern hier ausschließlich den Gerätevergleich, nicht die unabhängig berechnete Gebäude-Heizlast. Deshalb kein künstlicher Zuschlag auf A/B oder deren Bandbreite. `calculate` leitet Vorlauf und Auslegungsregel bei jeder Berechnung neu aus Heizflächen und Konfiguration ab. Es gibt kein manuelles Vorlauffeld mehr. `heatingSystem.source = emitter-assumption` und `verified = false` kennzeichnen die Annahme; bei unbekannten Heizflächen `source = unknown`, `flow = null` und keine LG-Klasse. Fehlende/ungültige Heizflächen werden seit Datenformat 3 (aktuell 4) als Eingabefehler abgefangen. Mitgesendete Altwerte `flow` und `sizingStrategy` werden durch die abgeleiteten Werte ersetzt und können die feste Regel nicht umgehen. Das Exportfeld `input.flow` ist jetzt ein abgeleiteter Rechenwert. ### Auswahl mit ausdrücklich begrenzter elektrischer Zusatzwärme Modell 2.0 verlangte volle Deckung der mittleren Indikation allein durch den Verdichter. Dadurch konnte eine geringe Leistungslücke einen Sprung um eine Geräteklasse auslösen. Seit Modell 2.1 ist begrenzte elektrische Zusatzwärme zugelassen; **Modell 2.2 nutzt diese Regel immer**, ohne Umschalter. Die mittlere Heizlast selbst bleibt unverändert; kein Abschlag und kein neuer Sicherheitsaufschlag. Der prominente Vergleich mit der größeren Klasse ohne Heizstab entfällt. Im Detailvergleich bleibt der tatsächliche Zusatzbedarf jeder Klasse sichtbar; technische Vergleichsfunktionen können weiterhin volle Deckung prüfen. Fachliche Orientierung: Der [BWP erläutert den Verzicht auf pauschale Überdimensionierung und den Einsatz elektrischer Zusatzwärme unterhalb des Bivalenzpunkts](https://www.waermepumpe.de/verbraucher/darum-waermepumpe/fragen-sie-die-experten/antwort-der-experten/sollte-ich-besser-eine-waermepumpe-mit-groesserer-heizleistung-nehmen-um-reserven-bei-tiefen-aussentemperaturen-zu-haben/). Dort werden abhängig von der Norm-Außentemperatur Bivalenztemperaturen im Bereich −7 bis −2 °C genannt. Ergänzende Quelle: [BWP-Leitfaden Wärmepumpen dimensionieren](https://www.waermepumpe.de/fileadmin/user_upload/waermepumpe/07_Publikationen/BWP_LF_WPDimensionierung.pdf). **Die folgenden Zahlen und die Zielformel sind eigene Angebotsregeln, keine BWP-, LG- oder DIN-Vorgabe.** Sie bedürfen betrieblicher fachlicher Freigabe. Für die fünf angebotenen Klassen 7, 9, 12, 14 und 16 kW: 1. Vereinfachte Gebäudelinie bei Außentemperatur T: Q(T) = Q × max(0, (T_innen − T)/(T_innen − T_NAT)). Keine internen Gewinne. Der eingegebene Auslegungs-Vorlauf bleibt für alle Punkte konstant; keine unbekannte Heizkurve wird erfunden. 2. Wärmepumpenleistung P(T) aus bilinearer Interpolation. Prüfung bei T_NAT und allen wärmeren hinterlegten Außentemperaturen bis +7 °C. Auf jedem Abschnitt sind Q und P linear; daher genügt die Prüfung der Endpunkte für die größte Unterdeckung. 3. Zusatzbedarf am Auslegungspunkt D_NAT = max(0, Q − P(T_NAT)). Größter Zusatzbedarf D_max = max(0, max_T(Q(T) − P(T))). Beide Werte getrennt gespeichert; bei nicht monotonen Kurven können sie abweichen. 4. Zieltemperatur T_Ziel = max(T_NAT, clamp(T_NAT + 5 K, −7 °C, −2 °C)). Die Wärmepumpe muss ab diesem Punkt bis +7 °C allein decken. Dies ist eine eigene heuristische Zielbedingung, keine ortsspezifische Wirtschaftlichkeitsrechnung. 5. Standardstrategie `limited`: D_max ≤ 3,00 kW **und** D_max ≤ 0,20 × Q **und** vollständige Deckung ab T_Ziel. Die 20 % beziehen sich auf Leistung, ausdrücklich nicht auf Heizstabenergie pro Jahr. Grenzen, Zielverschiebung, Zielintervall und numerische Toleranz 10⁻⁹ kW stehen zentral in `CONFIG.lg.selection`. 6. Seit Modell 3.6.3 zusätzlich: angebotene Nennklasse ≥ ungerundete mittlere Heizlast (numerische Toleranz 10⁻⁹ kW). Konfiguration `requireNominalAtLeastLoad = true`. Die kleinste Klasse, die diese Bedingung UND die Kennlinienprüfung erfüllt, wird genannt. Das ist eine vorsichtigere betriebliche Angebotsregel, kein physikalischer Nachweis, keine LG- oder DIN-Vorgabe und kein pauschaler Heizlastaufschlag. Die Nennzahl ersetzt insbesondere nicht die verfügbare Heizleistung am Auslegungspunkt. `nominalEligible` und `limitedPerformanceEligible` weisen beide Prüfungen getrennt aus; `limitedEligible` verlangt beide. Intern bleibt `selectLg(..., strategy = none)` ausschließlich für technische Vergleiche/Regressionstests erhalten: D_max ≤ numerische Toleranz bedeutet keine rechnerische Unterdeckung im geprüften Bereich. Dieser Modus ist kein Eingabefeld und wird von `calculate` nicht aus Kundeneingaben übernommen. 7. Modellierter Bivalenzpunkt: Schnittpunkt P(T)=Q(T), linear aus den benachbarten Prüfstellen. Bei mehreren Schnittpunkten den wärmsten Übergang von Unter- zu Überdeckung nutzen. Bei Deckung überall ist kein Bivalenzpunkt im Bereich nötig; bei fehlender Deckung am warmen Rand wird kein Schnittpunkt als sichere Deckungsgrenze behauptet. 8. Unsicherheitsband bleibt separat. Die obere Bandgrenze erzwingt keine größere Klasse; fehlende Deckung und deren Leistungslücke werden angezeigt. Liegt die mittlere Indikation über 16 kW oder erfüllt keine Einzelklasse die Regel, erfolgt gesonderte Planung statt erzwungener 16-kW-Empfehlung. Kontrollrechnung ab Modell 3.6.1: Q = **8,90 kW**, T_NAT = −12 °C, innen 20 °C, Vorlauf 55 °C. Die 9-kW-HFD liefert 7,35 + (8,00−7,35) × 3/8 = **7,59375 kW**. Es fehlen **1,30625 kW**, entsprechend 14,68 % der Heizlast. Bei −7 °C liefert sie 8,00 kW gegenüber 7,509375 kW Gebäudelast und deckt auch alle wärmeren geprüften Punkte. Sie erfüllt damit die neue Regel, während die 7-kW-Klasse sowohl die Zusatzleistungsgrenzen als auch die Deckung am Zielpunkt verfehlt. Die früheren Grenzen (10 % und 1 kW) schlossen die 9-kW-Klasse aus und führten zur 12-kW-Klasse. Bei 9,00 kW Heizlast ist die 9-kW-Klasse unter denselben Bedingungen ebenfalls zulässig; bei 9,50 kW oder deutlich kälterem Auslegungsklima nicht automatisch. Kontrollrechnung ab Modell 3.6.3: Bei 8,00 kW und −12/55 °C erfüllte die 7-kW-Klasse die bisherigen Grenzen mit 6,45 kW Verdichterleistung und 1,55 kW Zusatzbedarf (19,38 %), obwohl ihre Nennklasse bereits unter der mittleren Heizlast lag. Die zusätzliche Nennklassen-Untergrenze schließt sie für die automatische Angebotsplanung nun aus. Die 9-kW-Klasse liefert 7,59375 kW, benötigt 0,40625 kW Unterstützung (5,08 %) und deckt ab etwa −10,77 °C allein. Es wird daher 9 kW empfohlen. Auch bei 8,00 kW und −12/50 °C sowie bei der unveränderten 110-m²-Testeingabe mit 7,657488 kW lautet die Empfehlung 9 kW. Bei genau 7,00 kW bleibt 7 kW zulässig, sofern die tatsächliche Kennlinie alle Bedingungen erfüllt; oberhalb 7,00 kW greift die nächste geeignete Klasse. Analog bleibt bei genau 9,00 kW unter den genannten Bedingungen 9 kW möglich. Bei 11,90 kW und −12/55 °C bleibt es wegen der tatsächlichen Kälteleistung bei 14 kW. Die Regel gilt allgemein, ohne kundenspezifische Sonderfälle. Kontrollrechnung ab Modell 3.6.2: Q = **11,90 kW**, T_NAT = −12 °C, innen 20 °C, Vorlauf 55 °C. Die 14-kW-HFD liefert 8,99 + (11,00−8,99) × 3/8 = **9,74375 kW**. Es fehlen **2,15625 kW** (18,12 %), der modellierte Bivalenzpunkt liegt bei **−8,54 °C**. Volle Deckung ab −7 °C ist erfüllt. Die frühere 2-kW-Obergrenze schloss diese Klasse trotz ausreichender relativer Deckung aus und erzwang 16 kW. Die neue absolute Obergrenze liegt bei 3 kW; bis 15 kW Heizlast bleibt die unveränderte 20-%-Grenze entscheidend. Die 12-kW-Klasse liefert bei −12/55 °C nur **9,075 kW**, benötigt **2,825 kW** (23,74 %) und verfehlt zusätzlich die volle Deckung ab −7 °C knapp. Sie wird unter diesen Annahmen nicht automatisch empfohlen. Bei tatsächlich belegten 45 °C Vorlauf ergibt dieselbe Kennlinienprüfung 12 kW; der Aufmaßrechner erfindet diesen niedrigeren Vorlauf nicht. Daten aus LG-Leistungstabelle, gedruckte S. 22 (PDF-Doppelseite 12), am 21.10.2026 erneut geprüft. Die 3-kW-Grenze ist eine Angebotsregel, keine Bestätigung einer vorhandenen oder eingebauten Heizstufe. Tatsächliche Zusatzheizung, elektrische Freigabe und Anlagenregelung bleiben vor Ausführung zu prüfen. Es wird **kein pauschaler 10-%-Leistungsbonus** auf LG-Nennleistungen oder Kennlinien gerechnet. Die Tabellen weisen bereits maximale Heizleistung einschließlich Abtauwirkung aus. Gebäude- und Verbrauchsrechnung, gemeinsame Heizlast, Unsicherheitsband und alle Sperren bei ungeklärten Daten sind unverändert. Die Regel begrenzt Spitzenleistung, garantiert aber keinen kleinen jährlichen Heizstabstromanteil. Die Kennlinien enthalten keine im Rechner geprüfte Mindestmodulation. Daher keine Aussage zur optimalen Wirtschaftlichkeit oder zum Taktverhalten. Kein jährlicher Heizstabstrom berechnet: dafür fehlen Häufigkeitsverteilung der Temperaturen, COP, Heizkurve und Betriebsregelung. Nötige Heizstufe und Freigabepunkt müssen fachlich festgelegt werden; eine errechnete kleine Leistungslücke bedeutet nicht, dass ein Heizstab genau auf diese Leistung moduliert. Warmwasser-Ladeleistung/-zeiten, Sperrzeiten, Hydraulik, Schall, elektrische Anschlussleistung und tatsächliche Zusatzwärmequelle separat auslegen. Deutsche Lieferbarkeit und genaue Artikelnummer sind weiterhin zu bestätigen; nur die Größenklassen wurden vom Nutzer bestätigt. Bei unbekanntem Standort/Vorlauf/Modell oder außerhalb des Datenbereichs: `lg.mode = incomplete`, `lg.nominal = null`, fehlende Angaben in `lg.missing`. Die bisherige vorläufige Nennleistungszuordnung entfällt, damit fehlende Kennlinien keinen scheinbaren Leistungsnachweis erzeugen. Ältere HF-Modelle dürfen nicht mit HFD-Kurven dimensioniert werden. Bei Sperren aus A/B bleibt `lg.mode = blocked`. ## E – Validierung, Defaults, Nachvollziehbarkeit Die ausführbare Konfiguration unten enthält sämtliche Zahlen inklusive Eingabegrenzen. Nicht-endliche Zahlen, negative/Null-Fläche, Nullverbrauch, falsche Energieträger-Einheiten, doppelte Jahre, ungültige Auswahlwerte, unplausible Sanierungsjahre und fehlende Quellen bei manuellen Klimaänderungen werden abgefangen. Warnings bei Endenergie < 30 oder > 350 kWh/(m²·a) und Gebäudeindikation > 150 W/m². Extreme, aber mögliche Gebäude sind ein Prüfhinweis, kein stilles Abschneiden. Neues Objekt: Fläche, Baujahr, Bewohnerzahl und Vollgeschosse leer; Dachgeschoss/Keller ungeklärt, eine Wohneinheit, 2,5 m, 20 °C, 2.100 h/a. Bauteile/WRG und Modellgeneration unbekannt; kein Verbrauch und keine PLZ vorbelegt. Auslegungsstrategie: geringe Heizstab-Unterstützung, ausdrücklich im Formular und Ergebnis benannt. Alle Ersatzannahmen sichtbar in Eingabehinweisen, Warnungen, Details und JSON. Beispiele werden nur auf bewusste Auswahl geladen und deutlich markiert. Beispiele dürfen nicht für ein Kundenobjekt übernommen werden, ohne die Angaben zu ersetzen. Alle Eingaben, Faktoren, Zwischenwerte, Warnungen, Quellenstand und Modellversion sind im Details-Bereich und JSON-Export enthalten. Druck öffnet Details/Warnungen vollständig und enthält Demo-Kennzeichnung und Disclaimer. Keine dauerhafte Objektspeicherung; kein automatischer API-Datentransfer. ## F – Nächste fachliche Validierung 1. 20–50 abgeschlossene Objekte mit normgerecht berechneter Raum-/Gebäudeheizlast, dokumentiertem Gebäudezustand und bereinigtem Verbrauch vergleichen. 2. Fehler je Baualtersklasse, Gebäudetyp, Temperatur und Sanierungsstand auswerten. Nur daraus Ersatzwerte und Unsicherheitsbänder ändern; Änderungen versionieren. 3. Autorisierte BWP-Klimadatenanbindung und lokale Vollbenutzungsstunden ergänzen. 4. Tatsächlich angebotene deutsche LG-SKUs samt passenden vollständigen Kennlinien und Mindestmodulation durch Fachplanung freigeben. Disclaimer: Vor endgültiger technischer Freigabe erfolgt nach Auftrag eine raumweise Heizlastberechnung nach DIN/TS 12831. Diese Vorberechnung dient ausschließlich der Angebots- und Leistungsklassen-Indikation. Der folgende Stand wird bei der Dokumentationsgenerierung direkt aus `dist/config.mjs` übernommen. Dezimalwerte mit Punkt entsprechen JavaScript/JSON; sämtliche Faktoren sind oben inhaltlich eingeordnet. ## Datenformat 4 Eingaben bleiben gegenüber Format 3 kompatibel. Im Ergebnis ersetzt `building.geometry` die alten Felder `areaRatio`, `floorRatio`, `horizontalScale`, `verticalScale` und `exposure`. Enthalten sind Methode, Bezugsfläche, Geschossfläche, Nachbarzahl, Bruttofassade, Öffnungen, Dach-Szenarien, geschätzte Gruppenflächen und Quellen. `referenceArea` an einzelnen Bauteilen bezeichnet weiter ausschließlich die historische Quellfläche. Neue Sperrcodes: `geometry` und `reference-age`; `reference-scale` entfällt. Verbraucher müssen nach `schemaVersion` migrieren und nullable Ergebnisse unverändert beachten. ## Vollständige ausführbare Konfiguration ```json { "version": "3.6.3", "researched": "2026-10-22", "references": { "attribution": "IEE Projects TABULA + EPISCOPE (www.episcope.eu)", "url": "https://episcope.eu/fileadmin/tabula/public/calc/tabula-calculator.xlsx", "accessed": "2026-09-30", "sha256": "1fe9865deb4030e5194a8c6abcd7d01446867747064681ba6ac8a99eb0c8b7ce", "sheet": "Calc.Set.Building", "variant": 1, "records": [ { "id": "DE.N.MFH.01.Gen.ReEx.001", "type": "MFH", "from": 0, "to": 1859, "livingArea": 615.901, "floors": 4.7, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 284.1, "u": 2.6, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 749.31, "u": 2, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 124.76, "u": 0.8823529411764706, "b": 0.5 }, { "part": "floor", "id": "Floor_2", "area": 48.97, "u": 1.2, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 106.97, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.MFH.02.Gen.ReEx.001", "type": "MFH", "from": 1860, "to": 1918, "livingArea": 284, "floors": 5, "neighbours": "B_N2", "components": [ { "part": "roof", "id": "Roof_1", "area": 102.8, "u": 1.3, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 146, "u": 2.2, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 102.8, "u": 0.8823529411764706, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 54.08, "u": 2.7, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.MFH.03.Gen.ReEx.001", "type": "MFH", "from": 1919, "to": 1948, "livingArea": 350, "floors": 4.2, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 158.5, "u": 1.4, "b": 1 }, { "part": "roof", "id": "Roof_2", "area": 31.1, "u": 0.6451612903225806, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 323.54, "u": 1.7, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 127.4, "u": 0.7692307692307692, "b": 0.5 }, { "part": "floor", "id": "Floor_2", "area": 31.1, "u": 1, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 71.16, "u": 3, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.MFH.04.Gen.ReEx.001", "type": "MFH", "from": 1949, "to": 1957, "livingArea": 574.8, "floors": 3, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_2", "area": 355, "u": 1.081081081081081, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 462, "u": 1.2, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 355, "u": 1.3253012048192772, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 98.72, "u": 3, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.MFH.05.Gen.ReEx.001", "type": "MFH", "from": 1958, "to": 1968, "livingArea": 2844.61, "floors": 4, "neighbours": "B_N1", "components": [ { "part": "roof", "id": "Roof_2", "area": 971.11, "u": 0.5084745762711864, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 2039, "u": 1.2, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 971.11, "u": 1.081081081081081, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 507.48, "u": 3, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.MFH.06.Gen.ReEx.001", "type": "MFH", "from": 1969, "to": 1978, "livingArea": 426.01, "floors": 4, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_2", "area": 216.7, "u": 0.5084745762711864, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 336, "u": 1, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 216.7, "u": 0.7692307692307692, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 81.3, "u": 3, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 4, "b": 1 } ] }, { "id": "DE.N.MFH.07.Gen.ReEx.001", "type": "MFH", "from": 1979, "to": 1983, "livingArea": 594.5, "floors": 3, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_2", "area": 248.25, "u": 0.4347826086956522, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 447.13, "u": 0.8, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 248.25, "u": 0.6451612903225806, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 99.37, "u": 3, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 4, "b": 1 } ] }, { "id": "DE.N.MFH.08.Gen.ReEx.001", "type": "MFH", "from": 1984, "to": 1994, "livingArea": 707.4, "floors": 3, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_2", "area": 249.4, "u": 0.35714285714285715, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 774.8, "u": 0.6, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 249.4, "u": 0.5084745762711864, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 161, "u": 3, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 4, "b": 1 } ] }, { "id": "DE.N.MFH.09.Gen.ReEx.001", "type": "MFH", "from": 1995, "to": 2001, "livingArea": 759, "floors": 4, "neighbours": "B_N1", "components": [ { "part": "roof", "id": "Roof_2", "area": 283.7, "u": 0.3167420814479638, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 695.8, "u": 0.4, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 283.7, "u": 0.39647577092511016, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 162.8, "u": 1.9000000000000001, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 2, "b": 1 } ] }, { "id": "DE.N.MFH.10.Gen.ReEx.001", "type": "MFH", "from": 2002, "to": 2009, "livingArea": 1991, "floors": 3.35, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 580, "u": 0.2, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 1698, "u": 0.25, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 619.5, "u": 0.3167420814479638, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 308.7, "u": 1.4, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.MFH.11.Gen.ReEx.001", "type": "MFH", "from": 2010, "to": 2015, "livingArea": 1219, "floors": 5, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 321.05, "u": 0.20000000000000004, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 1193.16, "u": 0.27991714452522054, "b": 1 }, { "part": "floor", "id": "Floor_2", "area": 321.05, "u": 0.3504516932935784, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 243.60000000000002, "u": 1.3, "b": 1 }, { "part": "door", "id": "Door_1", "area": 47.85, "u": 1.7999999999999998, "b": 1 } ] }, { "id": "DE.N.MFH.12.Gen.ReEx.001", "type": "MFH", "from": 2016, "to": 9999, "livingArea": 1219, "floors": 5, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 321.05, "u": 0.25259306926668995, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 1193.16, "u": 0.28935875492108176, "b": 1 }, { "part": "floor", "id": "Floor_2", "area": 321.05, "u": 0.2893587549063737, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 243.60000000000002, "u": 1.1, "b": 1 }, { "part": "door", "id": "Door_1", "area": 47.85, "u": 1.3, "b": 1 } ] }, { "id": "DE.N.SFH.01.Gen.ReEx.001", "type": "SFH", "from": 0, "to": 1859, "livingArea": 199, "floors": 2.7, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 134.19, "u": 2.6, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 169.78, "u": 2, "b": 1 }, { "part": "floor", "id": "Floor_2", "area": 85.46, "u": 2.9, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 28.78, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.SFH.02.Gen.ReEx.001", "type": "SFH", "from": 1860, "to": 1918, "livingArea": 128.9, "floors": 2.7, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 83.12, "u": 1.3, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 194.04, "u": 1.7, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 45.6, "u": 0.8823529411764706, "b": 0.5 }, { "part": "floor", "id": "Floor_2", "area": 32.7, "u": 1.2, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 22.3, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.SFH.03.Gen.ReEx.001", "type": "SFH", "from": 1919, "to": 1948, "livingArea": 275, "floors": 2.7, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 213.99, "u": 1.4, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 235.3, "u": 1.7, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 144.9, "u": 0.7692307692307692, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 52.35, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.SFH.04.Gen.ReEx.001", "type": "SFH", "from": 1949, "to": 1957, "livingArea": 101, "floors": 1.7, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 125.4, "u": 1.4, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 117.8, "u": 1.4, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 62, "u": 0.7751343054489639, "b": 0.5 }, { "part": "floor", "id": "Floor_2", "area": 17.9, "u": 1.01, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 18.4, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.SFH.05.Gen.ReEx.001", "type": "SFH", "from": 1958, "to": 1968, "livingArea": 110.2, "floors": 1.7, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 168.9, "u": 0.8, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 141.2, "u": 1.2, "b": 1 }, { "part": "wall", "id": "Wall_2", "area": 8.7, "u": 0.8, "b": 0 }, { "part": "floor", "id": "Floor_1", "area": 115.8, "u": 1.081081081081081, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 27.1, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2.1, "u": 3, "b": 1 } ] }, { "id": "DE.N.SFH.06.Gen.ReEx.001", "type": "SFH", "from": 1969, "to": 1978, "livingArea": 157.5, "floors": 1, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 183.13, "u": 0.5, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 177.55, "u": 1, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 78.32, "u": 0.7692307692307692, "b": 0.5 }, { "part": "floor", "id": "Floor_2", "area": 74, "u": 1, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 34.21, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.SFH.07.Gen.ReEx.001", "type": "SFH", "from": 1979, "to": 1983, "livingArea": 196, "floors": 2.7, "neighbours": "B_N1", "components": [ { "part": "roof", "id": "Roof_1", "area": 100.8, "u": 0.5, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 159.4, "u": 0.8, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 83.4, "u": 0.6451612903225806, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 27, "u": 4.3, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.SFH.08.Gen.ReEx.001", "type": "SFH", "from": 1984, "to": 1994, "livingArea": 136.55, "floors": 1.7, "neighbours": "B_N1", "components": [ { "part": "roof", "id": "Roof_1", "area": 123.2, "u": 0.4, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 211.3, "u": 0.5, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 75.33, "u": 0.5084745762711864, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 29.67, "u": 3.2, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.SFH.09.Gen.ReEx.001", "type": "SFH", "from": 1995, "to": 2001, "livingArea": 110.8, "floors": 1.7, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 115.5, "u": 0.35, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 126.6, "u": 0.3, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 84.30760000000001, "u": 0.39647577092511016, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 32.46, "u": 1.9000000000000001, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 2, "b": 1 } ] }, { "id": "DE.N.SFH.10.Gen.ReEx.001", "type": "SFH", "from": 2002, "to": 2009, "livingArea": 133.2, "floors": 2.7, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 85.91, "u": 0.25, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 188.86, "u": 0.3, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 79.82, "u": 0.27522935779816515, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 28.3, "u": 1.4, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 2, "b": 1 } ] }, { "id": "DE.N.SFH.11.Gen.ReEx.001", "type": "SFH", "from": 2010, "to": 2015, "livingArea": 160.4, "floors": 2, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 131.9, "u": 0.20003436300359784, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 227.6, "u": 0.27944669554282525, "b": 1 }, { "part": "floor", "id": "Floor_2", "area": 107.8, "u": 0.35009335822886106, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 42, "u": 1.3, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2.6, "u": 1.7999999999999998, "b": 1 } ] }, { "id": "DE.N.SFH.12.Gen.ReEx.001", "type": "SFH", "from": 2016, "to": 9999, "livingArea": 160.4, "floors": 2, "neighbours": "B_Alone", "components": [ { "part": "roof", "id": "Roof_1", "area": 131.9, "u": 0.1458375730992728, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 227.6, "u": 0.17061168905236332, "b": 1 }, { "part": "floor", "id": "Floor_2", "area": 107.8, "u": 0.17061168930821646, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 42, "u": 1.1, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2.6, "u": 1.3, "b": 1 } ] }, { "id": "DE.N.TH.02.Gen.ReEx.001", "type": "TH", "from": 1860, "to": 1918, "livingArea": 87.24, "floors": 3, "neighbours": "B_N2", "components": [ { "part": "roof", "id": "Roof_2", "area": 60, "u": 0.7692307692307692, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 74.47, "u": 1.7, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 60, "u": 0.8823529411764706, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 18.090999999999998, "u": 2.7, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.TH.03.Gen.ReEx.001", "type": "TH", "from": 1919, "to": 1948, "livingArea": 102.5, "floors": 2, "neighbours": "B_N2", "components": [ { "part": "roof", "id": "Roof_2", "area": 50.35, "u": 0.6451612903225806, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 64.14, "u": 1.7, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 50.35, "u": 0.7692307692307692, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 21.48, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.TH.04.Gen.ReEx.001", "type": "TH", "from": 1949, "to": 1957, "livingArea": 136, "floors": 2, "neighbours": "B_N1", "components": [ { "part": "roof", "id": "Roof_2", "area": 81.2, "u": 0.6451612903225806, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 134.66, "u": 1.2, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 81.2, "u": 1.2883435582822087, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 46.67, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.TH.05.Gen.ReEx.001", "type": "TH", "from": 1958, "to": 1968, "livingArea": 106.7, "floors": 2, "neighbours": "B_N2", "components": [ { "part": "roof", "id": "Roof_2", "area": 46.2, "u": 0.5084745762711864, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 40.42, "u": 1.2, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 46.2, "u": 1.081081081081081, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 13.52, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.TH.06.Gen.ReEx.001", "type": "TH", "from": 1969, "to": 1978, "livingArea": 96.64200000000001, "floors": 2, "neighbours": "B_N2", "components": [ { "part": "roof", "id": "Roof_2", "area": 60.85, "u": 0.5084745762711864, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 53.72, "u": 1, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 60.85, "u": 0.7692307692307692, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 23.36, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.TH.07.Gen.ReEx.001", "type": "TH", "from": 1979, "to": 1983, "livingArea": 98.43, "floors": 2, "neighbours": "B_N2", "components": [ { "part": "roof", "id": "Roof_1", "area": 97.63, "u": 0.5, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 54.1, "u": 0.8, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 73, "u": 0.6451612903225806, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 20.25, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.TH.08.Gen.ReEx.001", "type": "TH", "from": 1984, "to": 1994, "livingArea": 116, "floors": 3.2, "neighbours": "B_N1", "components": [ { "part": "roof", "id": "Roof_1", "area": 64.87, "u": 0.4, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 50.9, "u": 0.6, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 56.08, "u": 0.5084745762711864, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 18.75, "u": 2.8, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 3, "b": 1 } ] }, { "id": "DE.N.TH.09.Gen.ReEx.001", "type": "TH", "from": 1995, "to": 2001, "livingArea": 135.3, "floors": 2.7, "neighbours": "B_N2", "components": [ { "part": "roof", "id": "Roof_1", "area": 77.4, "u": 0.35, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 45.2, "u": 0.6, "b": 1 }, { "part": "wall", "id": "Wall_2", "area": 13.9, "u": 0.6, "b": 0.5 }, { "part": "floor", "id": "Floor_2", "area": 51.9, "u": 0.44999999999999996, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 22.4, "u": 1.6, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2.5, "u": 2, "b": 1 } ] }, { "id": "DE.N.TH.10.Gen.ReEx.001", "type": "TH", "from": 2002, "to": 2009, "livingArea": 138.1, "floors": 3.2, "neighbours": "B_N1", "components": [ { "part": "roof", "id": "Roof_1", "area": 91.3, "u": 0.2, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 140.7, "u": 0.3, "b": 1 }, { "part": "floor", "id": "Floor_1", "area": 70.7, "u": 0.27522935779816515, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 36.3, "u": 1.3, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2, "u": 2, "b": 1 } ] }, { "id": "DE.N.TH.11.Gen.ReEx.001", "type": "TH", "from": 2010, "to": 2015, "livingArea": 167.5, "floors": 2.7, "neighbours": "B_N1", "components": [ { "part": "roof", "id": "Roof_1", "area": 75.7, "u": 0.20003436300359784, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 137.8, "u": 0.2771179730799684, "b": 1 }, { "part": "wall", "id": "Wall_2", "area": 69.2, "u": 0.2771179730799684, "b": 0.5 }, { "part": "floor", "id": "Floor_2", "area": 67.8, "u": 0.35009335822886106, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 25.5, "u": 1.3, "b": 1 }, { "part": "windows", "id": "Window_2", "area": 2.6, "u": 1.3, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2.7, "u": 1.7999999999999998, "b": 1 } ] }, { "id": "DE.N.TH.12.Gen.ReEx.001", "type": "TH", "from": 2016, "to": 9999, "livingArea": 167.5, "floors": 2.7, "neighbours": "B_N1", "components": [ { "part": "roof", "id": "Roof_1", "area": 75.7, "u": 0.13410034667393278, "b": 1 }, { "part": "wall", "id": "Wall_1", "area": 137.8, "u": 0.15724766529312384, "b": 1 }, { "part": "wall", "id": "Wall_2", "area": 69.2, "u": 0.15724766529312384, "b": 0.5 }, { "part": "floor", "id": "Floor_2", "area": 67.8, "u": 0.15724766545747876, "b": 0.5 }, { "part": "windows", "id": "Window_1", "area": 25.5, "u": 1.1, "b": 1 }, { "part": "windows", "id": "Window_2", "area": 2.6, "u": 1.1, "b": 1 }, { "part": "door", "id": "Door_1", "area": 2.7, "u": 1.3, "b": 1 } ] } ] }, "geometry": { "method": "tabula-envelope-estimation", "referenceHeight": 2.5, "livingToReference": 1.1, "neighbours": { "detached": 0, "semi": 1, "end": 1, "mid": 2, "multi": 0 }, "facade": { "slope": 0.7, "interceptByNeighbours": [ 50, 25, 5 ] }, "openingsFraction": 0.18, "door": { "slope": 0.01, "intercept": 1.5 }, "floor": { "slope": 1.2, "intercept": 5 }, "roof": { "ceiling": { "slope": 1.2, "intercept": 5 }, "heatedAttic": { "slope": 1.6, "intercept": 15 }, "unknownAtticWeight": 0.5 }, "levels": { "atticWeight": 0.75, "cellarWeight": 1, "partialFraction": 0.5, "unknownFraction": 0.5, "maxPartAreaRatio": 1.5 }, "storeyAreaBounds": [ 15, 500 ], "source": "https://episcope.eu/fileadmin/tabula/public/docs/report/TABULA_WorkReport_EvaluationDatabase.pdf", "workbookSource": "https://episcope.eu/fileadmin/tabula/public/calc/tabula-calculator.xlsx", "referenceAreaSource": "https://episcope.eu/fileadmin/tabula/public/docs/report/TABULA_CommonCalculationMethod.pdf" }, "retrofit": { "wall": { "partial": 0.6, "good": 0.25 }, "roof": { "partial": 0.45, "good": 0.18 }, "floor": { "good": 0.3 } }, "insulation": { "assumedConductivity": 0.04, "maxWallCm": 60 }, "windows": { "old": 4.7, "double": 2.8, "modern": 1.3, "triple": 0.9, "unknown": 2.8 }, "ventilation": { "airHeatCapacity": 0.34, "airChange": { "old": 0.7, "double": 0.6, "modern": 0.5, "triple": 0.5, "unknown": 0.6 }, "mechanicalAirChange": 0.4, "infiltration": 0.15, "recovery": 0.75 }, "thermalBridge": { "normal": 0.1, "renovated": 0.05 }, "climate": { "unknownOutside": -12, "outsideUncertainty": 4, "referenceInside": 20, "fullLoadHours": 2100 }, "heatEmitters": { "underfloor": { "label": "Fußbodenheizung", "flow": 35 }, "radiators": { "label": "Heizkörper", "flow": 55 }, "mixed": { "label": "Beides · Fußbodenheizung und Heizkörper", "flow": 55 }, "unknown": { "label": "Noch unbekannt", "flow": null } }, "energy": { "oilKwhPerLitre": 10, "gasCalorific": 11, "gasCondition": 0.95, "lpgKwhPerLitre": 6.57, "lpgKwhPerKg": 12.8 }, "efficiency": { "gas": { "condensing": 0.9, "lowtemp": 0.8, "standard": 0.7, "unknown": 0.82 }, "oil": { "condensing": 0.95, "lowtemp": 0.82, "standard": 0.72, "unknown": 0.8 }, "lpg": { "condensing": 0.9, "lowtemp": 0.8, "standard": 0.7, "unknown": 0.82 }, "district": 0.95, "electric": 1, "other": 0.8, "agePenalty": 0.03, "ageThreshold": 25 }, "hotWater": { "kwhPerPerson": 750, "circulationPerUnit": 500 }, "supplementary": { "no": 0, "low": null, "medium": null, "high": null, "unknown": null }, "pellets": { "kwhPerKg": 5, "usefulEfficiency": 0.8, "maxKg": 100000, "source": "https://www.depi.de/pelletlexikon/", "qualitySource": "https://enplus-pellets.eu/wp-content/uploads/2023/07/ENplus-ST-1001-ENplus.pdf", "checked": "2026-10-16" }, "wood": { "kwhPerRm": { "hardwood": 1888, "softwood": 1320, "mixed": 1604, "unknown": 1604 }, "usefulEfficiency": 0.7, "maxRm": 100, "source": "https://www.tfz.bayern.de/mam/cms08/festbrennstoffe/dateien/handbuch_bioenergie-kleinanlagen-komplett.pdf", "checked": "2026-10-13" }, "plausibility": { "high": 0.15, "medium": 0.3, "provisional": 0.35 }, "diagnostics": { "hoursScenarios": [ 1800, 2100, 2400 ] }, "combination": { "buildingWeight": 0.5, "safetyUplift": 0, "blockUnknownUsage": true }, "uncertainty": { "building": 0.2, "consumption": 0.2, "unknownComponent": 0.05, "unknownClimate": 0.12, "unknownHeater": 0.08, "oneYear": 0.07, "supplementary": 0.1, "partialUse": 0.12, "uncorrected": 0.05, "unknownGas": 0.05, "cap": 0.6, "degradedThreshold": 0.35 }, "limits": { "area": [ 30, 1500 ], "year": [ 1700, 2026 ], "floors": [ 1, 8 ], "fullStoreys": [ 1, 8 ], "height": [ 2, 5 ], "people": [ 1, 60 ], "units": [ 1, 12 ], "outside": [ -25, -3 ], "inside": [ 16, 26 ], "consumption": [ 1, 1000000 ], "fullLoadHours": [ 1000, 3500 ], "climateFactor": [ 0.6, 1.6 ], "partialArea": [ 0, 90 ], "flow": [ 25, 75 ], "gasCalorific": [ 8, 13 ], "gasCondition": [ 0.8, 1.1 ], "efficiency": [ 0.4, 1 ], "specificEnergy": [ 30, 350 ], "specificLoad": 150 }, "lg": { "mode": "curves-with-explicit-backup", "checked": "2026-09-30", "source": "https://www.lg.com/content/dam/channelbtb/lgcom/global/business/download/airsolution/2026%20LG%20R290%20Monobloc%20Leaflet_20260922_081622_.pdf", "generation": "HFD 2026 + PHCS1 EEWXLEU", "selection": { "defaultStrategy": "limited", "requireNominalAtLeastLoad": true, "maxBackupFraction": 0.2, "maxBackupKw": 3, "targetOffset": 5, "targetBounds": [ -7, -2 ], "epsilonKw": 1e-9 }, "outsideAxis": [ -20, -15, -7, -4, -2, 2, 7 ], "flowAxis": [ 35, 40, 45, 50, 55 ], "curves": [ { "nominal": 7, "model": "HM071HFD / HM073HFD UA41", "page": 16, "capacity": [ [ 6.73, 6.48, 6.23, 5.97, 5.86 ], [ 7, 7, 6.63, 6.29, 6.12 ], [ 7, 7, 7, 7, 7 ], [ 7, 7, 7, 7, 7 ], [ 7, 7, 7, 7, 7 ], [ 7, 7, 7, 7, 7 ], [ 7, 7, 7, 7, 7 ] ] }, { "nominal": 9, "model": "HM091HFD / HM093HFD UA41", "page": 16, "capacity": [ [ 7.74, 7.51, 7.32, 7.16, 6.98 ], [ 8.45, 8.08, 7.77, 7.5, 7.35 ], [ 9, 8.8, 8.38, 8.05, 8 ], [ 9, 8.87, 8.56, 8.25, 8 ], [ 8.3, 8.3, 8.2, 8.1, 8 ], [ 8, 8.1, 8.1, 8.1, 8 ], [ 9, 9, 9, 9, 9 ] ] }, { "nominal": 12, "model": "HM121HFD / HM123HFD UB41", "page": 22, "capacity": [ [ 9.53, 9.18, 8.82, 8.45, 8.07 ], [ 10.37, 9.95, 9.49, 9.01, 8.52 ], [ 12, 11.26, 10.62, 10.13, 10 ], [ 12, 11.81, 11.07, 10.5, 10.3 ], [ 12, 12, 11.37, 10.74, 10.51 ], [ 12, 12, 11.97, 11, 10.9 ], [ 12, 12, 12, 11.52, 11.35 ] ] }, { "nominal": 14, "model": "HM141HFD / HM143HFD UB41", "page": 22, "capacity": [ [ 9.94, 9.6, 9.26, 8.92, 8.57 ], [ 10.74, 10.32, 9.88, 9.44, 8.99 ], [ 12.5, 11.92, 11.31, 11.15, 11 ], [ 13.04, 12.4, 11.7, 11.42, 11.13 ], [ 13.4, 12.72, 11.97, 11.62, 11.26 ], [ 13.68, 12.89, 12.04, 11.7, 11.35 ], [ 14, 13.66, 12.66, 12.07, 11.48 ] ] }, { "nominal": 16, "model": "HM161HFD / HM163HFD UB41", "page": 22, "capacity": [ [ 10.52, 10.2, 9.86, 9.51, 9.17 ], [ 11.45, 11.03, 10.58, 10.12, 9.65 ], [ 13.5, 12.9, 12.22, 12.11, 12 ], [ 14.12, 13.44, 12.68, 12.37, 12.07 ], [ 14.56, 13.82, 12.97, 12.54, 12.12 ], [ 14.94, 14.03, 13.56, 12.87, 12.19 ], [ 16, 14.89, 13.66, 12.99, 12.31 ] ] } ], "classes": [ 7, 9, 12, 14, 16 ] } } ```