This image at right image shows the fine-scale striations in low-level cloud
water that are particularly unrealistic over the open ocean. Here is a
loop showing
how that low-level cloud field develops in time, and here is
another showing
how the 1-hour precipitation evolves.
Here is what the 1-km visible satellite imagery shows for this period, and here is a high resolution MODIS image and a lower resolution MODIS image. Here is the Quillayute sounding for 0Z on the 8th.
Case Studies
Working on Solutions
To help fix this, several approaches have been tried:
1) turning off the cumulus scheme for this domain
2) turning on 6th-order diffusion in various amounts.
3) Trying a different NCEP model for initialization.
Solution
4) Moving the western boundary farther away from the parent boundary and increasing the over-water trajectory for the inner domains (cases 34. weisdom and 35. wei2dom) seem to be the solution. Here is a loop of the various domains. This loop of OLR and this zoomed in loop over a common area illustrate how these changes in domain configuration allow the clouds over water to break into much more realistic structures. Thanks to Wei Wang from NCAR's MMM division for coming up with this.
The loops in this table illustrate the attempts and how they impact
the simulations.
Initialization | Domain | Product | Hour | Cases (control click to select multiple) |
Case Name(s) namelist.input
file namelist.input diff from std |
Description |
Low cloud loops |
1-hour precip loops |
Offshore vertical cross-section loops |
Comparing All Hours to std run |
Comparing just hour 9 to std |
Comparing All Hours to std run |
Comparing just hour 9 to std |
Comparing All Hours to std run |
Comparing just hour 9 to std |
All Cases | Every Case |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
1. UW WRF-GFS std namelist.input | current standard run, with Kain-Frisch Domain Plot |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
2. wrfv31lsmrrtmqnudge2 stdnocuqn2 namelist.input diff from std | no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
3. wrfv31lsmrrtmqn2diff6 namelist.input diff from std | no KF, 6th order diffusion, factor = 0.12 (default) |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
4. wrfv31lsmrrtmqn2diff6f36 namelist.input diff from std | no KF, 6th order diffusion, factor = 0.36 |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
5. wrfv31lsmrrtmqn2diff6f50 namelist.input diff from std | no KF, 6th order diffusion, factor = 0.50 |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
6. wrfv31myjrrtm namelist.input diff from std | MYJ PBL, no KF, no 6th order diffusion |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
7. wrfv31qnserrtmqnudge2 namelist.input diff from std | QNSE PBL, no KF, no 6th order diffusion |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
8. wrfv311acm2rrtmqnudge2 namelist.input diff from std | ACM2/Pleim PBL, Pleim LSM, no KF, no 6th order diffusion, 3.1.1 code |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
9. wrfv31mynnqn2 namelist.input diff from std | MYNN PBL, no KF, no 6th order diffusion |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
10. wrfv31nofdda namelist.input diff from std | YSU PBL, no FDDA, no KF, no 6th order diffusion |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
11. fullynested namelist.input diff from std | fully nested std run, all domains
run together with feedback turned on, YSU PBL, no KF, no 6th order diffusion |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
12. wrfv31damp1 namelist.input diff from std |
upper-level diffusive damping (damp_opt = 1, dampcoef=0.01), no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
13. wrfv31damp2 namelist.input diff from std |
upper-level diffusive damping (damp_opt = 1, dampcoef=0.1), no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
14. wrfv311stdadv namelist.input diff from std |
v3.1.1, no positive-definite moisture advection, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
15. wrfv311monotonic namelist.input diff from std |
v3.1.1, monotonic moisture advection, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
16. wrfv311stauffer namelist.input diff from std |
v3.1.1, doubled vertical mixing coefficients K, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
17. wrfv311stauffer2 namelist.input diff from std |
v3.1.1, halved vertical mixing coefficients K, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
18. wrfv311stauffer3 namelist.input diff from std |
v3.1.1, 1/4 vertical mixing coefficients K, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
19. wrfv311stauffer4 namelist.input diff from std |
v3.1.1, 1/8 vertical mixing coefficients K, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
20. wrfv311stauffer5 namelist.input diff from std |
v3.1.1, 1-1.5-2 times vertical mixing coefficients Km and Kt, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
21. wrfv311diffopt0 namelist.input diff from std |
v3.1.1, no turbulence or explicit numerical filters diff_opt=0, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
22. wrfv311hadv3 namelist.input diff from std |
v3.1.1, horizontal momentum and scalar advection at 3rd instead of 5th order, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
23. wrfv311rk2 namelist.input diff from std |
v3.1.1, Runge-Kutta 2nd instead of 3rd order, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
24. wrfv311closer namelist.input diff from std |
v3.1.1, western boundary closer to coast, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
25. wrfv311gwd namelist.input diff from std |
v3.1.1, Gravity Wave Drag turned on for all domains, no KF, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
26. wrfv311dtreduced namelist.input diff from std |
v3.1.1, Reduced time-step for 4/3-km grid (4 instead of 8
seconds), no cumulus param, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
27. wrfv311ustar2 namelist.input diff from std |
v3.1.1, Increased ustar (friction velocity) by factor of 2, no cumulus param, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
28. wrfv311myjmod namelist.input diff from std |
v3.1.1, MYJ with PSU modification, no cumulus param, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
29. wrfv311ustar3 namelist.input diff from std |
v3.1.1, Increased ustar (friction velocity) by factor of 2 only over land, no cumulus param, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
30. wrfv311ustar4 namelist.input diff from std |
v3.1.1, Increased ustar (friction velocity) by factor of 1.5 only over land, no cumulus param, no 6th order diffusion, new Q nudging |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
32. fullynested.v33 namelist.input diff from std | fully nested std run using version 3.3, all domains
run together with feedback turned on, YSU PBL, KF, no 6th order diffusion |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
33. fullynested.v33nokf namelist.input diff from std | fully nested std run using version 3.3, all domains
run together with feedback turned on, YSU PBL, no KF, no 6th order diffusion |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
34. weisdom namelist.input diff from std | Domain Plot fully nested std run using version 3.1.1, bigger 12- and 4-km domains, smaller 4/3-km
run together with feedback turned on, YSU PBL, no KF, no 6th order diffusion |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
35. wei2dom namelist.input diff from std | Domain Plot fully nested std run using version 3.1.1, bigger domains
run together with feedback turned on, YSU PBL, no KF, no 6th order diffusion |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
36. wei3dom namelist.input diff from std | Domain Plot fully nested std run using version 3.1.1, bigger 12 and 4-km
run together with feedback turned on, YSU PBL, no KF, no 6th order diffusion |
qclst loop |
qclst loop |
pcp1 loop |
pcp1 loop |
cx_ns loop |
cx_ns loop |
|
|