FI.2. A WRF modell-rendszer futtatása

Röviden alább összefoglaljuk a modell előfeldolgozó rendszerének a WPS szoftvernek (egyelőre adatasszimiláció és beágyazás nélkül), magának a modell integrálás végrehajtásának ARW és az utófeldolgozó egységnek a technikai működését. A bemenő földrajzi adatokat a geogrid, a meteorológiai GRIB formátumú adatokat pedig az ungrib program konvertálja köztes formátumba. A kétféle bemenő adatból egységes adatbázist hoz létre a metgrid a valós adatokon futó modellt inicializáló real program számára. Ebből készíti el a modellrácsra interpolált kezdeti- és peremfeltételeket a real.exe programrészlet, majd elkezdődik a modellintegrálás, melyet a wrf.exe program hajt végre. Az utófeldolgozást az ARWpost nevű szoftverrel lehet végrehajtani. A teljes folyamatban az egyes programrészek kimenő adatai a soron következő programrészlet bemenő adatai is egyben (FI.2. ábra).

FI.2. ábra. A modellrendszer futtatása során felhasznált és keletkező adatok folyamata.

FI.2.1. A futtatáshoz szükséges bemenő adatok

  • statikus, azaz földrajzi adatok

    • domborzat

    • talaj textúra

    • felszín borítottság, vagy általánosabban fogalmazva felszínhasználat

    • klíma adatok

  • pillanatnyi vagy rövid távra előrejelzett meteorológiai adatok

    • kezdeti és peremfeltételek globális vagy regionális modell kimenetből

    • esetleg lokális megfigyelések is asszimilálhatóak.

FI.2.2. A WPS előfeldolgozó futtatása

Program komponensek:

  1. geogrid.exe statikus (földrarjzi) bemenő adatok létrehozása (ezt csak egyszer kell lefuttatni, ha a tartomány nem változik, bemenő adatokat generál a metgrid programnak)

  2. ungrib.exe bemenő meteorológiai adatok (gribek) kicsomagolása köztes formátumba (lehet ezt is futtatni elsőként, bemenő adatot generál a metgrid programnak)

  3. metgrid.exe modell rácsra történő horizontális interpoláció. A metgrid output bemenő adat az ARW-nek

Az egyes komponensek futását meghatározó paramétereket a WPS namelist-jében (futtatási opciókat tartalmazó szöveges file) megadott értékek irányítják. A "namelist.wps" állomány tartalmazza a beállításokat, paramétereket, opciókat, melyeket a program figyelembe vesz a futása során. A program futtatását a namelist.wps file-nak a szerkesztése előzi meg.

FI.2.3. WPS programkomponensek futtatása

Általános beállítások

Időzítés

Vonatkozó namelist értékek:

_____________________________________________

 start_date = '2013-05-27_12:00:00',

 end_date= '2013-05-31_12:00:00',

 interval_seconds = 10800

______________________________________________

geogrid

A geogrid program futtatásának célja a szimulációs tartomány meghatározása és a földrajzi adatok interpolációja a modelltartományra. Mielőtt ezt a programot futtatnánk, konfiguráljuk a tartományt a namelistben (egyenlőre beágyazás nélkül).

namelist részlet

______________________________________________

&geogrid

parent_id

=

1,1,1,

parent_grid_ratio

=

1,5,5,

i_parent_start

=

1,15,39,

j_parent_start

=

1,27,27,

e_we

=

95,36,36,

e_sn

=

65,26,26,

geog_data_res

=

'2m','2m','2m',

dx

=

10000,

dy

=

10000,

map_proj

=

'lambert',

ref_lat

=

47.1000,

ref_lon

=

19.3000,

truelat1

=

45.0,

truelat2

=

48.0,

stand_lon

=

19.0,

geog_data_path

=

'/home/zeno/data/geog'

______________________________________________

A modelltartomány megfelelő elhelyezkedésének ellenőrzése

