The Harmonie main script
The Harmonie script is the main user interface to the harmonie system. It is used to setup, start, check and control your experiment and environment. Below follows the most useful commands. There are other commands inherited from the HIRLAM environment that may or may not work. For a full list check scr/Start
, scr/Actions
, scr/Actions.pl
.
Harmonie setup [ -r REVISION] [ -h HOST] [ -d DOMAIN] [ -c CONFIGURATION] [ -l LEVELS]
where:REVISION
is the path to the version of harmonie you are working with.HOST
is the name of the host you are working on. There should exist correspondingconfig-sh/config.HOST
.CONFIGURATION
is one of the predefined configurations inscr/Harmonie_testbed.pl
. It a fast way to setup your favourite configuration.DOMAIN
is one of the predefined domains inecf/config_exp.h
LEVELS
is one of the predefined level definitions inscr/Vertical_levels.pl
Harmonie start DTG=YYYYMMDDHH [ DTGEND=YYYYMMDDHH] [ optional environment variables]
launches a cold start run.DTG
is the initial time of your experiment- Several other optional variables can be given like
PLAYFILE=FILENAME
use a different ecflow suite definition file. Default isharmonie.tdf
BUILD=yes|no
to turn on and off compilationCREATE_CLIMATE=yes|no
to turn on and off generation of climate files- Any environment variable that you would like to send to the system.
Harmonie prod
will continue from theDTG
given in yourprogress.log
file. The rest of the arguments is as forHarmonie start
. This should be used to continue and experiment. It is assumed that a first guess file is available and the run will fail if this is not found.Harmonie mon
will restart yourecflow_ui
window and try to connect to an existing ecflow server.Harmonie co [FILE|PATH/FILE]
will copy the request file from the version chosen in your setup ( as pointed out in theconfig-sh/hm_rev
file ) to your local directory. If thePATH
is not given a search will be done. If the name matches several files you will be given a list to choose from.Harmonie install
will build your libraries and binaries but not start any experimentHarmonie testbed
will launch the Harmonie testbedHarmonie diff [--xxdiff]
will look for differences between the revision inconfig-sh/hm_rev
andHM_LIB
.Harmonie CleanUp -ALL -go
will clean the following directories:HM_DATA
,HM_LIB
,HM_EXP
. Instructions fromsrc/Actions.pl
:
# args: if -go: remove, (default is to list but not remove the matching files)
# if -k*: do not do the long term archive HM_EXP - so keep it
# if -d*: combination of -k and -ALL (-d* means: disks)
# if -ALL: treat all files and also (if -go) remove the directories
# a pattern is usually a string without meta-characters. To this
# a * is appended (so e.g. ob will affect all files ob*); this can
# be inhibited by appending ~ (so ob~! translates to ob).
# Also, files in all subdirectories P*_* will be affected
# where P is the pattern [0-9][0-9], This resembles
# a `CYCLEDIR'. So ob will result in 'ob* P*_*/ob*'.
# The pattern P*_* will be prepended to every / in the pattern,
# unless the / is preceded by ~ (which will be removed).
# Hence, to remove e.g. all analyses from 1995, use 1995/an,
# which translates to 1995[0-9][0-9]*_*/an*
# (to be precise: use: CleanUp("REMOVE:1995/an", "-go");