issue with rad_diag_1 namelist parameter

joe_s

Joe Salamone
New Member
Hello,
I am getting an error when trying to use the rad_diag_1 namelist parameter.

I am using CESM v2.1.5, CAM6. I have not made any changes to the code source. I am using the FCSD compset.

I followed the instructions in the CAM6 user guide but was not successful in preventing the error.
I copied the entry from my rad_climate in the atm_in file, which is:
rad_climate = 'A:Q:H2O', 'N:O2:O2','A:CO2:CO2', 'A:O3:O3','A:N2O:N2O', 'A:CH4:CH4','N:CFC11STAR:CFC11', 'A:CFC12:CFC12',
'M:mam4_mode1:/CESM/InputData/atm/cam/physprops/mam4_mode1_rrtmg_aeronetdust_sig1.6_dgnh.48_c140304.nc', 'M:mam4_mode2:/CESM/InputData/atm/cam/physprops/mam4_mode2_rrtmg_aitkendust_c141106.nc',
'M:mam4_mode3:/CESM/InputData/atm/cam/physprops/mam4_mode3_rrtmg_aeronetdust_sig1.2_dgnl.40_c150219.nc', 'M:mam4_mode4:/CESM/InputData/atm/cam/physprops/mam4_mode4_rrtmg_c130628.nc'

And then for rad_diag_1, I removed ozone, since that is my specie of interest and that is what I interpreted from the CAM6 user guide:
rad_diag_1 = 'A:Q:H2O', 'N:O2:O2','A:CO2:CO2', 'A:N2O:N2O','A:CH4:CH4', 'N:CFC11STAR:CFC11','A:CFC12:CFC12', 'M:mam4_mode1:/CESM/InputData/atm/cam/physprops/mam4_mode1_rrtmg_aeronetdust_sig1.6_dgnh.48_c140304.nc',
'M:mam4_mode2:/CESM/InputData/atm/cam/physprops/mam4_mode2_rrtmg_aitkendust_c141106.nc', 'M:mam4_mode3:/CESM/InputData/atm/cam/physprops/mam4_mode3_rrtmg_aeronetdust_sig1.2_dgnl.40_c150219.nc',
'M:mam4_mode4:/CESM/InputData/atm/cam/physprops/mam4_mode4_rrtmg_c130628.nc'

But then when running, I get an error. Here is the snippet of the error from the atm.log file:
rad_cnst_init: checking for radiative constituents
ERROR:
list_init2 ERROR: invalid source for specie

My motivation for doing this is that I am trying to get the ozone radiative forcing sensitivity due to a set of emissions, using the difference between a perturbed and control case. I was hoping this was the way to get the radiative forcing aspect of the sensitivity. But if there is a different/better way than using the rad_diag_1 approach, please let me know.

Regards,
Joe S.
 

peverley

Courtney Peverley
Moderator
Staff member
Hi Joe,

To clarify, are you:

1. Trying to compare a perturbed ozone case to a non-perturbed ozone case, or
2. Trying to compare a perturbed ozone case to NO ozone

In terms of your error, you can't remove O3 from the rad_diag_X list altogether. You can change it to be zero by doing:

'A:Q:H2O', 'N:O2:O2','A:CO2:CO2', 'Z:O3:O3','A:N2O:N2O', 'A:CH4:CH4','N:CFC11STAR:CFC11', 'A:CFC12:CFC12',...

This will remove the effect of ozone from the radiation diagnostics for rad_diag_1, but other concentrations won't be changed accordingly (as they would if you set ozone to 0 in rad_climate.

If you let me know what you're trying to do more specifically, I (or one of the scientists) can hopefully help further.

Courtney
 

joe_s

Joe Salamone
New Member
Hi Courtney,
Thank you so much for your reply.

I am looking for (1) - trying to compare a perturbed ozone case to that of a non-perturbed ozone case.

From what you describe, by specifying Z:O3:O3 in rad_diag_1, that sounds like what I am looking for.

And then, just to also confirm, I would have in my fincl# namelist parameters in my user_nl_cam file the variables like FSNT_d1, FLNT_d1, FLUT_d1, etc, to get the resulting radiative diagnostics from rad_diag_1?