>./util/plotgrids.exe

A program futtatásával létrejön egy gmeta nevű file, melyet az idt gmeta parancs futtatásával jeleníthetünk meg térképes formában az FI.3. ábrán látható módon (grafikus bejelentkezést igényel):

FI.3. ábra. A modelltartomány elhelyezkedésének ellenőrzése a namelist.wps modell tartományra vonatkozó beállításainak módosítását követően.

Ha az eredmény megfelel a várakozásainknak (a tartomány elhelyezkedése és a kiterjedése is megfelelő), futtatható a WPS előfeldolgozó program.

Megjegyzés:

A modelltartomány peremének pontos elhelyezkedése nem teljesen azonos a gyors nézeten láthatóval, mivel a rács interpolációja, forgatása, stb. némileg módosítja azt, de a tartomány széle amúgy sem a modellezés fókuszában van, ezért ez a kis eltérés nem jelenthet problémát vizsgálataink szempontjából.

Az előfeldolgozás futtatásához a gépen jelen kell, hogy legyenek a földrajzi információk a Föld azon tartományára, ahol futtatni akarunk a kívánt (10 m, 5 m, 30 s) felbontásnak megfelelő statikus adatokkal. Az adatbázis helyét a namelist.wps állományban kell meghatározni a geog_data_path változó értékével (lásd fenti geogrid file részlet).

A WPS első programegységének futtatását a geogrid paranccsal indíthatjuk:

> geogrid.exe

A program sikeres lefutását a szabvány kimeneten jelenti:

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!  Successful completion of geogrid.!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Emellett sikeres futást jelez a modelltartomány statikus adatait tartalmazó geo_em.dxx.nc file létrejötte a futtatási könyvtárban:

> ls geo_em.d*

geo_em.d01.nc

A kimenő adatállomány (az ungrib program kimenetével együtt) bemenetként szolgál majd a metgrid programnak.

ungrib

A geogrid futtatása után, vagy azt megelőzően, vagy azzal azonos időben, de mindenképpen a metgrid program futtatása előtt futtatjuk az ungrib programot. Ennek feladata: GRIB 1-es vagy 2-es formátumú meteorológiai mezők kicsomagolása köztes formátumba.

Az ungrib futtatása független a modell tartománytól, nem támaszkodik semmiben a geogrid programra sem, azzal felcserélhető. Nem vágja le továbbá a modelltartomány szélénél az adatokat (a teljes, akár globális bemenő adatmezőt konvertálja köztes formába, amit a metgrid már képes fogadni). A bemenő adatok tekintetében a Vtables (változó táblázat) ad tájékoztatást a programnak arra vonatkozóan, milyen adatokat dolgozzon fel. Mivel sokféle bemenő adatot képes fogadni a modell, ezért van szükség erre a programra, ami számos bemenő meteorológiai adatot (GFS, ECMWF, ERA, UKMO, RUC, NOGAPS, ERA, FNL, NCEP/Reanalízis, globális vagy akár regionális, stb.) képes kezelni. Futtatása előtt meg kell adni, melyik változó táblázatból dolgozzon, azt a megfelelő néven belinkelni vagy bemásolni.

GFS adatok alkalmazása esetén például:

> ln -sf WPS/ungrib/Variable_Tables/Vtable.GFS ./Vtable

A GRIB-eket GRIBFILE.AAA, GRIBFILE.AAB, stb. néven keresi az ungrib program, tehát ezeket el kell helyezni valahol a gépen. A GRIB-ek nem feltétlenül kell, hogy speciális helyen legyenek tárolva a gépen, de érdemes megfelelően tárolni azokat a könnyebb kezelhetőség végett. A bemenő adatok beszerzésének lehetőségeit itt nem tárgyaljuk. A bemenő meteorológiai adatokat tartalmazó GRIB-eket be kell linkelni a futtatási könyvtárba (vagy ilyen néven bemásolni oda, stb.). Ez a művelet a link_grib.csh szkript segítségével automatikusan végrehajtható szinte tetszőleges számú bemenő adatállományra:

> link_grib.csh adatállományok_elérési_útja/file-név_eleje

de természetesen "kézzel" is végrehajtható:

> ln -sf adatállományok_elérési_útja/GRIB_file_1 GRIBFILE.AAA

> ln -sf adatállományok_elérési_útja/GRIB_file_2 GRIBFILE.AAB

> ln -sf adatállományok_elérési_útja/GRIB_file_3 GRIBFILE.AAC

...

stb.

Ha már rendelkezésre állnak a bemenő adatok és a változókat leíró táblázat, akkor futtatható az ungrib program:

> ./ungrib.exe

Futtatása kissé hosszabb ideig tart, mint a geogrid programé, és a futási idő nem függ a modell tartomány méretétől (hiszen a teljes bemenő adattartományra fut le, amely általában globális) csak a bemenő GRIB adatállomány terjedelmétől. Sikeres futását a program a szabvány kimeneten jelenti:

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!  Successful completion of ungrib.!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

és a bemenő adatok gyakoriságának megfelelő időközönként (pl.: 3 vagy 6 óránként), egy-egy köztes formátumú adat állomány jelenik meg a futtatás könyvtárában:

> ls FILE\:*

FILE:2010-01-26_00

FILE:2010-01-26_06

FILE:2010-01-26_12

FILE:2010-01-26_18

FILE:2010-01-27_00

stb.

Fenti adatok, a geogrid program kimenő adataival együtt, bemenő adatai a metgrid programnak.

Megjegyzések:

  • Ha nem GRIB formátumban állnak rendelkezésre a bemenő meteorológiai adatok (hanem más formátumban, például egy saját futtatású globális modellből, mint az OpenIFS, vagy a GWRF), akkor saját konvertáló programot kell készíteni a köztes formátumra hozáshoz, és az ungrib program nem szükséges a bemenő adatok előállításához.

  • A korlátos tartományú WRF modell futtatásához az összes beágyazott tartomány integrálási időtartamának teljes hosszára szükségesek bemenő adatok peremfeltételként. Ezért ügyeljünk arra, hogy kellő számú és érvényességi idejű bemenő GRIB adat álljon rendelkezésre.

metgrid

Ennek a programrésznek a futtatásával megvalósul a köztes formátumú bemenő földrajzi és meteorológiai adatok horizontális interpolációja a modellrácsra. Kimenetei a modell kezdeti és peremfeltétel file-jai: egy modell tartomány esetében például a wrfinput_d01 és wrfbdy_d01 állományok.

F.2.4. Modell integrálás – ARW

  1. A real.exe program feladata többek között avertikális interpoláció a modell szintekre, tömbök és memória inicializációja;

  2. A wrf.exe program végzi el a numerikus integrálást, mely létrehozza magát az előrejelzést.

Megjegyzés:

A modell futtatása nagy számítás igényű feladat, a futtatás akár napokig is eltarthat. A terminálként alkalmazott (személyi) számítógépünk a modellt integráló szerverhez többszörös áttételen keresztül csatlakozhat: például a laptopunk a routerhez WiFi-n keresztül, a router a modemhez patch kábelen, a modem egy szolgáltatón keresztül "lát rá" a világhálóra, ami több alhálózaton keresztül biztosítja a kapcsolatot a kiszolgáló számítógéphez. Ez a kapcsolat a program lefutásához szükséges idő alatt több ponton is megszakadhat, és ha csak egyszerűen parancs soron kiadott utasítással futtattuk a modellt, akkor a kapcsolat megszakadását követően a folyamat elesik. Ezért úgy célszerű feladni a futást, hogy utána a parancs soron visszakapjuk a prompt-ot (parancssor végén & alkalmazásával), és a kapcsolat megszakadását követően is tovább fusson a folyamat (pl.: nohup keretprogram használatával). A program szabványos és hibaüzenet kimeneteit pedig célszerű továbbirányítani egy napló file-ba (mondjuk wrf.log néven). Ajánlott még a time parancs alkalmazása is, hogy a futási idő a folyamat végén rendelkezésre álljon:

> nohup time ./wrf.exe &> wrf.log &

A folyamatot akár három külön terminálon a top paranccsal, a wrfout* kimenő file-ok időnkénti listázásával, az időbélyeg másodperc pontosságú kiíratásával:

> ls --time-style='+%d-%m-%Y %H:%M:%S' -ltr wrfout_d01_*

és a log file-ok monitorozásával kísérhetjük nyomon:

> tail -f rsl.error.0000

Az egyes időlépcsők integrálásához szükséges idők az rsl file-ban jelennek meg, az óránként létrejövő output file-ok időbélyegeiből kiszámolható egy órányi számítás idő igénye, melyből extrapolálható a feladat elvégzéséig hátralévő idő. Amennyiben a számítási idők elkezdenek látványosan növekedni, az gyakran annak a jele, hogy a modell stabilitása elveszett, és a számítás túlcsordult. Ekkor az rsl file-ban érdemes a cfl kulcsszót keresni (pl.: grep cfl rsl.error.0000). A modellezés során végrehajtott munkamenet jellemző képernyő képe látható az FI.4. ábrán. A bal oldali ablakban fut a top parancs. Amennyiben párhuzamos futtatásra alkalmas számítógépen futtatunk, akkor a top interaktív futása közben leütött 1-es billentyűparancs megadja az egyes szálakra vonatkozó információkat, de ehhez megfelelő méretű ablak kell, ha sok szálon futtatunk (az ábrán látható példa esetében 24 szálon). A középső felső terminálon a futás naplózásával keletkező wrf.log file listázódik ki a tail -f paranccsal, az alsó ablakban pedig másodperces időbélyeggel listázzuk az óránként létrejövő kimenő file-okat, és az időbélyegekből következtethetünk a futtatás időigényére. A jobb szélső ablakban bizonyos okból a futtatási parancsokat tartalmazó szkriptet interaktívan indítottuk el.

FI.4. ábra. A modellezés során végzett munkamenet jellemző képernyőnézete.

A modell lefutását a top ablakban megszűnő wrf.exe tétel, az utolsó időlépcsőre vonatkozó wrfout file megjelenése és az rsl log fileban megjelenő sikeres program futást igazoló üzenet jelzi:

 wrf: SUCCESS COMPLETE WRF

Ha ezek mind arra utalnak, hogy az integrálás sikeres volt, akkor megkezdhető a modell adatok utófeldolgozása.

FI.2.5. Utófeldolgozás az ARWpost segítségével

A többi program komponenshez hasonlóan az ARWpost futását is egy namelist file vezérli. Ebben megadásra kerülnek a modell output időtartamából utófeldolgozásra szánt időszak kezdeti és végső időpontjai:

 start_date = '2013-05-27_12:00:00',

 end_date= '2013-05-31_12:00:00',

Ezt a filenév előírások (milyen nevű ki és bemenő adat állományokkal dolgozzon), valamint az utófeldolgozásra szánt modellváltozók, vagy származtatott diagnosztikák felsorolása követi. A felsorolást tartalmazhatja maga a namelist.ARWpost file, illetve külön file-ban is megadhatóak a változó nevek, ekkor a namelistben jelezni kell, hogy külön file tartalmazza a listát, és meg kell adni a listafile nevét:

 plot = 'file'

 fields_file = 'myLIST'

A lista-file minden sora egy-egy változó név. Ügyelni kell arra, hogy a modell változók neveit nagybetűvel kell megadni (pl.: U, V, T2, Q2), míg az utófeldolgozás során számított diagnosztikák (pl.: ws10, wd10, clfr, stb.) kisbetűvel is megadhatóak.

