WRF demo/tutorial - PowerPoint PPT Presentation

About This Presentation
Title:

WRF demo/tutorial

Description:

Arakawa C grid, R-K scheme, odd order advection w/ implicit diffusion ... Software design cumbersome, obtuse [opinion may change with experience] ... – PowerPoint PPT presentation

Number of Views:161
Avg rating:3.0/5.0
Slides: 64
Provided by: Robert1090
Category:
Tags: wrf | demo | obtuse | tutorial

less

Transcript and Presenter's Notes

Title: WRF demo/tutorial


1
WRF demo/tutorial
  • 12-13-2004
  • Robert Fovell
  • rfovell_at_ucla.edu

2
Background on WRF model
  • Weather Research and Forecasting
  • Co-developed by research and operational
    communities
  • Replaces MM5 and Eta models
  • Current version 2.0.3.1
  • Platforms (for model) Linux, IBM/AIX, SGI, Cray,
    Darwin and Sun (hideous)

3
WRF advantages
  • Better numerics than MM5
  • Arakawa C grid, R-K scheme, odd order advection
    w/ implicit diffusion
  • Much less diffusive, larger effective resolution,
    permits longer time steps
  • Better topography than Eta
  • GUI-driven domain configuration, initialization
  • Fortran 95 (MM5 was F77)
  • NetCDF output

4
Further advantages
  • Allows real data and idealized simulations in
    same framework
  • Plug-in architecture (different groups will
    supply WRF cores)
  • What Im calling WRF is really the Advanced
    Research WRF (ARW) core

5
WRF disadvantages
  • Bleeding edge
  • Smaller range of physics choices overall
  • No radiation upper bdry condition yet
  • Software design cumbersome, obtuse opinion may
    change with experience
  • Nesting is very serious pain that will change

6
Overview
  • WRF Standard Initialization (WRFSI)
  • Set up domain
  • Prepare data for model run
  • MM5 equiv terrain, pregrid, regridder
  • WRF model
  • Initialize model (MM5s interpf)
  • Run model
  • WRF post-processing
  • WRF 3DVAR (not covered today)

7
Web stuff
  • http//www.mmm.ucar.edu/wrf/users/user_main.html
    (WRF model users site)
  • http//www.mmm.ucar.edu/wrf/users/wrfv2/wrf-nameli
    st.html (WRF namelist.input page)
  • http//www.mmm.ucar.edu/wrf/users/docs/user_guide/
    contents.html (WRF users guide)
  • http//www.mmm.ucar.edu/wrf/users/tutorial/tutoria
    l-2004.htm (Slides from 2004 WRF tutorial at
    NCAR)
  • http//www.atmos.ucla.edu/fovell/WRF/WRF_ports.ht
    ml (Darwin/Mac OS X port)
  • http//www.wrf-model.org/si/ (WRFSI home page)
  • http//www.mmm.ucar.edu/wrf/WG4/tutorial/wrf3dvar_
    download_data.htm (WRF 3DVAR tutorial)

8
WRF for real data run
  • Example
  • 24-26 October 2003 (Simi fire)

9
Directory structure
  • /WRFV2/
  • Parent directory
  • /WRFV2/wrfsi
  • WRFSI location
  • /WRFV2/wrfsi/domains/SoCal
  • Domain setup SoCal location
  • /WRFV2/test/em_real
  • Where real data run will be made

10
WRFSI /WRFV2/wrfsi/wrf_tools
11
(No Transcript)
12
(No Transcript)
13
(No Transcript)
14
(No Transcript)
15
(No Transcript)
16
(No Transcript)
17
(No Transcript)
18
(No Transcript)
19
(No Transcript)
20
(No Transcript)
21
Domain 1 terrain
22
(No Transcript)
23
(No Transcript)
24
(No Transcript)
25
(No Transcript)
26
(No Transcript)
27
(No Transcript)
28
Output from WRFSI
  • /WRFV2/wrfsi/domains/SoCal/siprd
  • IC, BC files for D1, IC file for D2
  • Move or link into /WRFV2/test/em_real

