Confusing names for variables in wrfout

Any miscellaneous question/problem/comment related to WRF support that does not fit under any of the other category
Post Reply
lslrsgis
Posts: 127
Joined: Sun Oct 28, 2018 3:35 am

Confusing names for variables in wrfout

Post by lslrsgis » Fri Jun 21, 2019 11:45 am

Dear WRF community,

I am trying to figure out the energy balance of land surface. The difficulty I met is to determine the (1) sensible heat flux, (2) latent heat flux, (3) ground heat flux, and (4) downward Short Wave flux, (5) downward Long Wave flux.

Question 1: are these five components corresponding to the following five, which were found from wrfout_d01 file?

(1) float HFX(Time, south_north, west_east) ;
HFX:FieldType = 104 ;
HFX:MemoryOrder = "XY " ;
HFX:description = "UPWARD HEAT FLUX AT THE SURFACE" ;
HFX:units = "W m-2" ;
HFX:stagger = "" ;
HFX:coordinates = "XLONG XLAT XTIME" ;
(2) float LH(Time, south_north, west_east) ;
LH:FieldType = 104 ;
LH:MemoryOrder = "XY " ;
LH:description = "LATENT HEAT FLUX AT THE SURFACE" ;
LH:units = "W m-2" ;
LH:stagger = "" ;
LH:coordinates = "XLONG XLAT XTIME" ;
(3) float GRDFLX(Time, south_north, west_east) ;
GRDFLX:FieldType = 104 ;
GRDFLX:MemoryOrder = "XY " ;
GRDFLX:description = "GROUND HEAT FLUX" ;
GRDFLX:units = "W m-2" ;
GRDFLX:stagger = "" ;
GRDFLX:coordinates = "XLONG XLAT XTIME" ;
(4) float SWDOWN(Time, south_north, west_east) ;
SWDOWN:FieldType = 104 ;
SWDOWN:MemoryOrder = "XY " ;
SWDOWN:description = "DOWNWARD SHORT WAVE FLUX AT GROUND SURFACE" ;
SWDOWN:units = "W m-2" ;
SWDOWN:stagger = "" ;
SWDOWN:coordinates = "XLONG XLAT XTIME" ;
(5) float GLW(Time, south_north, west_east) ;
GLW:FieldType = 104 ;
GLW:MemoryOrder = "XY " ;
GLW:description = "DOWNWARD LONG WAVE FLUX AT GROUND SURFACE" ;
GLW:units = "W m-2" ;
GLW:stagger = "" ;
GLW:coordinates = "XLONG XLAT XTIME" ;





Question 2: what are the differences of the following three groups?

I. SWDOWN vs. SWNORM

float SWDOWN(Time, south_north, west_east) ;
SWDOWN:FieldType = 104 ;
SWDOWN:MemoryOrder = "XY " ;
SWDOWN:description = "DOWNWARD SHORT WAVE FLUX AT GROUND SURFACE" ;
SWDOWN:units = "W m-2" ;
SWDOWN:stagger = "" ;
SWDOWN:coordinates = "XLONG XLAT XTIME" ;


float SWNORM(Time, south_north, west_east) ;
SWNORM:FieldType = 104 ;
SWNORM:MemoryOrder = "XY " ;
SWNORM:description = "NORMAL SHORT WAVE FLUX AT GROUND SURFACE (SLOPE-DEPENDENT)" ;
SWNORM:units = "W m-2" ;
SWNORM:stagger = "" ;
SWNORM:coordinates = "XLONG XLAT XTIME" ;

II. ALBEDO vs. ALBBCK

float ALBEDO(Time, south_north, west_east) ;
ALBEDO:FieldType = 104 ;
ALBEDO:MemoryOrder = "XY " ;
ALBEDO:description = "ALBEDO" ;
ALBEDO:units = "-" ;
ALBEDO:stagger = "" ;
ALBEDO:coordinates = "XLONG XLAT XTIME" ;

