This is the main repository for IOW earth-system model project. Here you will find scripts to build, prepare and run the model. The components of this coupled model will have their own repositiories. https://sven-karsten.github.io/iow_esm/intro.html
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Sven Karsten 93ef00a0cf Workaround for distributing fluxes on surface types. 2 years ago
documentation Added documentation. 2 years ago
input Workaround for distributing fluxes on surface types. 2 years ago
local_scripts Enabled updating from local setups directory. 2 years ago
scripts Enable automatic generation of the namcouple file 2 years ago
.gitignore Enabled updating from local setups directory. 2 years ago
DESTINATIONS.example Prepared working with different targets 2 years ago
ORIGINS Updated ORIGINS 2 years ago
Readme.md Enabled updating from local setups directory. 2 years ago
SETUPS.example Enabled deployment of run dependencies. 2 years ago
build.sh Added general run script. 2 years ago
clone_origins.sh Moved clone_origins.sh to top level. 2 years ago
deploy_setups.sh Enabled deployment of run dependencies. 2 years ago
run.sh Enabled updating from local setups directory. 2 years ago

Readme.md

IOW Earth system model

This is the main repository for this project. Further information will follow.

!!!ATTENTION!!! This not yet a working project and cannot be used at the moment

First steps

Prerequisites

Local

Your local machine has to provide:

  • bash
  • configured git instance

If you work on Windows, you can use e.g. Git for Windows which already provides these prerequisites. If yoou work on Linux you will most probably have a bash and you can install git with the package manager of your distribution.

Remote

You need accounts on the target servers, where you want to run the model

Get the component sources

After cloning this repository to your local machine you have to get the component repositories as well. For this purpose there is the bash script local_scripts/clone_origins.sh which uses the file ORIGINS. This file should not be edited and commited unless you really know what you are doing. By executing in the root directory (where this Readme.md is located)

./clone_origins.sh

you clone all individual components which have their own repositories to your local machine. If there will be some you don't need you can later remove them. However, be sure that you can still build and run the model properly.

Configure your destinations (targets)

You will not build (or run) the model on your local computer. Instead you have to specify a destination or a target, where your sources are copied and compiled. This is done a file DESTINATIONS (this name is obligatory). Since this file very user-specific it is not part of the repository and you have to create one. However, there is an example DESTINATIONS.example, please have a look. You see that each line consists of two elements. The first is the keyword for the target. This keyword has to be one of the following

  • haumea
  • phy-2

where

  • haumea is the cluster of the of the Rostock University
  • phy-2 is one of the IOW's physics department computing servers

At the moment there are running build scripts only for these targets. If you want to add more, it will be explained later how this can be done. The second element in a line of DESTINATIONS.example corresponds to the path on the target, where the model will be deployed, built and run. This path corresponds to the root directory where this Readme.md file is located. The path on the target has to already exist. Now it is up to you, to create your own file DESTINATIONS in your local root directory, but do not commit it!

Deploy dependencies for building

???

Build the coupled model for the first time

The components of the copled model cannot be built indepently on each other. For the first build you should probably use the build.sh script in the root directory. If you want to build the model e.g. on the university's cluster, you can run

./build.sh haumea

Deploy dependencies for running (setups)

Configure your setups

In order to run the model, you need input files which define a certain setup. What exactly a setup consits of, you can find out by looking at Available setups. The setups you want to use can be registered in a special file named SETUPS (this name is obligatory), which is in the root directory. Since this file specific for certain users and individual runs of the model it is not part of the repository and you have to create one. However, there is an example SETUPS.example, please have a look. You see that each line consists of two elements. The first is the keyword for the setup. This keyword can be chosen by you almost freely. It should be unique and a single word without spaces and special characters. Importantly, there is one reserved keyword local for a special source of setup. From here you can update specific files of your target's setup during development.

The second element of a line in SETUPS represents the location of this setup. This can be local on your machine or on a remote computer. Be sure that the remote computer knows your targets and can copy files to them.

Available setups

Copy files to target

After creating the file SETUPS you can run in the root directory

./deploy_setup.sh haumea testing

Run the coupled model for the first time

./run.sh haumea

Building during development

Build tagging

LAST_BUILD_haumea