Skip to content

nansencenter/NERSC-HYCOM-CICE

Repository files navigation

[TOC]

Description

This repository contains the source code necessary to run the coupled HYCOM-CICE model developed at NERSC. In the repository you will find the HYCOM and CICE source codes, utility routines, and a directory containing a simple model setup (Directory TP0a1.00). Below is a short description of how to set up and compile the code

NB: Throughout this documentation there will be references to $NHCROOT, Experiment directory, Region directory, etc etc. A Brief explanation of these concepts can be found in doc/Naming.md.

  • Anew release is created from develop branch and merged with master on 15-11-2019*

Prerequisites

The following tools are necessary

Retrieving HYCOM-CICE

Clone code from main repository

git clone https://github.com/nansencenter/NERSC-HYCOM-CICE

If you get errors about server certificates, see here

HYCOM-CICE directory structure

The following structure is relative to the checked out code ($NHCROOT)

├── bin                 # Location of binaries and python routines
├── cice                # Location of CICE code
├── doc                 # Documentation in markdown format
├── hycom               # Location of hycom code and utilities
│   ├── hycom_ALL       # Location of setup/diag routines 
│   ├── MSCPROGS        # Location of setup/diag routines  developed at NERSC
│   └── RELO            # Location of hycom source code
├── input               # Location of some input files 
├──  TP0a1.00           # Location of "Reference experiment"
├──  TP5a0.06           # Location of "Reference experiment for TOPAZ5 system"
└──  NMOa0.08           # Location of "Reference experiment for nesting 
                        # from NEMO for TOPAZ5 system"

Compiling HYCOM-CICE support programs

Compiling HYCOM-CICE

Before you attempt this, make sure that the HYCOM-CICE support programs are compiled, that the MSCPROGS programs are compiled, and that you have the other prerequisites described above. The compilation is handled by the script compile_model.sh in NHCROOT/bin, and is described in ./doc/HYCOM-CICE-compilation.md

Compiling HYCOM alone from the HYCOM-CICE model

HYCOM model can be decoupled from the HYCOM-CICE model by setting the "iceflg", flag in the "blkdat.input", to zero. If "iceflg" is non-zero, the model compiles and links both HYCOM and CICE models to generate the hycom-cice executable. If "iceflg" is zero the hycom-cice executable is generated by compiling only the HYCOM model (not using ESMF and CICE through to compile/linkng. note that we have changed name of executable from hycom to hycom-cice).