Keri sisuni

Loimis — Mulla lõimise parser

Mis on Loimiste väli?

Lõimiste (loimis) väli kodeerib mulla profiili lõimiselist koostist kuni neljas sügavuskihis (eraldatud sümboliga /) ühe kompaktse sõnena. See kirjeldab mulla füüsikalist koostist – peeneselise ja koreselise osa esinemist ning nende muutumist sügavuse lõikes.

Lihtne näide:

l40-70/ls₂30/+ls₂

See loetakse kolmeks kihiks:

Kiht Tähistus Tähendus
1 l40-70 Liiv (l), tüsedus 40 kuni 70 cm
2 ls₂30 Keskmise liivsavi (ls₂), tüsedus 30 cm
3 +ls₂ Keskmine liivsavi, kihiseb (karbonaatne)

Tähistussüsteem

Peenes (Fine earth)

Iga kihi domineerivat mulla materjali kirjeldatakse lõimise koodiga:

Kood Eestikeelne nimetus Rahvusvaheline klass
l liiv Sand
pl peenliiv Fine sand
sl saviliiv Loamy sand / clayey sand
ls liivsavi (ls1 - kerge liivsavi; ls2 - keskmine liivsavi; ls3 - raske liivsavi) loam (ls1 - sandy loam; ls2 - loam; ls3 - clay loam)
s savi Clay
tsl tolmjas saviliiv Silt clay loam?
tls tolmjas liivsavi Silt loam
dk liivakivirähk Sandstone debris?

Kores (Rock skeleton)

Kihti segatud jämedaid fragmente kirjeldatakse koresuse koodiga:

Kood Eestikeelne nimetus Kirjeldus
kr kruus Mulla kores läbimõõduga 0,1 kuni 1 cm
r rähk Teravaservaline koresematerjal (ø 1–10 cm)
v veeris Ümardunud koresematerjal (ø 1–10 cm)
kb klibu Ümardunud servadega lapik koresematerjal (ø 1–10 cm)
ck kiltkivirähk Teravaservaline koresematerjal (ø 1–10 cm)
p paas Massiivne paekivi
lu lubisetted Lubjarikas materjal

Orgaaniline materjal (Turfs)

Kood Eestikeelne nimetus Kirjeldus
th toorhuumus Toorhuumuse horisont
t₁ / t1 halvasti lagunenud turvas Lagunemisaste alla 25%
t₂ / t2 keskmiselt lagunenud turvas Lagunemisaste 25-45%
t₃ / t3 hästilagunenud turvas Lagunemisaste üle 45%

Koreselisuse astmed ₁–₅

Vahetult korese koodi järel olev alaindeks tähistab selle komponendi rohkust või intensiivsust skaalal 1 (nõrgalt koreseline ehk vähene esinemine) kuni 5 (väga tugevasti koreseline ehk domineeriv). Näiteks:

  • r₁ls — nõrgalt rähkne liivsav
  • r₃ls — tugevasti rähkne liivsavi
  • kb₃ls₂ — tugevasti klibune keskmine liivsavi

kr, p, d, lu, pk järel astmeid ei kasutata

Sügavusvahemikud

Sügavus märgitakse sentimeetrites üksikväärtusena või vahemikuna:

Tähistus Tähendus
l40 Liiv, tüsedus 40 cm
l40-70 Liiv, tüsedus 40 kuni 70 cm

Karbonaatsuse tähis

Sümbol + vahetult enne komponendi koodi tähendab, et materjal on karbonaatne (nt +ls = karbonaatne liivsavi). Koodi järel tähendab, et karbonaatne alates antud sügavusest (nt. S+70 = savi, kihiseb alates 70 cm sügavuselt).

Kihtide eraldaja

Kihte ühes mullaükuses eraldatakse sümboliga /. Ühe mullaüksuse kohta võib olla kuni neli kihti.


7-astmeline parsimisandmevoog

