Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

Unrealistic (?) PBLH results

hconel

Member
Hi,

As far as I know, PBL height is expected to be between 100-2000 m, roughly. However, I'm getting PBLH as low as ~5m. Moreover, when I interpolate the fields on vertical plane cuts, the pblh distribution seems to be quite erratic along neighboring planes: it varies from 5 to 800 meters within a small area (~10km). Also, wind speed changes rapidly within the 1000m vertical direction: drops to zero almost and increases again, etc.

Here are some post-processed images along neighboring planes in a time step (10 hours after the initialization):
(each plane has a horizontal length of ~2km)

Screenshot-from-2022-06-09-21-06-57.png


Here are some of the parameters I use in my simulation:
Code:
GFS input: 0.5 deg resolution
Nested 4 domains (dx = 15000,  3000,   600,   200 m)
e_vert = 45
eta_levels =    1.000000,   0.999225,   0.998356,   0.997381,   0.996286,   0.995058,   0.993680,   0.992135,   0.990400,   0.988454,   0.986270,   0.983820,   0.981071,   0.977987,   0.974526,   0.970643,   0.966286,   0.961398,   0.955913,   0.949758,   0.942853,   0.935106,   0.926412,   0.916659,   0.905715,   0.893435,   0.879658,   0.864199,   0.846854,   0.827393,   0.805556,   0.781056,   0.753566,   0.722722,   0.688114,   0.649283,   0.605715,   0.556830,   0.501980,   0.440438,   0.371386,   0.293909,   0.206978,   0.109440,   0.000000
p_top_requested =  5000
physics_suite =  'CONUS' 
diff_opt =      1,     1,     1,     1
km_opt =      4,     4,     4,     4
I've read some of the physics guide, also read some of the forum posts (came across this: https://forum.mmm.ucar.edu/phpBB3/viewtopic.php?t=5638). I guess that I have to fine-tune the PBL physics, but honestly I'm stuck at this point.
What am I doing wrong? What should I adjust? Or is this acceptable?
I can provide more info about the simulation if needed.

Thanks in advance
 
Please upload your namelist.input to take a look. Thanks.
By the way, the plots you showed are for which domain?
 
Dr. Ming Chen,
The plots are for the innermost (finest) domain, i.e. d04.
I've attached the namelist.wps and namelist.input files.
By the way, those planes are not on the boundary of d04, they lie within the d04 domain. Such as:
wr.png
 

Attachments

  • namelist.input
    2.9 KB · Views: 11
  • namelist.wps
    1.2 KB · Views: 4
Hello again,
I've tried not defining the vertical levels (eta_levels) and letting WRF decide the levels. However, this also did not help much.
If I'm making a very basic mistake in the namelist files, I'm not sure what it is. The settings which are relevant to PBL I've found are:

Code:
&physics
   bl_pbl_physics
   sf_sfclay_physics
   sf_surface_physics

&dynamics
   diff_opt
   km_opt

I guess these settings come with certain defaults when I choose physics_suite 'CONUS'. I've tried changing some of them but got some errors.
Can you suggest some values for these so I can test them?

Regards
 
Hi,
There are a few issues I am concerned about your namelist options:
(1) for dx=15000, time_step could be 90. Your setting of 20 is too small.
(2) CONUS is specified for all domains, which is not appropriate. This is because for child domains with dx=3000, 600, 200, cumulus scheme should be off
(3) For the nested case with large difference in grid intervals, I suppose the scale-aware PBL scheme could be a better option (km_opt=5). For this option, you should turn off PBL scheme, set km_opt =5, diff_opt=2, and they only work with Revised MM5 Monin-Obukhov scheme (sfclay = 1), or MYNN surface layer scheme (sfclay=5)
Please change your namelist options and try again.
 
Dr. Chen,
Thanks for your reply.
(1) I've changed the time_step = 90
(2 and 3) I've omitted the physics_suite option entirely and entered the relevant parameters manually as you have suggested (please see it towards the end of this post).

However:
  • Setting km_opt = 5 returned an error since I guess there is no such option (available options are 1, 2, 3, and 4 as documented here) in my WRF version (v4.0), hence I set km_opt = 1 as the same page suggests.
  • Setting time_step = 90 caused exceeding the vertical CFL limit as such: hence I've reduced it back to time_step = 30.
    Code:
    d01 2021-11-14_00:03:00            4  points exceeded cfl=2 in domain d01 at time 2021-11-14_00:03:00 hours
    d01 2021-11-14_00:03:00  MAX AT i,j,k:           47          72           3  vert_cfl,w,d(eta)=   2.50186253      0.265817672       9.75012779E-04
    d01 2021-11-14_00:04:30           63  points exceeded cfl=2 in domain d01 at time 2021-11-14_00:04:30 hours
    d01 2021-11-14_00:04:30  MAX AT i,j,k:           48          72           3  vert_cfl,w,d(eta)=   12.3328066     -0.897510946       9.75012779E-04
    d01 2021-11-14_00:04:30          574  points exceeded cfl=2 in domain d01 at time 2021-11-14_00:04:30 hours
    d01 2021-11-14_00:04:30  MAX AT i,j,k:           47          73           2  vert_cfl,w,d(eta)=   422.225525      -52.6882095       8.69035721E-04
    d01 2021-11-14_00:04:30          358  points exceeded cfl=2 in domain d01 at time 2021-11-14_00:04:30 hours
    d01 2021-11-14_00:04:30 MAX AT i,j,k: 50 70 3 vert_cfl,w,d(eta)= 3742.94409 510.431488 9.75012779E-04
