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

More general MOC computation in POP

yeager@ucar_edu

New Member
> Paleo users with non-standard
> ocean grids are running into difficulty with the MOC computation in POP. At
> present, POP is hard-wired to compute both global and Atlantic MOC.
> It may be the case that with a non-standard grid, with alternative
> regions defined such as 'Northern Hemisphere', 'Southern Hemisphere',
> the code will still work with appropriate settings for
> transport_reg2_names in pop_in. However, it would be desirable
> for paleo users to be able to 'turn off' the Atlantic region MOC
> computation in diags_on_lat_aux_grid.F.
>
> So, I would like to make a request that we modify that code so that
> n_transport_reg = 2 is NOT assumed (n_transport_reg = 1 would mean
> 'compute global MOC only'). It looks like it would entail some
> if..then's.
>
> This would enable paleo users with non-standard grids to at least get
> global MOC computed online without special effort.

Thanks,
Steve
 

njn01

Member
Steve,

This seems like a very reasonable request, and I think that it will be fairly straightforward to accomplish. I will schedule some time this week to review the MOC code and will get back to you with an estimate for how long this will take and when I might be able to work on it.

Do you have any ideas on how we should distribute this modification, once it is completed? Should this be included in an official CCSM patch? Available to paleo users upon request? Any other ideas?

-- ocean-model liaison
 

njn01

Member
I've created a modified version of the CCSM3.0 pop subroutine
diags_on_lat_aux_grid.F which allows a user to specify
the number of transport regions, n_transport_reg, through
the namelist. The new version of the routine supports
n_transport_reg = 1 and n_transport_reg = 2; the default is
n_transport_reg = 2.

When n_transport_reg = 1, only the global MOC is computed; the
regional computations are skipped over in the modified version
of the code.

In order to select the global-MOC-only option, you'll need
1) the modified diagnostics module
2) a modified version of the "pop_in" file

To acquire the modified diagnostics file, go to
http://roskilde.eas.purdue.edu/~cdpl/phpwiki

To modify your pop_in file, add a single line at the end
of the transports_nml namelist, at the very bottom of the pop_in
file:

&transports_nml
lat_aux_grid_type = 'southern'
lat_aux_begin = -90.0
lat_aux_end = 90.0
n_lat_aux_grid = 180
moc = .true.
n_heat_trans = .true.
n_salt_trans = .true.
transport_reg2_names = 'Atlantic Ocean',
'Labrador Sea',
'GIN Sea',
'Arctic Ocean',
'Hudson Bay'
n_transport_reg = 1
/

Note that it's ok to leave the definitions of transport_reg2_names
in the existing namelist, even though they will not be used
when n_transport_reg = 1.

The recommended method for using the modified diags_on_lat_aux_grid.F
routine and pop_in file is to put both files into your
SourceMods/src.pop directory.
 

crowe1@unl_edu

New Member
I've grabbed the revised version of diags_on_lat_aux_grid.F and modified my pop_in to add the n_transport_reg = 1 line, but I get an error when I try to run
the model. Here's the tail of the log file:

Document Namelist Parameters:
============================

&TRANSPORTS_NML
LAT_AUX_GRID_TYPE=southern , LAT_AUX_BEGIN=-90.0000000000000000, LAT_AUX_END=90.0000000000000000, N_LAT_AUX_GRID=180, MOC=T, N_HEAT_TRANS=T, N_SALT_TRANS=T, TRANSPORT_REG2_NAMES=Atlantic Ocean Labrador Sea GIN Sea Arctic Ocean Hudson Bay , N_TRANSPORT_REG=1
/


Transport Diagnostics Information
_________________________________

Latitudinal Auxiliary Grid Choice is:
... based on flipped Southern Hemisphere latititude grid

Transport diagnostics include:
MOC
N_HEAT
N_SALT

------------------------------------------------------------------------

POP exiting...
FATAL ERROR: (init_lat_aux_grid) SH is not a regular lat-lon grid. use a different choice for lat_aux_grid_type.

------------------------------------------------------------------------
D1: In pm_child_sig_handler, signal=15, task=12

I interpret this as follows:
1) since this is a run for the Jurassic, I had to move the south pole;
2) this creates a non-regular souther hemisphere, instead of a regular lat/lon grid;
3) I should change pop_in so that LAT_AUX_GRID_TYPE= 'user'

So, what values do I choose for the other parameters (i.e., lat_aux_begin, lat_aux_end and n_lat_aux_grid) or should I just turn this off as suggested by Christine Shields in her presentation at the 2004 CCSM workshop?
 

njn01

Member
Your interpretations 1-3 are correct. I have never tested the user-defined grid option, and so I can't say if it will work or not. If the MOC diagnostic is not critical, the simplest thing to do is to disable it.

Please follow up on this post if the diagnostic is critical and the user-defined grid option does not work.
 

zdliu

Member
Yes, I would also like to acquire the modified diagnostics file, and I use CESM1.0.4.Best wishes,zedong
 

njn01

Member
This thread belongs in the Ocean Modeling with POP (CCSM3) discussion forum, where it originated, not in the CESM General Discussion forum.The original discussion (note the date: 2004!) pertains only to the now-unsupported CCSM3 POP1 code, not CESM POP2.The "modified diagnostics file" was new in 2004, and was based on POP1 code.  Those modifications were folded into the CESM POP2 code at the time that the CESM POP2 code was being developed.
 
Top