CKO


 

CKO Version of Standard Implementation of MICOM

Version: 2.7 CKO

This version has been tested on an SGI O2 workstation, an SGI Challenge computer, a DEC ALPHA, a Fujitsu VPP700, and a SUN SunFire.

CKO specific modifications are:


Table of Contents


Downloading the Distribution
You can download a 48Mb gzipped tar file from here: micom-2.7-cko.tar.gz. This distribution contains the source code of MICOM 2.7, the user manual, several configuration files, and a climatology dataset consisting of Levitus and COADS data. You can also use a climatology computed from 41 years (1960-2000) of data from the NCEP reanalysis (3Mb). The input dataset read by MICOM is computed from the climatology with a Ferret script. Note that this script requires Ferret version 5.0 or later. You can download a Ferret binary distribution from the Ferret home page.

In order to compile this MICOM version you also need the following libraries:


Installation
First, you should install the NetCDF, udunits, and Fields libraries.

To install the MICOM package you should create a directory MICOM and copy the downloaded file into it. After changing into the MICOM directory you can unpack the tar file with the command

gunzip -c micom-2.7-cko.tar.gz | tar xvf -
Five subdirectories are created: bin contains some scripts and is the location where the MICOM executables will be stored, climatology contains the climatology dataset, config is where the configuration file of MICOM is located, doc contains some documentation, and the source code is stored in source directory.

You can prepare the software package for compilation by typing the command

./configure --with-parameters=SA
This command determines the location of the various commands (compiler, etc.) that are needed to build the MICOM executable. Note that this should be done on the machine on which the executable should run and only needs to be done once on every computer. In the case that the configuration script is not able to determine the location of the NetCDF, udunits, and/or Fields library you should add one or more of the following options to the configure command and run it again: Upon successful completion of the configuration script you can find a makefile and a new subdirectory data.SA in the directory MICOM.

The configure script has several more options. Normally, you won't need to specify any of them. You can obtain a list of all options of the configure script with the command

./configure --help
Building the Executable
After configuration, you can compile the program by typing the following command in the MICOM directory
make install
All object files and executables can be removed by typing
make clean
Running the Model
You can perform a demo run of MICOM by typing the command 'make run' in the MICOM directory. This will first create the input dataset in the directory data.SA using Ferret and then start a short run of the model. Note that the Ferret script will only be executed when the data directory does not contain the input data files. The script displays some graphs of the input data that it creates when you are using the X Window system.

Creating a Custom Configuration
You can configure MICOM with two types of parameters: compile-time parameters and run-time parameters.

Compile-Time Parameters
You can change compile-time parameters by copying the configuration file SA in subdirectory config to a new file and editing this new file. Table 1 below lists and describes these parameters. A brief description of the parameters and their allowed values is also included in the configuration file. Further information is available in the postscipt document doc/user_guide.engl.ps.

Note that after creating a new configuration file or modifying an existing one you should reconfigure and recompile the executable in order for the modifications to take effect. In the case that your configuration file is name NA, and assuming that you have successfully configured MICOM before, you can do this by entering the following commands in the MICOM directory:

configure --with-parameters=NA
make clean
make install

After successful completion of these commands, the executable bin/micom-NA and the subdirectory data.NA will have been created.
 
 

