Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
kvalobs:kvalobs:aggregering [2010-06-22 09:43:26] vegardb |
— (current) | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ======kvAgregated====== | ||
| - | |||
| - | |||
| - | ===Introduksjon=== | ||
| - | |||
| - | Dette programmet mottar observasjoner fra kvalobs og genererer | ||
| - | aggregerte verdier på grunnlag av disse. De aggregerte verdiene | ||
| - | sendes så tilbake til kvalobs. | ||
| - | |||
| - | Følgende liste viser hvilke parametre fra kvalobs som generer hva: | ||
| - | |||
| - | |Fra|Til|Når| | ||
| - | |TAN|TAN_12|06: | ||
| - | |TAX|TAX_12|06: | ||
| - | |TGN|TGN_12|06: | ||
| - | | | | | | ||
| - | |RR_01|RR_1|Hver time| | ||
| - | |RR_1|RR_12|06: | ||
| - | |RA|RR_12|06: | ||
| - | |RR_12|RR_24|06: | ||
| - | | | | | | ||
| - | |TA|TA_24|23: | ||
| - | |UU|UU_24|23: | ||
| - | |NN|NN_24|23: | ||
| - | |PR|PO|Hver time| | ||
| - | |||
| - | Merk at det også genereres aggregerte verdier av de aggregerte | ||
| - | verdiene, så dersom for eksempel en stasjon kun rapporterer RR_1 vil | ||
| - | både RR_12 og RR_24 aggregeres. | ||
| - | |||
| - | Det er også verd å merke seg at aggregeringene oppdateres etterhvert | ||
| - | som grunnlagsdata oppdateres, så dersom for eksempel en observasjon | ||
| - | av RR_1 endres av HQC, vil aggregerte verdier av RR_12 oppdateres | ||
| - | tilsvarende. | ||
| - | |||
| - | Aggregatoren beregner både originalverdi og korrigertverdi, | ||
| - | |||
| - | |||
| - | ===Aggregerte parametre=== | ||
| - | |||
| - | De aggregerte parametrene vil ha lik stasjonsid, sensor og level som de parametrene som aggregeres. typeid, derimot, vil endres til å bli lik den negative verdien av den originale typeid. Dette medfører at aggregerte verdier lett kan skilles fra ikke-aggregerte verdier i kvalobs. | ||
| - | |||
| - | De aggregerte verdiene får kontrollflagg fylt ut med bare null-verdier, | ||
| - | |||
| - | |||
| - | ===Aggregerte parametre og kvalobs=== | ||
| - | |||
| - | Det er viktig å merke seg at siden de aggregerte parametrene får | ||
| - | negativ typeid, blir de av kvalobs oppfattet som forskjellige | ||
| - | stasjoner fra " | ||
| - | med negativ typeid ikke fins i obs_pgm, medfører at det ikke blir | ||
| - | gjort noen kvalitetskontroll av de aggregerte verdiene. | ||
| - | |||
| - | |||
| - | ===Oppsett før kjøring=== | ||
| - | |||
| - | For å kjøre kvAgregated må [[http:// | ||
| - | |||
| - | Under installasjon kjøres skriptet kvAgregateDbInit. Dette skriptet lager en cachedatabase for aggregatoren. For at den skal kunne brukes, må kvalobs-brukeren ha skriverettigheter dit. Databasen legges i fila {localstatedir}/ | ||
| - | |||
| - | < | ||
| - | chmod kvalobs: | ||
| - | </ | ||
| - | |||
| - | Dette skjer automatisk dersom aggregatoren er installert via en debian-pakke (som den nå er på produksjonsmaskinene). | ||
| - | |||
| - | ===Start av kvAgregated=== | ||
| - | |||
| - | Når kvAgregated startes vil den i begynne med å hente ned data fra | ||
| - | kvalobs for de siste 24 timene. Dette er resurskrevende, | ||
| - | bør ikke startes mens kvalobs har mye annet å gjøre, dvs at hver hele og | ||
| - | halve time bør unngås for oppstart. | ||
| - | |||
| - | Etter oppstarten vil aggregerte data genereres fortløpende, | ||
| - | som grunnlagsdata kommer inn. | ||
| - | |||
| - | kvAgregated tar flere kommandolinjeargumenter. For å få en liste over disse, kan du kjøre følgende kommando: | ||
| - | |||
| - | < | ||
| - | kvAgregated --help | ||
| - | </ | ||
| - | |||
| - | Opsjonene til kommandolinja lar deg styre aggregeringen på forskjellige måter. For eksempel kan du begrense hvilke stasjoner eller parametre som skal aggregeres, eller du kan få aggregatoren til å gå igjennom, og reprosessere gammel data. | ||
| - | |||
| - | |||
| - | ===Feilsituasjoner=== | ||
| - | |||
| - | Hvis kvalobs går ned kan det være en god ide å også restarte kvAgregated, | ||
| - | |||
| - | Idet aggregatoren begynner å kjøre igjen, vil den automatisk gå igjennom data for de siste tre timene, for å se om det har kommet noe nytt å aggregere siden den gikk ned. | ||
| - | |||
| - | Hvis aggregatorene har vært lengre nede enn tre timer, må kommandolinjeopsjoner settes for å få aggregatoren til å prosessere data lengre bak enn tre timer. Kjør %%kvAgregated --help%% for detaljer. | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ===Spesielle regler=== | ||
| - | |||
| - | |||
| - | ==RR_1 fra RR_01== | ||
| - | |||
| - | Siden det ikke kommer inn minuttverdier for nedbør når det ikke har regnet, må aggregering av minuttnedbør behandles anderledes enn andre verdier. | ||
| - | |||
| - | Når det faktisk kommer data for minuttnedbør, | ||
| - | |||
| - | ==RR_12 fra RA== | ||
| - | |||
| - | Hvis en stasjon rapporterer både RA og RR_1, vil det aggregering av RR_12 fra RA prioriteres over aggregering fra RR_1. | ||
| - | |||
| - | RR_12 vil ikke aggregeres fra RA dersom RA-verdien har minket | ||
| - | betraktelig siden sist aggregering (for eksempel dersom målebøtta har | ||
| - | blitt tømt). | ||
| - | |||
| - | Følgende korrigeringsalgoritme er implementert: | ||
| - | |||
| - | |||
| - | * Hvis RR_12(t) = RA(t)-RA(t-12) < 0 Sett RR_12(t) = 0 | ||
| - | |||
| - | * Hvis RR_12(t) = RA(t)-RA(t-12) > 0 og RA(t-12)-RA(t-24) %%<=%% -100 sett RR_12(t) = RA(t)-RA(t-12) | ||
| - | ellers: | ||
| - | |||
| - | * Hvis RR_12(t) = RA(t)-RA(t-12) > 0 og RA(t)-RA(t-24) %%<=%% 0 Sett RR_12(t) = 0 | ||
| - | |||
| - | * Hvis RR_12(t) = RA(t)-RA(t-12) > 0 og RA(t)-RA(t-24) > 0 og RA(t-12)-RA(t-24)> | ||
| - | |||
| - | * Hvis RR_12(t) = RA(t)-RA(t-12) > 0 og RA(t)-RA(t-24) >=0 og RA(t-12)-RA(t-24) < 0 sett RR_12(t) = RA(t)-RA(t-24) | ||
| - | |||
| - | |||
| - | ==Middelverdier== | ||
| - | |||
| - | Noen døgnmiddelverdier (TA_24 og UU_24, men ikke NN_24) beregnes ved hjelp av Köppens formel. Konstanter for å gjøre disse beregningene hentes fra kvalobs-tabellen station_metadata, | ||
| - | |||
| - | ==Trykk== | ||
| - | |||
| - | Det beregnes også PO utfra PR i aggregatoren. Stasjonsspesifikke konstanter hentes fra tabellen station_metadata i kvalobs-databasen. | ||