Thank you and best regards,
Joe S.
 

peverley

Courtney Peverley
Moderator
Staff member
Hi Joe,

How are you modifying ozone in your perturbed case? Different emissions files?

If so, I think you'll want two separate runs entirely - one with the default emissions, and one with your modified emissions files.

Courtney
PS. Yes, that's how you'd get the rad_diag_1 variables.
 

joe_s

Joe Salamone
New Member
Hi Courtney,
My apologies for not elaborating more on my cases.
Yes, I would have two separate runs. I would have one "control" run with the default compset emissions. Then a second run with a custom modified emissions file as the "perturbed" run. And, I would look to compare the difference in radiative forcing of ozone between the two separate runs as a result of the modified emissions.

Thanks for bearing with me on this.

Best Regards,
Joe S.
 

peverley

Courtney Peverley
Moderator
Staff member
Ok! To clarify, are you also going to include non-diagnostic FSNT, FLNT, FLUT, etc in your fincl list? I would think you could just compare those values across your cases without having to bother with rad_diag_1.

Basically, what i'd naively do would be to do your two cases with identical setups except for the ozone source. rad_climate would be the same in both (and would include advected, non-zero ozone), and you'd include FSNT, etc in your fincl list.

Apologies if there's a more complicated plan that I'm missing!

Courtney
 

joe_s

Joe Salamone
New Member
Hi Courtney,
No apologies needed at all. I am grateful for your help and insight here!

In my case, I didn't want to assume my modified emissions only affect ozone, as they would also likely affect other greenhouse gases in the rad_climate list. To what extent, I am not sure, which is why I was looking to isolate just the ozone effects at first, just to be on the safe side.

It is straightforward to log both the non-diagnostic and the diagnostic FSNT, FLNT, etc via the fincl#. Then with that available data output, I could hone in on just the ozone forcing aspect due to the modified emissions.

If this sounds erroneous, please let me know.

Also, I will be able to check the "Z:O3:O3" once my system frees up resources for me to run the cases with those changes.

Kind Regards,
Joe S.
 

peverley

Courtney Peverley
Moderator
Staff member
Hi again Joe,

Thanks for elaborating. That sounds like a solid plan. Let me know if you run into any problems with output.

Courtney
 

joe_s

Joe Salamone
New Member
Hi Courtney,
I was able to get the compset to run with radiative diagnostics, and the 'Z:O3:O3' change to stated did work, but I am not sure how to proceed. I would appreciate your expertise on this part.

Here is what I had in my user_nl_cam:
!-------
avgflag_pertape = 'A', 'A',
nhtfrq = 0, 0
mfilt = 1, 1

rad_diag_1 = 'A:Q:H2O', 'N:O2:O2',
'A:CO2:CO2', 'A:O3:O3', 'A:N2O:N2O', 'A:CH4:CH4',
'N:CFC11STAR:CFC11', 'A:CFC12:CFC12'
rad_diag_2 = 'A:Q:H2O', 'N:O2:O2',
'A:CO2:CO2', 'Z:O3:O3', 'A:N2O:N2O', 'A:CH4:CH4',
'N:CFC11STAR:CFC11', 'A:CFC12:CFC12'
rad_diag_3 = 'Z:Q:H2O', 'Z:O2:O2',
'Z:CO2:CO2', 'A:O3:O3', 'Z:N2O:N2O', 'Z:CH4:CH4',
'Z:CFC11STAR:CFC11', 'Z:CFC12:CFC12'

fincl2 = 'AREA:A','FSNT:A','FLNT:A','FSNT_d1:A','FLNT_d1:A','FSNT_d2:A','FLNT_d2:A','FSNT_d3:A','FLNT_d3:A'

!----------------

