Files
enok/README.md
T
blandClaude Opus 5 a5185ccc5b
test / test (push) Failing after 4s
Knytt grensen for vinduslufting til normert settpunkt for kjøling
Grensen var satt til 24 °C uten kilde. NS 3031 gir en normert settpunkttemperatur
for kjøling også for bygninger uten kjøleanlegg, der overskuddsvarmen antas luftet
ut uten at energien telles. Den verdien er et bedre begrunnet utgangspunkt, og gir
mindre urealistisk lagring av solvarme i tette bygninger med store vindusflater.

Romoppvarmingen for TEK17-referansebygget går fra 24,7 til 27,2 kWh/(m²·år).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015GeH3y8fwTaTudaD88P57o
2026-09-14 18:05:16 +02:00

10 KiB
Raw Blame History

enok

Årlig energiberegning og energirapport for bygninger etter NS 3031:2025, med timesoppløsning gjennom hele året og energikarakter etter Enovas skala som gjelder fra

  1. januar 2026.

Programmet tar en beskrivelse av bygningen — geometri, konstruksjoner, vinduer, ventilasjon, varmekilder og drift — og et typisk klimaår, og gir 8760 timesverdier, et fullt energibudsjett fra netto energibehov til vektet levert energi, en energikarakter og en ferdig rapport i PDF.

enok beregn bygninger/nordhusstykket-5.toml
  Nordhusstykket 5  (Småhus, 140 m², byggeår 1948)
  Klimadata: Indre Østfold

  Varmetapstall                3,00 W/(m²K)
  Netto energibehov           352,2 kWh/(m²·år)
  Levert energi               328,5 kWh/(m²·år)
  Vektet levert energi        328,5 kWh/(m²·år)
  Energikarakter                  F

  Tiltak:
    Isolerte varmerør og kjellervegger  311,9 kWh/(m²·år)   F
    Nye vinduer                         305,6 kWh/(m²·år)   E
    Etterisolert klimaskjerm            207,0 kWh/(m²·år)   D
    Væske-vann-varmepumpe               162,7 kWh/(m²·år)   C
    Full pakke                           68,5 kWh/(m²·år)   A

Hva programmet gjør

Beregningsmetode. Dynamisk timesberegning etter NS-EN ISO 52016-1, slik NS 3031:2025 krever. Hver opake bygningsdel modelleres med fem noder der varmekapasiteten fordeles etter masseplassering, vinduer med to noder, og sonen har en luftnode og en strålingsnode som fordeler langbølget utveksling mellom innvendige overflater. Systemet løses implisitt for hver time. Varme- og kjølebehovet bestemmes ved å løse uten tilført effekt og med en prøveeffekt; siden systemet er lineært treffer interpolasjonen settpunktet nøyaktig.

Beregningspunkter. Budsjettet følger NS 3031:2025 fra A til E: netto energibehov, brutto etter distribusjons- og akkumuleringstap, tilført energi etter systemvirkningsgrad og årsvarmefaktor for hver varmekilde, levert energi per energibærer med fradrag for egenprodusert solstrøm, og til slutt vektet levert energi.

Energikarakter. Vektet levert energi per kvadratmeter oppvarmet BRA slås opp i Enovas skala, med arealkorreksjonen som gjelder for småhus og boligblokk. Vektingsfaktorene er elektrisitet 1,0, fjernvarme og biobrensel 0,45, eksportert energi 0. Vedovn regnes å dekke inntil 10 prosent av romoppvarmingen.

Klimadata. Timesverdier for alle norske kommuner fra datasettet som ble laget til NS 3031:2025 (CERRA 19912020, CC-BY-4.0). Beregnes bygningen i lokalt klima, korrigeres de klimaavhengige energipostene til referanseklima Oslo med klimakorrigeringsfaktorene fra standardens tillegg, slik energimerkeforskriften krever. Arkivet lastes ned én gang og hurtiglagres.

Overoppheting. Bygninger uten kjøleanlegg luftes gjennom vinduer. Uten det ville en tett bygning med store vindusflater fått urealistisk høye innetemperaturer om våren og høsten, og lagret solvarme ville kunstig redusert oppvarmingsbehovet. Grensen settes til den normerte settpunkttemperaturen for kjøling, og luftingen koster ingen energi.