29
WRF model /WRFV2/
30
Directory structure
  • In ../WRFV2
  • main/ is where executables live
  • arch/ default config stuff
  • frame/ model framework stuff
  • phys/, dyn_em/ model physics, solver
  • external/ mainly I/O, MPI stuff
  • test/ test cases live here
  • run/ can run model from here, too

31
Preparing to run
  • Configure
  • ./configure
  • Select platform, compiler, whether single
    threaded, OpenMP or MPI
  • Compile
  • ./compile em_real
  • Creates real.exe and wrf.exe in ../WRFV2/main
  • Creates links to real.exe, wrf.exe in
    ../WRFV2/test/em_real

32
Configuring
  • ./configure presents option list
  • Example chose option 3, MPI

33
Compiling
  • ./compile presents options
  • Example chose compile em_real
  • Eulerian mass-coordinate real-data model

34
Final initialization step
  • Move to .../WRFV2/test/em_real
  • Edit namelist.input
  • Lots to do here
  • Execute ./real.exe
  • Creates wrfinput_d01, wrfbdy_d01 files
  • Run for each nest separately ouch
  • Model executable is wrf.exe

35
Editing namelist.input
  • Web resource
  • http//www.mmm.ucar.edu/wrf/users/wrfv2/wrf-nameli
    st.html
  • Namelist sections partial list
  • time_control
  • domains
  • physics
  • dynamics

36
Setup for single domain run
Columns provided for 3 domains (parent 2
nests) but if max_dom 1 extra columns ignored
37
Setup for single domain run
time_step 6DX (3DX for MM5) unless
convective Change max_dom when ready to activate
nest
38
Setup for single domain run
Here I have my MOAD dimensions (80x67) and nest
dimensions (61x37) entered. Third column ignored
since I only created 2 domains
39
Setup for single domain run
s_we start index for west-east direction,
always 1. e_we end index west-east, thats your
dimension
40
Setup for single domain run
Make sure dx, dy set correctly -- the model does
NOT check GUI-created inputs!
41
Setup for single domain run
Columns provided for 3 domains (parent 2
nests) but if max_dom 1 extra columns ignored
42
Setup for single domain run
Here, subgrid mixing and computational diffusion
is deactivated models odd order advection is
diffusive
43
Run real.exe wrf.exe
  • ./real.exe
  • Look for real_em SUCCESS COMPLETE REAL_EM INIT
    message
  • mpirun -np 2 wrf.exe
  • MPI version creates rsl.out.000 and
    rsl.error.000 files
  • tail -f rsl.out.0000
  • Look for wrf SUCCESS COMPLETE WRF

44
Files created by WRF run
  • Named like
  • wrfout_d01_2003-10-24_120000
  • d01 domain 1
  • file started 12Z 24 October 2003
  • Files can be HUGE (NetCDF inefficient)
  • - to split output files, namelist entry
  • frames_per_outfile in time_control

45
WRF postprocessing
  • RIP (just like MM5)
  • WRF2GrADS converter
  • WRF2VIS5D converter
  • Software that can handle NetCDF

46
RIP
  • RIP version 4 required
  • Real data runs only
  • ripdp_wrf expname all wrfout
  • Will unpack every wrfout files in local
    directory and all variables and call extracted
    files expname
  • Replace all with basic for less output
  • RIP4 unpacker for MM5 is now ripdp_mm5 expname
    MMOUT

47
Animation using RIP
  • Part of Domain 1 shown for 24Oct2003 case

Color 2 m temperature topo contours 10 m wind
vectors
48
Nesting
  • Created domains 1, 2 for SoCal in WRFSI
  • WRFSI created wrf_real_input_em files for both
    domains
  • Need to run real.exe once for each domain
  • namelist.input needs to be edited for each
    real.exe run
  • Files have to be renamed to fool real.exe
  • Web page explanation http//www.mmm.ucar.edu/wrf/
    users/wrfv2/runwrf.html

