Vertical Levels Adjustment

This post was from a previous version of the WRF&MPAS-A Support Forum. Please do not add new replies here and if you would like the thread moved out of the Historical / Archive section then contact us, making sure to include the link of the thread to be moved.

asyed6

New member
I know vertical levels can be set in namelist.input by setting e_vert and p_top_requested variables and we can explicitly define eta_levels from 1 to 0. I am currently studying wind turbines and want to set about 20 vertical levels below 200m AGL to refine my solution.
1. How should i set space between eta_levels so i know that 20 levels lie below 200m AGL. ?
2. Is there any method to calculate height corresponding to vertical levels?

Thanks.
 

Ming Chen

Moderator
Staff member
(1) To increase vertical levels below a specific height, I would suggest you run REAL program first to create eta levels. Then you can manually increase the number of levels based on the automatically generated eta levels by REAL. For example , suppose you run REAL and get the following eta levels:
eta_levels =
1, 0.993, 0.983, 0.97, 0.954, 0.934, 0.909, 0.88,
....
....
/
You can then replace the first several eta levels by:
1, 0.999, 0.998, 0.996, 0.993, 0.990, 0.980. 0.970, 0.960, 0.950,
0.940, 0.930, 0.920, 0.910, 0.900, 0.890, 0.880, 0.870,

This is just an example to show how to add more levels within certain height

(2) Once wrfinput is produced, you will find PH and PHB in wrfinput, and (PH=PHB) is the geopotential height corresponding to model levels.
 

hconel

Member
Hi,
I'm also in a similar situation (studying wind turbines below 200m).
Mr. Ming Chen, you suggest running REAL first to create eta levels, which to my understanding, is required to get the minimum eta level (0.88 in your example) that is dictated by the p_top_requested variable, and the maximum is always 1.0.
Is entering pre-determined eta levels, which go down to 0.0, feasible? If one defines eta levels that are outside the solution domain, does WRF ignore those in the solution anyways?
 

Ming Chen

Moderator
Staff member
If you specify eta levels in your namelist.inout, the values should be within the range (0,1). Below is an example:
Code:
 eta_levels                            = 1.00000 , 0.99307 , 0.98348 , 0.97105 , 0.95551 ,
                                         0.93651 , 0.91363 , 0.88644 , 0.85460 , 0.81855 ,
                                         0.77877 , 0.73579 , 0.69016 , 0.64246 , 0.59329 ,
                                         0.54573 , 0.50104 , 0.45908 , 0.41972 , 0.38281 ,
                                         0.34824 , 0.31589 , 0.28563 , 0.25735 , 0.23096 ,
                                         0.20635 , 0.18343 , 0.16209 , 0.14226 , 0.12384 ,
                                         0.10677 , 0.09095 , 0.07633 , 0.06282 , 0.05036 ,
                                         0.03889 , 0.02835 , 0.01868 , 0.00983 , 0.00000
 /

If the value of the eta level is beyond (0,1), I guess the model will crash and it cannot automatically skip those unreasonable settings.
 
Top