float ALBBCK(Time, south_north, west_east) ;
ALBBCK:FieldType = 104 ;
ALBBCK:MemoryOrder = "XY " ;
ALBBCK:description = "BACKGROUND ALBEDO" ;
ALBBCK:units = "" ;
ALBBCK:stagger = "" ;
ALBBCK:coordinates = "XLONG XLAT XTIME" ;

III. Instantaneous vs. Accumulated

float LWDNB(Time, south_north, west_east) ;
LWDNB:FieldType = 104 ;
LWDNB:MemoryOrder = "XY " ;
LWDNB:description = "INSTANTANEOUS DOWNWELLING LONGWAVE FLUX AT BOTTOM" ;
LWDNB:units = "W m-2" ;
LWDNB:stagger = "" ;

float ACLWDNB(Time, south_north, west_east) ;
ACLWDNB:FieldType = 104 ;
ACLWDNB:MemoryOrder = "XY " ;
ACLWDNB:description = "ACCUMULATED DOWNWELLING LONGWAVE FLUX AT BOTTOM" ;
ACLWDNB:units = "J m-2" ;
ACLWDNB:stagger = "" ;
ACLWDNB:coordinates = "XLONG XLAT XTIME" ;

Any indication is appreciated. Thanks.

kwerner
Posts: 2287
Joined: Wed Feb 14, 2018 9:21 pm

Re: Confusing names for variables in wrfout

Post by kwerner » Fri Jun 21, 2019 5:14 pm

Hi,
To answer your questions:
1) Yes, those are the correct variables that correspond with the ones you mention above.
2i) SWDOWN is downward short wave radiation at the surface. SWNORM is normal shortwave flux, which contains slope effects on SWDOWN. It is activated only when slope_rad = 1.
2ii) ALBBCK is the monthly albedo map that comes from the geogrid program, and ALBEDO is based on the surface model, and comes from the table values that model uses. If usemonalb = .true. the model uses ALBBCK instead of ALBEDO. After running, you would still want to look at the variable ALBEDO because the model will fill the ALBEDO array with the values from ALBBCK.
2iii) Instantaneous means this value is the value at the time of output. If you had output every 3 hours, for example, then it would accumulate from hour 00 to 03, then output that value at hour 03, then the value would set back to 0, and accumulate again from hour 03 to 06, outputting the new value at hour 06. Accumulated means that if you had the same set up, you would have the same output at hour 03, but then that value would not be set back to 0. It would remain and then over hours 03-06, it would add to the value at 03. The formula would be something like:

instantaneous output
accumulation over hours 0-3 = 10
output at hr 03 = 10
accumulation over hours 3-6 = 5
output at hr 06 = 5
accumulation over hours 6-9 = 7
output at hr 09 = 7

accumulated output
accumulation over hours 0-3 = 10
output at hr 03 = 10
accumulation over hours 3-6 = 5
output at hr 06 = 15
accumulation over hours 6-9 = 7
output at hr 09 = 22
NCAR/MMM

lslrsgis
Posts: 127
Joined: Sun Oct 28, 2018 3:35 am

Re: Confusing names for variables in wrfout

Post by lslrsgis » Mon Jun 24, 2019 5:42 am

Thanks very much for the detailed explanation. It makes me clear about the names. :-)

lslrsgis
Posts: 127
Joined: Sun Oct 28, 2018 3:35 am

Re: Confusing names for variables in wrfout

Post by lslrsgis » Wed Jun 26, 2019 7:31 am

And another question: are LWUPB and SWUPB correspond to upwelling longwave flux and upwelling shortwave flux at ground surface level? (as bellow) Here "AT BOTTOM" is precisely the same meaning as "AT GROUND SURFACE", or the lowest level of atmosphere? Thanks.

