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

problem with the energy bvalance in the Lake module

Dear Users and Supporters,
my WRF simulation stops because of a non conserved energy in the Lake module.
No logs are issued in both the rsl.out.0000 and rsl.errorr.000, but in the last written rsl.out several messages are issued like this:
errsoi incorporated into sensible heat in ShalLakeTemperature: c, (W/m^2): 1 -0.177518514952794
I was reading this post, but since replies are disables I started this new thread.
In a previous run I manage to solve the issue increasing the lakedepth_default from 15 to 50 (actually the default one).
I this case I increased to 75m but the run stops again.
It is not clear to me the code in phys/module_sf_lake.F
C-like:
       if (abs(errsoi(c)) < 10._r8) then
          eflx_sh_tot(p) = eflx_sh_tot(p) - errsoi(c)
          eflx_sh_grnd(p) = eflx_sh_grnd(p) - errsoi(c)
          eflx_soil_grnd(p) = eflx_soil_grnd(p) + errsoi(c)
          eflx_gnet(p) = eflx_gnet(p) + errsoi(c)

          if (abs(errsoi(c)) > 1.e-1_r8) then
             write(message,*)'errsoi incorporated into sensible heat in ShalLakeTemperature: c, (W/m^2):', c, errsoi(c)
             CALL wrf_message(message)
          end if
          errsoi(c) = 0._r8
       end if
why errsoi(c) is added/subtracted if it is less than 10, but it it is larger than 0.1 the simulation aborts?
How can I solve this?
Shall I comment that check or increase the threshold?
Thaank you
 
Hi, francescomaicu,

Please see my answers below:
(1) why errsoi(c) is added/subtracted if it is less than 10 ?
This is just a compromising method to keep the energy balance in Lake points.

(2) it is larger than 0.1 the simulation aborts.
Note that when errsoi > 0.1, the model will just issue a warning message but not crashed. You can see this message in your rsl file, but it doesn't mean that this is exactly the reason for the model crash. There might be something wrong somewhere else that lead to the failure.

(3) I would suggest you recompile WRF in debug mode, then rerun this case. The log file will tell when and where the model crashed first.

Here is the reference for the lake module used in WRF
Subin, Z. M., W. J. Riley, and D. Mironov, 2012: An improved lake model for climate simulations: Model structure, evaluation, and sensitivity analyses in CESM1. J. Adv. Model. Earth Syst., 4, M02001, doi:10.1029/2011MS000072
 
Unfortunately, for the time being I have to quit from this issue, swithing off the lake module.
The reason is that the run in debug mode is approximately 10 times slower exceeding the wall time of our longer queue.
I will come back to this post in case of updates.
 
Unfortunately, for the time being I have to quit from this issue, swithing off the lake module.
The reason is that the run in debug mode is approximately 10 times slower exceeding the wall time of our longer queue.
I will come back to this post in case of updates.
I also turned on the lake module in WRF4.5, The run time is OK.
 
Dear francescomaicu, can you tell me how I changed the default value of the lake depth, I noticed that the lakedepth_default doesn't seem to change the lake depth, this problem has been bothering me for some time now
 
@Hasaki

lakedepth_default is a namelist option. When there is no lake depth information in the inout data, lake module will use the value of "lakedepth_default" as lake depth. If you change lakedepth_default in namelist, the changed value will be used ln the model.
 
@Hasaki

lakedepth_default is a namelist option. When there is no lake depth information in the inout data, lake module will use the value of "lakedepth_default" as lake depth. If you change lakedepth_default in namelist, the changed value will be used ln the model.
@Ming Chen
Dear Ming Chen, my understanding is that real uses the value set by lake_default only if there is no lake depth information in met_em, so I modified the geogrid's TBL file so that the geogrid doesn't insert the lake depth information, but kind of causes real to not work. But if I insert the lake depth information normally in geogrid and set lake_default to a different value, but after real, the lake depth in the wrfinput file is still inserted and modified by geogrid, and not modified to the value of lake_default!
 
Last edited:
Top