Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

Change albedo: ERROR imbalance

I am running WACCM (FW compset) , and now I want to change the albedo over Tibetan Plateau (27-40N, 80-100E) to 0.1. So I modify something in CLM source mode "SurfaceAlbedoMod.F90" :real(r8), parameter :: albedo_new = 0.1_r8 do ib = 1, numrad
do fc = 1,num_nourbanc
c = filter_nourbanc(fc)
g = cgridcell(c)
ismp = .false.
do ii=1,dd0
ismp0 = (g==g0(ii))
ismp = (ismp .or. ismp0)
end do
if(ismp) then
lat0 = lat(g)/pi*180._r8
lon0 = lon(g)/pi*180._r8
! write(20,'(2I7,2F13.6)') c,g,lat0,lon0
albgrd(c,ib) = albedo_new
albgri(c,ib) = albedo_new
end if
end do
do fp = 1,num_nourbanp
p = filter_nourbanp(fp)
g = pgridcell(p)
ismp = .false.
do ii=1,dd0
ismp0 = (g==g0(ii))
ismp = (ismp .or. ismp0)
end do
if(ismp) then
lat0 = lat(g)/pi*180._r8
lon0 = lon(g)/pi*180._r8
! write(20,'(2I7,2F13.6)') p,g,lat0,lon0
albd(p,ib) = 0._r8
albi(p,ib) = 0._r8
fabd(p,ib) = 1._r8 - albedo_new
fabi(p,ib) = 1._r8 - albedo_new
ftdd(p,ib) = 0._r8
ftid(p,ib) = 0._r8
ftii(p,ib) = 0._r8
end if
end do
end do But after running the simulation, I got the error as follows:clm model is stopping
ENDRUN: called without a message string
BalanceCheck: solar radiation balance error nstep = 3 point = 2291 imbalance = 5.052325 W/m2
fsa = 50.5232531138122
fsr = 5.05232531138122
forc_solad(1)= 2.393904998171644E-004
forc_solad(2)= 1.940256602149109E-004
forc_solai(1)= 25.8214771167195
forc_solai(2)= 24.7013425809326
forc_tot = 50.5232531138122
clm model is stopping So could someone tell me how does it happen? And how to solve the problem? It is really urgent because the due date is close.
I also attached my new file here.THANKS VERY MUCH!
 
My guess is that you can't just force albedo for a surface, this makes radiation balance potentially break. If you change albedo forcing, you probably have to reflect this change to the reflected radiation. You might be skipping that part on your code, and estimating reflected radiation before updating the albedo value... something like it.
 
Top