UPWELLING LONGWAVE
float LWUPB(Time, south_north, west_east) ;
LWUPB:FieldType = 104 ;
LWUPB:MemoryOrder = "XY " ;
LWUPB:description = "INSTANTANEOUS UPWELLING LONGWAVE FLUX AT BOTTOM" ;
LWUPB:units = "W m-2" ;
LWUPB:stagger = "" ;
LWUPB:coordinates = "XLONG XLAT XTIME" ;

UPWELLING SHORTWAVE
float SWUPB(Time, south_north, west_east) ;
SWUPB:FieldType = 104 ;
SWUPB:MemoryOrder = "XY " ;
SWUPB:description = "INSTANTANEOUS UPWELLING SHORTWAVE FLUX AT BOTTOM" ;
SWUPB:units = "W m-2" ;
SWUPB:stagger = "" ;
SWUPB:coordinates = "XLONG XLAT XTIME" ;

kwerner
Posts: 2287
Joined: Wed Feb 14, 2018 9:21 pm

Re: Confusing names for variables in wrfout

Post by kwerner » Fri Jul 12, 2019 10:29 pm

Hi,
I would like to apologize for the delay in response. We have been out of the office, and upon returning, have been busy preparing for our upcoming WRF tutorial, and have gotten a bit behind with forum questions. Thank you for your patience.

The 2 variables you asked about refer to the ground.
NCAR/MMM

Astrid
Posts: 10
Joined: Wed Jun 12, 2019 2:53 pm

Re: Confusing names for variables in wrfout

Post by Astrid » Thu Jan 30, 2020 10:54 am

Hey you two,
I hope you were successful when using these variables. I used them as well for my calculations but my surface energy balance is ... well not balanced. There is still an 1 - 1.5W/m2 residual. Could it be that SWUPB, SWDNB, LWDNB and LWUPB do not exactly refer to the same ground surface layer as LH, GRDFLX and HFX?
Cheers,
Astrid

kwerner
Posts: 2287
Joined: Wed Feb 14, 2018 9:21 pm

Re: Confusing names for variables in wrfout

Post by kwerner » Tue Feb 04, 2020 12:42 am

Hi Astrid,
I believe they should be the same surface (ground) level for all the variables mentioned. What method/equation are you using to balance? Can you also attach your namelist just so that I can see which physics options you're using? Thanks!
NCAR/MMM

Astrid
Posts: 10
Joined: Wed Jun 12, 2019 2:53 pm

Re: Confusing names for variables in wrfout

Post by Astrid » Tue Feb 04, 2020 9:44 am

Hey Kelly!

Yes sure, I am using SWdown-SWup+LWdown-LWup - (H+LE+G) = 0, but it's not adding up to 0.
Thank you very much!
Kind regards,
Astrid
Attachments
namelist.input.txt
(5.84 KiB) Downloaded 61 times

kwerner
Posts: 2287
Joined: Wed Feb 14, 2018 9:21 pm

Re: Confusing names for variables in wrfout

Post by kwerner » Thu Feb 13, 2020 10:10 pm

Hi Astrid,
I spoke to our physics specialist. He has a few questions:
1) Sometimes the sign of the ground flux is reversed. Could that account for it?
2) Where it's off, is it randomly positive and negative?
3)Does the spatial distribution correlate with anything?
NCAR/MMM

Astrid
Posts: 10
Joined: Wed Jun 12, 2019 2:53 pm

Re: Confusing names for variables in wrfout

Post by Astrid » Mon Feb 17, 2020 3:49 pm

Dear Kelly,
thank you very much for your answer.

1) No, GRDFLX is positive for Noah LSM.
2) It is mostly positive, I'll attach you the pic.
3) I haven't analyzed any correlations, but to me it doesn't look like it.

Cheers,
Astrid
Attachments
energy_balance.png

kwerner
Posts: 2287
Joined: Wed Feb 14, 2018 9:21 pm

Re: Confusing names for variables in wrfout

