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

Output Variables namelist?

Hi CESM users,

I am looking for output variable names for the ocean component of CESM2. I am a frequent user of CESM, but my expertise is in the CLM model, so I am a bit lost. I have checked CESM2 POP2 Namelist Definitions
However, the nl doesn't have descriptions of the flags.

init_abio_dic_dic14_init_file_fmt:
Is this Dissolved Organic Carbon (DIC)?

restorable_tracer_names
  • Description and out-of-the-box DefaultDefault: 'PO4','NO3','SiO3','O2','ALK'
Is this the flag to output variables?

In the end, I am searching how to output the following variables, or something of equivalence.
SST
pot. temperature at 200m
H+ (or pH) at surface
H+ (or pH) at 200m
O2 at surface
O2 at 200m
Total NPP integrated over top 100m or over full depth
Sea surface salinity
Surface DIC
Surface alkalinity
Surface NO3

Thanks,
-Jonathan R. Buzan
PhD
Climate and Environmental Physics
Physics Institute
Oeschger Centre for Climate Change Research
University of Bern
Sidlerstrasse 5
3012 Bern, Switzerland
 
Update: I have found most of the variables. I am still having trouble with NPP. It was suggest that I use photoC_all_zint, but I cannot find this variable in the B1850_BPRP monthly output.






float TEMP(time, z_t, nlat, nlon) ;
TEMP:long_name = "Potential Temperature" ;
TEMP:units = "degC" ;
TEMP:coordinates = "TLONG TLAT z_t time" ;
TEMP:grid_loc = "3111" ;
TEMP:cell_methods = "time: mean" ;
TEMP:_FillValue = 9.96921e+36f ;
TEMP:missing_value = 9.96921e+36f ;

float PH(time, nlat, nlon) ;
PH:long_name = "Surface pH" ;
PH:units = "1" ;
PH:coordinates = "TLONG TLAT time" ;
PH:grid_loc = "2110" ;
PH:cell_methods = "time: mean" ;
PH:_FillValue = 9.96921e+36f ;
PH:missing_value = 9.96921e+36f ;
float pH_3D(time, z_t, nlat, nlon) ;
pH_3D:long_name = "pH" ;
pH_3D:units = "1" ;
pH_3D:coordinates = "TLONG TLAT z_t time" ;
pH_3D:grid_loc = "3111" ;
pH_3D:cell_methods = "time: mean" ;
pH_3D:_FillValue = 9.96921e+36f ;
pH_3D:missing_value = 9.96921e+36f ;

float O2(time, z_t, nlat, nlon) ;
O2:long_name = "Dissolved Oxygen" ;
O2:units = "mmol/m^3" ;
O2:coordinates = "TLONG TLAT z_t time" ;
O2:grid_loc = "3111" ;
O2:cell_methods = "time: mean" ;
O2:_FillValue = 9.96921e+36f ;
O2:missing_value = 9.96921e+36f ;

float SALT(time, z_t, nlat, nlon) ;
SALT:long_name = "Salinity" ;
SALT:units = "gram/kilogram" ;
SALT:coordinates = "TLONG TLAT z_t time" ;
SALT:grid_loc = "3111" ;
SALT:cell_methods = "time: mean" ;
SALT:scale_factor = 1000.f ;
SALT:_FillValue = 9.96921e+33f ;
SALT:missing_value = 9.96921e+33f ;

float DIC(time, z_t, nlat, nlon) ;
DIC:long_name = "Dissolved Inorganic Carbon" ;
DIC:units = "mmol/m^3" ;
DIC:coordinates = "TLONG TLAT z_t time" ;
DIC:grid_loc = "3111" ;
DIC:cell_methods = "time: mean" ;
DIC:_FillValue = 9.96921e+36f ;
DIC:missing_value = 9.96921e+36f ;

float ALK(time, z_t, nlat, nlon) ;
ALK:long_name = "Alkalinity" ;
ALK:units = "meq/m^3" ;
ALK:coordinates = "TLONG TLAT z_t time" ;
ALK:grid_loc = "3111" ;
ALK:cell_methods = "time: mean" ;
ALK:_FillValue = 9.96921e+36f ;
ALK:missing_value = 9.96921e+36f ;

float NO3(time, z_t, nlat, nlon) ;
NO3:long_name = "Dissolved Inorganic Nitrate" ;
NO3:units = "mmol/m^3" ;
NO3:coordinates = "TLONG TLAT z_t time" ;
NO3:grid_loc = "3111" ;
NO3:cell_methods = "time: mean" ;
NO3:_FillValue = 9.96921e+36f ;
NO3:missing_value = 9.96921e+36f ;
 
Hi CESM2 Users,

I am totally lost at this. I can't figure out how to change the output frequency for the ocean model.

In the atmosphere it is simple:

# frequency of model output (0: monthly, -6: 6 hourly). first is file 1, second is file 2
nhtfrq = 0,-6
# how many steps in a file per annual
mfilt = 1,1460

# variables to be output. fincl1 = file 1, fincl2 = file 2
fincl1 = 'PRECT'
fincl2 = 'PRECT','ICEFRAC'

As far as I can tell, this is not how the pop2 calls variables? I really don't understand, and I cannot find an example user_nl_pop file that shows how to change the frequency of output.
 

klindsay

CSEG and Liaisons
Staff member
Update: I have found most of the variables. I am still having trouble with NPP. It was suggest that I use photoC_all_zint, but I cannot find this variable in the B1850_BPRP monthly output.

NPP integrated over the top 100m is photoC_TOT_zint_100m.
NPP integrated over the full column is photoC_TOT_zint.
 

klindsay

CSEG and Liaisons
Staff member
Ocean BGC diagnostics are a bit complicated in CESM 2.0/2.1.

The reason for this is that some diagnostics, such as tracer values, tracer surface fluxes, and some diagnostics that are generic for all tracers, are defined and controlled by the base ocean model, POP. Other diagnostics, that are not generic to all tracers, like NPP and pH, are defined and controlled from MARBL, which is an ocean BGC library external to POP. So there is a different interface to control output options for these different types of diagnostics, and neither of these look like the CAM/CLM interface for diagnostics.

We have some efforts underway to simplify user specification of diagnostics.

But based on your followups, it seems like you now have all of the diagnostics that you are interested in. Please let us know if you need more information.
 
Hi Keith,

I agree! It is quite complicated. I think as a start a little bit more description in the user_nl_pop would be useful. The current description points one in the direction to go (how to change the stream field definitions), but is completely vague about how to change specific variables.

after really digging into to the code, if found that one has to modify these specific and upload to src.pop:
ecosys_diagnostics
gx1v7_tavg_contents

Cheers,
-Jonathan
 
Top