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

How to know if I am running CAM or CAM-Chem

nuvolet

Toni Viudez
Member
Greetings,

How could I know from a simple CESM run, if I am using CAM or CAM-Chem?.
How could I switch/change from to another?
Thanks.
 

hannay

Cecile Hannay
AMWG Liaison
Staff member
It will be defined by the compset you use (compset = component set). This is the set of components you use in your simulation.
(For more info about compset: https://esmci.github.io/cime/versions/master/html/users_guide/compsets.html)

The list of compsets in CESM2 is available at: https://docs.cesm.ucar.edu/models/cesm2/config/compsets.html
You can see all the details of the components you are using.

As a rule of thumb, when you run an F compset, it is an atmosphere only simulation. But it could be CAM or CAM-chem or WACCM
- If the compset name has 'FC', it is a CAM-chem compset.
- If the compset name has 'FW', it is a WACCM compset.
- If the name has an 'F' without a 'C' or 'W', it is CAM."
It is a bit more complicated than this as there are even more F compsets (i.e. CAM dry adiabatic baroclinic instability, ...) but this is a good starting point.
 

nuvolet

Toni Viudez
Member
It will be defined by the compset you use (compset = component set). This is the set of components you use in your simulation.
(For more info about compset: 2. Component sets — CIME master documentation)

The list of compsets in CESM2 is available at: CESM2.2.0 Component Sets Definitions
You can see all the details of the components you are using.

As a rule of thumb, when you run an F compset, it is an atmosphere only simulation. But it could be CAM or CAM-chem or WACCM
- If the compset name has 'FC', it is a CAM-chem compset.
- If the compset name has 'FW', it is a WACCM compset.
- If the name has an 'F' without a 'C' or 'W', it is CAM."
It is a bit more complicated than this as there are even more F compsets (i.e. CAM dry adiabatic baroclinic instability, ...) but this is a good starting point.
Hi Cecile,

I amusing the nudge option while I run CESM and looks like the possible and available compost are FC, which means that CAM-Chem will be used.
Do you know if there is an option to create a new compost like Fnudge?.

Thanks in advance.
 

peverley

Courtney Peverley
Moderator
Hi Toni,

A couple of options:

1. You can go into the $CAM/cime_config/config_compsets.xml list and find the longname for the compset that you want to remove chemistry from (for example "FCnudged" has a longname of "HIST_CAM60%CCTS1%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV"). You can then remove the "%CCTS1" from the longname and you'll have an identical compset without chemistry (using the same example, it'd be "HIST_CAM60%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV"). You can use the new longname in creating your case the same way you would use an alias.

2. You can just use the compset as is (for example, FCnudged) and then toggle off chemistry by removing the relevant switches in the CAM_CONFIG_OPTS environment variable. For example, if running ./xmlquery CAM_CONFIG_OPTS returns "-phys cam6 -chem trop_strat_mam5_vbs -age_of_air_trcs" you can do:

./xmlchange CAM_CONFIG_OPTS="-phys cam6"

to toggle off those chemistry flags ("-chem trop_strat_mam5_vbs -age_of_air_trcs")

Hope that helps!
Courtney
 

nuvolet

Toni Viudez
Member
Hi Toni,

A couple of options:

1. You can go into the $CAM/cime_config/config_compsets.xml list and find the longname for the compset that you want to remove chemistry from (for example "FCnudged" has a longname of "HIST_CAM60%CCTS1%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV"). You can then remove the "%CCTS1" from the longname and you'll have an identical compset without chemistry (using the same example, it'd be "HIST_CAM60%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV"). You can use the new longname in creating your case the same way you would use an alias.

2. You can just use the compset as is (for example, FCnudged) and then toggle off chemistry by removing the relevant switches in the CAM_CONFIG_OPTS environment variable. For example, if running ./xmlquery CAM_CONFIG_OPTS returns "-phys cam6 -chem trop_strat_mam5_vbs -age_of_air_trcs" you can do:



to toggle off those chemistry flags ("-chem trop_strat_mam5_vbs -age_of_air_trcs")

