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

xland is overwritten in idealized case

This post was from a previous version of the WRF&MPAS-A Support Forum. New replies have been disabled and if you have follow up questions related to this post, then please start a new thread from the forum home page.

xyli00

Member
Dear all,

I am running an idealzied WRF-LES case using WRF 3.8.1.
"XLAND" is always overwritten by "1" even though I set "ideal_xland=2".

Any idea about this?

Here is my namelist,


&physics
mp_physics = 50, 50, 50,
ra_lw_physics = 3, 3, 3,
ra_sw_physics = 3, 3, 3,
radt = 1, 2, 5,
sf_sfclay_physics = 91, 91, 91,
sf_surface_physics = 0, 0, 0,
bl_pbl_physics = 0, 0, 0,
bldt = 0, 0, 0,
cu_physics = 0, 0, 0,
cudt = 5, 5, 5,
isfflx = 1,
ifsnow = 0,
icloud = 1,
ideal_xland = 2,
num_soil_layers = 5,
mp_zero_out = 0,
/

&fdda
/

&dynamics
rk_ord = 3,
diff_opt = 2,
km_opt = 2,
diff_6th_opt = 0,
diff_6th_factor = 0.12,
damp_opt = 3,
zdamp = 500., 500., 500.,
dampcoef = 0.2, 0.2, 0.2
khdif = 1., 1., 500,
kvdif = 1., 1., 500,
c_s = 0.18, 0.18, 0.18,
c_k = 0.1, 0.10, 0.10,
mix_isotropic = 0, 1, 1,
smdiv = 0.1, 0.1, 0.1,
emdiv = 0.01, 0.01, 0.01,
epssm = 0.1, 0.1, 0.1,
tke_heat_flux = 0.02, 0.02, 0.02,
time_step_sound = 8, 10, 10,
h_mom_adv_order = 5, 5, 5,
v_mom_adv_order = 3, 3, 3,
h_sca_adv_order = 5, 5, 5,
v_sca_adv_order = 3, 3, 3,
moist_adv_opt = 2, 2, 2,
chem_adv_opt = 2, 2, 2,
scalar_adv_opt = 2, 2, 2,
tke_adv_opt = 2, 2, 2,
tracer_adv_opt = 2, 2, 2,
mix_full_fields = .true., .true., .true.,
non_hydrostatic = .true., .true., .true.,
pert_coriolis = .true., .true., .true.,
m_opt = 1,
use_theta_m = 1,
/

&bdy_control
periodic_x = .true., .false.,.false.,
symmetric_xs = .false.,.false.,.false.,
symmetric_xe = .false.,.false.,.false.,
open_xs = .false.,.false.,.false.,
open_xe = .false.,.false.,.false.,
periodic_y = .true., .false.,.false.,
symmetric_ys = .false.,.false.,.false.,
symmetric_ye = .false.,.false.,.false.,
open_ys = .false.,.false.,.false.,
open_ye = .false.,.false.,.false.,
nested = .false., .true., .true.,
/

&grib2
/

&namelist_quilt
nio_tasks_per_group = 0,
nio_groups = 1,
/

Best,

Xiang-Yu
 
Thanks, Ming.

Sorry for the late reply. Somehow the notification didn't work.

No, it is always 1 in wrfinput and wrfout.

Btw, I've also tested version 4.1.5 and it is the same.

Best,

Xiang-Yu
 
I am suspicious that this variable is changed somewhere because it is related to landuse and seaice condition. Please take a look at the code phys/module_physics_init.F, in which you can find the following piece of code:

Code:
1941           IF(IS.NE.ISWATER)THEN
1942             XLAND(I,J)=1.0
1943           ELSE
1944             XLAND(I,J)=2.0
1945           ENDIF

Can you set xland = 2 here and see whether it works? Please keep me updated about the result.
 
Thanks, Ming.
Indeed, one needs to manually set "XLAND" in the phys/module_physics_init.F to make it work.
Shouldn't it be passed from the namelist instead of hard-coded?
 
You are right. Theoretically this variable specified in namelist should be passed into WRF. However, REAL checks the consistency between surface variables, e.g., lands type, landsea mask, soil data, etc., and makes adjustment when necessary.
 
Thanks.

I am running IDEAL cases, where "XLAND" is not passed from the namelist to the code.
You mean "XLAND" is hard-wired because of the REAL case?

Xiang-Yu
 
No, it is not because of the REAl case. It is because the model may adjust some land information o make them consistent with each other. For example, there must have valid ivgyp and soil data at a land point. Also, xland must be 2 over water point and must be 1 over land point, and it must be consistent with landmark, etc.
 
Top