Skin temperature not available and no 2mt too!

Mohammed Nabil

New member
Hello everyone!
I am trying to run WRF based on CMIP6 data that only provide,

Surface variables:
sea surface temperature
sea-level pressure
surface pressure

pressure level variables (14 lev):
air temperature
zonal wind
meridional wind
relative humidity
geopotential height

soil variables (4 lev):
soil moisture
soil temperature

when i run ./real.exe, i get this error message

DYNAMICS OPTION: Eulerian Mass Coordinate
alloc_space_field: domain 1 , 63158024 bytes allocated
d01 2022-02-01_00:00:00 Yes, this special data is acceptable to use: OUTPUT FROM METGRID V4.5
d01 2022-02-01_00:00:00 Input data is acceptable to use: met_em.d01.2022-02-01_00:00:00.nc
metgrid input_wrf.F first_date_input = 2022-02-01_00:00:00
metgrid input_wrf.F first_date_nml = 2022-02-01_00:00:00
d01 2022-02-01_00:00:00 Timing for input 1 s.
d01 2022-02-01_00:00:00 flag_soil_layers read from met_em file is 1
Max map factor in domain 1 = 1.02. Scale the dt in the model accordingly.
Missing surface temp, replaced with closest level, use_surface set to false.
Missing surface RH, replaced with closest level, use_surface set to false.
Missing surface u wind, replaced with closest level, use_surface set to false.
Missing surface v wind, replaced with closest level, use_surface set to false.
Using sfcprs to compute psfc
d01 2022-02-01_00:00:00 No average surface temperature for use with inland lakes
Assume Noah LSM input
-------------- FATAL CALLED ---------------
FATAL CALLED FROM FILE: <stdin> LINE: 3110
grid%tsk unreasonable

seems like there is a problem with the skin temperature, according to this previous solved issue,


real.exe would first use sst to replace it, if sst is not available then it would use 2mt to represent it!

question: if i don't have the specific 2mt, wouldn't real.exe interpolate it from the nearest level air temperature, and then use it to represent skin temperature in the same principle? how can i overcome this?
 
Hi, Apologies for the delay in response. See the list of mandatory variables required to run WRF. If you aren't able to obtain those variables with CMIP6 data, you can use a different dataset altogether, or use something else to compensate for the missing variables and then you can follow these instructions for running ungrib and metgrid.
I have a different question now, and i would really appreciate your help!
I am using ERA5 data to force wrf simulation over the southern coast of china. I have a measurement data from a local mast at 100m. My wrf simulation keeps overestimating the wind speed by about (MAE = 2.21 m/s, MBE = -1.12 m/s ), this is at distance of 42.5 km from the shore. As you can see from the MAE plot the error increases when the wind the land (offshore winds). Comparison against ERA5 showed that as i move further from the shore the error decreases and eventually reached (MAE = 0.76 m/s, MBE = -0.11 m/s ) at 160 km offshore.
i have also compared the wrf simulation with ERA5 onshore (point 1) and the (MAE = 3.89 m/s, MBE = -3.89 m/s ) the overestimation is even more but can't say for sure whether or not that is wrf error or just result of the more accurate capturing of the local topography and its effect on the downscaled wind compared to ERA5.
I have tried to change the boundary and the surface schemes sf_sfclay_physics, bl_pbl_physics as well as introduced the topo_wind, isftcflx, nothing seems to work so far. i am nudging each hour which help reduce the error from the initial magnitude but couldn't fix this.
these are my current settings (level 21 correspond to around 1000 meters)
Outer domain resolution is around 25km and inner domain resolution is 5km, all the compared points are well within the inner domain
&fdda
grid_fdda = 1, 0,
gfdda_inname = "wrffdda_d<domain>",
gfdda_end_h = 9999, 0,
gfdda_interval_m = 360, 0,
fgdt = 0, 0,
if_no_pbl_nudging_uv = 0, 0,
if_no_pbl_nudging_t = 0, 0,
if_no_pbl_nudging_q = 0, 0,
if_zfac_uv = 1, 1,
k_zfac_uv = 21, 21,
if_zfac_t = 0, 0,
k_zfac_t = 0, 0,
if_zfac_q = 0, 0,
k_zfac_q = 0, 0,
guv = 0.0003, 0.0003,
gt = 0.0003, 0.0003,
gq = 0.0003, 0.0003,
io_form_gfdda = 2,
/


&physics
mp_physics = 4, 4,
ra_lw_physics = 1, 1,
ra_sw_physics = 1, 1,
radt = 15, 3,
sf_sfclay_physics = 1, 1,
sf_surface_physics = 2, 2,
bl_pbl_physics = 1, 1,
bldt = 0, 0,
cu_physics = 1, 0,
cudt = 0, 0,
isfflx = 1,
ifsnow = 1,
icloud = 1,
surface_input_source = 1,
num_soil_layers = 4,
num_land_cat = 21,
sf_urban_physics = 0, 0,
sst_update =1,
/


&dynamics
w_damping = 1,
diff_opt = 2, 2,
km_opt = 4, 4,
diff_6th_opt = 2, 2,
diff_6th_factor = 0.12, 0.12,
base_temp = 290.,
damp_opt = 3,
epssm = 0.5, 0.5,
zdamp = 5000., 5000.,
dampcoef = 0.2, 0.2,
khdif = 0, 0,
kvdif = 0, 0,
non_hydrostatic = .true., .true.,
moist_adv_opt = 1, 1,
scalar_adv_opt = 1, 1,
c_s = 0.25, 0.25,
c_k = 0.15, 0.15,
h_mom_adv_order = 5, 5,
v_mom_adv_order = 3, 3,
time_step_sound = 6, 6,
/

I have read about increasing the roughness length over the ocean but i am not sure this would work for my case as the model performs well far from the shore!
Please, if you have any suggestions i would be grateful, i have being trying to manipulate the settings for a while and i am currently trying different nudging schemes
 

Attachments

  • 1783156934325.png
    1783156934325.png
    258.7 KB · Views: 1
  • 1783157801315.png
    1783157801315.png
    448.7 KB · Views: 1
  • 1783157830996.png
    1783157830996.png
    227.1 KB · Views: 1
  • 1783157858488.png
    1783157858488.png
    229.3 KB · Views: 1
@Mohammed Nabil
I'm glad you were able to find the solution to your original inquiry. Since the new problem is different, will you please start a new thread for that question? This helps to keep threads separated by topic, which allows for cleaner searchability in the future. Thanks!
 
Back
Top