Hope that helps!
Courtney
Hi Courtney,

Great, I will try any of both options. I want to be sure that when I run CESM I am not using CAM-Chem.
Thanks a lot for your help :)
 

nuvolet

Toni Viudez
Member
Hi Toni,

A couple of options:

1. You can go into the $CAM/cime_config/config_compsets.xml list and find the longname for the compset that you want to remove chemistry from (for example "FCnudged" has a longname of "HIST_CAM60%CCTS1%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV"). You can then remove the "%CCTS1" from the longname and you'll have an identical compset without chemistry (using the same example, it'd be "HIST_CAM60%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV"). You can use the new longname in creating your case the same way you would use an alias.

2. You can just use the compset as is (for example, FCnudged) and then toggle off chemistry by removing the relevant switches in the CAM_CONFIG_OPTS environment variable. For example, if running ./xmlquery CAM_CONFIG_OPTS returns "-phys cam6 -chem trop_strat_mam5_vbs -age_of_air_trcs" you can do:



to toggle off those chemistry flags ("-chem trop_strat_mam5_vbs -age_of_air_trcs")

Hope that helps!
Courtney
Hi Courtney,

I tried second option in 2 different ways and I do not see that CESM switch off the chemistry, for instance.
When I run the first case I did this:

Code:
# --------------- > short:

  ./create_newcase --case $casename --compset FCnudged --res f09_f09_mg17 --run-unsupported
  ./xmlchange CAM_CONFIG_OPTS="-phys cam6"

Then when run starts shows:

Code:
|------------------> ./create_newcase
 
Compset longname is HIST_CAM60%CCTS1%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV
Compset specification file is ~/CESM2.2/components/cam//cime_config/config_compsets.xml
Automatically adding SIAC to compset
Automatically adding SESP to compset
Warning: missing non-idmap ROF2OCN_FMAPNAME for rof_grid, r05 and ocn_grid 0.9x1.25
Compset forcing is Historic transient
ATM component is CAM cam6 physics:CAM-Chem troposphere/stratosphere chemistry with simplified VBS-SOA:
LND component is clm5.0:Satellite phenology:
ICE component is Sea ICE (cice) model version 5 :prescribed cice
OCN component is DOCN   prescribed ocean mode
ROF component is MOSART: MOdel for Scale Adaptive River Transport
GLC component is Stub glacier (land ice) component
WAV component is Stub wave component
IAC component is Stub iac component
ESP component is Stub external system processing (ESP) component
Pes     specification file is ~/CESM2.2/components/cam//cime_config/config_pes.xml
Compset specific settings: name is RUN_STARTDATE and value is 2010-01-01
Compset specific settings: name is CALENDAR and value is GREGORIAN
Compset specific settings: name is SSTICE_DATA_FILENAME and value is $DIN_LOC_ROOT/atm/cam/sst/sst_HadOIBl_bc_0.9x1.25_1850_2017_c180507.nc
Compset specific settings: name is SSTICE_GRID_FILENAME and value is $DIN_LOC_ROOT/share/domains/domain.ocn.fv0.9x1.25_gx1v7.151020.nc
Compset specific settings: name is SSTICE_YEAR_END and value is 2016
Machine is x86_64
Pes setting: grid match    is a%0.9x1.25
Pes setting: grid          is a%0.9x1.25_l%0.9x1.25_oi%0.9x1.25_r%r05_g%null_w%null_z%null_m%gx1v7
Pes setting: compset       is HIST_CAM60%CCTS1%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV_SIAC_SESP
Pes setting: tasks       is {'NTASKS_ATM': -4, 'NTASKS_LND': -4, 'NTASKS_ROF': -4, 'NTASKS_ICE': -4, 'NTASKS_OCN': -4, 'NTASKS_GLC': -4, 'NTASKS_WAV': -4, 'NTASKS_CPL': -4}
Pes setting: threads     is {'NTHRDS_ATM': 1, 'NTHRDS_LND': 1, 'NTHRDS_ROF': 1, 'NTHRDS_ICE': 1, 'NTHRDS_OCN': 1, 'NTHRDS_GLC': 1, 'NTHRDS_WAV': 1, 'NTHRDS_CPL': 1}
Pes setting: rootpe      is {'ROOTPE_ATM': 0, 'ROOTPE_LND': 0, 'ROOTPE_ROF': 0, 'ROOTPE_ICE': 0, 'ROOTPE_OCN': 0, 'ROOTPE_GLC': 0, 'ROOTPE_WAV': 0, 'ROOTPE_CPL': 0}
Pes setting: pstrid      is {}
Pes other settings: {}
Pes comments: none
 Compset is: HIST_CAM60%CCTS1%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV_SIAC_SESP
 Grid is: a%0.9x1.25_l%0.9x1.25_oi%0.9x1.25_r%r05_g%null_w%null_z%null_m%gx1v7
 Components in compset are: ['cam', 'clm', 'cice', 'docn', 'mosart', 'sglc', 'swav', 'siac', 'sesp']

