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

Workflow for handling (A)MOC data from CESM2-LENS

Joas

Joas Müller
New Member
Hi all!

I was wondering if there is an example workflow or script for handling the NetCDF files of the MOC data of the CESM2 large ensemble.
I run into problems when trying to use CDOs and am a bit confused by the amount of variables and how to isolate the AMOC and calculating the AMOC index or northward extent.

Thanks in advance for any help!
Best,
Joas
 

strandwg

Moderator
Staff member
Hi all!

I was wondering if there is an example workflow or script for handling the NetCDF files of the MOC data of the CESM2 large ensemble.
I run into problems when trying to use CDOs and am a bit confused by the amount of variables and how to isolate the AMOC and calculating the AMOC index or northward extent.

Thanks in advance for any help!
Best,
Joas

MOC is dimensioned as (time, transport_reg, moc_comp, moc_z, lat_aux_grid) and the values for each of the coordinates are described in the netCDF file.

There are two regions defined via "transport_reg":
1. Global Ocean - Marginal Seas
2. Atlantic Ocean + Mediterranean Sea + Labrador Sea + GIN Sea + Arctic Ocean + Hudson Bay

There are three components to the circulation:
1. Eulerian Mean
2. Eddy-Induced (bolus)
3. Submeso

moc_z is the depth coordinate and lat_aux_grid is the latitude component.

So, if you to look at the Eulerian mean of the AMOC, you would choose (using 1-based indexing)

MOC(:, 2, 1, :, :)

Let me know of any questions.
 

Joas

Joas Müller
New Member
Hi Gary,

thansk a lot! That solves my struggles.
In general, where/how do I find the information like which index is which transport region or which MOC component (e.g.).?
Was looking for way too long in the metadata and have the feeling I am just missing something.

Cheers,
Joas
 

strandwg

Moderator
Staff member
Hi Gary,

thansk a lot! That solves my struggles.
In general, where/how do I find the information like which index is which transport region or which MOC component (e.g.).?
Was looking for way too long in the metadata and have the feeling I am just missing something.

Cheers,
Joas

If you do an "ncdump" on the file you'll see the various important metadata.
 

Joas

Joas Müller
New Member
If you do an "ncdump" on the file you'll see the various important metadata.
The only information regarding the transport_regions I find in the header are the following:

char transport_regions(transport_reg, nchar) ;
transport_regions:long_name = "regions for all transport diagnostics" ;
transport_regions:units = "" ;

From this it was not clear which index specifies which region. Is the information hidden somewhere else?
I had the same problems in other files regarding the "Region Mask" for the ocean basins. There I only found out about which index specifies which region by using the ncviewer, which unfortunately did not work for the "transport_reg".
Thats why I was wondering if there might be a list of these indices somewhere?

Thanks again!
Joas
 

strandwg

Moderator
Staff member
The only information regarding the transport_regions I find in the header are the following:

char transport_regions(transport_reg, nchar) ;
transport_regions:long_name = "regions for all transport diagnostics" ;
transport_regions:units = "" ;

From this it was not clear which index specifies which region. Is the information hidden somewhere else?
I had the same problems in other files regarding the "Region Mask" for the ocean basins. There I only found out about which index specifies which region by using the ncviewer, which unfortunately did not work for the "transport_reg".
Thats why I was wondering if there might be a list of these indices somewhere?

Thanks again!
Joas

"ncdump -h" won't show the values for the transport_regions variable. You need to use just "ncdump" to see the values:

[...]
transport_components =
"Total",
"Eulerian-Mean Advection",
"Eddy-Induced Advection (bolus) + Diffusion",
"Eddy-Induced (bolus) Advection",
"Submeso Advection" ;

transport_regions =
"Global Ocean - Marginal Seas",
"Atlantic Ocean + Mediterranean Sea + Labrador Sea + GIN Sea + Arctic Ocean + Hudson Bay" ;

z_t = 500, 1500, 2500, 3500, 4500, 5500, 6500, 7500, 8500, 9500, 10500,
[...]
 

Joas

Joas Müller
New Member
"ncdump -h" won't show the values for the transport_regions variable. You need to use just "ncdump" to see the values:

[...]
transport_components =
"Total",
"Eulerian-Mean Advection",
"Eddy-Induced Advection (bolus) + Diffusion",
"Eddy-Induced (bolus) Advection",
"Submeso Advection" ;


transport_regions =
"Global Ocean - Marginal Seas",
"Atlantic Ocean + Mediterranean Sea + Labrador Sea + GIN Sea + Arctic Ocean + Hudson Bay" ;


z_t = 500, 1500, 2500, 3500, 4500, 5500, 6500, 7500, 8500, 9500, 10500,
[...]
Well, that helps a lot.
Thanks for taking your time to answer!
Best,
Joas
 
Top