Panel |
---|
borderColor | lightgray |
---|
borderWidth | 1 |
---|
titleBGColor | mediumgray |
---|
borderStyle | solid |
---|
title | Sadržaj |
---|
|
|
https://www.mmm.ucar.edu/weather-research-and-forecasting-model
WRF 3.8.1 je preveden s Intel 2019 i OpenMP 3.0, a WRF 4.3 s Intel 2019 i OpenMP 4.1.
...
Dostupne verzije
Verzija | Modul |
---|
3.8.1 | WRF/3.8.1-openmpi-intel |
4.1. | 35 | WRF/4.1.5 |
4.3 |
...
Za pokretanje WRF modela potrebni su ulazni podaci globalnog modela (GFS, ECMWF), npr. https://nomads.ncep.noaa.gov/pub/data/nccf/com/gfs/prod/
U ovom primjeru meteorološki podaci su već preuzeti za 10.08. 00h-06h i nalaze se u direktoriju /apps/WRF/4.3/DATA/.
Code Block |
---|
mkdir -p ~/WRF_RUN/DATA
cd ~/WRF_RUN
cp /apps/WRF/4.3/DATA/* ./DATA |
Kopiranje svi potrebnih ulaznih podataka u radni direktorij:
Code Block |
---|
mkdir geogrid
mkdir metgrid
cp /apps/WRF/4.3/WPS/geogrid/GEOGRID.TBL geogrid/
cp /apps/WRF/4.3/WPS/metgrid/METGRID.TBL metgrid/
cp /apps/WRF/4.3/example/namelist.wps .
cp /apps/WRF/4.3/example/namelist.input .
cp /apps/WRF/4.3/WRF/run/*.TBL .
cp /apps/WRF/4.3/WRF/run/ozone* .
cp /apps/WRF/4.3/WRF/run/RRT* . |
WPS_GEOG ulazni podaci za WRF4 nalaze se u direktoriju /apps/WRF/4.3/WPS_GEOG/, te ih nije potrebno preuzimati već samo postaviti u namelist.wps.
Skripte za pokretanje poslova
Note |
---|
Sve verzije su optimirane za izvođenje na p28* redovima |
Korištenje
U najosnovnijoj verziji, tijek rada pri izradi simulacija je sljedeći:
- WPS korak - prikupljanje ulaznih meteoroloških podataka i priprema statičkih podataka potrebnih za simuliranje
- WRF korak - inicijalizacija statičkih podataka iz prethodnog koraka i integracija pomoću WRF-ARW jezgre
Prvi korak je serijske prirode i ne zahtijeva pozivanje neke od dostupnih paralelnih okolina.
Drugi se korak većinski oslanja na paralelizaciju i ubrzanje proračuna korištenjem više procesora.
Tip |
---|
Dva savjeta za lakše izvođenje simulacija: - /apps/WRF/WPS_GEOG - putanja za uobičajene statičke podatke WPS (approx. 29G)
- WRF_HOME - varijabla okoline koja olakšava pristup dodatnim ulaznim podacima
|
Primjer
Ispod se nalaze upute za korištenje verzije WRF 4.3 temeljene na službenom predlošku WRF-ARW (uragan Matthew)
Datoteke koje su predstavljene izvršiti će spomenuti predložak u trenutnom direktoriju:
- namelist.wps - konfiguracijska datoteka WPS
- namelist.input - konfiguracijska datoteka WRF
- wps.sge - SGE skripta koraka WPS
- wrf-serial.sge - SGE skripta serijskog dijela WRF
- wrf-parallel.sge - SGE skripta paralelnog dijela WRF
- run.sh - upute za podnošenje skripta WPS i WRF
Note |
---|
Upute o podnošenju poslova bi trebale biti primjenjive i na prijašnje verzije WRF, no postoji mogućnost da se ulazne datoteke moraju prilagoditi (detaljnije upute na službenim stranicama) |
Code Block |
---|
language | py |
---|
title | namelist.wps |
---|
linenumbers | true |
---|
collapse | true |
---|
|
&share
wrf_core = 'ARW'
max_dom = 1
start_date = '2016-10-06_00:00:00'
end_date = '2016-10-08_00:00:00'
interval_seconds = 21600
io_form_geogrid = 2
active_grid = .true.
/
&geogrid
parent_id = 1
parent_grid_ratio = 1
i_parent_start = 1
j_parent_start = 1
e_we = 91
e_sn = 100
geog_data_res = 'default'
dx = 27000
dy = 27000
map_proj = 'mercator'
ref_lat = 28.00
ref_lon = -75.00
truelat1 = 30.0
truelat2 = 60.0
stand_lon = -75.0
geog_data_path =
opt_geogrid_tbl_path =
/
&ungrib
out_format = 'WPS'
prefix = 'FILE'
/
&metgrid
fg_name = 'FILE'
io_form_metgrid = 2
opt_metgrid_tbl_path =
/ |
Code Block |
---|
language | py |
---|
title | namelist.input |
---|
linenumbers | true |
---|
collapse | true |
---|
|
&time_control
run_days = 0
run_hours = 48
run_minutes = 0
run_seconds = 0
start_year = 2016
start_month = 10
start_day = 06
start_hour = 00
end_year = 2016
end_month = 10
end_day = 08
end_hour = 00
interval_seconds = 21600
input_from_file = .true.
history_interval = 180
frames_per_outfile = 1
restart = .false.
restart_interval = 1440
io_form_history = 2
io_form_restart = 2
io_form_input = 2
io_form_boundary = 2
debug_level = 0
/
&domains
time_step = 100
max_dom = 1
e_we = 91
e_sn = 100
e_vert = 45
p_top_requested = 5000
num_metgrid_levels = 32
num_metgrid_soil_levels = 4
dx = 27000
dy = 27000
grid_id = 1
parent_id = 0
i_parent_start = 1
j_parent_start = 1
parent_grid_ratio = 1
feedback = 1
smooth_option = 0
/
&physics
mp_physics = 3
ra_lw_physics = 1
ra_sw_physics = 1
radt = 30
sf_sfclay_physics = 1
sf_surface_physics = 2
num_soil_layers = 4
bl_pbl_physics = 1
bldt = 0
cu_physics = 1
cudt = 5
isfflx = 1
ifsnow = 1
icloud = 1
surface_input_source = 3
num_land_cat = 21
sf_urban_physics = 0
sf_ocean_physics = 0
/
&dynamics
w_damping = 0
diff_opt = 1
km_opt = 4
diff_6th_opt = 0
diff_6th_factor = 0.12
base_temp = 290.
damp_opt = 0
zdamp = 5000.
dampcoef = 0.2
damp_opt = 0
damp_opt = 0
non_hydrostatic = .true.
moist_adv_opt = 1
scalar_adv_opt = 1
/
&bdy_control
spec_bdy_width = 5
spec_zone = 1
relax_zone = 4
specified = .true.
nested = .false.
/
&namelist_quilt
nio_tasks_per_group = 0
/ |
Code Block |
---|
language | bash |
---|
title | wps.sge |
---|
linenumbers | true |
---|
collapse | true |
---|
|
#$ -N wps
#$ -cwd
# postavi okolinu |
Code Block |
---|
|
#!/bin/sh
#$ -N WPS
#$ -cwd
module load WRF/4.3
geogrid.exe
link_grib.csh ./DATA/*
ln -sf /apps/WRF/4.3
# skini ulazne podatke i spremi ih u direktorij DATA
wget -N https://www2.mmm.ucar.edu/wrf/TUTORIAL_DATA/matthew_1deg.tar.gz
mkdir -p DATA
tar xvf matthew_1deg.tar.gz -C DATA --strip-components 1 --skip-old-files
# upiši pravilne staze u namelist.wps
GEOGPATH="'/apps/WRF/WPS_GEOG'"
GTBLPATH="'${WRF_HOME}/WPS/geogrid'"
MTBLPATH="'${WRF_HOME}/WPS/metgrid'"
sed -i "s| geog_data_path.*| geog_data_path = ${GEOGPATH}|g" namelist.wps
sed -i "s| opt_geogrid_tbl_path.*| opt_geogrid_tbl_path = ${GTBLPATH}|g" namelist.wps
sed -i "s| opt_metgrid_tbl_path.*| opt_metgrid_tbl_path = ${MTBLPATH}|g" namelist.wps
# wps koraci
link_grib.csh DATA/fnl
VTBLPATH="${WRF_HOME}/WPS/ungrib/Variable_Tables/Vtable.GFS"
ln -sf $VTBLPATH Vtable
ungrib.exe
geogrid.exe
metgrid.exe
|
Code Block |
---|
language | bash |
---|
title | wrf-serial.sge |
---|
linenumbers | true |
---|
collapse | true |
---|
|
#$ -N wrf-serial
#$ -cwd
# postavi okolinu
module load WRF/4.3
# stavi poveznice na dodatne datoteke iz direktorija WRF/run ( osim namelist.input* )
find $WRF_HOME/WRF/run -type f ! -name 'namelist.input*' -exec ln -s {} . \;
# wrf real korak
real.exe |
Code Block |
---|
language | bash |
---|
title | wrf-parallel.sge |
---|
linenumbers | true |
---|
collapse | true |
---|
|
#!/bin/sh
#$ -N WRFwrf-parallel
#$ -cwd
#$ -pe p28*-mpi 28
#$ -cwd
4
# postavi okolinu
module load WRF/4.3
ulimit -s unlimited# wrf wrf korak
mpirun -np 1$NSLOTS real.exe
mpirun -np $NSLOTS wrf.exe |
Pokretanje poslova
...
Code Block |
---|
language | bash |
---|
title | run.sh |
---|
linenumbers | true |
---|
collapse | true |
---|
|
#!/bin/bash
# podnesi SGE skripte jednu za drugom
qsub -N wps wps.sge
qsub -hold_jid wps -N wrf-serial wrf-serial.sge
qsub -hold_jid wrf-serial -N wrf-parallel wrf-parallel.sge |
Performanse
Ispod se nalazi totalno vrijeme integracije kao i paralelna efikasnost izvršenja gore opisanog predloška
Note |
---|
Paralelna efikasnost veća od jedan je do serijskog izvođenja na a16* redu (samo jedan procesor) za koji WRF nije optimizran |
Image Added