When I tried the other case with this changes:

Code:
 ./xmlchange CAM_CONFIG_OPTS= "-phys cam6 -chem trop_strat_mam5_vbs -age_of_air_trcs"

I got the same initialization as shown above.
How I can see the whole chemistry is not used?
The main reason of this request to have less chemistry is that I would like to see if I can run CESM for years after 2015, which means that I need to update emissions (I already have the files for nudging) and CESM does to need a extend list of files to be updated.
As you know CMIP6 files are available up to 2015.

Thanks in advance Courtney.
 

peverley

Courtney Peverley
Moderator
Hi Toni,

The log messages in the atm file are pulled from the compset name (which you're not changing), so it may not be accurate if you manually turn off chemistry. Are you getting an error that chemistry is looking for those emissions and not finding them? If so, perhaps I was wrong that removing the -chem flag alone was enough to turn off chemistry. If that's the case, try adding "-chem none" to CAM_CONFIG_OPTS:

./xmlchange --append CAM_CONFIG_OPTS="-chem none"

If you're still having trouble, I'd recommend trying option #1 above since that would create a case based on a compset that does not have chemistry (and thus there are fewer points of failure in terms of the configuration). There is some baseline chemistry that you cannot turn off, so if none of this works, I can ask some of the chemistry experts on how to avoid the need for emissions.

Let me know if none of that helped!
Courtney
 

nuvolet

Toni Viudez
Member
Hi Toni,

The log messages in the atm file are pulled from the compset name (which you're not changing), so it may not be accurate if you manually turn off chemistry. Are you getting an error that chemistry is looking for those emissions and not finding them? If so, perhaps I was wrong that removing the -chem flag alone was enough to turn off chemistry. If that's the case, try adding "-chem none" to CAM_CONFIG_OPTS:



If you're still having trouble, I'd recommend trying option #1 above since that would create a case based on a compset that does not have chemistry (and thus there are fewer points of failure in terms of the configuration). There is some baseline chemistry that you cannot turn off, so if none of this works, I can ask some of the chemistry experts on how to avoid the need for emissions.

Let me know if none of that helped!
Courtney
Hi Courtney,

First of all, I am running CESM2.2 for a case before 2015, so I do not need to update emissions. I want to check first that the compost runs without chemistry. I am running one single day (2010-01-01). I use MERRA2 renalisys data files. Once I have a successful run without a extended version of chemistry I would like to see if it works for runs after 2015 and then update emissions.

Then, I tried this last suggestion and it didn't work. Therefore I went to option #1 ( I modified the config_compsets.xml as I indicate in the files attached).
When I ran this option looks that the compost is missing some files, which tries to download using wget, but because I am using a cluster, I think the firewall is not allowing to do that. In file run_Fnudged_compset.txt you can see it.

Thanks in advance for you help :)
 

Attachments

  • run_Fnudged_compset.txt
    11.9 KB · Views: 1
  • config_compsets.txt
    4 KB · Views: 0
Top