With the mentioned modifications, my final namelist.input file is as such:

Code:
&physics

    mp_physics         = 8    ,    8    ,    8    ,    8    , ! derived from 'CONUS'
    cu_physics         = 6    ,    0    ,    0    ,    0    , ! as you suggest turning off cumulus scheme in inner domains
    ra_lw_physics      = 4    ,    4    ,    4    ,    4    , ! derived from 'CONUS'
    ra_sw_physics      = 4    ,    4    ,    4    ,    4    , ! derived from 'CONUS'
    bl_pbl_physics     = 0    ,    0    ,    0    ,    0    , ! as you suggest turning off PBL scheme
    sf_sfclay_physics  = 1    ,    1    ,    1    ,    1    , ! as you suggest sfclay = 1 or 5
    sf_surface_physics = 2    ,    2    ,    2    ,    2    , ! derived from 'CONUS'

/
 
&dynamics

              diff_opt =      2,     2,     2,     2, ! as you suggest
                km_opt =      1,     1,     1,     1, ! since option 5 was not recognized

/

The result at the same time output and same location (as in my first post) is as the following:

planes_t_005400.00.png

My questions are:
  1. Is km_opt = 1 OK or should I change it, or should i install WRF v4.2?
  2. Is exceeding cfl=2 with time_step = 90 expected? I guess it is due to the fine eta_levels I define near the ground. Also, the overflow seems to occur in the vertical CFL component (vert_cfl). Is there any way to prevent this?
  3. The result looks quite wrong, can you suggest what is causing this?:
    1. The wind speed is way too large (compared to both previous results and the field measurements, which are around 5-10 m/s at 80m HAGL)
    2. The ABL profile is not right, wind speed is larger towards the ground and decreases with elevation.
    3. The PBLH parameter seems to not being calculated anymore: it is 0 everywhere at every time step
I'm also attaching the namelist.input and namelist.wps files.
Regards
 

Attachments

  • namelist.input.txt
    3.2 KB · Views: 1
  • namelist.wps.txt
    1.2 KB · Views: 0
Last edited:
Hi,
I am sorry that I didn't notice you are using older version of WRF. Please install WRFV4.2 or newer version to run this case. Note that 3DTKE scheme is only available Since WRFv4.2.
To answer your question:
  1. Is km_opt = 1 OK or should I change it, or should i install WRF v4.2?
km_opt =1 is not fine for this case. Please stay with km_opt=5 and diff_opt=2, and use WRFv4.2 or newer version.

  1. Is exceeding cfl=2 with time_step = 90 expected? I guess it is due to the fine eta_levels I define near the ground. Also, the overflow seems to occur in the vertical CFL component (vert_cfl). Is there any way to prevent this?
Please reduce time_step = 60 and set w_damping = 1.
  1. The result looks quite wrong, can you suggest what is causing this?
This is because the options are not appropriate. Those options I recommended are for 3DTKE scheme. In older version of WRF, 3DTKE is not available and these options are not appropriate.
 
Dr. Chen,
Upon your suggestion, I've installed WRF v4.4.
I've basically treated the outer 2 and inner 2 domains separately in terms of the PBL settings.
Following is the latest version of my namelist.input file with comments:

Code:
&physics

    mp_physics         = 4    ,    4    ,    4    ,    4    , ! WSM 5-class scheme for all domains
    cu_physics         = 1    ,    1    ,    0    ,    0    , ! Kain-Fritsch for outer domains, off for inner domains
    ra_lw_physics      = 1    ,    1    ,    1    ,    1    , ! RRTM for all domains
    ra_sw_physics      = 1    ,    1    ,    1    ,    1    , ! Dudhia for all domains
    bl_pbl_physics     = 11    ,    11    ,    0    ,    0    , ! Shin-Hong scheme for outer domains*, SMS-3DTKE for inner domains
    sf_sfclay_physics  = 1    ,    1    ,    1    ,    1    , ! Revised MM5 Monin-Obukhov for all domains
    sf_surface_physics = 2    ,    2    ,    2    ,    2    , ! unified Noah for all domains

/
 
&dynamics

              diff_opt =      2,     2,     2,     2, ! evaluates mixing terms for all domains
                km_opt =      4,     4,     5,     5, ! horizontal Smagorinsky first order closure for outer domains, Scale-aware 3DTKE LES/PBL for outer domains
             w_damping = 1,

/
* I've chosen the Shin-Hong PBL scheme for the outer domains because it is said to be a 'scale-aware' PBL scheme (here), which you suggested in your previous post.

Using this configuration, I'm able to get results that seem to be qualitatively reasonable (there are no erratic velocity fields), although they are not in agreement with the field measurements (wind speed and direction). I'd like to ask:
  1. Is treating outer and inner domains separately OK, or should I run SMS-3DTKE for all domains?
  2. Are there any inappropriate settings in the above configuration?
  3. Would you have any further advice about the parameters?
Thanks for your continuous support!

Regards
 

Attachments

  • namelist.input.txt
    3.3 KB · Views: 5
Hi,
It is suggested that the physics schemes (except cumulus) should be the same in all the model domains, especially when you turn on feedback. For your case, I would suggest that:
(1) if you want to turn on PBL in the first 2 domains and run 3DTKE in the last 2 domains, then please turn feedback off
(2) You can run with 3DTKE in all the domains.
(3) Please run with RRTMG (for both LW and SW), which should perform better than RRTM and Dudia.
(4) time_step = 90 is better than 60.
 
Top