wiki:PMIP4Page

Version 5 (modified by flhardy, 5 years ago) (diff)

--

Changing the CLIO bathymetry for PI and PMIP4 runs


1. A new bathymetry and land-sea mask for the PI

The high resolution topography etopo1 is used to generate a new bathymetry and land-sea mask for CLIO in PI conditions.

Semi-automated pre-processing steps :

  1. The connectivity program writes the chosen variables (mean bathymetry, hypsometry...) into a text file, either on the rotated or regular CLIO grid. It can also produce the connections between ocean basins thanks to the computation of subgrid sills.
  2. The two grids are put together in the bathymetry program, which writes a text file containing the bathymetry with the land-sea mask (0 in every land grid cells).
    The mask is generated using the hypsometry, a chosen sea-level (-0.5 m for the PI), and a chosen threshold (% of surface of a grid cell above which the cell is defined as ocean - here 40 %). The mask of a few ocean grid cells is manually forced so that all the critical traits stay open. Small isolated seas are closed.
    The bathymetry is converted into vertical levels using the bath.om file, which contains the old depth as a vertical level (from 1 to 20, 20 being the deepest cell) and the definition of these irregular vertical levels (center and height). The old vertical level is forced for a few problematic grid cells in order to get realistic salinity values in the Mediterranean Sea and Hudson Bay. The vertical level 1 is avoided (either forced to 0 or 2), because the model cannot deal with these very shallow grid cells. As the model also cannot deal with 'isolated' oceanic grid cells for which the last vertical level is isolated (e.g. deep grid cells with shallower neighbours), a procedure similar to a smoothing filter is applied.
  3. The pre-poids program loads the new bathymetry (bath.txt file) and generate two files necessary to the next step. It contains the defgrid.f routine, slightly modified to deal the newly generated 'isolated' cells at the edges (longitudes 2 and 121).
  4. The poids program uses the clio.msk and clio.srf files to compute the interpolation points between the CLIO and the T21 grid (mozaic.w), as well as the fraction of ocean seen by each T21 grid cells (fractoc.dat, aka fort.8). When running this program, kamax = 14 and komax = 17 should be printed.

How to run a PI simulation with the new bathymetry and land-sea mask :

Run with -F -I (-P), using a scenario (pi-etopo1 - commited but outdated) containing :

  • inputdata : fractoc.dat, clio/bath.txt, clio/mozaic.w, clio/bath.om (definition of vertical levels still needed)
  • parameters : run.param, with a BERING_VALUE tuned to get a realistic Bering transport (around 0.8 Sv)
  • sources : defgrid.f (with the right bath.txt name and modification for isolated cells at the edges)

Potential sources of error when running :

  • "no ocean basin defined in x,y" : change the ocbas.dat file in ecbilt_clio/parameters or include a modified one in scenario/inputdata.
  • "error in runoff budget" : set bricole_Caspienne=.false. in ludus-code/lbm/sources/routageEAU.f90.
  • "Albedo out of range" : conflict with alb.dat, comment the LGMSWITCH.EQ.1 condition in landmodel0.f for now.
  • "rain larger than maximum set by rainmax" : you're in trouble, variables are diverging (e.g. due to a non-zero sea ice fraction in a few tropical grid cells - which were formerly land but are now ocean ?). Check if the number of 'isolated' grid cells has fallen to 0 in step 2.
  • NaN : whatever, try a restart.

2. LGM simulations

1.1. Peltier ICE-6G-C

Pre-processing :

The same pre-processing is applied with the following LGM topography, computed with a regridding on the etopo1 grid :

LGM topography = PI (etopo1) + LGM Peltier (ICE-6G-C 21kyr) - PI Peltier (ICE-6G-C 0kyr)

Note : For the LGM, the chosen sea-level (in the land-sea mask program) can either be consistent with Lambeck data (-133.9 m for the LGM) or with the ice sheets reconstructions of Peltier or Tarasov...

How to run :

  1. Create a directory scenario/ with :
    • bath.txt, bath.om, fractoc.dat and mozaic.w in inputdata/
    • defgrid.f in sources/
    • berg.dat and icemask.dat in inputdata/
    • a run.param for the right number of tracers, with BERING_VALUE = 0 in parameters/
    • a modified transfer_ecb_grisli_mod.f90 in sources/
    • the following symbolic link in sources/ : input_GRISLI2L.f90 -> input_GRISLI2L.f90.peltier26k
  1. Set the flags :

LGMSWITCH = 1
F_PALAEO = 3 --> set palaeo_year = 21000 in ludus-code/ecbilt/parameters/palaeo_transient_parameters.dat
ISM = 3

Note : With ISM = 3, the old berg.dat in inputdata/ is overwritten.

  1. Set the symbolic link in ludus-code/ecbilt/inputdata/ : Gano_40k-0k_hemin40.nc -> ICE6G_26k-0k_hemin40.nc
  1. Run with -I -P -F

1.2. Tarasov GLAC-1D

3. Transient simulations

To accomodate restarts with a modified bathymetry (and in the long run an interactive bathymetry for transient simulations), the model has to generate realistic values of the tracers content of new oceanic grid cells. A new module has been commited (clio/sources/update_clio_bathy_tools.f90). The initialization of all the restart variables in new ocean grid cells (in redrunb.f) is now done by either setting 0 or averaging the values in neighbouring oceanic grid cells.

Attachments (3)

Download all attachments as: .zip