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

Adding crop column in CLM

Yi Yao

Yi Yao
Member
Dear, I plan to do some development on the source code of CTSM, and this development requires adding more crop columns. I am wondering if there is a tutorial somewhere. If not, I am wondering how does the model know a column is crop or natural PFT or lake ...? In other words, where do we specify lun%itype and col%itype?

Thanks in advance,
Yi
 

oleson

Keith Oleson
CSEG and Liaisons
Staff member
The surface types are read in from the surface dataset. The surface dataset should be specified in your lnd_in namelist:

fsurdat = '............'

Crop types are specified by the variable PCT_CFT in the surface dataset. The surface dataset is read in using (e.g., in release-cesm2.1.3):

components/clm/src/main/surfrdMod.F90

You can find descriptions of the active (and currently inactive) crop types here:


You may be able to co-opt or take over one of the inactive crop types for your purposes.

With regard to tutorials, some of the material here may be useful:

 

Yi Yao

Yi Yao
Member
The surface types are read in from the surface dataset. The surface dataset should be specified in your lnd_in namelist:

fsurdat = '............'

Crop types are specified by the variable PCT_CFT in the surface dataset. The surface dataset is read in using (e.g., in release-cesm2.1.3):

components/clm/src/main/surfrdMod.F90

You can find descriptions of the active (and currently inactive) crop types here:


You may be able to co-opt or take over one of the inactive crop types for your purposes.

With regard to tutorials, some of the material here may be useful:

Thank you very much, Keith.
Cheers,
Yi
 

Yi Yao

Yi Yao
Member
The surface types are read in from the surface dataset. The surface dataset should be specified in your lnd_in namelist:

fsurdat = '............'

Crop types are specified by the variable PCT_CFT in the surface dataset. The surface dataset is read in using (e.g., in release-cesm2.1.3):

components/clm/src/main/surfrdMod.F90

You can find descriptions of the active (and currently inactive) crop types here:


You may be able to co-opt or take over one of the inactive crop types for your purposes.

With regard to tutorials, some of the material here may be useful:

Dear Keith, thank you very much for your help! I think at this moment, I will go with taking over some of the inactive CFTs. However, I have another question. As I saw in the list, for some inactive CFTs, the model just uses the physiology parameters of other CFTs (like wheat and corn). I think that if I want to take over one CFT, then I need to change the physiology parameters somewhere. I thought that the parameters are in the file /inputdata/lnd/clm2/pftdata/pft-physiology, but I checked my case and it does not read the files there. I am a bit confused. Could you please give me some tips regarding this?
Cheers,
Yi
 

oleson

Keith Oleson
CSEG and Liaisons
Staff member
For release-cesm2.1.3, for example, the parameters are in the file pointed to by paramfile in lnd_in, e.g.,

paramfile = '/glade/p/cesmdata/cseg/inputdata/lnd/clm2/paramdata/clm5_params.c171117.nc'
 

Yi Yao

Yi Yao
Member
For release-cesm2.1.3, for example, the parameters are in the file pointed to by paramfile in lnd_in, e.g.,

paramfile = '/glade/p/cesmdata/cseg/inputdata/lnd/clm2/paramdata/clm5_params.c171117.nc'
Got it! Thanks!
cheers,
Yi
 
Top