for reference, here is what is in my rad_climate, straight from the atm_in file:
rad_climate = 'A:Q:H2O', 'N:O2:O2',
'A:CO2:CO2', 'A:O3:O3',
'A:N2O:N2O', 'A:CH4:CH4',
'N:CFC11STAR:CFC11', 'A:CFC12:CFC12',
'M:mam4_mode1:/proj/misc/pd/u704830/CESM/InputData/atm/cam/physprops/mam4_mode1_rrtmg_aeronetdust_sig1.6_dgnh.48_c140304.nc', 'M:mam4_mode2:/proj/misc/pd/u704830/CESM/InputData/atm/cam/physprops/mam4_mode2_rrtmg_aitkendust_c141106.nc',
'M:mam4_mode3:/proj/misc/pd/u704830/CESM/InputData/atm/cam/physprops/mam4_mode3_rrtmg_aeronetdust_sig1.2_dgnl.40_c150219.nc', 'M:mam4_mode4:/proj/misc/pd/u704830/CESM/InputData/atm/cam/physprops/mam4_mode4_rrtmg_c130628.nc'

When I had tried to retain the aerosols and dust from rad_climate (since I am only interested in ozone for this part), I would get the error as before for the invalid source for the specie. But the above 3 rad_diag entries in the user_nl_cam, without the aerosols and dust, did allow CESM to run without error.

Since I am just looking to isolate out the radiative effects for ozone, given the above 3 radiative diagnostics that worked, what is the way to get the ozone contribution?
For the net longwave flux, as an example:
do I use: FLNT - FLNT_d1 - FLNT_d2
or, can I use: FLNT_d3
Or do I do something else?

Thanks for your patience on this.
Best Regards,
Joe S.
 

peverley

Courtney Peverley
Moderator
Staff member
Hi Joe,

I'm not a radiation diagnostic expert, but I think it'd be easiest to just stick with rad_diag1 and have it match rad_climate exactly (including aerosols) except for zeroing out ozone.

specifically:

rad_diag_1 = 'A:Q:H2O', 'N:O2:O2',
'A:CO2:CO2', 'Z:O3:O3',
'A:N2O:N2O', 'A:CH4:CH4',
'N:CFC11STAR:CFC11', 'A:CFC12:CFC12',
'M:mam4_mode1:/proj/misc/pd/u704830/CESM/InputData/atm/cam/physprops/mam4_mode1_rrtmg_aeronetdust_sig1.6_dgnh.48_c140304.nc', 'M:mam4_mode2:/proj/misc/pd/u704830/CESM/InputData/atm/cam/physprops/mam4_mode2_rrtmg_aitkendust_c141106.nc',
'M:mam4_mode3:/proj/misc/pd/u704830/CESM/InputData/atm/cam/physprops/mam4_mode3_rrtmg_aeronetdust_sig1.2_dgnl.40_c150219.nc', 'M:mam4_mode4:/proj/misc/pd/u704830/CESM/InputData/atm/cam/physprops/mam4_mode4_rrtmg_c130628.nc'

Then just do:

FLNT - FLNT_d1

to get the ozone affect for that run.

It would be an interesting test to see if that matches the ideas you have. I just don't know enough about aerosols to say how those interplay in the RRTMG code.

Courtney
 

joe_s

Joe Salamone
New Member
Hi Courtney,
Thank you so much for your reply.
Your approach makes sense. When I tried to put the aerosols and dust into my rad_diag lines like what is in the rad_climate, I would get the same invalid specie error. So, perhaps there is something else I just haven't figured out syntax-wise to include that.

However, based on your above suggestion, it seems another approach is to use:
FLNT_d1 - FLNT_d2
That way, since both rad_diag_1 and rad_diag_d2 do not include aerosols/dust, and the _d2 term omits ozone, I can then get ozone's contribution in a similar way that you suggest.

I sincerely appreciate your help on this!!

Kind Regards,
Joe S.
 

peverley

Courtney Peverley
Moderator
Staff member
That's interesting that you're getting that failure. We have a test that runs with

