1 Commits
Author SHA1 Message Date
blandClaude Opus 5 959db648a9 Skill dekket over kjelleren fra dekket på bakken
test / test (push) Successful in 1m17s
Release enok / bygg (release) Successful in 1m13s
Et dekke like under gulvet i første etasje er himlingen over kjelleren, også når det heter
noe med «kjellergulv»; det er et vanlig navn på dekket over kjelleren. Bare navn som sier
«på grunn» eller «on grade» gir dekke mot grunnen, ellers avgjør høyden: nederste dekke
ligger mot grunnen, resten er etasjeskillere inne i bygningen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015GeH3y8fwTaTudaD88P57o
2026-09-21 15:43:03 +02:00
3 changed files with 12 additions and 14 deletions
Generated
+1 -1
View File
@@ -222,7 +222,7 @@ dependencies = [
[[package]] [[package]]
name = "enok" name = "enok"
version = "0.4.4" version = "0.4.5"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"approx", "approx",
+1 -1
View File
@@ -1,6 +1,6 @@
[package] [package]
name = "enok" name = "enok"
version = "0.4.4" version = "0.4.5"
edition = "2021" edition = "2021"
description = "Årlig energiberegning og energirapport for boliger etter NS 3031 (timesmetode, ISO 52016-1)" description = "Årlig energiberegning og energirapport for boliger etter NS 3031 (timesmetode, ISO 52016-1)"
license = "MIT" license = "MIT"
+10 -12
View File
@@ -1504,20 +1504,15 @@ fn klassifiser(
if d.ytre == Some(true) { if d.ytre == Some(true) {
return Some((FlateType::Gulv, Mot::Ute)); return Some((FlateType::Gulv, Mot::Ute));
} }
// Mot grunnen i det nederste planet, eller når navnet sier det. Høyden av geometrien // Høyden av geometrien avgjør, siden etasjetilknytningen i en eksport kan være feil.
// avgjør, siden etasjetilknytningen i en eksport kan være feil. // Et dekke som ligger på bakken sier det i navnet. Ellers er et dekke like under
let paa_grunnen = [ // gulvet i første etasje himlingen over kjelleren, og det nederste dekket ligger mot
"kjellergulv", // grunnen. «Kjellergulv» er ikke nok til å si at dekket ligger på bakken: dekket over
"on grade", // kjelleren bærer ofte det samme navnet.
"på grunn", let paa_grunnen = ["on grade", "på grunn", "paa grunn", "såle", "sale"];
"paa grunn", if paa_grunnen.iter().any(|o| navn.contains(o)) {
"såle",
"sale",
];
if (d.z - laveste).abs() < 0.5 || paa_grunnen.iter().any(|o| navn.contains(o)) {
return Some((FlateType::Gulv, Mot::Grunn)); return Some((FlateType::Gulv, Mot::Grunn));
} }
// Dekket i laveste etasje over en kjeller er grensen mot den uoppvarmede sonen.
if e.kjeller.is_some() { if e.kjeller.is_some() {
let ved_forste_over = e let ved_forste_over = e
.forste_over_hoyde .forste_over_hoyde
@@ -1527,6 +1522,9 @@ fn klassifiser(
return Some((FlateType::Gulv, Mot::Uoppvarmet)); return Some((FlateType::Gulv, Mot::Uoppvarmet));
} }
} }
if (d.z - laveste).abs() < 0.5 {
return Some((FlateType::Gulv, Mot::Grunn));
}
// Dekker lenger opp er etasjeskillere inne i bygningen. // Dekker lenger opp er etasjeskillere inne i bygningen.
return None; return None;
} }