49
MM5 v. WRF on nesting
  • MM5
  • Need only initialize parent (outer) grid
  • MM5 interpolates to nests, using nest terrain
    files created using terrain
  • WRF
  • If let model interpolate to nests, higher res
    topo files are NOT used, unlike MM5
  • So, you need to init each domain separately with
    real.exe, and that takes fooling real.exe

50
Fooling real.exe - 2 domain example
  • Start with domain 2 first
  • Edit namelist.input, putting nest information in
    first column
  • Previously, that info was for parent grid
  • Rename wrf_real_input_em.d02 IC file as
    wrf_real_input_d01 after saving real d01
    file!!!!
  • Here, its wrf_real_input_em.d02.2003-10-24_1200
    00 being renamed as wrf_real_input_em.d01.2003-10-
    24_120000
  • Then

51
Fooling real.exe - 2 domain example (cont.)
  • This creates a wrfinput_d01 file (since real.exe
    thinks its domain 1)
  • Rename that file as wrfinput_d02 (since its
    really for domain 2)
  • Restore original domain 1 IC file
  • Here, its wrf_real_input_em.d01.2003-10-24_1200
    00
  • Re-edit namelist.input, making sure domain 1
    info in 1st column, domain 2 in 2nd
  • Run real.exe again
  • Creates wrfbdy_d01, wrfinput_d01

52
Nesting initialization, step by step
  • This should be scripted somehow, to avoid
    mistakes
  • Create your namelist.input, with parent and nest
    domain info, start and stop times, etc
  • Set max_dom 2
  • Set input_from_file .true., .true.
  • ICs for both domains will be read in from files
  • Those filenames will be wrfinput_d01, wrfinput_d02

53
Nesting initialization, step by step (cont.)
  • Rename original d01 IC file as
  • Copy d02 IC file with d01 IC file original name
  • Copy namelist.input as namelist.input.real
  • Edit namelist.input
  • This is your temporary namelist.input file
  • Set stop time start time only want IC
  • Replace parent domain info in column 1 with nest
    info from column 2

54
Nesting initialization, step by step (cont.)
  • Temporary namelist.inputs time_control

55
Nesting initialization, step by step (cont.)
  • Temporary namelist.inputs domains
  • Run real.exe
  • Rename wrfinput_d01 as wrfinput_d02

56
Nesting initialization, step by step (cont.)
  • Clean up
  • Move namelist.input.real to namelist.input
  • Move wrf_real_input_em.d01.2003-10-24_120000.rea
    l back to wrf_real_input_em.d01.2003-10-24_12000
    0
  • Run real.exe again, this time creating
    wrfinput_d01 and wrfbdy_d01
  • Now you have
  • wrfinput files for d01 and d02
  • wrfbdy file for d01
  • namelist.input file controlling both domains
  • Run the model!

57
Animation of nest
  • Domain 2 shown for 24Oct2003 case

Color 2 m temperature topo contours 10 m wind
vectors
58
Restarting WRF
  • In namelist.input, set restart_interval to
    desired restart output file interval (minutes)
  • To restart a simulation
  • Set restart .true.
  • Set start_ time to reflect restart time

59
WRF performance on my machines
60
Compile flag notes
  • On PCs, Intel beats PGF handily
  • But use -mp flag for accuracy, consistency as
    number of CPUs varied
  • This flag does NOT refer to multiprocessing w/
    Intel compiler
  • Dont use -xW vectorization flag w/o checking
    (my results so far always wrong)
  • On Macs, IBM xlf is a great compiler
  • But use -qfloatnomaf flag for accuracy
  • My tests virtually identical results between
    optimized and non-optimized when nomaf used

61
WRF for idealized cases
  • Ready-made examples include 2D squall lines and
    3D supercells
  • compile em_squall2d_x for the 2D x-z plane squall
    line example
  • In /WRFV2/test/em_squall2d_x, run ideal.exe and
    then wrf.exe
  • To change IC for this case, modify
    /WRFV2/dyn_em/module_initialize_squall2d_x.F and
    recompile

62
Ideal run output using WRF2GrADS
63
- End -
Write a Comment
User Comments (0)
About PowerShow.com