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

surfrd_get_data ERROR: sum of wt_lunit not 1.0

slevis

Moderator
Staff member
That sounds right. To ensure that you understand the differences between transient and non-transient simulations, I recommend that you create two test cases. One should be an I2000 case and the other an IHist case with everything else identical. Then you can use "diff" to compare the directories of the two cases. This will show you exactly how transient and non-transient cases differ.
 

xiaoxiaokuishu

Ru Xu
Member
That sounds right. To ensure that you understand the differences between transient and non-transient simulations, I recommend that you create two test cases. One should be an I2000 case and the other an IHist case with everything else identical. Then you can use "diff" to compare the directories of the two cases. This will show you exactly how transient and non-transient cases differ.
Thanks for the response, I think i have get the diffrience between I2000 and IHIST, the key point is whether the module use the flanduse.timeseries?
Another confusion is at what conditions I need to use I2000 or IHIST?
 

slevis

Moderator
Staff member
I2000 is a "time-slice" simulation. IHist is a "transient" simulation. You as the researcher decide when it's appropriate to use one or the other.
 

Ceil

Member
Ok, I think I see what you are doing.
Let me know if any of my assumptions are wrong.
Based on previous posts you've modified the FMOZ compset to use CLM5 instead of CLM4.
You are changing the surface dataset pointed to by the fsurdat namelist item in lnd_in.
You aren't running transient landcover, you are simply using the information contained within the transient landcover dataset to make changes to the surface dataset file.

The existing surface dataset (in my FMOZ case this is surfdata_0.9x1.25_hist_16pfts_Irrig_CMIP6_simyr2000_c190214.nc) has these fields on it:

PCT_CROP
PCT_NATVEG
PCT_LAKE
PCT_WETLAND
PCT_GLACIER
PCT_URBAN

The sum of these has to equal 100% at each gridcell. Note that unlike other landunits, there are up to three urban landunits per gridcell.

If you change PCT_CROP then you'll have to change one or more of the other landunits to ensure that they all add up to 100%.

Also on the surface dataset is:

PCT_CFT

The sum of the two crops types (15 - C3 Unmanaged Rainfed Crop and 16 - C3 Unmanaged Irrigated Crop) must equal 100%, even for gridcells where PCT_CROP is zero (in this case crop type 15 is set to 100% and crop type 16 is set to 0%). These two crop types represent the non-irrigated/irrigated fractions on the crop landunit given by PCT_CROP.

Also on the surface dataset is:

PCT_NAT_PFT

The sum of these must equal 100%. They represent the fractions of pfts on the natural vegetated landunit given by PCT_NATVEG.

The reason that the PCT_NATVEG variable doesn't appear on the transient landuse file is because it is assumed that any changes in PCT_CROP are compensated by changes in PCT_NATVEG. This is done in the code.
Hi @oleson ,

Many thanks for your detailed information!
As you said, each gridcell should satisfy PCT_CROP+PCT_GLACIER+PCT_LAKE+PCT_NATVEG+PCT_WETLAND +PCT_URBAN=100. So probably every pft (crop, lake, tree, city,...) occupies certain propotion in this gridcell. But I wonder how to judge which pft is dominant. Is there any threshold setting for these pfts? e.g., if PCT_CROP>10% (this is a casual value and probably clm already has a threshold value for it?), the grid cell is dominated by crop (i.e., it is a crop grid).
 

oleson

Keith Oleson
CSEG and Liaisons
Staff member
It's really just up to the user to decide how they want to determine the dominant landcover type in each gridcell. There's no formal definition in the code or in the surface dataset.
 

Ceil

Member
They are available on the fsurdat file you are trying to change.
If you want to change PCT_CROP on the fsurdat file (e.g, increase it by 10% in a gridcell), then you'll need to change PCT_NATVEG on the fsurdat file (e.g., decrease it by 10% in a gridcell).
Hi @oleson ,

If I increase the fraction of PCT_NATVEG by 10% and derease the fraction of PCT_CROP by 10% at one grid (due to PCT_CROP+PCT_GLACIER+PCT_LAKE+PCT_NATVEG+PCT_WETLAND +PCT_URBAN=100). How does this modification affect the specific pfts? Does it mean that each of the following pft that belongs to PCT_NATVEG is equally increased its fraction by 0.71% (i.e., 10%/14=0.71%)? But can I only make needleleaf_evergreen_boreal_tree increase by the 10%?

PCT_NATVEG = the sum of the following 14 pfts
{needleleaf_evergreen_temperate_tree,
needleleaf_evergreen_boreal_tree,
needleleaf_deciduous_boreal_tree,
broadleaf_evergreen_tropical_tree,
broadleaf_evergreen_temperate_tree,
broadleaf_deciduous_tropical_tree,
broadleaf_deciduous_temperate_tree,
broadleaf_deciduous_boreal_tree,
broadleaf_evergreen_shrub,
broadleaf_deciduous_temperate_shrub,
broadleaf_deciduous_boreal_shrub,
c3_arctic_grass,
c3_non-arctic_grass,
c4_grass}

I am looking forward to your early reply. Many thanks!
 

oleson

Keith Oleson
CSEG and Liaisons
Staff member
You'll need to increase PCT_NAT_PFT for that pft and decrease some other pft.
 
Top