Post by kwerner » Fri Feb 21, 2020 9:40 pm

Hi Astrid,
Is the residual at all these points or is it an area average dominated by those high values?
NCAR/MMM

Astrid
Posts: 10
Joined: Wed Jun 12, 2019 2:53 pm

Re: Confusing names for variables in wrfout

Post by Astrid » Mon Feb 24, 2020 11:44 am

Hey Kelly,
I averaged the residual for every grid point. The "normal" values lie more between -10 and 10. The dark spots represent the outliers i.e. the high key mark values.
Again, I used (SWDNB-SWUPB+LWDNB-LWUPB)-(HFX+LH+GRDFLX)=0
Cheers,
Astrid

kwerner
Posts: 2287
Joined: Wed Feb 14, 2018 9:21 pm

Re: Confusing names for variables in wrfout

Post by kwerner » Tue Feb 25, 2020 10:58 pm

Hi Astrid,
Instead of using SWDNB and SWUPB for net shortwave radiation, can you try using "SWDOWN*(1-ALBEDO)" - both fields should be available from the wrfout file. Let me know if that makes any difference.
NCAR/MMM

Astrid
Posts: 10
Joined: Wed Jun 12, 2019 2:53 pm

Re: Confusing names for variables in wrfout

Post by Astrid » Mon Mar 02, 2020 7:58 pm

Hey Kelly,
I checked it, but it doesn't make any difference. It even slightly enlarges the imbalance.
SWDNB has the same value as SWDOWN, but SWDOWN*ALBEDO is different from SWUPB.
Cheers,
Astrid

kwerner
Posts: 2287
Joined: Wed Feb 14, 2018 9:21 pm

Re: Confusing names for variables in wrfout

Post by kwerner » Wed Mar 04, 2020 10:51 pm

Okay, take a look at the NOAHRES field in wrfout file. This is a 2D field, which calculates the residual term in the surface energy budget. You can see how this term is computed in phys/module_sf_noahdrv.F (around line 1242 in the current version of WRF). Comparing this equation to what you have, there are a couple of points to make:
1. the downward longwave needs to multiply by emissivity;
2. the sign of GRDFLX is opposite of HFX and LH (which could be the main reason for the discrepancy you see - but you also may have already addressed this in an earlier post); and
3. there are small terms (FLX1-3) that represent latent heat exchange due to snow melt, freezing rain, etc. that cannot be estimated outside of this routine. In any case, your estimate after making corrections 1 and 2 above, should be comparable to NOAHRES, and this is probably as close as one can get for the budget. You can also compare the GRDFLX field with your residual term to see if the two have a similar pattern.
NCAR/MMM

Astrid
Posts: 10
Joined: Wed Jun 12, 2019 2:53 pm

Re: Confusing names for variables in wrfout

Post by Astrid » Sat Mar 07, 2020 11:47 am

Thank you very much for your suggestions!
I will try them!

gaspiS
Posts: 1
Joined: Thu Sep 03, 2020 8:57 am

Re: Confusing names for variables in wrfout

Post by gaspiS » Thu Sep 03, 2020 9:17 am

Hi everyone,

It is nice to see all your post because I was exactly wondering the same kind of things yesterday.
I just have one comment concerning the point 1): I think the emissivity is already multiplied with the variable GLW (downward long wave flux at ground, in the module_sf_noahdrv.F, line 117 and 762) and the LWDNB ( Long Wave Down Bottom) that one gets in output is then LWDNB= Emissivity*GLW.

By the way, what happens to the residual? I was really thinking that the model was always closing the energy balance on every Grid Cells... Is there an energy storage term? A redistribution with surrounding GCs ( I was thinking that noah LSM is a simple column model without "communication" with surrounding..)?
I will try to explore that in the next days but if someone has some infos on that, it will be very kind to share !

By advance, thanks a lot.

Gaspard

Post Reply

Return to “Miscellaneous”