Swapping ORCA025 for ORCA1 II

Introduction

Since the last webpage on swapping an ORCA025 ocean for a ORCA1 ocean, the UM has moved to split app, so that the ocean details are no longer entwined with the atmosphere - which should make swapping the ocean much easier.

On this page, I'm trying to change the ocean in Dan's GC3.1 on XCS, u-ah981, to ORCA1 for job u-ai082 at UM10.6. For UM10.7, I'm doing the same from Dan's job u-ak896, and I'm showing those changes - where they are differences - in bold. My new job is u-al035.

A big difference between Dan's GC3.1 configuration for UM10.7 compared to UM10.6 is that they've moved from 20 minute ocean timestep to a 15 minute timestep. Apparently, this is because the 4*CO2 crashed with the 20 minute timestep.

Changes in rose-suite.conf

  • CICE_BLKX: 80->40
  • CICE_BLKY: 47->42
  • CICE_COL: 1440->360
  • CICE_ROW: 1205->330
  • NEMO_IPROC: 18->9
  • NEMO_JPROC: 26->8
  • XIOS_NPROC: 6->0

Changes in app/install_ancil/rose-app.conf

  • For nemo_ancils_gl, /data/d00/moci/GC3/ancil_versions/GC3_orca025/GC3.0_nemo_ancils_v7 -> /data/d02/frrh/cpl_ancil_test01/NEMO_ancils_N96_eORCA1_GC3.0_UM10.4. This is now /projects/ocean/nemo/ocean_ancil_versions/GC3.1_eORCA1v2.2x_nemo_ancils
  • For um_ancils_gl, /data/d00/moci/GC3/ancil_versions/GC3.1_n96_orca025/ancils_v1 -> /data/d02/frrh/cpl_ancil_test01/UM_ancils_N96_eORCA1_GC3.0_UM10.4. This is now fcm:ancil_data.xm_br/dev/alistairsellar/r3572_ga7.1_ancil_versions/ancil_versions/n96e_orca1/GA7.1/v1/ancils@3906

Changing app/coupled/rose-app.conf

