Et screeningsværktøj der visualiserer forureningsrisiko fra regnbetingede kloakoverløb (CSO) ved alle aktive udløbspunkter i Danmark, baseret på officielle PULS-data, VP3 vandområdeplandata, DMI/Open-Meteo-nedbørsmodel og CMEMS' Østersø-havmodel.
Regnbetingede udløb opstår når nedbør overstiger kapaciteten i fælleskloakerede systemer, og urenset spildevand ledes direkte til vandmiljøet. Kortet beregner en løbende forureningsrisiko per udløbspunkt ud fra historisk overløbsfrekvens, observeret og prognosticeret nedbør samt sæsonafhængig patogenoverlevelse. Risikoen kobles til målsatte kystvandområder og EU-badevandslokaliteter via Miljøstyrelsens vandområdeplaner (VP3).
| Kilde | Indhold | Licens / opdatering |
|---|---|---|
| PULS stamdata vRegnbetingedeUdloebStamdata | 21.556 aktive udløb: navn, kommune, recipient vandområde, koordinater | Åbne data · årlig |
| PULS udledning vRegnbetingedeUdloebUdledning | Årlig udledt volumen (m³) og antal overløbshændelser per udløb per år | Åbne data · årlig |
| Open-Meteo / DMI HARMONIE AROME 2 km | Timevis nedbør: 7 dages historik + 48t prognose inkl. rådata per time | CC BY 4.0 · 4×/døgn |
| VP3 vandområdeplaner vp3_2endelig2025 (WFS) | Kystvandområder, badevandslokaliteter og RBU-punkter fra vandområdeplanerne 2021–2027 efter genbesøget (dec. 2025) | Åbne data · ved planrevision |
| VP3 søer og vandløb vp3_2e2025_soe_samlet / vandloeb_samlet | Geometri for søer (polygoner) og vandløb (linjer) — bruges til at maskere alge- og strømvisualisering til reelle vandområder | Åbne data · ved planrevision |
| VP3 RBU-register forb_id-felt i RBU-laget | Myndighedsfastsat officiel recipient for en delmængde (~1%) af RBU-punkterne — højeste prioritet i søvurderingens Trin 0, se Søvurdering | Åbne data · ved planrevision |
| DHM Højdekurver DHMHoejdekurver_Kote2_5 (Datafordeleren GraphQL) | Konturpunkter (2,5 m ækvidistance) brugt til flow-retning mellem ID15-oplande i sø-, kystvand- og vandløbsvurderingens ID15-metoder | Åbne data · Datafordeleren |
| DCE ID15-delvandoplande landbrugsgeodata.fvm.dk | 3.355 autoritative delvandoplande fra Aarhus Universitets nationale kvælstofmodel — grundlaget for søers, kystvandes og vandløbslinjers opstrøms-/retningsmatching | Åbne data · ved modelrevision |
| CMEMS Østersø-model cmems_mod_bal_phy_anfc_PT1H-i | Strømretning og -hastighed (uo/vo) samt havvandstemperatur (thetao) for danske farvande, ~10 km opløsning, hentet via Copernicus Marine Toolbox | Copernicus-licens · time-vis |
| OpenStreetMap | Baggrundskort | ODbL |
De to PULS-datasæt samkøres på udløbets navn. Volumen angives i kubikmeter i kilden og omregnes til liter ved visning (1 m³ = 1.000 L). VP3-data hentes som GeoJSON via Miljøministeriets WFS-tjeneste og gemmes som statiske filer. CMEMS-strømdata hentes server-side hver time og cachés både på serveren og i browserens lokale lager. Søers, kystvandes og vandløbslinjers ID15-baserede matching (RBU-koblinger, ID15-flow-graf, rejsetider, kystvand-gruppering og vandløbsretning) er en engangs/periodisk offline-beregning (se scripts/id15/), ikke en runtime-forespørgsel — resultatet gemmes som statiske JSON-filer (id15-lake-matches.json, id15-kystvand-matches.json, vandlob-directions.json), appen henter ved indlæsning. Selve søernes matching sker i to trin: match-lakes-via-id15.js bygger den terrænbaserede opstrøms-mængde og markerer usikre (kanal-tvetydige) udløb, hvorefter resolve-canal-ambiguity.py afgør dem geometrisk (punkt-til-polygon-afstand mod søernes faktiske form, ikke deres grove opland) — se Søvurdering for den fulde begrundelse.
Strøm- og havtemperaturdata kommer fra Copernicus Marine Service (CMEMS) — EU's operationelle havovervågningstjeneste under Copernicus-programmet, drevet af Mercator Océan International på vegne af EU. Den fulde datakatalog og dokumentation findes på data.marine.copernicus.eu.
Konkret bruger appen produktet BALTICSEA_ANALYSISFORECAST_PHY_003_006 (datasæt-id cmems_mod_bal_phy_anfc_PT1H-i) — en analyse-/prognosemodel for fysiske forhold i Østersøen og danske indre farvande, med timevis opløsning og ~10 km rumlig gitterstørrelse. Herfra hentes tre variable:
Data hentes server-side via det officielle copernicusmarine Python-værktøj (pypi.org/project/copernicusmarine), som kræver en gratis Copernicus Marine-brugerkonto. Hentningen sker hver time og gemmes både på serveren (persisteret på tværs af genstarter) og lokalt i browserens IndexedDB.
Kortet indeholder ti toggelbare lag under Danmark-fanen:
| Lag | Indhold | Farvelogik |
|---|---|---|
| 🌡 Bakterielt kort | Varmekort over alle 21.556 udløbspunkter | Grøn → amber → rød efter bakteriel risikoscore |
| 🧬 Viralt kort | Varmekort med separat viral risikomodel | Lilla gradient — vira overlever markant længere om vinteren |
| 🌿 Algerisiko | Varmekort baseret på næringsstof-proxy × temperatur-gate (se Badevandsvurdering) | Gul → grøn gradient efter algerisiko-score — ikke maskeret til præcise vandområde-polygoner for søer/vandløb (kun kystvande), se Begrænsninger |
| 📍 Udløbspunkter | Individuelle PULS-udløb som cirkler | Radius og farve efter risikoniveau; grå/stiplet ved ingen data |
| ⚡ 24h Varsling | Ring-markører ved udløb med forhøjet prognoserisiko | Rød stiplet ring ved forecastrisiko > 55 % og aktiv nedbør > 5 mm |
| 🌊 Kystvande (VP3) | Polygoner for de 109 målsatte kystvandområder | Grøn/amber/rød udfyldning efter max af waterArea-tekstmatch og ID15-opstrøms-matching, se Kystvandvurdering |
| 🔴 RBU-punkter | VP3's regnbetingede udløbspunkter (RBU-registret) — officielt myndighedsregistrerede udledningssteder, adskilt fra PULS-udløbene | Ingen risikofarvning — farve/størrelse/gennemsigtighed gradueres efter zoom-niveau (mere fremtrædende jo tættere man zoomer ind), rent informativt lag der viser hvor RBU-registrerede punkter fysisk ligger |
| 🏖 Badevandsområder | EU badevandsovervågningsstationer fra VP3. Klik åbner badevandsside med 7-dages nedbørsgraf, risikooversigt og opstrøms-matchede udløb | Cirkelmarkør i grøn/amber/rød ud fra bekræftet punkt-i-polygon-/punkt-nær-linje-match (sø → kystvand → vandløb); grå/"ukendt" hvis ingen bekræftet forbindelse — se Badevandsvurdering |
| 〰 Strøm | Retningspile for havstrøm, kun over vandområder (testet mod VP3 kystvand-polygoner) | Rotation = strømretning; farve/størrelse blå→gul→rød efter hastighed (0–1+ m/s) |
| 🧭 Vandløbsretning | Pile langs vandløbslinjer, der viser udledt strømretning — se Vandløbenes strømretning | Grøn = sikker retning (>1 m højdeforskel mellem endepunkternes ID15-oplande); grå = usikker (retning vist, men under margen); ingen pil hvis retning ikke kunne afgøres |
VP3-lagene indlæses fra statiske GeoJSON-filer ved opstart og farves når risikoberegningen er færdig. Alle lag håndhæves ved hvert vejrdatarefresh — slukket lag forbliver slukket selv ved automatisk opdatering.
Hvert udløbspunkt får en kvalitetskode efter hvor pålideligt overløbsgrundlaget er. Manglende data vises eksplicit — ingen værdier opfindes.
| Kode | Betydning | Antal |
|---|---|---|
| Reelle data | Faktisk overløbsfrekvens + volumen fra PULS | 4.683 |
| Verificeret nul | Bekræftet nul overløb det pågældende år | 14.554 |
| Estimeret | Frekvens beregnet fra volumen (log-log model, r=0,54) | 1.204 |
| Utilstrækkelig | Hverken volumen eller frekvens oplyst | 1.115 |
Stamdata-feltet Outflow bruges ikke som datagrundlag — det er et designestimat, ikke en målt udledning, og er systematisk for lavt.
Den aktive forureningsrisiko er produktet af overløbssandsynlighed og sværhedsgrad, begrænset til intervallet 0–1.
| Niveau | Interval | Tolkning |
|---|---|---|
| Lav | R < 0,20 | Begrænset risiko |
| Moderat | 0,20–0,60 | Forhøjet — relevant ved badning og indvinding |
| Høj | ≥ 0,60 | Undgå kontakt med vandmiljøet |
Antecedent nedbør — forudgående regn der mætter jord og fylder kloakker — er den primære udløsende faktor. Hver times nedbør de seneste 7 dage vægtes eksponentielt efter alder.
Nedbør hentes fra Open-Meteo (best_match — DMI HARMONIE-AROME for Danmark, ECMWF for Bornholm og randzoner) på et 0,25°-gitter (~17×28 km) over de ~170 celler med faktiske PULS-udløbspunkter. Serveren opvarmer proaktivt alle celler ved opstart og hvert 3. time — matcher DMI HARMONIE-modellens egen opdateringstakt, så data aldrig er ældre end kildens seneste modelkørsel — via individuelle enkelt-lokationskald med 10 parallelle forbindelser og 200 ms stagger. Samlet API-forbrug: ~1.360 kald/dag. Cache-TTL: 3 timer. Svar sendes med no-cache + ETag — 304 Not Modified ved uændret data.
Nedbørsgrafen i varselkortene viser −24t (grå søjler) og +24t prognose (blå søjler). Rød søjle markerer kraftig nedbør over 5 mm/t.
Når et overløb har fundet sted, aftager forureningen over tid. Bakterier og vira modelleres separat med sæsonafhængig henfaldstid τ, drevet af vandtemperatur og dagslys.
Genbrugt til søers opstrøms-matching: samme τ-model bruges til at nedvægte et opstrøms udløbs bidrag til en sø efter beregnet rejsetid dertil (se Søvurdering). Matematisk er e−(t+rejsetid)/τ identisk med at gange det allerede tids-henfaldne residual med endnu en faktor e−rejsetid/τ — samme fysik, ingen ny model, blot anvendt på transportafstand i stedet for kun "tid siden hændelse".
Badevandslokaliteterne fra VP3 (EU's badevandsovervågning) vises som en enkelt, samlet risikomarkør pr. lokalitet. Beregningen sker udelukkende server-side (se badevand-risk.js) og genberegnes hvert 15. minut for alle 1.039 badesteder samtidig. Farven bestemmes af tre kilder i prioriteret rækkefølge — alle tre kræver en bekræftet hydrologisk forbindelse, ikke blot geografisk nærhed.
Trin 1 — Sø: ligger badevandspunktet inden for (eller inden for en tolerancezone af) en målsat VP3-sø, bruges dens egen risikoberegning (se Søvurdering).
Trin 2 — Kystvand-polygon: ligger badevandspunktet ikke inden for nogen sø, men inden for et af de 109 målsatte kystvandområder, bruges dette i stedet (se Kystvandvurdering).
Trin 3 — Vandløb: ligger badevandspunktet hverken ved en sø eller et kystvand, men inden for en bufferzone af en vandløbslinje med bekræftet retning, bruges linjens egne opstrøms-matchede udløb. Er selve strømretningen for linjen markeret usikker, mærkes matchet tilsvarende "vandløb, usikker retning" i detaljepanelet.
Fem mulige tilstande, ikke bare "tal eller intet":
Algerisiko (🌿): Et separat, supplerende risikolag baseret på en forenklet, ikke-videnskabeligt kalibreret heuristik — ikke en valideret model. Algeopblomstring (herunder cyanobakterier) er en forsinket reaktion (dage-uger) på næringsstoftilførsel, kombineret med tilstrækkelig varme til reel vækst — modsat bakteriel/viral risiko, som er en mere øjeblikkelig konsekvens af selve overløbshændelsen. Modellen kombinerer:
Vandtemperatur hentes fra to kilder afhængig af recipienttype: kystvande bruger CMEMS' Østersø-model (variablen thetao, samme datasæt som strøm), mens søer, åer og vandløb ikke dækkes af CMEMS og i stedet får vandtemperaturen estimeret ud fra et 72-timers glidende gennemsnit af lufttemperatur via en Mohseni-Stefan-lignende sigmoid-model. Alge har bevidst ingen afstands- eller strømbaseret henfald i nogen af modellerne nedenfor — næringsstof-/temperaturmekanismen er ikke en punktkilde-spredningsproces på samme måde som patogener.
De 973 målsatte søer fra VP3 farves efter fire kilder, kombineret via den højeste værdi pr. risikotype — RBU, ID15 og navnematch supplerer hinanden (alle bruges, når flere findes), vandløbsindløb er en jævnbyrdig fjerde kilde. Der er ingen ren geografisk nærhedsfallback — en sø uden nogen af de fire kilder viser eksplicit "ingen data", frem for et gættet tal baseret alene på afstand (se begrundelse i boksen nedenfor).
RBU — Officiel recipient (VP3-register): VP3's eget RBU-lag har et felt (forb_id) hvor myndigheden for en del af punkterne selv har registreret den officielle recipient. Dækker kun omkring 60 søer, men er 100% pålideligt når til stede.
ID15 — Terrænbaseret opstrøms-matching med rejsetids-henfald: Den bredeste kilde (~644 søer), baseret på DCE's 3.355 autoritative delvandoplande, flow-retning fra DHM-højdedata og Manning's ligning for transporthastighed — se de tekniske detaljer i boksen nedenfor.
Navnematch: PULS' waterArea-felt sammenlignes eksakt (efter normalisering af æ/ø/å, store/små bogstaver og kendte præfikser) mod søens ov_navn.
Vandløbsindløb (retningsbekræftet): for vandløbssegmenter der beviseligt løber ind i søen (segmentets endepunkt rører søens polygon, og vandlob-directions.json bekræfter — confidence "sikker" — at strømmen går mod søen, ikke væk fra den), medregnes de tilknyttede udløb med luftlinje-afstandshenfald fra udløb til søens indløbspunkt. Segmenter med bekræftet afløbs-retning (fx en sø's eget udløb til en nedstrøms sø/fjord) bidrager slet ikke — hverken via denne kilde eller de tre ovenstående.
Badested-specifik afstandshenfald (isotropisk model): en stor sø kan have flere bugte langt fra hinanden — et udløb i den ene ende bør ikke automatisk give samme score til et badested i den modsatte ende. Hvert badested inden for søen får derfor sin egen score, beregnet ved at henfalde hvert enkelt bidragende udløbs egen, rå score med luftlinje-afstanden fra udløbet til netop det badested (ikke søens polygon generelt), omregnet til en antaget rejsetid via en antaget blandingshastighed. "Isotropisk" betyder spredning antages lige stor i alle retninger — som ringe i vandet, ikke en rettet strøm. Der findes ingen kendt kilde til intern strømretning i danske søer; dette er den bedste tilnærmelse, der kan bygges uden en sådan kilde, og en reel forbedring af den tidligere "hele søen får ét fælles tal"-tilgang, men ikke det samme som en ægte strømningsberegning.
Detaljer om ID15-metoden:
Kystvandes risiko farves efter tre kilder, kombineret via den højeste værdi — tekstmatch, ID15-opstrøms-matching, og en afgrænset havnavns-fallback som sidste udvej. Alle tre er beskyttet af en fælles, fysisk afstandsgrænse (10 km), der forhindrer et udløb i at tælle med for et kystvand, det reelt ikke ligger i nærheden af — uanset hvor godt teksten matcher.
Tekstmatch: PULS' waterArea-felt sammenlignes mod kystvand-polygonens ov_navn/ov_id/ho_na, efter samme normalisering (æ→ae, ø→oe, å→aa, sænket case) som søernes navnematch. Matcher både eksakt og delvist (fx "Kattegat" i PULS matcher korrekt "Kattegat, Aalborg Bugt" i VP3) — men kun inden for 10 km fra selve kystvand-polygonens kant, se boksen nedenfor for hvorfor det er afgørende.
ID15-baseret opstrøms-matching: samme grundmetode og DCE-datagrundlag som søernes ID15-kilde, men anvendt omvendt — et kystvand modtager typisk fra mange oplande på én gang. Sporingen stopper ved enhver sø, den støder på undervejs, af samme grund som søernes egen tilsvarende regel. Beskyttet af samme 10 km-grænse som tekstmatch.
Havnavns-fallback (sidste udvej): Danmark har kun et lille, fast antal officielle, overordnede havområdenavne (Kattegat, Skagerrak, Østersøen, Bælthavet, Nordsøen, Vesterhavet). Når hverken tekstmatch eller ID15 finder noget som helst for en given polygon, forsøges disse navne som en absolut sidste mulighed — stadig beskyttet af samme 10 km-grænse. Løser tilfælde hvor en specifik VP3-underinddeling (fx "Djursland Øst") og PULS' egen, endnu bredere tekst ("Kattegat") slet ikke deler nogen tekststreng at matche på, selvom de reelt er samme farvand.
Badested-specifik afstands- og retningsvægtning: som for søerne beregnes hvert badesteds egen score isotropisk (afstandshenfald fra hvert bidragende udløb til netop det badested, ikke kystvandets polygon generelt) — nødvendigt fordi en enkelt kystvand-polygon kan dække en meget lang kyststrækning (Øresund-polygonen dækker fx hele vejen fra Helsingør til Dragør, over 90 km, med 180+ udløb samlet).
De tre kilder kombineres pr. risikotype (bakteriel/viral/alge/prognose) ved at tage den højeste værdi — samme kombinationsprincip søerne bruger.
Lag-vælgerens "🧭 Vandløbsretning" viser en pil pr. vandløbslinje, der peger i den udledte strømretning — grøn hvor retningen anses for sikker, grå hvor den er usikker. Ingen pil vises, hvis retningen slet ikke kunne afgøres.
Metode: hver vandløbslinjes to endepunkter matches til deres respektive ID15-delvandopland (samme oplandsdata som Sø- og Kystvandvurderingen). Det opland med lavest minimumshøjde regnes som nedstrøms — samme grundprincip som selve ID15-flow-grafen mellem oplande er bygget på. Forskellen skal være mindst 1 meter (samme, allerede kalibrerede margen som Søvurderingens flow-retning) for at blive markeret sikker; er forskellen mindre, vises pilen stadig — som det bedst tilgængelige gæt — men farvet grå.
Denne side samler alle modeller, appen bruger, med links til deres videnskabelige/tekniske baggrund, og en ærlig vurdering af hvor meget de scorede værdier kan stoles på. Modellerne er ikke lige troværdige — nogle bygger på etableret hydrologisk teori, andre er bevidst simple heuristikker, konstrueret specifikt til dette værktøj uden ekstern validering.
| Model | Grundlag | Pålidelighed |
|---|---|---|
| Bakteriel overløbsrisiko | Eksponentielt henfald af antecedent nedbør (τ ≈ 2-4 dage, sæsonjusteret) kombineret med udløbsspecifik overløbssandsynlighed fra PULS' historiske hændelsesdata. Samme τ-model bruges nu også til at nedvægte søers opstrøms-matchede udløb efter beregnet rejsetid (se Søvurdering) — τ er baseret på litteraturens T90-værdier for E. coli (Miljøstyrelsen 2002/2003: 0,5 time-3 døgn i havvand, stærkt lys-/temperaturafhængig). | 🟡 Moderat-høj. Bygger på reelle, målte overløbshændelser for ~22% af punkter (resten estimeret via log-log-regression, se Datakvalitet). Selve henfaldsprincippet (eksponentiel antecedent nedbør) er velkendt i hydrologisk litteratur, men τ-værdien er ikke lokalt kalibreret mod målte bakteriekoncentrationer i dansk vand. |
| Viral risiko | Samme struktur som bakteriel model, men med længere τ (vira overlever markant længere, særligt om vinteren) — se Hokajärvi et al. (2023) og Gonzalez/Perez et al. (RSC 2024) for de underliggende T90-værdier for norovirus/coliphage. Bruges ligeledes til rejsetids-henfald for søers opstrøms-matching. | 🟡 Moderat. Det relative forhold (vira overlever længere end bakterier) er veldokumenteret i litteraturen, men de konkrete τ-værdier i denne model er skønnede, ikke kalibreret mod danske virusmålinger. |
| Sø-opstrøms-matching (ID15 + rejsetid) | DCE's ID15-delvandoplande + flow-retning fra DHM-højdedata (min. 1 m margin) + Manning's ligning for transporthastighed (V=(1/n)·R2/3·S1/2, Chow 1959) + Dijkstra korteste-rejsetid + geometrisk kanal-tvetydighedsopløsning, koblet til bakterie-/viral-T90-henfaldet ovenfor. Bekræftede afløbssegmenter (identificeret via vandløbenes egen retningsdata) udelukker eksplicit de udløb, der sidder på dem, fra alle fire søkilder samtidig. Badested-specifik score via isotropisk afstandshenfald, ikke ét fælles tal for hele søen. | 🟡 Moderat. Oplandsgeometri og højdedata er autoritative kilder (DCE/DHM); flow-retning og rejsetid er en velbegrundet, men ikke dansk-kalibreret tilnærmelse. Afløbsudelukkelsen er testet og bekræftet mod et konkret, fundet tilfælde (Fiskebæk Å ved Farum Sø). Den isotropiske model er retningsblind af mangel på en kendt kilde til intern sø-strømretning — en reel forbedring af "hele søen får ét tal", men ikke en ægte strømningsberegning. |
| Kystvand-opstrøms-matching (ID15 + retning) | Samme ID15-flow-graf som søernes udgave, grupperet pr. kystvand, kombineret med tekstmatch (10 km-afstandsbegrænset) og en havnavns-fallback for de fem-seks officielle danske havområdenavne — se Kystvandvurdering. Badested-specifik score via isotropisk afstandshenfald, med et retningsbevidst lag ovenpå: udløb udelukkes helt, hvis CMEMS' strømvektor bekræftet peger væk fra badestedet. | 🟡 Moderat. Samme datagrundlag som søernes ID15-kilde. Retningsudelukkelsen bruger faktisk, målt strømdata (ikke et gæt) når til stede, men CMEMS' ~10 km gitteropløsning betyder den nærmeste tilgængelige strømmåling for et kystnært udløb kan ligge et stykke ude i vandet og derfor ikke perfekt afspejle lokale kyststrømme. Retningstesten er en skarp 0/1-grænse (skalarprodukt > 0), ikke en gradvis vægtning — et udløb med strøm næsten vinkelret på retningen mod badestedet kan tippe til enten side af en lille måleunøjagtighed. |
| Vandløbenes strømretning | Samme ID15-flow-graf og samme 1 m-margin som ovenstående, anvendt på hver vandløbslinjes to endepunkter — se Vandløbenes strømretning | 🟡 Moderat for sikre (grønne) pile, lav-moderat for usikre (grå). Afgør pålideligt HVILKEN retning der er nedstrøms, men ikke om en given linje er hele vandløbets forløb eller ét segment deraf. Indeks-matchingen mellem retningsdata og selve linjegeometrien er endnu ikke bekræftet ved en reel kørsel. |
| Algerisiko | Næringsstof-proxy (7-dages nedbør × udløbsvolumen) × temperatur-gate (sigmoid ~18°C). Indgår ikke i badevandsmarkørens farve/varselsniveau — kun bakteriel/viral risiko bestemmer denne, se Badevandsvurdering. | 🔴 Lav-moderat, eksplicit ukalibreret. Kombinationen af næringsstoftilførsel og temperatur-tærskel er en anerkendt kvalitativ mekanisme fra algeopblomstrings-forskning, men denne konkrete formel er konstrueret til appen uden kalibrering mod faktiske klorofyl-a- eller cyanobakterie-målinger. Bør tolkes som en grov retningsindikator, ikke en kvantitativ prognose — netop derfor eksplicit udelukket fra selve sikkerhedsvurderingen. |
| Strømretning (kystvande, udelukkelse) | CMEMS' fysiske Østersø-model (uo/vo) ved udløbets position, brugt til en binær opstrøms/nedstrøms-test (skalarprodukt mod retningen til badestedet) — se Kystvandvurdering. Bruges KUN til kystvande, ikke søer (ingen kendt kilde til intern sø-strømretning) og ikke vandløb (som allerede har egen retningsdata). | 🟢 Høj for selve strømdata (valideret oceanografisk model fra Copernicus Marine), 🟡 moderat for udelukkelseslogikken — en skarp 0/1-grænse uden gradvis vægtning, følsom over for målingsstøj ved næsten-vinkelrette strømme, og begrænset af CMEMS' ~10 km gitteropløsning nær kysten. |
| Ferskvandstemperatur-estimat | Mohseni-Stefan-lignende sigmoid, konverterer 72-timers gennemsnitlig lufttemperatur til vandtemperatur for søer/åer/vandløb | 🟡 Moderat. Selve modeltypen er velkendt i hydrologisk litteratur til præcis dette formål (se Mohseni, Stefan & Erickson, 1998), men parametrene (μ, α, β, γ) i denne implementering er generiske, ikke kalibreret specifikt til danske vandløb/søer. |
| 24-timers prognose | Samme risikomodel som "nu", men med DMI/Open-Meteos 48-timers nedbørsprognose som input i stedet for observeret nedbør | 🟢 Afhænger primært af selve vejrprognosens kvalitet (DMI HARMONIE-AROME er en etableret, opererativ prognosemodel), ikke af noget ekstra usikkerhedslag fra vores side ud over selve risikomodellens egne begrænsninger ovenfor. |
Data: Miljøportalen (PULS) · Miljøstyrelsen (VP3) · Open-Meteo / DMI · OpenStreetMap.
Kildekode: github.com/KrestenBersoe/dkvand
Debug: Datakilder & cache-status