Parameter(s) Valid Value Meaning
Rotated_Mercator_Projection Yes or No This parameter determines whether a rotated Mercator projection is used. Note that the Ferret script that generates the input dataset does not support the rotated grid yet. Therefore, you must set this parameter to 'No' if you want to use this script
Number_of_Rows Integer value >= 1 The number of rows in the domain. In the case of the Mercator projection, the row index increases with decreasing latitude.
Number_of_Columns Integer value >= 1 The number of columns in the domain. In the case of the Mercator projection, the column index increases with increasing longitude.
Mesh_Size Real value > 0.0 The size of the grid cell at the equator in degrees longitude.
Equator_Index Real value The grid row (or column) at which the equator is located. This can be a non-integer number to indicate that the equator falls between two grid rows (or columns). Note that the equator can lay outside
the domain.
Western_Boundary_Longitude Real value >= -180.0 and < 180.0 The longitude of the western boundary of the domain. Negative values mean western longitudes and positive eastern longitudes.
Number_of_Submerged_Segments Integer value >= 1 The largest number of segments of ocean on any grid row or column.
Number_of_Layers Integer value >= 1 The number of isopycnic layers.
Layer_Densities Real values >= 22.0 and <= 28.0 A comma separated list of Number_of_Layer elements specifying the layer densities in sigma units.
Density_Halfway_First_Layer Real value > 0.0 and < first layer density The density halfway between the sea surface and the the first layer. This value is needed by the Ferret script that generates the input dataset. It is used to compute the temperature and salinity at the proper depths.
Baroclinic_Time_Step Real value > Barotropic_Time_Step The baroclinic time step in seconds.
Barotropic_Time_Step Real value > 0.0 and < Baroclinic_Time_Step The barotropic time step in seconds.
Diagnostics_Frequency Real value > 0.0 This parameter specified at the time interval (in days) with which diagnostics are printed to the standard output.
Mixing_Frequency Integer value >=1 The number of time steps between diapycnal mixing calculations.
Base_Value_of_Specific_Volume 2.5 10-2 The base value of specific volume.
Drag_Coefficient 1.3 10-3 The drag coefficient.
Thermal_Transfer_Coefficient 1.2 10-3 The thermal transfer coefficient.
First_Weight_for_U_and_V_Fields,
Second_Weight_for_U_and_V_Fields
0.750,
0.125
The weights for time smoothing of the U and V fields.
First_Weight_for_T_and_S_Fields,
Second_Weight_for_T_and_S_Fields
0.875,
0.0625
The weights for time smoothing of the T and S fields.
Weight_for_Barotropic_Fields 0.125 The weight for time smoothing of the barotropic U, V, and P fields.
Thickness_Diffusion 0.5 Diffusion velocity for thickness diffusion in cm/s.
Momentum_Dissipation 1.0 Diffusion velocity for momentum dissipation in cm/s.
Min_Mixed_Layer_Thickness Real value > 0.0 The minimum thickness of the mixed-layer in meter.
Min_Density_Jump 2.0 10-5 The minimum density jump at the bottom of the mixed-layer in theta-units.
Nonlinear_Viscosity 0.2 Coefficient of nonlinear viscosity.
Diap_Diff_x_Buoy_Freq 6.0 10-3 Diapycnal diffusivity times buoyancy frequency in cm2/s2.
Boundary_Condition Free or Non_Slip The bottom boundary condition.
RMS_Bottom_Flow_Speed 10.0 The root mean square flow speed for the linear bottom friction law in cm/s.
Bottom_Layer_Thickness 9.806 105 The thickness of the bottom boundary layer in pressure units.
Pressure_Gradient_Weight 9.806 105 The depth interval used in lateral weighting of horizontal pressure gradient.
Thermodynamic_Forcing_Functions On or Off This parameter is used to create the initial namelist file parameters in the data directory. It can be changed there without requiring recompilation.
Wind_Stress On or Off This parameter is used to create the initial namelist file parameters in the data directory. It can be changed there without requiring recompilation.
Lateral_Boundary_Nudging On or Off This parameter is used to create the initial namelist file parameters in the data directory. It can be changed there without requiring recompilation.
Lateral_Boundary_Nudging_Width Integer value >= 1 The width of the boundary relaxation (or nudging) area in grid rows and columns.
Surface_Boundary_Nudging On or Off This parameter is used to create the initial namelist file parameters in the data directory. It can be changed there without requiring recompilation.
Row_Index_of_Test_Point Integer value >= 1 and <= Number_of_Rows The row index of the test point.
Column_Index_of_Test_Point Integer value >= 1 and <= Number_of_Columns The column index of the test point.
Name_of_Topology_Data_File Basename of the file (no .nc!) The name of the bathymetry/topography file. It is unlikely that you have to change this filename.

Table 1: The compile-time configuration parameters.

Run-time Parameters
With the run-time parameters you define the length of the model run and output frequency, select the forcing and nudging data to be applied, and choose the data fields that will be written to the history file. You can change these parameters by editing the Fortran namelist file parameters in the data directory that was created for your configuration (in our example, the subdirectory data.NA). A description of the parameters is given in the tables 2 to 4 below. After you have finished editing the parameters, you can start the run as described in Running the Model. Nearly all compile-time parameters can be overriden from the parameters file.

Known Problems
There is one problem in MICOM 2.7 concerning the forcing data. The interpolated forcing has a different mean than those of the climatology as explained by Killworth in J. Phys. Oceanogr., 26, 136-143. A correction can be applied to most forcing data. However, some forcing data (such as layer thicknesses at the domain boundaries) are computed from the climatology. It is not yet clear yet how these data should be corrected.

Support
The CKO version of MICOM is supported at the S1 level (see also the page on support levels). Let me know when you use this software by sending an e-mail to c.severijns@knmi.nl. You can also contact me at this address if you needed further information about MICOM.
 
 

Camiel Severijns

Last modified: Tue Apr 25 14:49:33 CEDT 

Return to the CKO MICOM page