rad_diag_2=
'A:Q:H2O', 'N:O2:O2', 'A:CO2:CO2', 'N:ozone:O3', 'A:N2O:N2O', 'A:CH4:CH4', 'N:CFC11STAR:CFC11', 'A:CFC12:CFC12',
'M:mam4_m1_noso4:$DIN_LOC_ROOT/atm/cam/physprops/mam4_mode1_rrtmg_aeronetdust_sig1.6_dgnh.48_c140304.nc',
'M:mam4_m2_noso4:$DIN_LOC_ROOT/atm/cam/physprops/mam4_mode2_rrtmg_aitkendust_c141106.nc',
'M:mam4_m3_noso4:$DIN_LOC_ROOT/atm/cam/physprops/mam4_mode3_rrtmg_aeronetdust_c141106.nc',
'M:mam4_mode4:$DIN_LOC_ROOT/atm/cam/physprops/mam4_mode4_rrtmg_c130628.nc'

that seems to be working ok. Can you attach your user_nl_cam that failed?

Courtney
 

joe_s

Joe Salamone
New Member
Here is the user_nl_cam that failed with the invalid specie error:
!------
avgflag_pertape = 'A', 'A'
nhtfrq = 0, 0
mfilt = 1, 1

rad_diag_1 = 'A:Q:H2O', 'N:O2:O2',
'A:CO2:CO2', 'Z:O3:O3', 'A:N2O:N2O', 'A:CH4:CH4',
'N:CFC11STAR:CFC11', 'A:CFC12:CFC12',
'M:mam4_mode1:/CESM/InputData/atm/cam/physprops/mam4_mode1_rrtmg_aeronetdust_sig1.6_dgnh.48_c140304.nc', 'M:mam4_mode2:/CESM/InputData/atm/cam/physprops/mam4_mode2_rrtmg_aitkendust_c141106.nc',
'M:mam4_mode3:/CESM/InputData/atm/cam/physprops/mam4_mode3_rrtmg_aeronetdust_sig1.2_dgnl.40_c150219.nc', 'M:mam4_mode4:/CESM/InputData/atm/cam/physprops/mam4_mode4_rrtmg_c130628.nc'

fincl2 = 'AREA:A','FSNT:A','FLNT:A','FSNT_d1:A','FLNT_d1:A'
!--------


For reference, here is my rad_climate from the atm_in file, since that is what I copied for the above:
rad_climate = 'A:Q:H2O', 'N:O2:O2',
'A:CO2:CO2', 'A:O3:O3',
'A:N2O:N2O', 'A:CH4:CH4',
'N:CFC11STAR:CFC11', 'A:CFC12:CFC12',
'M:mam4_mode1:/CESM/InputData/atm/cam/physprops/mam4_mode1_rrtmg_aeronetdust_sig1.6_dgnh.48_c140304.nc', 'M:mam4_mode2:/CESM/InputData/atm/cam/physprops/mam4_mode2_rrtmg_aitkendust_c141106.nc',
'M:mam4_mode3:/CESM/InputData/atm/cam/physprops/mam4_mode3_rrtmg_aeronetdust_sig1.2_dgnl.40_c150219.nc', 'M:mam4_mode4:/CESM/InputData/atm/cam/physprops/mam4_mode4_rrtmg_c130628.nc'

For my case, I am using CESM v2.1.5, FCSD compset.

Thank you kindly,
Joe S.
 

peverley

Courtney Peverley
Moderator
Staff member
Hi again Joe,

I was able to get the latest cam_cesm2_1_rel tag working in a CAM checkout (not the full CESM repo) with FCSD and f09_f09_mg17 by setting

modal_strat_sulfate = .false.

in user_nl_cam. Not sure if that will work with your setup. If not, stick to your original plan!

Courtney
 

joe_s

Joe Salamone
New Member
Good morning, Courtney!
I set modal_strat_sulfate = .false., and then added the set of aerosols to the rad_diag from the rad_climate, and it no longer gets the invalid specie error.

However, when I was setting up the case, I noticed it pulled a new input file "ozone_strataero_CAM6chem_1849-2014_zm_5day_c170924.nc" for the "prescribed_strataero_file" namelist parameter.
I did a notional look at the ozone concentration for the case with this "modal_strat_sulfate = .false." and compared it to the FCSD default, and they aren't the same. Is this added option prescribing ozone anywhere in the atmosphere or is ozone still fully prognostic? For my use case I will need the latter.

Thank you for your help here!
Joe S.
 
Back
Top