Tiltak. Scenarier i samme fil gir før-og-etter-tall og karakterer i én tabell.

Installasjon

cargo install --path .

Typst må være installert for PDF-rapporten. Uten Typst kjører du med --ingen-pdf; da skrives rapport.typ som du kan kompilere senere.

Bruk

Kommando Hva den gjør
enok beregn FIL.toml Beregner og skriver rapport, CSV og JSON til ut/<navn>/
enok import FIL Leser IFC, gbXML eller regneark og skriver bygning.toml
enok klima --liste Lister alle kommuner med klimadata
enok klima --kommune Oslo Viser nøkkeltall for ett klimasted
enok skala smaahus --areal 140 Viser karakterskalaen med arealkorreksjon

Nyttige valg til beregn: --ingen-pdf, --ingen-timeserie, --enova-xml, --uten-scenarier, --ut KATALOG.

Utdata

Fil Innhold
rapport.pdf Energirapport med karakter, varmetapsbudsjett, energibudsjett og figurer
rapport.typ, stil.typ Typst-kilde, slik at rapporten kan tilpasses
resultat.json Hele resultatet, inkludert forutsetninger og månedsverdier
timeserie.csv 8760 rader med temperaturer, laster, sol og energistrømmer
maaned.csv Månedssummer
enova-2014.xml XML for energimerkesystemet, med --enova-xml

Bygningsbeskrivelsen

En bygning beskrives i TOML. Alt som utelates fylles med normerte verdier for bygningskategorien, eller med typiske verdier for byggeåret, og rapporten viser hva som er antatt og hvor det kommer fra.

[bygning]
navn = "Nordhusstykket 5"
kategori = "smaahus"
byggeaar = 1948
oppvarmet_bra = 140.0

[klima]
kommune = "Indre Østfold"

[[flate]]
navn = "Yttervegg sør"
type = "vegg"
areal = 26.0
orientering = 180      # grader fra nord med klokka
u_verdi = 1.0          # eller `lag = [{ materiale = "tre", tykkelse = 0.02 }, …]`
masseklasse = "lett"
mot = "ute"            # ute | grunn | uoppvarmet

[[vindu]]
navn = "Vinduer sør"
areal = 6.0
orientering = 180
u_verdi = 2.80
g_verdi = 0.76

[infiltrasjon]
n50 = 8.0

[ventilasjon]
type = "naturlig"      # naturlig | avtrekk | balansert

[[oppvarming.kilde]]
type = "el_kjel"       # direkte_el, luft_luft_vp, vaeske_vann_vp, vedovn, fjernvarme, …
andel_rom = 0.75
andel_tappevann = 1.0

[[scenario]]
navn = "Nye vinduer"
endringer.vindu = [{ navn = "Vinduer sør", u_verdi = 0.80, g_verdi = 0.50 }]

Scenarier flettes inn i bygningsbeskrivelsen: tabeller flettes rekursivt, elementer i lister matches på navn eller type, nye elementer legges til, og slett = true fjerner et element.

Ferdige eksempler ligger i eksempler/.

Import fra Vectorworks og andre BIM-verktøy

Format Slik henter du det Hva som kommer med
IFC Fil → Eksporter → Export IFC Project Flater, areal, U-verdier fra egenskapssett, himmelretning fra plassering, vinduer og dører koblet til vegg
gbXML Verktøy som eksporterer gbXML Rom, flater, åpninger, konstruksjoner med lag
Regneark Fil → Eksporter → Export Worksheet Enkel CSV med én rad per bygningsdel

Himmelretningene i IFC utledes av elementenes plassering: veggens lokale akse gir planet, og ytre normal velges som den som peker bort fra bygningens tyngdepunkt, korrigert for prosjektets sanne nord. Kontroller dem mot tegningen etter import.

Ingen av formatene beskriver ventilasjon, lekkasjetall eller varmekilder. Importen skriver merknader øverst i TOML-filen om hva som må fylles ut.

Regnearkformatet er bevisst enkelt, slik at det kan settes opp som en rapport i BIM-verktøyet:

type,navn,areal,u_verdi,orientering,helning,mot,g_verdi,antall
bygning,Nordhusstykket 5,140,,,,smaahus,1948,
vegg,Yttervegg sør,26,1.0,180,90,ute,,
gulv,Mot kjeller,98,0.8,,180,uoppvarmet,,
vindu,Stue sør,3.0,2.8,180,90,,0.76,2

Rapporter fra byggeserveren

.gitea/workflows/rapport.yml bygger rapporter for alle bygningene i bygninger/ og legger PDF, JSON og CSV ved utgivelsen når du setter en tagg som begynner med v eller rapport-. IFC-, gbXML- og CSV-filer importeres automatisk til TOML dersom det ikke allerede finnes en TOML-fil med samme navn. Se bygninger/LES-MEG.md.

Kontroll av beregningen

Motoren er kontrollert mot uavhengige referanser:

Kontroll Resultat
Solinnstråling på skrå og orienterte flater, mot pvlib (HayDavies) avvik under 1 % for alle himmelretninger i Oslo-klima
Stasjonært varmetap mot U·A·ΔT innenfor 2 %
Årlig energibalanse går opp innenfor 2 %
Varmebehov som funksjon av temperaturdifferanse eksakt lineært
Varmetapsbudsjett for TEK17-referansebygget identisk med publisert tabell, 0,69 W/(m²K)
Normerte energiposter for småhus varmtvann 25,1, belysning 11,4, teknisk utstyr 17,5 kWh/(m²·år)

Kjent avvik

Standard Norges lanseringseksempel for NS 3031:2025 oppgir 46,2 kWh/(m²·år) romoppvarming og 106,4 kWh/(m²·år) netto energibehov for TEK17-referansebygget beregnet med Simien 8. enok beregner 27,2 og 86,7 for den samme bygningen.

Varmetapsbudsjettet, de normerte energipostene, solinnstrålingen og energibalansen stemmer hver for seg, så avviket ligger i hvor stor del av solvarmen som nyttiggjøres. NS 3031:2025 Tillegg A er ikke offentlig tilgjengelig, så de normerte solfaktorene, skjermings­forutsetningene og timesprofilene Simien bruker, lar seg ikke etterprøve her. tests/referansebygg.rs låser dagens verdier slik at endringer i motoren blir synlige, og oppdateres når standardens forutsetninger er tilgjengelige.

Bruk derfor tallene til å sammenligne tiltak mot hverandre og til å se hvor varmen forsvinner. Til en energiattest som skal leveres til Enova må resultatet kontrolleres mot et validert beregningsprogram.

Datagrunnlag

Alle normerte verdier ligger i data/ og kan overstyres med --data KATALOG.

Fil Innhold og kilde
skala.toml Energikarakterskalaen fra 1.1.2026, Enova SF via Multiconsult-notatet «Grunnlag for ny energikarakterskala», 19.12.2025
vekting.toml Vektingsfaktorer etter energimerkeforskriften § 10a med NVEs veileder
normerte/*.toml Normerte laster, driftstider og settpunkt. Utgangspunktet er NS 3031:2014 Tillegg A; varmtvann er oppdatert til NS 3031:2025-verdien for småhus. Timesprofiler fra NS 3031:2025 kan legges inn i profil_*-feltene
varmepumpe_spf.toml Veiledende årsvarmefaktorer, NS 3031:2014 tabell B.9-3
materialer.toml Materialdata og typiske U-verdier per byggeperiode
klimakorreksjon.csv Klimakorrigeringsfaktorer, Standard Norge SN/K 34, doi 10.5281/zenodo.15041587

Klimadata: «TMY files for Norway based on CERRA data from 1991-2020», doi 10.5281/zenodo.14779899, CC-BY-4.0.

Regelverk

  • Forskrift om energimerking av bygninger og energivurdering av varme- og klimaanlegg, §§ 10a og 10b, med NVEs veileder
  • NS 3031:2025 Bygningers energiytelse — Beregning av energi- og effektbehov
  • NS-EN ISO 52016-1:2017 og NS-EN ISO 52010-1:2017

Lisens

MIT.