Szintén az ARWpost program namelist-je tartalmazza arra vonatkozóan az instrukciót, hogy a kimeneti mezőket a modell függőleges koordináta-rendszeréről mely vertikális koordinátára kell interpolálni (–1 esetén az eredeti szigma szintekre, 0 esetén az ARWpost kód által megadott, optimális szintekre, 1 esetén pedig a felhasználó által megadott nyomási vagy magassági szintekre):

 interp_method = 1,

1-es opció választása esetén megadhatóak a konkrét magassági (km) vagy nyomási (hPa) értékek is, lentről felfelé. A szintek sorrendje kötött, alulról felfelé kell az értékeket megadni.

Tengerszint feletti magassági szintek esetén:

&interp 

 interp_method = 1,

 interp_levels =

0.25,0.5,0.75,1.0,1.25,1.5,1.75,2.0,2.5,3.0,4.0,5.0,6.0,7.0,

/

Nyomási szintek esetén:

&interp 

 interp_method = 1,

 interp_levels =

1000, 925, 850, 700, 600, 500, 400, 300, 250, 200, 150, 100, 70, 50, 30, 20, 10,

/

Lehetséges diagnosztikák az ARWpost utófeldolgozó programban:

__________________________________________________________________________

  • cape - a rendelkezésre álló 3 dimenziós konvektív potenciális energia

  • cin - a 3 dimenziós konvektív inhibíció mérőszáma

  • mcape - a CAPE lehetséges legmagasabb értéke az indítási szint változtatása esetén

  • mcin - a CIN lehetséges legmagasabb értéke az indítási szint változtatása esetén

  • clfr - alacsony, középmagas és magas szintű felhőzet mennyisége

  • dbz - 3 dimenziós radarjel

  • max_dbz - maximális radarjel

  • geopt - geopotenciális magasság

  • depth - modell magasság km-ben megadva

  • lcl - emelési kondenzációs szint

  • lfc - szabad konvekció szintje

  • pressure - teljes modell nyomás hPa-ban

  • rh - relatív nedvesség

  • rh2 - relatív nedvesség 2 m-en

  • theta - potenciális hőmérséklet

  • tc - hőmérséklet Celsius fokban

  • tk - hőmérséklet Kelvinben

  • td - harmatpont Celsius fokban

  • td2 - harmatpont 2 m-en Celsius fokban

  • slp - tengerszintre átszámított légnyomás

  • umet és vmet - földrajzi koordinátákra elforgatott szélsebesség komponensek

  • u10m and v10m - földrajzi koordinátákra elforgatott szélsebesség komponensek a 10m-es szinten

  • wdir - szélirány

  • wspd - szélsebesség

  • wd10 - szélirány a 10 m-es szinten

  • ws10 - szélsebesség a 10 m-es szinten

__________________________________________________________________________

Meg kívánjuk jegyezni, hogy a WRF modell kimeneteit utófeldolgozás nélkül is fel lehet használni, de a könnyebb alkalmazhatóság valamint az alkalmazás szempontjából kívánatosabb paraméterek származtatása okán célszerű az utófeldolgozást a modellfuttatással együtt elvégezni. Az utófeldolgozást követően a nyers modell kimeneteket ki lehet törölni a modell bemenő adatokkal és a futtatás, előfeldolgozás során keletkezett átmeneti állományokkal együtt, melynek során jelentős (akár 50%-ot is meghaladó) lemezterület megtakarítás érhető el.

Szintén érdemes megemlíteni, hogy léteznek a modellhez használható más utófeldolgozó, illetve verifikációs programok is, de azok használata az WRF kutatási változatával (ARW) nem annyira egyszerű. Például az UPP (Unified Post-Processor) alkalmazása, amely a WRF NMM változatához került kifejlesztésre, csak bizonyos kompromisszumok és változtatások árán lehetséges.