Kuna lõimise tähistus on keeruline ja toorandmed sisaldavad palju vigu, toimub parsimine seitsmes etapis:

  1. Normaliseerimine ja tükeldamine — rakendatakse vigade parandamise tabeleid, eemaldatakse sekundaarsed šifri märkused ja jagatakse sõne üksikuteks kihtideks.
  2. Sulgude parandamine — valideeritakse ja eemaldatakse sulgudes olevad numbrilised artefaktid.
  3. Grammatika testimine — proovitakse kümmet erinevat grammatika varianti (kattes kõik võimalikud koresuse, peenese ja turba järjestused) ning luuakse kanooniline normaliseeritud sõne.
  4. Taaskoostamine — normaliseeritud kihid pannakse uuesti kokku puhtaks, kaldkriipsudega eraldatud sõneks.
  5. Külastaja (Visitor) — rakendatakse struktureeritud puu-läbijat, et eraldada kõigi mullaosiste, nende koodide, astmete (alaindeksite), karbonaatsuse tähiste ja sügavusvahemike pesastatud sõnastik.
  6. Kihtide sügavused — loetakse sügavusinfo struktureeritud sõnastikust, et määrata kihtide arv ja iga kihi piiri sügavus.
  7. Lõimise fraktsioonid — otsitakse iga koostisosa koodi lõimise reeglite tabelist, et tuletada savi, tolmu, liiva ja koresuse protsendid ning määrata rahvusvaheline lõimiseklass.

Väljundväljad

Sügavuse ja kihtide kokkuvõte (6 väärtust)

Väli Tüüp Kirjeldus
nlayers int Kirjeldatud lõimisekihtide arv profiilis (1–4)
ZMX float Profiili kogusügavus — kõige sügavama kihi piir (cm)
Z1 float 1. kihi alumine piir (cm)
Z2 float 2. kihi alumine piir (cm); 0, kui kihte on vähem kui 2
Z3 float 3. kihi alumine piir (cm); 0, kui kihte on vähem kui 3
Z4 float 4. kihi alumine piir (cm); 0, kui kihte on vähem kui 4

Kihipõhine lõimis (×4 kihti, 28 väärtust + 1 diagnostiline)

Iga kihi numbri n kohta (1 kuni 4):

Väli Tüüp Kirjeldus
EST_TXTn str Eesti lõimise kood (nt sl, ls)
EST_CRSn str Koresuse tüübi kood (nt r, k, v); tühi, kui koresust pole
LXTYPEn str Rahvusvaheline lõimiseklass: SAND, LOAM, CLAY, PEAT, GRAVELS, …
CLAYn float Savi fraktsioon (0–100 %)
SILTn float Tolmu fraktsioon (0–100 %)
SANDn float Liiva fraktsioon (0–100 %)
ROCKn float Koresuse (kivimifraktsioonide) osa (0–100 %)
KARBn int Carbonate flag: 1 if any constituent in the layer is calcareous (+ prefix), 0 otherwise

Diagnostilised väljad

Väli Tüüp Kirjeldus
parse_ok_l bool True, kui kõik kihid õnnestus parsida. Kasutatakse kaardivaaturi veaülevaates koos parse_ok_s ja parse_ok_h veergudega.
parse_info str Parsimise olek: "successful", "empty_loimis", "partial_no_info", "parse_error"
has_no_info bool True, kui ühte või mitut kihti ei saanud parsida
loimis_grammar dict Täielik struktureeritud parsimistulemus (andmebaasis salvestatud, kuid ei kuvata kaardivaaturi hüpikaknas)
loimis_search dict Sisemine otsinguparameetrite tõmmis (andmebaasis salvestatud, kuid ei kuvata kaardivaaturi hüpikaknas)

NaN väärtused lõimise fraktsioonides

Kruusa- või koresuserikaste kihtide puhul (LXTYPE = "GRAVELS") on savi, tolmu ja liiva fraktsioonid NaN. Koresuse sisaldus märgitakse sel juhul väljas ROCK. Arvestage sellega kaalutud keskmiste arvutamisel.

Kihid väljaspool profiili

Z2, Z3, Z4 on 0 (mitte NaN), kui profiilis on vähem kihte. Enne nende väärtuste kasutamist kontrollige alati välja nlayers.


Näide

Toores välja väärtus: "sl60/r₁l"

Kiht Märk Tähendus
1 sl60 Saviliiv (sl), tüsedus 60 cm
2 r₁l Nõrgalt rähkne liiv

Parsitud väljund (valitud väljad):

nlayers=2, ZMX=60, Z1=60, Z2=0
EST_TXT1="sl", LXTYPE1="LOAM",  CLAY1=15, SILT1=20, SAND1=65, ROCK1=0
EST_TXT2="l",  LXTYPE2="SAND",  CLAY2=4,  SILT2=6,  SAND2=90, ROCK2=5