I didn't document any changes to this for UM10.6, but for UM10.7 I've changed the following

  • RMP_DIR: /projects/ocean/hadgem3/grids/remapping/N96eg_eORCA025_GO6.1_v3 -> /data/d05/hadom/remapping/N96eg_eORCA1_v2.2x_SCRIP
  • Removed xios from 'models' (because we're running XIOS in attached model)

Changing app/coupled/file/namcouple

I've taken namcouple from Till's u-ag895, but I've also had to make some changes in line with the current GC3 setup

  • remove the SSTFRZ field
  • renumber the Greenland and Antartica ice sheet fields

Now, I'm taking the namcouple file from my latest job, u-ak775

Changes in app/nemo_cice/rose-app.conf

  • ADDING
    [file:ahmcoef.nc]
    mode=symlink
    source=$AHMCOEF
    
    It looks like this file provides the 3d eddy viscosity coefficient - so probably linked to the nemo CPP change from key_dynldf_c2d to key_dynldf_c3d (see later)
  • ADDING
    [file:geothermal_weights.nc]
    mode=symlink
    source=$GEOTH_WEIGHTS
    
  • REMOVE THE ENTRY FOR [file:iceshelf_melting.nc]. In namelist namsbc_isf (see below), we swap iceshelf_melting.nc for the file directly below, runoff_1m_nomask.nc.
  • ADD
    [file:runoff_1m_nomask.nc]
    mode=symlink
    source=$RUNOFF
    
  • ADD cn_dir AND sn_qgh arguments to [namelist:nambbc] so it looks like
    [namelist:nambbc]
    cn_dir='./'
    ln_trabbc=.true.
    nn_geoflx=2
    !!rn_geoflx_cst=86.4e-3
    sn_qgh='geothermal_heating.nc',-12,'gh_flux',.false.,.true.,
          ='yearly','geothermal_weights.nc','',
    
    We no longer have a geothermal weights file, so this now becomes
    cn_dir='./'
    ln_trabbc=.true.
    nn_geoflx=2
    !!rn_geoflx_cst=86.4e-3
    sn_qgh='geothermal_heating.nc',-12,'gh_flux',.false.,.true.,
          ='yearly','','',
    
    where the variables cn_dir and sn_qgh are the ones different to Dan's ORCA025 configuration. Do we need them? (Also when following Malcolm's changes for the geothermal weights, I removed the options ln_tsd_init and ln_tsd_tradmp from namelist namtsd. I'm not sure this was necessary, so I'll stick with Dan's setting for namelist namtsd for now.)
  • REPLACE
    [namelist:namcfg]
    cp_cfg='orca'
    jp_cfg=25
    jperio=4
    jpidta=1442
    jpiglo=1442
    jpjdta=1207
    jpjglo=1207
    jpkdta=75
    
    WITH
    [namelist:namcfg]
    cp_cfg='orca'
    jp_cfg=1
    jperio=6
    jpidta=362
    jpiglo=362
    jpjdta=332
    jpjglo=332
    jpkdta=75
    
  • FOR NAMELIST [namelist:namsbc_isf] REPLACE 'iceshelf_melting' WITH 'runoff_1m_nomask'

Changes in rose gui

  • ->coupled
    • ->env
      • ->RMP_DIR: CHANGE /projects/ocean/hadgem3/grids/remapping/N96eg_eORCA025_GO6.1_v3 FOR /projects/ocean/hadgem3/grids/remapping/N96e_eORCA1_GO6.1
      This is now /data/d05/hadom/remapping/N96eg_eORCA1_v2.2x_SCRIP and I also need to remove xios from variable `models' in this app
  • ->fcm_make_ocean
    • ->env
      • ->NEMO sources
        • nemo_sources: I'VE UPDATED GO6 PACKAGE BRANCH FROM REVISION 7197 TO 7206 (7197 CONTAINS AGE OF TRACER AND WON'T ALLOW THE INCLUSION OF MEDUSA)
      • ->Pre-processing
        • ->keys_nemo_app
          • CHANGE key_dynldf_c2d->key_dynldf_c3d (Accoring to Tim, in ORCA1 we need a 3d diffusion coefficient, which isn't constant with depth)
          • ADD key_traldf_eiv
          • ADD key_orca_r1=75
          • According to Tim, for CMIP6 we also need key_diarr5, key_diahth and key_diaeiv
  • ->fcm_make_um
    • ->env
      • ->Sources
        • ->um_sources
          • SWAP branches/dev/dancopsey/vn10.6_add_resolution_namcouple@29787 FOR branches/dev/marcstringer/vn10.6_ukesm_submit_pkg. We've moved to drivers, so these are not needed but I should add branches/dev/marcstringer/vn10.7_oasis3_geto2a_warn_bug
  • ->nemo_cice
    • ->Restart files
      • CICE restart file: $CICE_INIT -> /data/d02/frrh/cpl_ancil_test01/mi-ao258i.restart.1948-09-01-00000.nc This is now /data/d05/hadom/startdumps/u-aj572i.restart.1977-01-01-00000.nc
    • ->namelist
      • ->NEMO namelist
        • ->Run Settings (namrun)
          • ->nn_stock (Frequency of creation of restart file in time steps): 720->320 (IT SHOULD BE EVERY 10 DAYS) Now nn_stock: 2880->960 (Looks like ORCA025 has moved from 20 min timestep to 15 min timestep and output every month, rather than every 10 days)
          • ->nn_write (Frequency of write in output files in time steps): 720->320 (IT SHOULD BE EVERY 10 DAYS) Now nn_write:960->320 (10 days), although I don't think this option is used if XIOS is being used, which it is
          • ->Climatology files (namtsd)
            • ->sn_tem (information about file containing Temperature data):
              • 3RD ARGUMENT (variable name): votemper -> temperature
            • ->sn_sal (information about file containing Salinity data):
              • 3RD ARGUMENT (variable name): vosaline -> salinity
            These are already `temperature' and `salinity' for Dan's UM10.7 version'
        • ->Tracer options (namtra)
          • ->Lateral Diffusion of Tracers (namtra_ldf)
            • ->rn_aeiv_0 (Eddy induced velocity coefficient): 0.0 -> 1000.0
            • ->rn_aht_0 (Constant lateral eddy diffusivity for tracers): 150.0->1000.0
        • ->Domain
          • ->Space and Tim Domain (namdom)
            • rn_rdt (Timesteps for dynamics): 1200.0 -> 2700.0 Now rn_rdt: 900.0 -> 2700.0
        • ->Surface Boundary Conditions (namsbc)
          • ->Iceberg settings (namberg)
            • ->nn_sample_rate (Timesteps between sampling for trajectory storage): 72->32 (Looks to be day - a change chosen by me). Now: 96->32
        • ->Dynamics options (namdyn)
          • ->Lateral Diffusion (namdyn_ldf)
            • ->ln_dynldf_lap (Laplacian Operator): false -> true
            • ->ln_dynldf_bilap (Bilaplacian Operator): true -> false
            • ->rn_ahm_0_lap (Horizontal laplacian eddy visocity): SET TO 20000.0
      • ->CICE namelist
        • ->domain_nml
          • ->ns_boundary_type:'tripoleT'->'tripole'
        • ->setup_nml
          • ->diagfreq: 2160->960 (LOOKS TO ME LIKE A MONTH OF TIMESTEPS). Now diagfreq: 2880->960
          • ->dt: 1200.0 -> 2700.0 (TIMESTEP IN SECONDS) Now dt: 900.0-> 2700.0
          • ->histfreq: 'd','h','x','x','x' -> 'd','x','x','x','x' (I've went back to original setup before, and I'm sticking with this at UM10.7)
          • ->histfreq_n: 10,24,1,1,1 -> 10,1,1,1,1 (I've went back to original setup before, and I'm sticking with this at UM10.7)
  • ->um
    • ->namelist
      • ->Coupling
        • ->Main coupling controls
          • oasis_couple_freq_ao: 1,0 -> 3,0
          • oasis_couple_freq_oa: 1,0 -> 3,0
    • ->Model Input and Output
      • ->STASH Requests and Profiles
        • ->Time Profiles
          • ->tcoupmn_*
            • ->intv (Specify the Time interval for processing): 1->3
            • ->istr (Start time of diag output): 1->3
            • ->ifre (Frequency of diag output): 1->3
    • ->JULES Science Settings
      • ->JULES sea and sea-ice options
        • ->albsnowv_cice: 0.98 -> 0.96 (Tunning to improve Artic ice thickness)
        • ->albsnowi_cice: 0.70 -> 0.68 (Tunning to improve Artic ice thickness)

Changes to XIOS files

To run XIOS2 in attached mode (XIOS_NPROC=0), `using server' in iodef.xml needs changing from true to false.

Changes to app/postproc/rose-app.conf

At UM10.6, I made these changes after this webpage was written and never documented them. I'm now added the changes for our UM10.7 setup.

  • In [namelist:archiving]
    • arch_year_month: December -> January
  • In [namelist:cicepostproc]
    • archive_timestamps=12-01 -> 01-01
    • chunking_arguments=time/1,nc/1,ni/288,nj/204 -> time/1,nc/1,ni/72,nj/51. WHY THIS SIZE? CICE grid at ORCA025 is (1440,1205) and 5*288=1440=CICE_COL and 6*204=1224, which isn't much bigger than CICE_ROW=1205. CICE grid at ORCA1 is (360,330) and 5*72=360=CICE_COL and 6*51=306=the-old-CICE_ROW I think - so 55 might be better. I've since spoken with Dan, who said they just experimented with `nccopy -d -c' to see what gave the best compression. For u-al088, I've just picked what I think are sensible values which are `time/1,nc/1,ni/180,nj/165'.
  • In [namelist:nemopostproc]
    • arch_year_month: December -> January
    • chunking_arguments=time_counter/1,y/205,x/289 -> time_counter/1,y/55,x/1. For u-al088, I've gone for `time_counter/1,y/166,x/181'
    • means_to_archive: NOTHING -> 1d
    • rebuild_timestamps: "12-01" -> 01-01