OpenIFS ftp server

OpenIFS is distributed via an ftp service.

The OpenIFS software is held in a password protected ftp server with the username 'openifs'. Users at licensed institutes are provided with the password for this account on request. Please see OpenIFS Licensing for more details or email openifs-support@ecmwf.int.

All OpenIFS supporting anciliary datafiles, test initial files and examples can be found on the "anonymous" ftp server, which does not require a password. You can connect to this ftp server either via your web browser by typing this in the address bar:

Connect to anonymous ftp server via browser...
ftp://ftp.ecmwf.int/pub/openifs

which then displays a list of the files available.

Connect via an ftp client

Connect to anonymous ftp server via ftp...
% ftp anonymous@ftp.ecmwf.int
Connected to ftp-int.ecmwf.int.
220-**************************************************
220-European Centre for Medium-range Weather Forecasts
220-
220- You are connected to the ECMWF User FTP service
220-
220-    All connections and transfers are logged
220 **************************************************                                                                                                                                                           
230 Anonymous user logged in                                                                                                                                                                                     
Remote system type is UNIX.                                                                                                                                                                                      
Using binary mode to transfer files. 

Connect using wget

The wget command can be used to transfer a file directly:

% wget ftp://ftp@ftp.ecmwf.int:/pub/openifs/ifsdata/43r3/name-of-file

Note in this example 'ftp' is used as the 'anonymous' username. Either 'anonymous' or 'ftp' can be used.

Using lftp instead of ftp

If your site or workstation only provides the 'lftp' command rather than 'ftp', proceed as shown below:

Using lftp to download
% lftp ftp.ecmwf.int
lftp ftp.ecmwf.int:~> set ftp:ssl-allow no
lftp ftp.ecmwf.int:~> user openifs
Password: <enter the password 

lftp openifs@ftp.ecmwf.int:/> cd src/openifs/43r3
lftp openifs@ftp.ecmwf.int:/src/openifs/43r3/> get oifs43r3v1.tar.gz
lftp openifs@ftp.ecmwf.int:/src/openifs/43r3/> get md5sum.check
lftp openifs@ftp.ecmwf.int:/src/openifs/43r3/> exit

The 'set ftp:ssl-allow no' command is crucial to allow lftp to work with the ftp server at ECMWF. It disables use of a secure connection.

Remember to use the md5sum command (shown above) to verify the download was correct.

OpenIFS directory layout

The OpenIFS installation consists of (i) OpenIFS source code; (ii) OpenIFS anciliary files (climatologies, radiation tables, vertical coord tables). Both types are provided as gzipped tarfiles.

It's recommended that the OpenIFS anciliary files are stored in a separate directory, typically named 'ifsdata' and not within the model source code. As discussed in the previous section, the ecCodes GRIB library could be stored under a directory called 'ecmwf' available to other users. The ancilliary files could be stored in the same location.

Layout of OpenIFS anciliary files: ifsdata

Download instructions for the anciliary files are below. They are provided as gzipped tarfiles and unpack into the directory structure shown below. 

For OpenIFS version '40r1' the layout is very similar, except 'climate.v015' is called 'climate' (43r3 uses an updated climatology). Do not use the climatology files from 40r1 with 43r3.

Note that the 'ifsdata' directory needs to be created first.

ifsdata_layout

Layout of OpenIFS source files

Download instructions for the OpenIFS source files are below. The gzipped tarfile will unpack into a directory structure shown below (not all sub-directories are shown for brevity).

Other versions of OpenIFS may have different directories and directory names but will be similar to the figure below.

oifs_layout

Download OpenIFS source code

The OpenIFS models' source code are available as compressed tarfiles. Once logged into the ftp site you will see the following directories:

Contents of ftp.ecmwf.intDescription
src/openifs/OpenIFS source code tar files.
src/scm/Single Column model code and files.
src/osm-htessel/Offline Surface Model (HTESSEL) code and files.
Contents of directory src/openifs:Description
src/openifs/43r3/Contains OpenIFS versions based on Cycle 43 Release 3 of the operational IFS.
src/openifs/40r1/

Contains OpenIFS versions based on Cycle 40 Release 1 of the operational IFS.


To obtain the source code from the ftp site, change directory to the '43r3' directory and retrieve the latest source code (the filename may be different):

Using ftp to download
% ftp ftp.ecmwf.int
user: openifs
pass: <enter the password given to you by openifs-support>

cd src/openifs/43r3
ls
get oifs43r3v1.tar.gz
get md5sum.check
quit

Verify download

Download the md5sum.check file to verify the download was correct.

% md5sum --check md5sum.check
oifs43r3v1.tar.gz: OK

Unpack OpenIFS source code

Unpack the gzipped tarfile into a directory:

% tar zxf oifs43r3v1.tar.gz
% ls oifs43r3v1
CHANGES  COPYING  NOTICE  READMEs  examples  make                   src      t21test_xios
CITE     LICENSE  README  bin      fcm       oifs-config.editme.sh  t21test  tools

If your version of the 'tar' command does not support gzipped archives then do it in two stages:

% gzip -d oifs40r1v2.tar.gz
% tar xf oifs40r1v2.tar

Download OpenIFS anciliary data files

The anciliary data files, as well as test-data and examples are available via ftp without the need for a password.

% ftp ftp.ecmwf.int
user: ftp
Anonymous user logged in
> cd pub/openifs/ifsdata

Or enter this address into your browser: ftp://ftp@ftp.ecmwf.int/pub/openifs/ifsdata. Files can then be downloaded directly from the browser.

Directory:Description
pub/openifs/ifsdata/43r3/Contains data files for versions of OpenIFS 43r3.
Note that the files for 43r3 are split into different resolutions unlike 40r1. Only download the resolutions you plan to work with as these files can be large.
pub/openifs/ifsdata/40r1/Contains data files for versions of OpenIFS 40r1.

These files are the same for all OpenIFS experiments. To save space for multiple users, it's recommended they are placed somewhere central and not copied to each user run directory. The sample job scripts provided assume that links are created from these files to the user run directory.

We suggest creating a directory ifsdata somewhere and unpacking the files there.

FilenameSizeDescription
<version>/ifsdata_climatology_<version>.tgz15Mb

Contains the various long-lived gases and aerosol climatologies used by the model.e.g. files C11CLIM, MCICA, etc.

Unpacks into a directory called <version>/ifsdata.

<version>/ifsdata_<version>_climate*_<res>.tgzvaries

Contains ozone climatology for all supported horizontal and vertical resolutions, including full and reduced Gaussian grid versions.

Note the 43r3 files are split into grid types, unlike 40r1. If you intend to work with cubic grids and linear grids, make sure you download both files for each resolution you plan to use.

Unpacks into a directory: <version>/climate/<resolution><grid_type>.

These contain data split one file per horizontal resolution with a suffix that corresponds to the type of model grid. For example '40r1/climate/159l_2', would correspond to the OpenIFS 40r1 model release, with a T159 linear grid. For further explanation of the model grid types, please see the user guide section on grid resolution.

To save space, it's recommended you download just the resolutions you intend working with, as the higher resolution files are large.

<version>/ifsdata_rtables_<version>.tgz<1Mb

Contains namelists defining the supported grid resolutions for the radiation scheme. File name suffix refers to the type of grid and last 3 digits refers to the horizontal resolution.

Unpacks to a directory: <version>/rtables

<version>/ifsdata_vtables_<version>.tgz<1Mb

Contains namelists defining the coefficients for the supported vertical resolutions. File name suffix refers to the number of levels.

Unpacks to a directory: <version>/vtables.

<version>/ifsdata_namelist_<version>.tgz<1Mb

Contains the full model namelist set for this OpenIFS version.

Unpacks to a directory: <version>/namelist.

Example session to download anciliary files for OpenIFS 43r3...
% mkdir oifs/ifsdata
% cd oifs/ifsdata

% ftp ftp.ecmwf.int
Connected to ftp.ecmwf.int.
Name (ftp.ecmwf.int): ftp
User anonymous logged in.
ftp> cd data/43r3
ftp> prompt
ftp> get md5sum.check
ftp> mget ifsdata*43r3.tgz
ftp> mget ifsdata*_159*.tgz
ftp> mget ifsdata*_255*.tgz
ftp> mget ifsdata*_319*.tgz
ftp> quit
Example session using wget ...
% wget ftp://ftp@ftp.ecmwf.int/pub/openifs/ifsdata/43r3/md5sum.check
% wget ftp://ftp@ftp.ecmwf.int/pub/openifs/ifsdata/43r3/ifsdata_*_43r3.tgz
% wget ftp://ftp@ftp.ecmwf.int/pub/openifs/ifsdata/43r3/ifsdata_cy43r3_*_159*.tgz
% wget ftp://ftp@ftp.ecmwf.int/pub/openifs/ifsdata/43r3/ifsdata_cy43r3_*_255*.tgz
% wget ftp://ftp@ftp.ecmwf.int/pub/openifs/ifsdata/43r3/ifsdata_cy43r3_*_319*.tgz

Make sure you check the downloads are correct by using the md5sum command.

Once downloaded, unpack the files:

% md5sum --check md5sum.check      # note this will report on missing files, but check those downloaded are ok.
% for ff in *.tgz; do tar zxf $ff; done
% ls 43r3
climate.v015  ifsdata  namelist  rtables  vtables
% ls 43r3/climate.v015
159_3  159_4  159l_2  21_full  255_3  255_4  255l_2  

Make sure you download both grid types for each resolution. e.g. ifsdata_cy43r3_climate.v015_159.tgz (cubic grids) and  ifsdata_cy43r3_climate.v015_159l.tgz (linear/full grids) if you intend working with both grid types. For more information about OpenIFS model grids, see: Grids.


Example session to download anciliary files for OpenIFS 40r1...
% mkdir oifs/ifsdata
% cd oifs/ifsdata

% ftp ftp.ecmwf.int
Connected to ftp.ecmwf.int.
Name (ftp.ecmwf.int): openifs
331 User openifs OK. Password required
ftp> cd data/40r1
ftp> prompt
ftp> mget ifsdata_*.tgz
ftp> quit

% for ff in *.tgz; do tar zxf $ff; done

There is no md5sum.check file available for 40r1 files.

OpenIFS 40r1 expects the vtables and rtables directories to be at the same directory level as the 40r1 directory. This was changed in later versions of OpenIFS.

To allow for this, make links from the 'oifs/ifsdata' created above:

% cd oifs/ifsdata
% ln -s 40r1/vtables vtables
% ln -s 40r1/rtables rtables

% ls
40r1  vtables  rtables