From bdd08a8563e92dfe7893d3d82076a5e1d9043a84 Mon Sep 17 00:00:00 2001
From: Gildas Cambon <gildas.cambon@ird.fr>
Date: Fri, 5 Apr 2024 23:09:06 +0200
Subject: [PATCH] Squashed commit of the following:

commit 0f718ee9950256e3496583a2247e9e4c057c53e0
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Fri Apr 5 17:22:53 2024 +0200

    Update the CHANGELOG.md for croco_tools

commit f3fa5a22870dc9d63024a7af2c8d993b78adf078
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Thu Apr 4 19:59:02 2024 +0200

    cosmetics for CHANGELOG.md

commit 7f6b1cca5ff2d7d2594a5a22806d21d9a3f5764a
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Thu Apr 4 19:49:24 2024 +0200

    Add CHANGELOG file for release / No more hindcast runs / No more quick forecast plot

commit b7e5f15a0fb3daaa68886985d6bf42adbc581e67
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Wed Apr 3 07:51:45 2024 +0200

    Fix forecast plots in case of onerun=0

commit ad08ec1e78a990d5cb7abc96051c4213c265fcf1
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Tue Apr 2 18:33:03 2024 +0200

    Some correction in cse of iteration of hindcast
    Some correction for plotting

commit caabe214282b58dfd2872c36ef32f263ba14f85e
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Tue Apr 2 18:41:32 2024 +0200

    Modif of Copernicus Documentation

commit fe38bfb55b7d313562ffe9ab05082b8e95f70527
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Fri Mar 29 20:07:51 2024 +0100

    Fix to load export_fig

commit 0c93881ef50a25c1ffc430575a57278798cd9b47
Merge: 44a1f9f9 90f28f25
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Fri Mar 29 15:53:46 2024 +0100

    Merge branch 'hotfix_dev_newcopernicus' into dev_newcopernicus

commit 90f28f2562915abe31737d2537cc9a6391766b75
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Fri Mar 29 15:46:42 2024 +0100

    Some cleaning and update on plotting scripts

commit 4742b2c20ce4bc3d1fc64f1d75dd124a71ccb337
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Fri Mar 29 13:54:37 2024 +0100

    Squashed commit of the following:

    commit 44a1f9f9a39ee7737a3f4a1450e1fe4880cbc2e8
    Author: gmorvan <guillaume.morvan@ird.fr>
    Date:   Fri Mar 29 12:27:04 2024 +0100

        Tipos / plot forecast fix

commit 44a1f9f9a39ee7737a3f4a1450e1fe4880cbc2e8
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Fri Mar 29 12:27:04 2024 +0100

    Tipos / plot forecast fix

commit 37761ede3ed5ba71b2f1f49cb22844b99c27cb11
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Fri Mar 29 12:19:11 2024 +0100

    Small update

commit 6c1d09a9b45ab04a1ca4ca8d1d76859382c47516
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Thu Mar 28 19:19:11 2024 +0100

    Some update and typos

commit e15ef6bb009114a2c09bdf96a65785efe9bafde2
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Thu Mar 28 18:06:20 2024 +0100

    Update crocotools_param

commit 928c1fa11e6947ae6728d493009e76a72cc8258e
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Thu Mar 28 17:26:05 2024 +0100

    Modif Doc Copernicus

commit 9d39da47ea0c1d7ba74933be9af421d92d05c59b
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Thu Mar 28 17:22:51 2024 +0100

    Tipos / modif depth forecast for mercator

commit 64332e4f15eafaa1b0ee65501bdf5b13b93186d2
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Wed Mar 27 18:07:49 2024 +0100

    Remove IFS forecast for now...

commit 8c0c9a68ffcc4c1aef4dba1516e2597a3db909a8
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Wed Mar 27 17:58:20 2024 +0100

    Add ERA5_parallel_request.py:
    Parallelization of the ERA5 request to speed-up the process

commit 814582374cfd153e50dc6ccc894ea23eb0df3839
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Mon Mar 25 12:15:15 2024 +0100

    Cleaning forecast scripts (mercator/GFS) / IFS forecast now available (transfer by wget/ conversion to nc by cdo) with make_IFS.m

commit 26798499f6e724a1dfce58d7c2cc6ef6b81356a8
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Tue Mar 19 17:53:18 2024 +0100

    Squashed commit of the following:

    commit a861c34ba628960b28e3a1abf6b85de0490a0348
    Author: Gildas Cambon <gildas.cambon@ird.fr>
    Date:   Tue Mar 19 17:11:51 2024 +0100

        Refactorisation : use of write_mercator_multi.m
        instead of write_mercator_frcst.m

    commit 747149f7e7d7b5e4bd915131ea68befede046f0d
    Author: Gildas Cambon <gildas.cambon@ird.fr>
    Date:   Tue Mar 19 15:18:50 2024 +0100

        Cleaning

    commit 0dc67715d969213a2de3e622a58bdc896bf51337
    Author: Gildas Cambon <gildas.cambon@ird.fr>
    Date:   Tue Mar 19 14:29:18 2024 +0100

        Update in download_mercator_frcst_python

    commit f5c9aaddbe16247974cfb86e6e77f6b157da8e6f
    Author: Gildas Cambon <gildas.cambon@ird.fr>
    Date:   Mon Mar 18 14:33:52 2024 +0100

        Cleaning in make_OGCM_frcst
            - Rename make_OGCM_frcst.m  in make_OGCM_mercator_frcst.m
            - some simplifications

    commit 90a6ebc1eed360a8bfc2a6c113d5cf7b875d0c75
    Author: Gildas Cambon <gildas.cambon@ird.fr>
    Date:   Mon Mar 18 14:20:30 2024 +0100

        Remove ECCO product from Forecast_tools

    commit 5040ce6c0d8704afbd0121f9efd8e56cf234dee2
    Author: Gildas Cambon <gildas.cambon@ird.fr>
    Date:   Mon Mar 18 14:17:33 2024 +0100

        Remove original file "raw_mercator_name" after download

    commit a1fae6b97390dcb8d50e16748e6e7a5e69313eed
    Author: Gildas Cambon <gildas.cambon@ird.fr>
    Date:   Mon Mar 18 14:11:52 2024 +0100

        Remove downloading of taux/tauy in extract_SODA

    commit 76fc422ba040321ff42400ddcfe12fc58197f9eb
    Author: Gildas Cambon <gildas.cambon@ird.fr>
    Date:   Mon Mar 18 14:04:31 2024 +0100

        In Preprocessing_tools, during geostrophic calculation,
        add the Ekman transport only of forcing file (containing wind strss) exists

commit 37e88f210a8ab69f35404957cd2fb3f6cac019ce
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Mon Mar 18 19:42:07 2024 +0100

    Add WKB based on ERA5 waves - Time management on Forecast tools - Scripts for forecasts - script for download Glorys - Cleaning

commit 9816b9c63463db135e5fe02527749c2d2e539264
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Thu Mar 14 16:12:25 2024 +0100

    Cleaning in interanual oceanic reanalysis preprocessing
    - remove ECCO reference
    - remove duplicated routines

commit dd582f17d02593f4bfabaf8215612c519ae8bc5d
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Thu Mar 14 15:37:47 2024 +0100

    Remove wrong check for lonp_parent
    fixe issues #15

commit b2b67bf3231209ee98a77839b0c94712606ea023
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Thu Mar 14 15:25:55 2024 +0100

    Update in variable name for vertical coodinate :
    sc_r, sc_w, Cs_r and Cs_rho are changed to s_rho, s_w, Cs_rho and Cs_w  to be consistent with croco outputs.
    It should not have side effect.
    Change are in Preprocessing_tools/ and Nesting_tools/

commit 6762c94b96c03941bb4f346dfa6bc69066982b23
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Thu Mar 14 11:36:05 2024 +0100

    Still some typos

commit 5e5161fb3c90b54a484b0e2a53ffee78a7745827
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Tue Mar 12 13:22:54 2024 +0100

    Clean and tipos

commit 9be27745408c68b9818f4099847bee4725472b58
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Thu Mar 7 18:40:56 2024 +0100

    Fix for ERA5 waves preprocessing

commit 79ed182eeefe9d4612232f0125839cacedb3afe3
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Thu Mar 7 18:30:17 2024 +0100

    Add some tipos, client installation instructions

commit 00fb04ac20748ba2fe851d42ee6921f00f47964b
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Thu Mar 7 13:48:37 2024 +0100

    Add environment file for CMT installation

commit e5d121cc3a170f8838a68ca47224e42611d2d75a
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Thu Mar 7 13:40:10 2024 +0100

    Cleaning Forecasts_tools with mercator products / typos

commit 28d928a9360af12f7776a77679dbee62993dbbfa
Author: gmorvan <guillaume.morvan@ird.fr>
Date:   Thu Feb 29 09:48:40 2024 +0100

    Set of changes to deal with copernicus marine client / clean Forecasts_tools / typos

commit b3be7236942de70a4f4420617f0941ccb26d3ac6
Author: Gildas Cambon <gildas.cambon@ird.fr>
Date:   Fri Feb 23 17:57:53 2024 +0100

    First commits for the dev_newcopernicus branch
---
 Aforc_ERA5/ERA5_parallel_request.py           | 211 ++++
 Aforc_ERA5/era5_crocotools_param.py           |   1 -
 Aforc_ERA5/era5_crocotools_param_my.py        |  86 ++
 Aforc_ERA5/interp_ERA5.m                      |   4 +-
 Aforc_ERA5/make_ERA5.m                        |  25 +-
 Aforc_ERA5/make_bry_wkb_ERA5.m                | 190 ++++
 CHANGELOG.md                                  |  42 +-
 Coupling_tools/CROCO/prepro_soda.m            |   2 +-
 .../copernicusmarine_env.yml                  |   8 +
 Forecast_tools/ForecastCharts.pdf             | Bin 415044 -> 0 bytes
 Forecast_tools/download_ECCO_frcst.m          | 173 ----
 Forecast_tools/download_GFS.m                 |   6 +-
 Forecast_tools/download_mercator_frcst.m      | 187 ----
 .../download_mercator_frcst_python.m          | 159 ++-
 Forecast_tools/extract_ECCO_frcst.m           | 115 ---
 Forecast_tools/extract_mercator_frcst.m       | 116 ---
 Forecast_tools/get_GFS.m                      |  27 +-
 Forecast_tools/iteration.m                    |  26 -
 Forecast_tools/make_GFS.m                     |  24 +-
 ...GCM_frcst.m => make_OGCM_mercator_frcst.m} | 178 ++--
 Forecast_tools/make_forecast.m                | 176 ++--
 Forecast_tools/motuclient-python/LICENSE      | 165 ----
 Forecast_tools/motuclient-python/MANIFEST.in  |   8 -
 Forecast_tools/motuclient-python/README.md    | 334 -------
 .../motuclient-python/motu-client.py          |  28 -
 .../motuclient-python/motu_utils/__init__.py  |   0
 .../motuclient-python/motu_utils/cfg/log.ini  |  24 -
 .../motu_utils/cfg/messages.properties        |  17 -
 .../motuclient-python/motu_utils/motu_api.py  | 652 -------------
 .../motu_utils/pom_version.py                 |  25 -
 .../motu_utils/stop_watch.py                  | 107 ---
 .../motuclient-python/motu_utils/utils_cas.py | 152 ---
 .../motu_utils/utils_collection.py            | 110 ---
 .../motu_utils/utils_configpath.py            |  20 -
 .../motu_utils/utils_html.py                  |  48 -
 .../motu_utils/utils_http.py                  | 181 ----
 .../motuclient-python/motu_utils/utils_log.py |  94 --
 .../motu_utils/utils_messages.py              |  74 --
 .../motu_utils/utils_stream.py                |  66 --
 .../motu_utils/utils_unit.py                  |  47 -
 .../motuclient-python/motuclient.py           | 329 -------
 Forecast_tools/motuclient-python/pom.xml      |  83 --
 Forecast_tools/motuclient-python/setup.cfg    |   2 -
 Forecast_tools/motuclient-python/setup.py     |  61 --
 Forecast_tools/plot_forecast_croco.m          | 904 +++++++++---------
 Forecast_tools/plot_quick_forecast.m          | 334 -------
 Nesting_tools/create_nestedclim.m             |  44 +-
 Nesting_tools/create_nestedinitial.m          |  44 +-
 Nesting_tools/create_nestedrestart.m          |   6 +-
 Nesting_tools/nested_grid.m                   |   2 -
 .../Copernicus_Marine_Toolbox_installation.md |  74 ++
 Oforc_OGCM/README                             |  24 -
 Oforc_OGCM/README.md                          |  20 +
 Oforc_OGCM/README.md.bck                      |  20 +
 Oforc_OGCM/create_OGCM.m                      |  16 +
 Oforc_OGCM/create_SODA.m                      | 199 ----
 Oforc_OGCM/download_ECCO.m                    | 102 --
 Oforc_OGCM/download_glorys_data.sh            |  59 +-
 Oforc_OGCM/download_mercator_python.m         |  94 +-
 Oforc_OGCM/extract_ECCO.m                     | 172 ----
 Oforc_OGCM/extract_SODA.m                     |  65 +-
 Oforc_OGCM/extract_mercator.m                 | 212 ----
 Oforc_OGCM/get_ECCO_subgrid.m                 | 138 ---
 Oforc_OGCM/get_file_python_mercator.m         | 140 +--
 Oforc_OGCM/get_filename_ECCO.m                |  24 -
 Oforc_OGCM/{make_OGCM.m => make_OGCM_SODA.m}  |  34 +-
 Oforc_OGCM/make_OGCM_mercator.m               |  27 +-
 Oforc_OGCM/prepro_soda.m                      |   2 +-
 Oforc_OGCM/write_mercator.m                   |  21 +-
 .../write_mercator_multi.m                    |  90 +-
 Preprocessing_tools/create_bryfile.m          |  76 +-
 Preprocessing_tools/create_climfile.m         |  88 +-
 Preprocessing_tools/create_inifile.m          |  34 +-
 Preprocessing_tools/geost_currents.m          |   4 +-
 Preprocessing_tools/geost_currents_bry.m      |   4 +-
 Preprocessing_tools/make_config.m             |   2 +-
 UTILITIES/export_fig/.ignore/ghostscript.txt  |   1 +
 UTILITIES/export_fig/.ignore/gs_font_path.txt |   1 +
 crocotools_param.m                            | 157 +--
 start.m                                       |   1 +
 80 files changed, 1917 insertions(+), 5701 deletions(-)
 create mode 100644 Aforc_ERA5/ERA5_parallel_request.py
 create mode 100644 Aforc_ERA5/era5_crocotools_param_my.py
 create mode 100644 Aforc_ERA5/make_bry_wkb_ERA5.m
 create mode 100644 Forecast_tools/CopernicusMarineToolbox/copernicusmarine_env.yml
 delete mode 100644 Forecast_tools/ForecastCharts.pdf
 delete mode 100644 Forecast_tools/download_ECCO_frcst.m
 delete mode 100644 Forecast_tools/download_mercator_frcst.m
 delete mode 100644 Forecast_tools/extract_ECCO_frcst.m
 delete mode 100644 Forecast_tools/extract_mercator_frcst.m
 delete mode 100644 Forecast_tools/iteration.m
 rename Forecast_tools/{make_OGCM_frcst.m => make_OGCM_mercator_frcst.m} (57%)
 delete mode 100755 Forecast_tools/motuclient-python/LICENSE
 delete mode 100755 Forecast_tools/motuclient-python/MANIFEST.in
 delete mode 100755 Forecast_tools/motuclient-python/README.md
 delete mode 100755 Forecast_tools/motuclient-python/motu-client.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/__init__.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/cfg/log.ini
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/cfg/messages.properties
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/motu_api.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/pom_version.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/stop_watch.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/utils_cas.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/utils_collection.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/utils_configpath.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/utils_html.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/utils_http.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/utils_log.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/utils_messages.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/utils_stream.py
 delete mode 100755 Forecast_tools/motuclient-python/motu_utils/utils_unit.py
 delete mode 100755 Forecast_tools/motuclient-python/motuclient.py
 delete mode 100755 Forecast_tools/motuclient-python/pom.xml
 delete mode 100755 Forecast_tools/motuclient-python/setup.cfg
 delete mode 100755 Forecast_tools/motuclient-python/setup.py
 delete mode 100644 Forecast_tools/plot_quick_forecast.m
 create mode 100644 Oforc_OGCM/Copernicus_Marine_Toolbox_installation.md
 delete mode 100644 Oforc_OGCM/README
 create mode 100644 Oforc_OGCM/README.md
 create mode 100644 Oforc_OGCM/README.md.bck
 delete mode 100644 Oforc_OGCM/create_SODA.m
 delete mode 100644 Oforc_OGCM/download_ECCO.m
 delete mode 100644 Oforc_OGCM/extract_ECCO.m
 delete mode 100644 Oforc_OGCM/extract_mercator.m
 delete mode 100644 Oforc_OGCM/get_ECCO_subgrid.m
 delete mode 100644 Oforc_OGCM/get_filename_ECCO.m
 rename Oforc_OGCM/{make_OGCM.m => make_OGCM_SODA.m} (93%)
 rename Forecast_tools/write_mercator_frcst.m => Oforc_OGCM/write_mercator_multi.m (65%)
 create mode 100644 UTILITIES/export_fig/.ignore/ghostscript.txt
 create mode 100644 UTILITIES/export_fig/.ignore/gs_font_path.txt

diff --git a/Aforc_ERA5/ERA5_parallel_request.py b/Aforc_ERA5/ERA5_parallel_request.py
new file mode 100644
index 00000000..62072a92
--- /dev/null
+++ b/Aforc_ERA5/ERA5_parallel_request.py
@@ -0,0 +1,211 @@
+#!/usr/bin/env python
+
+# Script to download ECMWF ERA5 reanalysis datasets from the Climate Data
+#  Store (CDS) of Copernicus https://cds.climate.copernicus.eu
+#
+#  This script use the CDS Phyton API[*] to connect and download specific ERA5 
+#  variables, for a chosen area and monthly date interval, required by CROCO to 
+#  perform simulations with atmospheric forcing. Furthermore, this script use 
+#  ERA5 parameter names and not parameter IDs as these did not result in stable 
+#  downloads. 
+#
+#  Tested using Python 3.8.6 and Python 3.9.1. This script need the following
+#  python libraries pre-installed: "calendar", "datetime", "json" and "os".
+#
+#  [*] https://cds.climate.copernicus.eu/api-how-to
+#
+#  Copyright (c) DDONOSO February 2021
+#  e-mail:ddonoso@dgeo.udec.cl  
+#
+
+#  You may see all available ERA5 variables at the following website
+#  https://confluence.ecmwf.int/display/CKB/ERA5%3A+data+documentation#ERA5:datadocumentation-Parameterlistings
+
+# -------------------------------------------------
+# Getting libraries and utilities
+# -------------------------------------------------
+import cdsapi
+from ERA5_utilities import *
+import calendar
+import datetime
+import json
+import os
+from multiprocessing import Pool
+
+# Importing addmonths4date function from ERA5_utilities
+from ERA5_utilities import addmonths4date
+
+# Function to download data for a single variable
+def download_data(variable, options, product, output):
+    c = cdsapi.Client()
+    c.retrieve(product, options, output)
+
+# Main function to process tasks in parallel
+def process_parallel(tasks):
+    with Pool() as pool:
+        pool.starmap(download_data, tasks)
+
+
+# -------------------------------------------------
+# Import my crocotools_param_python file
+from era5_crocotools_param import *
+print('year_start is '+str(year_start))
+
+# -------------------------------------------------
+dl=2
+if ownArea == 0:
+    lines = [line.rstrip('\n') for line in open(paramFile)]
+    for line in lines:
+        if "lonmin" in line:
+            iStart=line.find('=')+1
+            iEnd=line.find(';')
+            lonmin = line[iStart:iEnd]
+        elif "lonmax" in line:
+            iStart=line.find('=')+1
+            iEnd=line.find(';')
+            lonmax = line[iStart:iEnd]
+        elif "latmin" in line:
+            iStart=line.find('=')+1
+            iEnd=line.find(';')
+            latmin = line[iStart:iEnd]
+        elif "latmax" in line:
+            iStart=line.find('=')+1
+            iEnd=line.find(';')
+            latmax = line[iStart:iEnd]
+
+lonmin = str(float(lonmin)-dl)
+lonmax = str(float(lonmax)+dl)
+latmin = str(float(latmin)-dl)
+latmax = str(float(latmax)+dl)
+print ('lonmin-dl = ', lonmin)
+print ('lonmax+dl =', lonmax)
+print ('latmin-dl =', latmin)
+print ('latmax+dl =', latmax)
+# -------------------------------------------------
+
+area = [latmax, lonmin, latmin, lonmax]
+
+# -------------------------------------------------
+# Setting raw output directory
+# -------------------------------------------------
+# Get the current directory
+os.makedirs(era5_dir_raw,exist_ok=True)
+
+
+# -------------------------------------------------
+# Loading ERA5 variables's information as 
+# python Dictionary from JSON file
+# -------------------------------------------------
+with open('ERA5_variables.json', 'r') as jf:
+    era5 = json.load(jf)
+
+
+# -------------------------------------------------
+# Downloading ERA5 datasets
+# -------------------------------------------------
+# Monthly dates limits
+monthly_date_start = datetime.datetime(year_start,month_start,1)
+monthly_date_end = datetime.datetime(year_end,month_end,1)
+
+# Length of monthly dates loop
+len_monthly_dates = (monthly_date_end.year - monthly_date_start.year) * 12 + \
+                    (monthly_date_end.month - monthly_date_start.month) + 1
+
+# Initial monthly date
+monthly_date = monthly_date_start
+
+# Construct tasks for parallel processing
+tasks = []
+
+# Monthly dates loop
+for j in range(len_monthly_dates):
+
+    # Year and month
+    year = monthly_date.year
+    month = monthly_date.month
+
+    # Number of days in month
+    days_in_month = calendar.monthrange(year,month)[1]
+
+    # Date limits
+    date_start = datetime.datetime(year,month,1)
+    date_end = datetime.datetime(year,month,days_in_month)
+
+    # Ordinal date limits (days)
+    n_start = datetime.date.toordinal(date_start)
+    n_end = datetime.date.toordinal(date_end)
+
+    # Overlapping date string limits (yyyy-mm-dd)
+    datestr_start_overlap = datetime.date.fromordinal(n_start - n_overlap).strftime('%Y-%m-%d')
+    datestr_end_overlap = datetime.date.fromordinal(n_end + n_overlap).strftime('%Y-%m-%d')
+
+    # Overlapping date string interval 
+    vdate = datestr_start_overlap + '/' + datestr_end_overlap
+
+    # Variables/Parameters loop
+    for k in range(len(variables)):
+
+        # Variable's name, long-name and level-type
+        vname = variables[k]
+        vlong = era5[vname][0]
+        vlevt = era5[vname][3]
+
+        # Request options
+        options = {
+            'product_type': 'reanalysis',
+            'type': 'an',
+            'date': vdate,
+            'variable': vlong,
+            'levtype': vlevt,
+            'area': area,
+            'format': 'netcdf',
+        }
+
+        if vlong == 'sea_surface_temperature':
+            options['time'] = '00'
+        elif vlong == 'land_sea_mask':
+            options['time'] = '00:00'
+        else:
+            options['time'] = time
+
+        if vlong == 'specific_humidity' or vlong == 'relative_humidity':
+            options['pressure_level'] = '1000'
+            product = 'reanalysis-era5-pressure-levels'
+        else:
+            product = 'reanalysis-era5-single-levels'
+
+        # Output filename
+        fname = 'ERA5_ecmwf_' + vname.upper() + '_Y' + str(year) + 'M' + str(month).zfill(2) + '.nc'
+        output = era5_dir_raw + '/' + fname
+
+        # Information strings
+        info_time_clock = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
+        info_monthly_date = monthly_date.strftime('%Y-%b')
+        info_n_overlap = ' with ' + str(n_overlap) + ' overlapping day(s) '
+
+        # Printing message on screen
+        print('                                                           ')
+        print('-----------------------------------------------------------')
+        print('',info_time_clock,'                                        ')
+        print(' Performing ERA5 data request, please wait...              ')
+        print(' Date [yyyy-mmm] =',info_monthly_date + info_n_overlap,'   ')
+        print(' Variable =',vlong,'                                       ')
+        print('-----------------------------------------------------------')
+        print('Request options: ')
+        print(options)
+
+        tasks.append((vname, options, product, output))
+
+    monthly_date = addmonths4date(monthly_date, 1)
+
+# Process tasks in parallel
+process_parallel(tasks)
+
+# Print output message on screen
+print('                                               ')
+print(' ERA5 data request has been done successfully! ')
+print('                                               ')
+
+
+
+
diff --git a/Aforc_ERA5/era5_crocotools_param.py b/Aforc_ERA5/era5_crocotools_param.py
index ddc5c9fe..fd3630ea 100644
--- a/Aforc_ERA5/era5_crocotools_param.py
+++ b/Aforc_ERA5/era5_crocotools_param.py
@@ -8,7 +8,6 @@
 #
 # General path
 #
-##config_dir = '../croco/Run_TEST/'           # must be the same than crocotools_param
 config_dir = 'path_to_my_run_dir/'            # must be the same than crocotools_param
 config_name = 'Benguela_LR'
 #
diff --git a/Aforc_ERA5/era5_crocotools_param_my.py b/Aforc_ERA5/era5_crocotools_param_my.py
new file mode 100644
index 00000000..c2930362
--- /dev/null
+++ b/Aforc_ERA5/era5_crocotools_param_my.py
@@ -0,0 +1,86 @@
+#
+# For ERA5 python crocotools parameters list
+#
+# CAUTION IT MUST BE CONSISTENT with your MATLAB CROCOTOOLS_PARAM.m file in Run directory
+# *******************************************************************************
+#                         U S E R  *  O P T I O N S
+# *******************************************************************************
+#
+# General path
+#
+config_dir = '/local/tmp/3/gcambon/CONFIGS/RUN_V2.0_cforec_LR_DEV/'            # must be the same than crocotools_param
+config_name = 'Benguela_LR'
+#
+# Original ERA5 directory
+#
+era5_dir_raw = config_dir + 'DATA/ERA5_native_' + config_name
+#
+# Output ERA5 directory
+#
+era5_dir_processed = config_dir + 'DATA/ERA5_' + config_name
+#
+# extraction wave variables
+#
+wave_extract=False # True to extract wave variables
+#
+# Dates limits
+#
+year_start = 2005
+month_start = 1
+year_end = 2005
+month_end = 1
+#
+# Year origin of time
+#
+Yorig=2000
+#
+# Overlapping days (at the beginning/end of each month)
+#
+n_overlap = 0
+#
+# Request time (daily hours '00/01/.../23')
+#
+time = '00/01/02/03/04/05/06/07/08/09/10/11/12/13/14/15/16/17/18/19/20/21/22/23'
+#
+# Request variables (see available at ERA5_variables.json)
+variables = ['lsm','tp','strd','ssr','t2m','q','u10','v10'] #note lsm is land_sea_mask
+#
+# Request area ([north, west, south, east])
+#
+ownArea = 0 	# 0 if area from a crocotools_param.m file
+                # 1 if own area
+
+if ownArea == 0: 
+    # To complete if ownArea==0
+    paramFile = config_dir + 'crocotools_param.m' # path the crocotools_param file of the simulation
+    
+else:
+    # To complete if ownArea==1
+    lonmin=7
+    lonmax=23
+    latmin=-45
+    latmax=-20
+#
+# Variable names and conversion coefficients  
+# TP: convert from accumlated m in a hour into   kg m-2 s-1
+#
+cff_tp=1000./3600. # m in 1 hour -> kg m-2 s-1
+# Heat flux J m-2 in one hour into W m-2
+#
+cff_heat=1./3600.   # J m-2 in 1 hour -> W m-2
+# Names, conversion coefficients and new units
+#
+variables = ['lsm'  , 'sst' , 'tp'        ,'strd'   ,'ssr'     ,'t2m'  ,'q'      ,'u10'  ,'v10'  ]
+conv_cff  = [1.     ,  1.   ,  cff_tp     ,cff_heat ,cff_heat  ,1.     ,1.       ,1.     ,1.     ] 
+units     = ['(0-1)',  'K'  , 'kg m-2 s-1','W m-2'  ,'W m-2'   ,'K'    ,'kg kg-1','m s-1','m s-1']
+
+if wave_extract:
+    ## append waves variables
+    wave_var=['swh', 'mwd', 'pp1d' ,'cdww'];variables.extend(wave_var)
+    wave_conv_cff=[1.,  1., 1. , 1.];  conv_cff.extend(wave_conv_cff)
+    wave_units=['m','Degrees true','s', 'dimensionless']; units.extend(wave_units)
+
+
+# *******************************************************************************
+#                         E N D     U S E R  *  O P T I O N S
+# *******************************************************************************
diff --git a/Aforc_ERA5/interp_ERA5.m b/Aforc_ERA5/interp_ERA5.m
index 658e243c..ac371d3e 100644
--- a/Aforc_ERA5/interp_ERA5.m
+++ b/Aforc_ERA5/interp_ERA5.m
@@ -1,5 +1,5 @@
 function interp_ERA5(ATMO_dir,Y,M,Roa,interp_method,...
-                     lon1,lat1,lonwave1,latwave1,mask1,maskwave1,tin,...
+                     lon1,lat1,lonwave1,latwave1,mask1,maskwave1,maskwave2,tin,...
 		     nc_frc, nc_blk,lon,lat,angle,tout, add_waves)
 %
 % Read the local ERA5 files and perform the space interpolations
@@ -171,7 +171,7 @@ if add_waves == 1
  nc=netcdf([ATMO_dir,vname,'_Y',num2str(Y),'M',num2str(M),'.nc'],'r');
  pwave=squeeze(nc{vname}(tin,:,:));
  close(nc);
- pwave=get_missing_val(lonwave1,latwave1,maskwave1.*pwave,nan,Roa,nan);
+ pwave=get_missing_val(lonwave1,latwave1,maskwave2.*pwave,nan,Roa,nan);
  pwave=interp2(lonwave1,latwave1,pwave,lon,lat,interp_method);
 end
 %
diff --git a/Aforc_ERA5/make_ERA5.m b/Aforc_ERA5/make_ERA5.m
index 1f3587eb..23f548d1 100644
--- a/Aforc_ERA5/make_ERA5.m
+++ b/Aforc_ERA5/make_ERA5.m
@@ -98,10 +98,21 @@ if add_waves == 1
     maskwave(maskwave ~= missvalue_wave ) = 1;
     maskwave(maskwave == missvalue_wave ) = NaN ;
     close(nc);
+
+    % fix: PP1D doesn t have the same mask than SWH
+    filein2=[ERA5_dir,'PP1D_Y',num2str(Ymin),'M',num2str(Mmin),'.nc'];
+    nc=netcdf(filein2);
+    maskwave2=squeeze(nc{'PP1D'}(1,:,:));
+    missvalue_wave2 = ncreadatt(filein2,'PP1D','missing_value');
+    maskwave2(maskwave2 ~= missvalue_wave2 ) = 1;
+    maskwave2(maskwave2 == missvalue_wave2 ) = NaN ;
+    close(nc);
+    %
 else
     lon1wave = NaN;
     lat1wave = NaN;
     maskwave = NaN;
+    maskwave2 = NaN;
 end
 
 
@@ -191,10 +202,10 @@ for Y=Ymin:Ymax
         % %
         % % Add the waves
         % %
-	  if makefrc==1 && add_waves==1
-            disp(['Add waves data'])
-            disp(['=============='])
-          end
+	if makefrc==1 && add_waves==1
+          disp(['Add waves data'])
+          disp(['=============='])
+        end
 	% % 
         % %
         % % Add the tides
@@ -266,7 +277,7 @@ for Y=Ymin:Ymax
                 aa0=tndx-(itolap-aa);
             end
             interp_ERA5(ERA5_dir,Ym,Mm,Roa,interp_method,lon1,lat1,lon1wave,lat1wave, ...
-                        mask,maskwave,aa0,nc_frc,nc_blk,lon,lat,angle,aa,add_waves)
+                        mask,maskwave,maskwave2,aa0,nc_frc,nc_blk,lon,lat,angle,aa,add_waves)
         end  
         %######################################################################      
         %   
@@ -284,7 +295,7 @@ for Y=Ymin:Ymax
                 disp(['Step: ',num2str(tndx),' of ',num2str(tlen0)])
             end
             interp_ERA5(ERA5_dir,Y,M,Roa,interp_method,lon1,lat1,lon1wave,lat1wave,...
-                        mask,maskwave,tndx,nc_frc,nc_blk,lon,lat,angle,tndx+itolap,add_waves)	
+                        mask,maskwave,maskwave2,tndx,nc_frc,nc_blk,lon,lat,angle,tndx+itolap,add_waves)	
         end
         
         disp(' ')      
@@ -344,7 +355,7 @@ for Y=Ymin:Ymax
                 disp(['tin=',num2str(tin)])
             end
             interp_ERA5(ERA5_dir,Yp,Mp,Roa,interp_method,lon1,lat1,lon1wave,lat1wave,...
-                        mask,maskwave,tin,nc_frc,nc_blk,lon,lat,angle,tout,add_waves)           
+                        mask,maskwave,maskwave2,tin,nc_frc,nc_blk,lon,lat,angle,tout,add_waves)           
         end;
         %
         % Close the CROCO forcing files
diff --git a/Aforc_ERA5/make_bry_wkb_ERA5.m b/Aforc_ERA5/make_bry_wkb_ERA5.m
new file mode 100644
index 00000000..b9c163c8
--- /dev/null
+++ b/Aforc_ERA5/make_bry_wkb_ERA5.m
@@ -0,0 +1,190 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%  Build a CROCO boundary file
+%
+%  Extrapole and interpole temperature and salinity from a
+%  climatology to get boundary conditions for
+%  CROCO (boundary netcdf file) .
+%  Get the velocities and sea surface elevation via a 
+%  geostrophic computation.
+%
+%  Data input format (netcdf):
+%     temperature(T, Z, Y, X)
+%     T : time [Months]
+%     Z : Depth [m]
+%     Y : Latitude [degree north]
+%     X : Longitude [degree east]
+%
+%  Data source : IRI/LDEO climate Data Library (World Ocean Atlas 1998)
+%    http://ingrid.ldgo.columbia.edu/
+%    http://iridl.ldeo.columbia.edu/SOURCES/.NOAA/.NODC/.WOA98/
+% 
+%  Further Information:  
+%  http://www.croco-ocean.org
+%  
+%  This file is part of CROCOTOOLS
+%
+%  CROCOTOOLS is free software; you can redistribute it and/or modify
+%  it under the terms of the GNU General Public License as published
+%  by the Free Software Foundation; either version 2 of the License,
+%  or (at your option) any later version.
+%
+%  CROCOTOOLS is distributed in the hope that it will be useful, but
+%  WITHOUT ANY WARRANTY; without even the implied warranty of
+%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+%  GNU General Public License for more details.
+%
+%  You should have received a copy of the GNU General Public License
+%  along with this program; if not, write to the Free Software
+%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+%  MA  02111-1307  USA
+%
+%  Copyright (c) 2005-2006 by Pierrick Penven 
+%  e-mail:Pierrick.Penven@ird.fr  
+%
+%  Updated    2016 by Patrick Marchesiello & Rachid Benshila
+%                     for wave forcing
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+clear all
+close all
+%%%%%%%%%%%%%%%%%%%%% USERS DEFINED VARIABLES %%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Common parameters
+%
+crocotools_param
+%
+%%%%%%%%%%%%%%%%%%% END USERS DEFINED VARIABLES %%%%%%%%%%%%%%%%%%%%%%%
+disp(' ')
+disp([' Title: ',CROCO_title])
+%
+% Read in the grid
+%
+disp(' ')
+disp(' Read in the grid...')
+nc=netcdf(grdname);
+h=nc{'h'}(:);
+lon=nc{'lon_rho'}(:);
+lat=nc{'lat_rho'}(:);
+angle=nc{'angle'}(:);
+mask=nc{'mask_rho'}(:);
+Lp=length(nc('xi_rho'));
+Mp=length(nc('eta_rho'));
+hmax=max(max(nc{'h'}(:)));
+result=close(nc);
+grid_angle=mean(mean(angle(mask==1)));
+[M L]=size(h);
+%
+% Loop over monthly files
+%
+for Y=Ymin:Ymax
+ if Y==Ymin 
+   mo_min=Mmin;
+ else
+   mo_min=1;
+ end
+ if Y==Ymax
+   mo_max=Mmax;
+ else
+   mo_max=12;
+ end
+ for M=mo_min:mo_max
+%
+% Forcing file name
+%
+  frc_prefix=[frc_prefix,'_ERA5_'];
+  if level==0
+   nc_suffix='.nc';
+  else
+   nc_suffix=['.nc.',num2str(level)];
+  end
+  frcname=[frc_prefix,'Y',num2str(Y),...
+                      'M',num2str(M),nc_suffix];
+%
+% WKB file name
+%
+  wkb_prefix=[wkb_prefix,'_ERA5_'];
+  brywkbname=[wkb_prefix,'Y',num2str(Y),...
+                     'M',num2str(M),nc_suffix];
+  disp(' ')
+  disp([' Making file: ',brywkbname])
+  disp(['        from: ',frcname])
+%
+% Read wave fields data
+%
+  nc=netcdf(frcname);
+  Awave=nc{'Awave'}(:);
+  Dwave=nc{'Dwave'}(:);
+  Pwave=nc{'Pwave'}(:);
+  time =nc{'wwv_time'}(:);
+  close(nc)
+
+  wkb_time=time;
+  wkb_cycle=wkb_time(end);
+%
+% Create the boundary file
+%
+  create_bryfile_wkb(brywkbname,grdname,CROCO_title,wkb_obc,...
+                     wkb_time,wkb_cycle,'clobber');
+  disp(' ')
+%
+% 
+% Extract boundary data: loop on time and boundaries
+% note: in ERA5, meteo convention for wave direction:
+% --> zero means "coming from north" and 90 "coming from east"
+%
+  disp(' Extracting and writing file ...')
+  nc=netcdf(brywkbname,'write');
+  g=9.81;
+  for l=1:length(time)
+   for obcndx=1:4
+    if obcndx==1
+     suffix='_south';     % SOUTH
+     Dstp=squeeze(h(1,:));
+     hrm=2*squeeze(Awave(l,1,:));
+     cdir=3*pi/2-deg2rad(squeeze(Dwave(l,1,:)))-grid_angle;
+     cfrq=2*pi./squeeze(Pwave(l,1,:));
+    elseif obcndx==2
+     suffix='_east';      % EAST
+     Dstp=squeeze(h(:,L));
+     hrm=2*squeeze(Awave(l,:,L));
+     cdir=3*pi/2-deg2rad(squeeze(Dwave(l,:,L)))-grid_angle;
+     cfrq=2*pi./squeeze(Pwave(l,:,L));
+    elseif obcndx==3
+     suffix='_north';     % NORTH
+     Dstp=squeeze(h(M,:));
+     hrm=2*squeeze(Awave(l,M,:));
+     cdir=3*pi/2-deg2rad(squeeze(Dwave(l,M,:)))-grid_angle;
+     cfrq=2*pi./squeeze(Pwave(l,M,:));
+    elseif obcndx==4
+     suffix='_west';      % WEST
+     Dstp=squeeze(h(:,1));
+     hrm=2*squeeze(Awave(l,:,1));
+     cdir=3*pi/2-deg2rad(squeeze(Dwave(l,:,1)))-grid_angle;
+     cfrq=2*pi./squeeze(Pwave(l,:,1));
+    end
+    dd = Dstp'; %+Tide(l)
+    khd = dd.*cfrq.*cfrq./g;
+    kh = sqrt(    khd.*khd + khd./(1.0 + khd.*(0.6666666666 ...
+                 +khd.*(0.3555555555 + khd.*(0.1608465608 ... 
+                 +khd.*(0.0632098765 + khd.*(0.0217540484 ...
+                 +khd.*0.0065407983)))))) );
+    kw=kh./dd;
+    cosw=cos(cdir);
+    sinw=sin(cdir);
+    wac=0.125*g*(hrm.^2)./cfrq;
+    wkx=kw.*cosw;
+    wke=kw.*sinw;
+    nc{['wac' suffix]}(l,:)=wac;
+    nc{['wkx' suffix]}(l,:)=wkx;
+    nc{['wke' suffix]}(l,:)=wke;
+   end
+  end
+  close(nc);
+
+ end % M
+end % Y
+%
+% End
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/CHANGELOG.md b/CHANGELOG.md
index c69a0a3a..6c51de36 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,44 @@
 # Changelog
 
-Release changelog are available here : https://gitlab.inria.fr/croco-ocean/croco_tools/-/releases 
+Release changelog are available here : https://gitlab.inria.fr/croco-ocean/croco_tools/-/releases
 
-## [Unreleased]
+## [Unreleased] - xxxx-xx-xx
+
+### Added
+
+- crocotools_param.m: deal with different mercator datasets, see issue [#23](https://gitlab.inria.fr/croco-ocean/croco_tools/-/issues/23)
+    - Reanalysis Glorys/Analysis:  [ *see make_OGCM_mercator.m* ]
+    - Forecast/Mediterranean high resolution Forecasts : [ *see make_OGCM_mercator_frcst.m* ]
+
+- Forecast_tools, see issue [#23](https://gitlab.inria.fr/croco-ocean/croco_tools/-/issues/23)
+  - Add pause instance to download GFS datasets to avoid over rate limit violation
+  - Add dependency on time step to write on template croco_forecast.in (filled within run_croco_forecast.bash)
+  - Remove hindcast runs (and iterations for nudging OGCM data), keep only one forecast run on hindcast/forecast days.
+
+- Aforc_ERA5, see issue [#23](https://gitlab.inria.fr/croco-ocean/croco_tools/-/issues/23)
+    - Add python request for extraction in parallel mode
+    - Add boundary creation with WKB model
+    - Add ERA5 parallel request
+
+## Fixed
+
+- NESTGUI : fix in nested_grid,  see issue [#15](https://gitlab.inria.fr/croco-ocean/croco_tools/-/issues/15)
+
+- RUNOFF : wrong runoff positioning after first guess, fixed see issue [#18](https://gitlab.inria.fr/croco-ocean/croco_tools/-/issues/18)
+
+## Changed
+
+- Preprocessing_tools :  Update creation of forcing files for dust and nitrogen deposition in line with the PISCES code. See issue [#19](https://gitlab.inria.fr/croco-ocean/croco_tools/-/issues/19)
+
+- Oforc_OGCM : see issue [#23](https://gitlab.inria.fr/croco-ocean/croco_tools/-/issues/23)
+  - Add new Copernicus Marine Toolbox to deal with mercator datasets (Please see Copernicus_Marine_Toolbox_installation.md)
+  - Launch SODA preprocessing with make_OGCM_SODA.m
+  - Lauch MERCATOR/CMEMS preprocessing with make_OGCM_mercator.m
+
+## Removed
+- No more use of ECCO datasets for oceanic reanalysis, see issue [#23](https://gitlab.inria.fr/croco-ocean/croco_tools/-/issues/23)
+
+### Deprecated
+
+### Other
 
diff --git a/Coupling_tools/CROCO/prepro_soda.m b/Coupling_tools/CROCO/prepro_soda.m
index 3ba9797b..2bd90cae 100644
--- a/Coupling_tools/CROCO/prepro_soda.m
+++ b/Coupling_tools/CROCO/prepro_soda.m
@@ -1,4 +1,4 @@
 clear all
 close all
 start ; 
-make_OGCM ; 
+make_OGCM_SODA ; 
diff --git a/Forecast_tools/CopernicusMarineToolbox/copernicusmarine_env.yml b/Forecast_tools/CopernicusMarineToolbox/copernicusmarine_env.yml
new file mode 100644
index 00000000..eebe6b1d
--- /dev/null
+++ b/Forecast_tools/CopernicusMarineToolbox/copernicusmarine_env.yml
@@ -0,0 +1,8 @@
+name: cmt_1.0
+channels:  
+  - conda-forge
+dependencies:  
+  - pip  
+  - pip:    
+    - copernicusmarine>=1.0<=2.0
+  - python>=3.9,<3.12
\ No newline at end of file
diff --git a/Forecast_tools/ForecastCharts.pdf b/Forecast_tools/ForecastCharts.pdf
deleted file mode 100644
index cfa209c29ebbae5fd52260dfdaca4d0b13fb33cc..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 415044
zcmeFac|26_+W<_85K>f@7)!EbnHkHF$dV<L>`}5!A-j<+J0%K53sEVGEFq*QMW|4u
z63SMx6)HRFJ#)^%%y9gA-uHR_c|X6teLtEx=i0CPy6^kCuKTu4UtL2SEg{Xsu&oIA
z!^D6_NugYA9GMst6(x;)-SCoX)&y%O*JG0U*2nOkC=Bq}KvLJ*<(TkM4{;3x5tO7M
z!NbdzVB~?v8@Rd>P|`BsD|*%*$F*IKx&mm3|HRv&fY<O!N|O7%2yR{kZ5IOGh2Uv1
zPlfbbNkd6ZBf}#AXDVp;bv0KPI|qV;tBbZB0OoMi0q-H~X`rbJkT<{|bMPd1`0lfI
z#tYjM2yP0JlHT6l61J{Rt{xJu9>;)ph>QrUdEl)Ht{w^~EqxU6kDj%Q*HLR*f|m#0
zLqU6w8u*>79o|U+#;lI_BtU%Wd$=BTaKfXo(sD%Ml#~vmB=ztFYdb(Uz?V4aOC|=q
ziyf#tqL#>%2r5rf&DG0=fWk=XIM{hwps++Jl(ZD_$6=I`(jqwV$r5nD03Lwsumue8
zo~~XVws=oKff}wZ1mX`g3R1lW1_iPysewhw6R}HbNTbk1!vg=3L1EyBvM3DvR1T1V
z_!O{?*?t>Gye$!(wliRGG!_N?B?3Yp0X*QF@JAUG8X^fjl|`XtNnVyip&?SxQydBn
zDhh^`N1-9|;8Tng3i!J~2!loee-}SuP#DPbpqH^I3<*~lX%z5x@nt|n60R_SoFrUf
z<x#+2;AKEqz^t~0c!Gr_;A)aacpn19nkw`|4f>%?v<+ZwI|pl3S04)iR0<^{FC&4)
zpm5S?33&|Q3xIoq?u>%ifJOvlFHe*dscDHX%$ruj!HIzPkkoLpCg9cawt(wN>f&9F
z5$sV|S$Q-O3h-;ZwKEfgPx9kK&aPi%H_Y*%{)RjaINzqh+EG<y6C(TB$zrr8slH1o
z?etTxgmZ1rTUuWa^>lQsb2ylmc3%7rj_pM&<`|CqbuCuy?)TB_-^T`<uD^cr_Y(UZ
z<$arZ%}m7i&5Z^A`o=W#tqnU~-}AGvU;fyk-q(4xZC?alGfc)}`J$3_j^fXYJ(J*#
ziH$ns_AKg<Iek!(yVF$aaDP?lms?riXWb9h3vCy@n){)7P;++Fr`#rf<JGAe?~RFi
zmp5L_*}k3MLT|28A_%AC$N1}pZV}ttf#g!NsI0SlZ2zvJ{z$JSdgX+IY1GBNUn6X4
z2PXSEj^wSGV>aNtxO1{mG@dKL<YE^KbLk(O*p83~ALnwdN(%bdiXR%{r~UBI<9nnz
z17BCiNc{ST{dphfh7P8w1@2O^aSc+i-O=i|&-Jm@q0}cAa+>iH+}QNX?_75c<XHvU
z2Kgi<zxY1qYlAsz(ROO~(5qT{X@M_Rv5I1!a#l@voVb`X?AKTN>%}T9!VZ?~$HG4S
zi6^Us+eCCv*BM6I+{C^X!8rU@t+tcI$QxF~o|2WHp0M(`+Tjp?e2c!2oHYLhRaf18
zKM#$$HJq#3CNRBjUjyxSj@}<k#d|Ef4aA2{eNUICO*V7aV%%0Ai?@hAP%-_d*SF@o
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
RhN1@?OHFa<lBk^6{{gv;A*uiX

diff --git a/Forecast_tools/download_ECCO_frcst.m b/Forecast_tools/download_ECCO_frcst.m
deleted file mode 100644
index 64653c23..00000000
--- a/Forecast_tools/download_ECCO_frcst.m
+++ /dev/null
@@ -1,173 +0,0 @@
-function ecco_name=download_ECCO_frcst(lonmin,lonmax,latmin,latmax,...
-                                         FRCST_dir,FRCST_prefix,url,Yorig)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-%  Extract a subgrid from ECCO to get a CROCO forcing
-%   Store that into monthly files.
-%   Take care of the Greenwitch Meridian.
-% 
-% 
-%  Further Information:  
-%  http://www.croco-ocean.org
-%  
-%  This file is part of CROCOTOOLS
-%
-%  CROCOTOOLS is free software; you can redistribute it and/or modify
-%  it under the terms of the GNU General Public License as published
-%  by the Free Software Foundation; either version 2 of the License,
-%  or (at your option) any later version.
-%
-%  CROCOTOOLS is distributed in the hope that it will be useful, but
-%  WITHOUT ANY WARRANTY; without even the implied warranty of
-%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-%  GNU General Public License for more details.
-%
-%  You should have received a copy of the GNU General Public License
-%  along with this program; if not, write to the Free Software
-%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-%  MA  02111-1307  USA
-%
-%  Copyright (c) 2006 by Pierrick Penven 
-%  e-mail:Pierrick.Penven@ird.fr  
-%
-%  Updated    8-Sep-2006 by Pierrick Penven
-%  Updated    20-Aug-2008 by Matthieu Caillaud & P. Marchesiello
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-%
-% Get the date
-%
-rundate_str=date;
-rundate=datenum(rundate_str)-datenum(Yorig,1,1);
-[y,m,d,h,mi,s]=datevec(rundate_str);
-%
-% start
-%
-disp([' '])
-disp(['Get data for ',rundate_str])
-disp(['Minimum Longitude: ',num2str(lonmin)])
-disp(['Maximum Longitude: ',num2str(lonmax)])
-disp(['Minimum Latitude: ',num2str(latmin)])
-disp(['Maximum Latitude: ',num2str(latmax)])
-disp([' '])
-%
-% Create the directory
-%
-disp(['Making output data directory ',FRCST_dir])
-eval(['!mkdir ',FRCST_dir])
-%
-% Start 
-%
-disp(['Process the dataset: ',url])
-%
-% Get the latest ECCO time
-%
-%
-% first ecco time: 06-Jan-2006 (315696)
-% first ecco time: 07-Jan-2006 (324456) !!! should be reset every year !!!
-ecco_time_start_year=359520;
-
-%
-ecco_time_start=ecco_time_start_year/24+datenum(1970,1,1)-datenum(Yorig,1,1);
-ecco_times=[ecco_time_start:10:ecco_time_start+10000];
-%htime_ecco=24*(ecco_times+datenum(Yorig,1,1)-datenum(1970,1,1));
-%
-% Get the closest ecco time
-%
-ecco_indx=max(find(ecco_times<=rundate));
-foundfile=0;
-%
-while foundfile==0
-  ecco_time=ecco_times(ecco_indx);
-  disp([' Testing date: ' datestr(ecco_time+datenum(Yorig,1,1))])
-  [ecco_y,ecco_m,ecco_d,ecco_h,ecco_mi,ecco_s]=...
-  datevec(ecco_time+datenum(Yorig,1,1));
-  daysinyear=ecco_time+datenum(Yorig,1,1)-datenum(ecco_y,1,1);
-  necco=round(daysinyear/10);
-  nhours=necco*240;
-  if nhours < 1000
-    endname=['_00',num2str(nhours),'_240.cdf'];
-  elseif nhours < 10000
-    endname=['_0',num2str(nhours),'_240.cdf'];
-  else nhours < 10000
-    endname=['_',num2str(nhours),'_240.cdf'];
-  end
-%  
-  if necco <= 9
-    prefix=[url,num2str(ecco_y),'/n10day_01_0',num2str(necco),'/'];
-    suffix=['_08_08.00001',endname];
-  elseif necco <= 18
-    prefix=[url,num2str(ecco_y),'/n10day_10_',num2str(necco),'/'];
-    suffix=['_08_08.02160',endname];
-  elseif necco <= 27
-    prefix=[url,num2str(ecco_y),'/n10day_19_',num2str(necco),'/'];
-    suffix=['_08_08.04320',endname];
-  elseif necco <= 37
-    prefix=[url,num2str(ecco_y),'/n10day_28_',num2str(necco),'/'];
-    suffix=['_08_08.06480',endname];
-  end
-%
-%  test if the file exist
-%
-  vname='Have';
-  fname=[prefix,vname,suffix];
-  warning off
-  try
-    x=loaddap('-A -e +v ',fname);
-    foundfile=1;
-  catch
-    foundfile=0;
-  end
-  if foundfile==1 & ~isempty(x)
-    disp('  File found')
-  else
-    foundfile=0;
-    disp('  File does not exist')
-    ecco_indx=ecco_indx-1;
-    if ecco_indx==0
-     error('DOWNLOAD_ECCO_FRCST: No file found...')
-    end
-  end
-  warning on
-end
-%
-tindex=x.time.DODS_ML_Size;
-missval=x.Have.missing_value;
-%
-% Get the time
-%
-vname='Have';
-fname=[prefix,'Have',suffix];
-trange=['[',num2str(tindex-1),':',num2str(tindex-1),']'];
-time=readdap(fname,'time',trange);
-time=floor(time/24+datenum(1970,1,1));
-disp(['    Date: ',datestr(time)])
-time=time-datenum(Yorig,1,1);
-ecco_name=[FRCST_dir,FRCST_prefix,num2str(time),'.cdf'];
-%
-%if isempty(dir(ecco_name))
-if ~exist(ecco_name)
-%
-%
-% Get a subset of the ECCO grid
-%
-  vname='Have';
-  fname=[prefix,vname,suffix];
-  [i1min,i1max,i2min,i2max,i3min,i3max,...
-   i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u,...
-   jrange,jrange_v,krange,lon,lon_u,lat,lat_v,depth]=...
-   get_ECCO_subgrid(fname,lonmin,lonmax,latmin,latmax);
-%
-% Extract ECCO
-%
-   extract_ECCO_frcst(FRCST_dir,FRCST_prefix,prefix,suffix,tindex,missval,...
-                      lon,lon_u,lat,lat_v,depth,...
-                      krange,jrange,jrange_v,...
-                      i1min,i1max,i2min,i2max,i3min,i3max,...
-                      i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u,...
-                      time,Yorig)
-else
-  disp('  ECCO file allready exist')
-end
-return
diff --git a/Forecast_tools/download_GFS.m b/Forecast_tools/download_GFS.m
index 6060cd28..af30f6d7 100644
--- a/Forecast_tools/download_GFS.m
+++ b/Forecast_tools/download_GFS.m
@@ -193,7 +193,7 @@ for ihind=1:4*hdays    % loop on files until time=yesterday 12Z
               radlw(n,:,:),radlw_in(n,:,:),radsw(n,:,:)]=...
        get_GFS(fname,mask,tndxdap,jrange,i1min,i1max,i2min,i2max, ...
                                          i3min,i3max,missvalue);
-  end 
+  end
 end % ihind (nb of hindcast record)
 %
 %==================================================================
@@ -289,7 +289,3 @@ write_GFS(gfs_name,Yorig,lon,lat,mask,gfstime,...
 disp('Download GFS: done')
 %
 return
-
-
-
-
diff --git a/Forecast_tools/download_mercator_frcst.m b/Forecast_tools/download_mercator_frcst.m
deleted file mode 100644
index 77a1fbf2..00000000
--- a/Forecast_tools/download_mercator_frcst.m
+++ /dev/null
@@ -1,187 +0,0 @@
-function mercator_name=download_mercator_frcst(lonmin,lonmax,latmin,latmax,...
-                                         FRCST_dir,FRCST_prefix,url,Yorig)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-%  Extract a subgrid from ECCO to get a CROCO forcing
-%   Store that into monthly files.
-%   Take care of the Greenwitch Meridian.
-% 
-% 
-%  Further Information:  
-%  http://www.croco-ocean.org
-%  
-%  This file is part of CROCOTOOLS
-%
-%  CROCOTOOLS is free software; you can redistribute it and/or modify
-%  it under the terms of the GNU General Public License as published
-%  by the Free Software Foundation; either version 2 of the License,
-%  or (at your option) any later version.
-%
-%  CROCOTOOLS is distributed in the hope that it will be useful, but
-%  WITHOUT ANY WARRANTY; without even the implied warranty of
-%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-%  GNU General Public License for more details.
-%
-%  You should have received a copy of the GNU General Public License
-%  along with this program; if not, write to the Free Software
-%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-%  MA  02111-1307  USA
-%
-%  Copyright (c) 2006 by Pierrick Penven 
-%  e-mail:Pierrick.Penven@ird.fr  
-%
-%  Updated    8-Sep-2006 by Pierrick Penven
-%  Updated    20-Aug-2008 by Matthieu Caillaud & P. Marchesiello
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-%
-% Get the date
-%
-l=1;
-rundate_str=date;
-rundate=datenum(rundate_str)-datenum(Yorig,1,1);
-lh=5; % length of hindcast for mercator
-lf=6; % length of forecast
-%%% test if mercator forecast exist %%%
-% mercator time is in julian hours since 1950
-    time=readdap(url,'time',[])/24; 
-time(1)
-    time=time+datenum(1950,1,1);
-time(1)
-    time=time-datenum(Yorig,1,1);
-    time(1)
-    rundate
-    size(time)
-    stop
-    while l==1
-    try
-        x=find(time==rundate+lf);
-        foundtime=1;
-    catch
-        foundtime=0;
-    end
-        if foundtime==1 & ~isempty(x)
-            disp('time is ok')
-        else
-            foundtime=0;
-            disp('missing forecast')
-        end
-        
-if foundtime==0;
-    lf=lf-1;
-    l=1;
-else
-    l=0;
-end
-    end
-
-for i=1:lh
-    time1(i)=datenum(rundate_str)-(lh+1-i);
-end
-time2=datenum(rundate_str);
-for j=1:lf
-    time3(j)=datenum(rundate_str)+j;
-    
-end
-if foundtime==0
-    time3=[time3 time3(end)];
-        end
-        
-time=cat(2,time1,time2,time3);
-
-
-% Get time from Opendap
-time2=readdap(url,'time',[])/24;
-time2=time2+datenum(1950,1,1);
-%time2=time2-datenum(Yorig,1,1);
-
-% Get time index
-for i=1:length(time)
-   tndx(i)=find(time2==time(i));
-end
-
-%
-% start
-%
-disp([' '])
-disp(['Get data for ',rundate_str])
-disp(['Minimum Longitude: ',num2str(lonmin)])
-disp(['Maximum Longitude: ',num2str(lonmax)])
-disp(['Minimum Latitude: ',num2str(latmin)])
-disp(['Maximum Latitude: ',num2str(latmax)])
-disp([' '])
-%
-% Create the directory
-%
-disp(['Making output data directory ',FRCST_dir])
-eval(['!mkdir ',FRCST_dir])
-%
-% Start 
-%
-disp(['Process the dataset: ',url])
-%
-% 
-%  test if the file exist
-%
-% 
-foundfile=0;
-  fname=url;
-  warning off
-  try
-    x=loaddap('-A -e +v ', fname);
-    foundfile=1;
-  catch
-    foundfile=0;
-  end
-  if foundfile==1 & ~isempty(x)
-    disp('  File found')
-  else
-    foundfile=0;
-    disp('  File does not exist')
-  end
-  warning on
-%
-%
-%tindex=x.time.DODS_ML_Size;
-%missval=x.ssh.missing_value; %PSY3V1
-missval=x.ssh.ml__FillValue; %PSY3V2
-% Get the time
-%
-trange=['[',num2str(min(tndx)-1),':',num2str(max(tndx)-1),']'];
-fname=url;
-%
-%trange=['[',num2str(tindex-1),':',num2str(tindex-1),']'];
-%time=readdap(fname,'time',trange);
-%time=floor(time+datenum(1950,1,1));
-%disp(['    Date: ',datestr(time)])
-%time=time-datenum(Yorig,1,1);
-time=time2(tndx)-datenum(Yorig,1,1);
-mercator_name=[FRCST_dir,FRCST_prefix,num2str(rundate),'.cdf'];
-%
-%if isempty(dir(mercator_name))
-if ~exist(mercator_name)
-%
-%
-% Get a subset of the ECCO grid
-%
-
-  
-  [i1min,i1max,i2min,i2max,i3min,i3max,...
-   i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u,...
-   jrange,jrange_v,krange,lon,lon_u,lat,lat_v,depth]=...
-   get_mercator_subgrid(url,lonmin,lonmax,latmin,latmax);
-%
-% Extract mercator
-%
-   extract_mercator_frcst(FRCST_dir,FRCST_prefix,url,tndx,missval,...
-                      lon,lon_u,lat,lat_v,depth,...
-                      krange,jrange,jrange_v,...
-                      i1min,i1max,i2min,i2max,i3min,i3max,...
-                      i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u,...
-                      time,Yorig)
-else
-  disp('  mercator file allready exist')
-end
-
-return
diff --git a/Forecast_tools/download_mercator_frcst_python.m b/Forecast_tools/download_mercator_frcst_python.m
index 0402779f..a1c22b72 100644
--- a/Forecast_tools/download_mercator_frcst_python.m
+++ b/Forecast_tools/download_mercator_frcst_python.m
@@ -1,10 +1,9 @@
-function mercator_name=download_mercator_frcst_python(pathMotu,user,password,mercator_type, ...
-                                                      motu_url, service_id,product_id, ...
-                                                      lh,lf, ...
-                                                      lonmin,lonmax,latmin,latmax,zmax, ...
-                                                      FRCST_dir,FRCST_prefix,raw_mercator_name,Yorig)
+function download_mercator_frcst_python(pathCMC,user,password,mercator_type, ...
+                                        raw_mercator_name,product_id, ...
+                                        lh,lf, ...
+                                        lonmin,lonmax,latmin,latmax,zmax, ...
+                                        FRCST_dir,FRCST_prefix,date_frcst,Yorig)
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
 % Extract a subgrid from mercator to get a CROCO forcing
 % Store that into monthly files.
 % Take care of the Greenwitch Meridian.
@@ -42,120 +41,116 @@ function mercator_name=download_mercator_frcst_python(pathMotu,user,password,mer
 download_raw_data=1;
 convert_raw2crocotools=1; % convert -> crocotools format data
 %
+disp(['Making output data directory ',FRCST_dir]) % create directory
+eval(['!mkdir ',FRCST_dir, ' 2> /dev/null'])
+%
 % Set variable names according to mercator type data
 %
-if mercator_type==1,
-  vars = {'zos' ...
-	  'uo' ...
-	  'vo' ...
-	  'thetao' ...
-	  'so'};
+if mercator_type==5
+  vars = {'zos_detided', ...
+          'uo', ...
+          'vo', ...
+          'thetao', ...
+          'so'};
 else
-  vars = {'zos_detided' ...
-	  'uo' ...
-	  'vo' ...
-	  'thetao' ...
-	  'so'};
+  vars = {'zos' ...
+          'uo' ...
+          'vo' ...
+          'thetao' ...
+          'so'};
 end
 %
 % Get dates
 %
 rundate_str=date;
-rundate=datenum(rundate_str)-datenum(Yorig,1,1);
-
+date_run=datenum(rundate_str);
+rundate=date_run-datenum(Yorig,1,1);
 for i=1:lh+1
     time1(i)=datenum(rundate_str)-(lh+2-i);
 end
 time2=datenum(rundate_str);
-for j=1:lf+1
-    time3(j)=datenum(rundate_str)+j;
+for j=1:lf+2
+    time3(j)=datenum(rundate_str)+j-1;
 end
 time=cat(2,time1,time2,time3);
 tiempo_inicial = time1(1);
 tiempo_final = time3(end);
+tiempo_p0 = time1(lh+1);
+tiempo_p1 = date_run;
+%
 if (lonmin > 180)
     lonmin = lonmin - 360;
 end
 if (lonmax > 180)
     lonmax = lonmax - 360;
 end
+%
 disp([' '])
-disp(['Get data for ',rundate_str])
 disp(['Minimum Longitude: ',num2str(lonmin)])
 disp(['Maximum Longitude: ',num2str(lonmax)])
 disp(['Minimum Latitude:  ',num2str(latmin)])
 disp(['Maximum Latitude:  ',num2str(latmax)])
 disp([' '])
-
+%
 if download_raw_data
     %
-    % Get data  (now in 4 different files)
+    disp(['--> Extraction Forecasts (assuming local time is after time dissemination : 12hUTC)  :  ', datestr(tiempo_p1,'yyyy-mm-dd')])
+    if lh ~= 0
+      for i=1:lh
+          disp(['Get Hindcasts NRT ana.: ',datestr(time1(i),'yyyy-mm-dd')])
+      end
+      disp(['Get Hindcasts P0      : ',datestr(tiempo_p0,'yyyy-mm-dd')])
+    end
+    disp(['Get ',num2str(lf+2),' Forecasts       : from ',datestr(tiempo_p1,'yyyy-mm-dd'),' to ',datestr(tiempo_final,  'yyyy-mm-dd')])
+    %
+    %
+    % Get data  (now splitted in 4 different files)
+    get_file_python_mercator(pathCMC, ...                    % SSH
+                            product_id{1}, ...
+                            vars(1), ...
+                            [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
+                            {datestr(tiempo_inicial,'yyyy-mm-dd') ...
+                            datestr(tiempo_final,  'yyyy-mm-dd')}, ...
+                            {user password}, ...
+                            [raw_mercator_name(1:end-3),'_z.nc']); 
     %
-    % temporarily removing Matlab lib path to avoid conflict with Python, 
-    % (mandatory with python 2.7.X) 
+    get_file_python_mercator(pathCMC, ...                    % U/V 
+                            product_id{2}, ...
+                            vars(2:3), ...
+                            [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
+                            {datestr(tiempo_inicial,'yyyy-mm-dd') ...
+                            datestr(tiempo_final,  'yyyy-mm-dd')}, ...
+                            {user password}, ...
+                            [raw_mercator_name(1:end-3),'_u.nc']); 
     %
-    pathdyld=getenv('DYLD_LIBRARY_PATH');
-    setenv('DYLD_LIBRARY_PATH','');
-    pathld=getenv('LD_LIBRARY_PATH');
-    setenv('LD_LIBRARY_PATH','');
-    
-    get_file_python_mercator(pathMotu,mercator_type, ...                 % SSH
-                             motu_url,service_id,product_id{1}, ...
-                             vars(1), ...
-                             [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
-                             {datestr(tiempo_inicial,'yyyy-mm-dd') ...
-                              datestr(tiempo_final,  'yyyy-mm-dd')}, ...
-                             {user password}, ...
-                             [raw_mercator_name(1:end-3),'_z.nc']);
-                         
-    get_file_python_mercator(pathMotu,mercator_type, ...                 % U,V
-                             motu_url,service_id,product_id{2}, ...
-                             vars(2:3), ...
-                             [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
-                             {datestr(tiempo_inicial,'yyyy-mm-dd') ...
-                              datestr(tiempo_final,  'yyyy-mm-dd')}, ...
-                             {user password}, ...
-                             [raw_mercator_name(1:end-3),'_u.nc']);
-                         
-    get_file_python_mercator(pathMotu,mercator_type, ...                 % T
-                             motu_url,service_id,product_id{3}, ...
-                             vars(4), ...
-                             [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
-                             {datestr(tiempo_inicial,'yyyy-mm-dd') ...
-                              datestr(tiempo_final,  'yyyy-mm-dd')}, ...
-                             {user password}, ...
-                             [raw_mercator_name(1:end-3),'_t.nc']);
-                         
-    get_file_python_mercator(pathMotu,mercator_type, ...                 % S
-                             motu_url,service_id,product_id{4}, ...
-                             vars(5), ...
-                             [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
-                             {datestr(tiempo_inicial,'yyyy-mm-dd') ...
-                              datestr(tiempo_final,  'yyyy-mm-dd')}, ...
-                             {user password}, ...
-                             [raw_mercator_name(1:end-3),'_s.nc']);                 
-                         
-    setenv('DYLD_LIBRARY_PATH',pathdyld); % set back Matlab libs path
-    setenv('LD_LIBRARY_PATH',pathld);     % set back Matlab libs path
-    
+    get_file_python_mercator(pathCMC, ...                    % T 
+                            product_id{3}, ...
+                            vars(4), ...
+                            [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
+                            {datestr(tiempo_inicial,'yyyy-mm-dd') ...
+                            datestr(tiempo_final,  'yyyy-mm-dd')}, ...
+                            {user password}, ...
+                            [raw_mercator_name(1:end-3),'_t.nc']);                         
+    %
+    get_file_python_mercator(pathCMC, ...                    % S
+                            product_id{4}, ...
+                            vars(5), ...
+                            [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
+                            {datestr(tiempo_inicial,'yyyy-mm-dd') ...
+                            datestr(tiempo_final,  'yyyy-mm-dd')}, ...
+                            {user password}, ...
+                            [raw_mercator_name(1:end-3),'_s.nc']); 
+%
 end  % download_raw_data
-
+%
 if convert_raw2crocotools 
     %
     % Convert data format and write in a more CROCOTOOLS 
     % compatible input file 
     %
-    disp(['Making output data directory ',FRCST_dir]) % create directory
-    eval(['!mkdir ',FRCST_dir])
-    %
-    mercator_name=[FRCST_dir,FRCST_prefix,num2str(rundate),'.cdf'];
-    if exist(mercator_name)  
-        disp('Mercator file already exist => overwrite it')
-    end
-    write_mercator_frcst(FRCST_dir,FRCST_prefix,raw_mercator_name, ...
-                         mercator_type,vars,time,Yorig); % write data
+    write_mercator_multi(FRCST_dir,FRCST_prefix,raw_mercator_name, ...
+                         mercator_type,vars,time,num2str(rundate),Yorig); % write data
     eval(['! rm -f ',[raw_mercator_name(1:end-3),'*nc '] ]);
 end
-
+%
 end
-
diff --git a/Forecast_tools/extract_ECCO_frcst.m b/Forecast_tools/extract_ECCO_frcst.m
deleted file mode 100644
index 10ad8ffb..00000000
--- a/Forecast_tools/extract_ECCO_frcst.m
+++ /dev/null
@@ -1,115 +0,0 @@
-function extract_ECCO_frcst(FRCST_dir,FRCST_prefix,prefix,suffix,tindex,missval,...
-                      lon,lon_u,lat,lat_v,depth,...
-                      krange,jrange,jrange_v,...
-                      i1min,i1max,i2min,i2max,i3min,i3max,...
-                      i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u,...
-                      time,Yorig)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Extract a subset from ECCO using DODS
-% Write it in a local file (keeping the classic
-% SODA netcdf format)
-% 
-% 
-%  Further Information:  
-%  http://www.croco-ocean.org
-%  
-%  This file is part of CROCOTOOLS
-%
-%  CROCOTOOLS is free software; you can redistribute it and/or modify
-%  it under the terms of the GNU General Public License as published
-%  by the Free Software Foundation; either version 2 of the License,
-%  or (at your option) any later version.
-%
-%  CROCOTOOLS is distributed in the hope that it will be useful, but
-%  WITHOUT ANY WARRANTY; without even the implied warranty of
-%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-%  GNU General Public License for more details.
-%
-%  You should have received a copy of the GNU General Public License
-%  along with this program; if not, write to the Free Software
-%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-%  MA  02111-1307  USA
-%
-%  Copyright (c) 2006 by Pierrick Penven 
-%  e-mail:Pierrick.Penven@ird.fr  
-%
-%  Updated    9-Sep-2006 by Pierrick Penven
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-disp(['    Download ECCO'])
-trange=['[',num2str(tindex-1),':',num2str(tindex-1),']'];
-%
-% Get the time
-%
-%vname='Have';
-%fname=[prefix,vname,suffix];
-%time=readdap(fname,'time',trange)
-%time=floor(time/24+datenum(1970,1,1));
-%disp(['    Date: ',datestr(time)])
-%time=time-datenum(Yorig,1,1)
-%
-% Get SSH
-%
-disp('    ...SSH')
-vname='Have';
-fname=[vname,suffix];
-ssh=getdap(prefix,fname,vname,...
-            trange,'',jrange,...
-            i1min,i1max,i2min,i2max,i3min,i3max);
-ssh=shiftdim(ssh,2);
-ssh(ssh<=missval)=NaN;
-%
-% Get U
-%
-disp('    ...U')
-vname='Uave';
-fname=[vname,suffix];
-u=getdap(prefix,fname,vname,...
-          trange,krange,jrange,...
-          i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u);
-u=permute(u,[4 3 1 2]);
-u(u<=missval)=NaN;
-%
-% Get V
-%
-disp('    ...V')
-vname='Vave';
-fname=[vname,suffix];
-v=getdap(prefix,fname,vname,...
-          trange,krange,jrange_v,...
-          i1min,i1max,i2min,i2max,i3min,i3max);
-v=permute(v,[4 3 1 2]);
-v(v<=missval)=NaN;
-%
-% Get TEMP
-%
-disp('    ...TEMP')
-vname='Tave';
-fname=[vname,suffix];
-temp=getdap(prefix,fname,vname,...
-             trange,krange,jrange,...
-             i1min,i1max,i2min,i2max,i3min,i3max);
-temp=permute(temp,[4 3 1 2]);
-temp(temp<=missval)=NaN;
-%
-% Get SALT
-%
-disp('    ...SALT')
-vname='Save';
-fname=[vname,suffix];
-salt=getdap(prefix,fname,vname,...
-             trange,krange,jrange,...
-             i1min,i1max,i2min,i2max,i3min,i3max);
-salt=permute(salt,[4 3 1 2]);
-salt(salt<=missval)=NaN;
-%
-% Create the ECCO file
-%
-create_OGCM([FRCST_dir,FRCST_prefix,num2str(time),'.cdf'],...
-             lon,lat,lon_u,lat,lon,lat_v,depth,time,...
-             squeeze(temp),squeeze(salt),squeeze(u),...
-             squeeze(v),squeeze(ssh),Yorig)
-%
-return
diff --git a/Forecast_tools/extract_mercator_frcst.m b/Forecast_tools/extract_mercator_frcst.m
deleted file mode 100644
index 72d03800..00000000
--- a/Forecast_tools/extract_mercator_frcst.m
+++ /dev/null
@@ -1,116 +0,0 @@
-function extract_mercator_frcst(FRCST_dir,FRCST_prefix,url,tndx,missval,...
-                      lon,lon_u,lat,lat_v,depth,...
-                      krange,jrange,jrange_v,...
-                      i1min,i1max,i2min,i2max,i3min,i3max,...
-                      i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u,...
-                      time,Yorig)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Extract a subset from Mercator using DODS
-% Write it in a local file (keeping the classic
-% SODA netcdf format)
-% 
-% 
-%  Further Information:  
-%  http://www.croco-ocean.org
-%  
-%  This file is part of CROCOTOOLS
-%
-%  CROCOTOOLS is free software; you can redistribute it and/or modify
-%  it under the terms of the GNU General Public License as published
-%  by the Free Software Foundation; either version 2 of the License,
-%  or (at your option) any later version.
-%
-%  CROCOTOOLS is distributed in the hope that it will be useful, but
-%  WITHOUT ANY WARRANTY; without even the implied warranty of
-%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-%  GNU General Public License for more details.
-%
-%  You should have received a copy of the GNU General Public License
-%  along with this program; if not, write to the Free Software
-%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-%  MA  02111-1307  USA
-%
-%  Copyright (c) 2006 by Pierrick Penven 
-%  e-mail:Pierrick.Penven@ird.fr  
-%
-%  Updated    9-Sep-2006 by Pierrick Penven
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-disp(['    Download MERCATOR'])
-trange=['[',num2str(min(tndx)-1),':',num2str(max(tndx)-1),']'];
-%trange=['[',num2str(tindex-1),':',num2str(tindex-1),']'];
-%
-% Get the time
-%
-%vname='Have';
-%fname=[prefix,vname,suffix];
-%time=readdap(fname,'time',trange)
-%time=floor(time/24+datenum(1970,1,1));
-%disp(['    Date: ',datestr(time)])
-%time=time-datenum(Yorig,1,1)
-%
-% Get SSH
-%
-disp('    ...SSH')
-vname='ssh';
-fname='';
-ssh=getdap(url,fname,vname,...
-            trange,'',jrange,...
-            i1min,i1max,i2min,i2max,i3min,i3max);
-ssh=shiftdim(ssh,2);
-ssh(ssh>=missval)=NaN;
-%
-%
-% Get U
-%
-disp('    ...U')
-vname='u';
-u=getdap(url,fname,vname,...
-          trange,krange,jrange,...
-          i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u);
-u=permute(u,[4 3 1 2]);
-u(u>=missval)=NaN;
-%
-% Get V
-%
-disp('    ...V')
-vname='v';
-v=getdap(url,fname,vname,...
-          trange,krange,jrange_v,...
-          i1min,i1max,i2min,i2max,i3min,i3max);
-v=permute(v,[4 3 1 2]);
-v(v>=missval)=NaN;
-%
-% Get TEMP
-%
-disp('    ...TEMP')
-vname='temperature';
-temp=getdap(url,fname,vname,...
-             trange,krange,jrange,...
-             i1min,i1max,i2min,i2max,i3min,i3max);
-temp=permute(temp,[4 3 1 2]);
-temp(temp>=missval)=NaN;
-%
-% Get SALT
-%
-disp('    ...SALT')
-vname='salinity';
-salt=getdap(url,fname,vname,...
-             trange,krange,jrange,...
-             i1min,i1max,i2min,i2max,i3min,i3max);
-salt=permute(salt,[4 3 1 2]);
-salt(salt>=missval)=NaN;
-%
-%
-% Create the ECCO file
-rundate_str=date;
-rundate=datenum(rundate_str)-datenum(Yorig,1,1);
-
-create_OGCM([FRCST_dir,FRCST_prefix,num2str(rundate),'.cdf'],...
-             lon,lat,lon_u,lat,lon,lat_v,depth,time,...
-             squeeze(temp),squeeze(salt),squeeze(u),...
-             squeeze(v),squeeze(ssh),Yorig)
-%
-return
diff --git a/Forecast_tools/get_GFS.m b/Forecast_tools/get_GFS.m
index 667463e3..47f94e05 100644
--- a/Forecast_tools/get_GFS.m
+++ b/Forecast_tools/get_GFS.m
@@ -47,69 +47,74 @@ t=readdap(fname,'time',trange);
 disp(['TRANGE=',num2str(trange)])
 disp(['GFS raw time=',sprintf('%5.3f',t)])
 t=t+365; % put it in "matlab" time
-disp(['GFS: ',datestr(t)])
+disp(['GFS: ',datestr(datenum(t),'yyyy-mm-dd HH:MM:SS')])
 disp('====================================================')
 
 %disp('u...')
 u=mask.*getdap('',fname,'ugrd10m',trange,'',jrange,...
                 i1min,i1max,i2min,i2max,i3min,i3max);
 u(abs(u)>=missvalue)=NaN;
+pause(2)
 
 %disp('v...')
 v=mask.*getdap('',fname,'vgrd10m',trange,'',jrange,...
                 i1min,i1max,i2min,i2max,i3min,i3max);
 v(abs(v)>=missvalue)=NaN;
-
-%disp('ty...')
-ty=mask.*getdap('',fname,'vflxsfc',trange,'',jrange,...
-                i1min,i1max,i2min,i2max,i3min,i3max);
-ty(abs(ty)>=missvalue)=NaN;
+pause(2)
 
 %disp('tx...')
 tx=mask.*getdap('',fname,'uflxsfc',trange,'',jrange,...
                 i1min,i1max,i2min,i2max,i3min,i3max);
 tx(abs(tx)>=missvalue)=NaN;
+pause(2)
 
-
-%disp('skt...')
-%skt=mask.*getdap('',fname,'tmpsfc',trange,'',jrange,...
-%                  i1min,i1max,i2min,i2max,i3min,i3max);
-%skt(abs(skt)>=missvalue)=NaN;
+%disp('ty...')
+ty=mask.*getdap('',fname,'vflxsfc',trange,'',jrange,...
+                i1min,i1max,i2min,i2max,i3min,i3max);
+ty(abs(ty)>=missvalue)=NaN;
+pause(2)
 
 %disp('tair...')
 tair=mask.*getdap('',fname,'tmp2m',trange,'',jrange,...
                 i1min,i1max,i2min,i2max,i3min,i3max);
 tair(abs(tair)>=missvalue)=NaN;
+pause(2)
 
 %disp('rhum...')
 rhum=mask.*getdap('',fname,'rh2m',trange,'',jrange,...
                 i1min,i1max,i2min,i2max,i3min,i3max);
 rhum(abs(rhum)>=missvalue)=NaN;
+pause(2)
 
 %disp('prate...')
 prate=mask.*getdap('',fname,'pratesfc',trange,'',jrange,...
                 i1min,i1max,i2min,i2max,i3min,i3max);
 prate(abs(prate)>=missvalue)=NaN;
+pause(2)
 
 %disp('down radlw...')
 dradlw=mask.*getdap('',fname,'dlwrfsfc',trange,'',jrange,...
                 i1min,i1max,i2min,i2max,i3min,i3max);
 dradlw(abs(dradlw)>=missvalue)=NaN;
+pause(2)
 
 %disp('up radlw...')
 uradlw=mask.*getdap('',fname,'ulwrfsfc',trange,'',jrange,...
                 i1min,i1max,i2min,i2max,i3min,i3max);
 uradlw(abs(uradlw)>=missvalue)=NaN;
+pause(2)
 
 %disp('down radsw...')
 dradsw=mask.*getdap('',fname,'dswrfsfc',trange,'',jrange,...
                 i1min,i1max,i2min,i2max,i3min,i3max);
 dradsw(abs(dradsw)>=missvalue)=NaN;
+pause(2)
 
 %disp('up radsw...')
 uradsw=mask.*getdap('',fname,'uswrfsfc',trange,'',jrange,...
                 i1min,i1max,i2min,i2max,i3min,i3max);
 uradsw(abs(uradsw)>=missvalue)=NaN;
+pause(2)
 %
 % Transform the variables
 %
diff --git a/Forecast_tools/iteration.m b/Forecast_tools/iteration.m
deleted file mode 100644
index 9c472128..00000000
--- a/Forecast_tools/iteration.m
+++ /dev/null
@@ -1,26 +0,0 @@
-
-%%%% hindcast iterations %%%
-start
-crocotools_param
-
-time=(floor(now)-datenum(Yorig,1,1)-(hdays-1)-timezone/24)*86400;
-
-% shift back restart time after first iteration
-eval(['!cp ','croco_rst.nc',' ','croco_ini.nc'])
-nc=netcdf('croco_ini.nc','write');
-nc{'scrum_time'}(1)=time;
-close(nc)
-
-for i=1:3
-  disp(['I=',num2str(i+1)])
-  eval(['!export OMP_NUM_THREADS=4 ; ./croco ','croco_hindcast.in ',' > ','croco_hindcast_',num2str(date),'.out']);
-
-  % shift back restart time for next iteration
-  eval(['!cp ','croco_rst.nc',' ','croco_ini.nc'])
-  nc=netcdf('croco_ini.nc','write');
-  nc{'scrum_time'}(1)=time;
-  close(nc)
-
-end
-
-return
diff --git a/Forecast_tools/make_GFS.m b/Forecast_tools/make_GFS.m
index 967a7048..ff01b7e2 100644
--- a/Forecast_tools/make_GFS.m
+++ b/Forecast_tools/make_GFS.m
@@ -3,6 +3,8 @@
 % Create and fill frc and bulk files with GFS data.
 % for a forecast run
 %
+% Description  : 3 hourly forecasts / 0.25 deg (00z/06z/12z/18z) 
+%
 % The on-line reference to GFS is at
 % http://nomad3.ncep.noaa.gov/
 % 
@@ -95,6 +97,10 @@ if Download_data==1
 % Download data with DODS (the download matlab routine depends on the OGCM)
 % 
   disp('Download data...')
+  disp('--> NB: if you receive this message during download : ')
+  disp('  " syntax error, unexpected WORD_WORD, expecting SCAN_ATTR or SCAN_DATASET or SCAN_ERROR ..."')
+  disp('  " you maybe reach the rate limit authorized, there is a ban on your IP due to an “Over Rate Limit” violation, try to wait more than 10 minutes before to do it again')  
+  disp([' '])
   download_GFS(today,lonmin,lonmax,latmin,latmax,FRCST_dir,Yorig,it)
 %
 end
@@ -121,16 +127,6 @@ create_forcing(frcname,grdname,CROCO_title,...
                        0,0,0,...
   	               0,0,0,0,0,0)
 nc_frc=netcdf(frcname,'write');
-% for l=1:tlen
-% nc_blk{'tair'}(l,:,:)=0;
-% nc_blk{'rhum'}(l,:,:)=0;
-% nc_blk{'prate'}(l,:,:)=0;
-% nc_blk{'radsw'}(l,:,:)=0;
-% nc_blk{'radlw'}(l,:,:)=0;
-% nc_blk{'wspd'}(l,:,:)=0;
-% nc_frc{'sustr'}(l,:,:)=0;
-% nc_frc{'svstr'}(l,:,:)=0;
-% end
 %
 % Loop on time
 %
@@ -295,13 +291,5 @@ if makeplot==1
   test_forcing(blkname,grdname,'radsw',slides,3,coastfileplot)
 end
 
-
 toc
 
-
-
-
-
-
-
-
diff --git a/Forecast_tools/make_OGCM_frcst.m b/Forecast_tools/make_OGCM_mercator_frcst.m
similarity index 57%
rename from Forecast_tools/make_OGCM_frcst.m
rename to Forecast_tools/make_OGCM_mercator_frcst.m
index 3c11f8e4..ba600e75 100644
--- a/Forecast_tools/make_OGCM_frcst.m
+++ b/Forecast_tools/make_OGCM_mercator_frcst.m
@@ -1,8 +1,24 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
-% Create and fill CROCO clim and bry files with OGCM data.
-% for a forecast run
+% Create and fill CROCO clim and bry files with OGCM data 
+% from mercator for a forecast run
 %
+% On crocotools_param.m, available datasets:
+%
+%   mercator -> 3 options for mercator_type parameter:
+%
+%          3 -->  1/12 deg Mercator global forecast  (See Section 8.)
+%                   (daily forecast from 00h UTC up to 10 days,
+%                                     updated daily at 12h UTC)
+%          4 -->  1/24 deg Mercator Mediterranean analysis/forecast (See Section 8.)
+%                   (daily forecast from 00h UTC up to 9 days,
+%                                      updated daily at 16h UTC)
+%          5 -->      the same than 4 but with detiding postprocessing on current and ssh
+%
+%        Note for 3/4/5:   (now -> 10days              : P1-P10)
+%                          (now -1day                  : P0)
+%                          (7days from now -> now-1day : Near Real Time analysis)
+%                          (more than 15days from now  : Best analysis)
 %
 %  Further Information:
 %  http://www.croco-ocean.org
@@ -31,16 +47,16 @@
 %  Updated   20-Aug-2008 by Matthieu Caillaud & P. Marchesiello
 %  Updated   12-Feb-2016 by P. Marchesiello
 %  Updated   14-Oct-2020 by P. Marchesiello
-%
+%  Updated   18-Mar-2024 by G. Cambon
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%clear all
-%close all
+clear all
+close all
 tic
 %%%%%%%%%%%%%%%%%%%%% USERS DEFINED VARIABLES %%%%%%%%%%%%%%%%%%%%%%%%
 %
 % Common parameters
 %
-crocotools_param
+crocotools_param; 
 %
 % Specific to forecast
 %
@@ -49,29 +65,30 @@ makeplot = 0;
 % Get date
 %
 rundate_str=date;
-rundate=datenum(rundate_str)-datenum(Yorig,1,1);
+date_run=datenum(rundate_str);
+rundate=date_run-datenum(Yorig,1,1);
+date_frcst=rundate;
+%OGCM=mercator
+for i=1:hdays+1
+  time1(i)=date_run-(hdays+1-i);
+end
+if hdays ~= 0
+  % date_deb = rundate - hindcast days : example 2024-02-28T00:00:00Z-PT2D
+  % for a validity date 2 days before run 20240228 00hUTC ...
+  date_deb=strcat(datestr(time1(1+hdays),'yyyy-mm-ddT00:00:00') ,['-PT',num2str(hdays),'D']);
+else
+  date_deb=datestr(time1(1+hdays),'yyyy-mm-ddT00:00:00Z');
+end
 %
 % Set generic OGCM file name
 %
-FRCST_prefix=[OGCM,'_'];
+FRCST_prefix=['mercator_'];
 OGCM_name=[FRCST_dir,FRCST_prefix,num2str(rundate),'.cdf'];
 %
-if strcmp(OGCM,'ECCO')
-  %
-  %  ECCO DODS URL
-  %
-  % Kalman filter
-  %
-  url = 'http://ecco.jpl.nasa.gov/thredds/dodsC/las/kf080/kf080_';
-  %
-elseif strcmp(OGCM,'mercator')
-  %
-  %  MERCATOR : see get_file_python_mercator.m
-  %
-  raw_mercator_name=[FRCST_dir,'raw_motu_mercator_',num2str(rundate),'.nc'];
-else
-  error(['Unknown OGCM: ',OGCM])
-end
+%
+%  MERCATOR : see get_file_python_mercator.m
+%
+raw_mercator_name=[FRCST_dir,'raw_mercator_',date_deb,'.nc'];
 %
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % end of user input  parameters
@@ -95,41 +112,31 @@ pm=nc{'pm'}(:);
 pn=nc{'pn'}(:);
 rmask=nc{'mask_rho'}(:);
 close(nc)
-
 %---------------------------------------------------------------
 % Extract data from the Internet
 %---------------------------------------------------------------
 if Download_data
- %
- % Get model limits
- %
- lonmin=min(min(lon)); 
- lonmax=max(max(lon));
- latmin=min(min(lat));
- latmax=max(max(lat));
- %
- % Download data (matlab routine for download depends on OGCM)
- %
- if strcmp(OGCM,'ECCO')
-  disp('Download data...')
-  eval(['OGCM_name=download_', ...
-         OGCM,'_frcst(lonmin,lonmax,latmin,latmax,',...
-                     'FRCST_dir,FRCST_prefix,url,Yorig);'])
-
- elseif strcmp(OGCM,'mercator')
   %
-  % Use Motu python
+  % Get model limits
+  %
+  lonmin=min(min(lon)); 
+  lonmax=max(max(lon));
+  latmin=min(min(lat));
+  latmax=max(max(lat));
+  %
+  % Download data (matlab routine for download depends on OGCM)
+  %
+  %
+  % Use of Copernicusmarine client (python)
+  %  -> script download_mercator_frcst_python.m
   %
   disp('Download data...')
-    eval(['OGCM_name=download_', ...
-          OGCM,'_frcst_python(pathMotu,user,password,mercator_type,', ...
-                              'motu_url_fcst,service_id_fcst,product_id_fcst,', ...
-                              'hdays,fdays,', ...
-                              'lonmin,lonmax,latmin,latmax,hmax,', ...
-                              'FRCST_dir,FRCST_prefix,raw_mercator_name,Yorig);'])
-  end
+  download_mercator_frcst_python(pathCMC,user,password,mercator_type, ...
+                                 raw_mercator_name,product_id, ...
+                                 hdays,fdays, ...
+                                 lonmin,lonmax,latmin,latmax,hmax, ...
+                                 FRCST_dir,FRCST_prefix,date_frcst,Yorig);
 end
-
 %---------------------------------------------------------------
 % Get OGCM grid 
 %---------------------------------------------------------------
@@ -144,35 +151,28 @@ Z=-nc{'depth'}(:);
 NZ=length(Z);
 NZ=NZ-rmdepth;
 Z=Z(1:NZ);
-
 %---------------------------------------------------------------
 % Get time array 
 %---------------------------------------------------------------
-if strcmp(OGCM,'ECCO')
-  time=[90 270];
-  time_cycle=360;
-  trange=[1 1];
-elseif strcmp(OGCM,'mercator')
-  OGCM_time=nc{'time'}(:);
-  time_cycle=0;
-  delta=1; % >1 if subsampling
-  trange=[1:delta:length(OGCM_time)];
-  time=zeros(length(trange),1);
-  for i=1:length(trange)
-    time(i)=OGCM_time(trange(i));
-  end
+OGCM_time=nc{'time'}(:);
+time_cycle=0;
+delta=1; % >1 if subsampling
+trange=[1:delta:length(OGCM_time)];
+time=zeros(length(trange),1);
+for i=1:length(trange)
+  time(i)=OGCM_time(trange(i));
 end
 close(nc)
-
 %---------------------------------------------------------------
 % Initial file 
 %---------------------------------------------------------------
 if makeini==1
-  ininame=[ini_prefix,num2str(rundate),nc_suffix];
-  disp(['Create an initial file for ',num2str(rundate);])
+  %
+  ininame=[ini_prefix,num2str(date_frcst),nc_suffix];
+  disp(['-> Create an initial file for date ',num2str(date_deb);])
   create_inifile(ininame,grdname,CROCO_title,...
                  theta_s,theta_b,hc,N,...
-                 rundate-hdays,'clobber',vtransform); % starts at 00:00
+                 date_frcst-hdays,'clobber',vtransform); % starts at 00:00
   nc_ini=netcdf(ininame,'write');
  
   interp_OGCM_frcst(OGCM_name,Roa,interp_method,...
@@ -180,19 +180,22 @@ if makeini==1
               nc_ini,[],lon,lat,angle,h,pm,pn,rmask,...
               1,vtransform,obc)
   close(nc_ini)
-  if (isoctave == 0)
-      eval(['!cp ',ininame,' ',ini_prefix,'hct',nc_suffix])
-  else
-     eval(['cp ',ininame,' ',ini_prefix,'hct',nc_suffix])
+  if hdays ~= 0
+    if (isoctave == 0)
+      eval(['!cp ',ininame,' ',ini_prefix,'hct_',num2str(date_frcst),nc_suffix])
+    else
+      eval(['cp ',ininame,' ',ini_prefix,'hct_',num2str(date_frcst),nc_suffix])
+    end
   end 
 end
-
 %---------------------------------------------------------------
 % Clim and Bry files
 %---------------------------------------------------------------
 if makeclim==1 | makebry==1
   if makebry==1
-    bryname=[bry_prefix,num2str(rundate),nc_suffix];
+    bryname=[bry_prefix,num2str(date_frcst),nc_suffix];
+    disp([' '])
+    disp(['-> Create bry files from ',num2str(date_deb);])
     create_bryfile(bryname,grdname,CROCO_title,[1 1 1 1],...
                    theta_s,theta_b,hc,N,...
                    time,time_cycle,'clobber',vtransform);
@@ -201,7 +204,8 @@ if makeclim==1 | makebry==1
     nc_bry=[];
   end
   if makeclim==1
-    clmname=[clm_prefix,num2str(rundate),nc_suffix];
+    clmname=[clm_prefix,num2str(date_frcst),nc_suffix];
+    disp(['-> Create clim files from ',num2str(date_deb);])
     create_climfile(clmname,grdname,CROCO_title,...
                     theta_s,theta_b,hc,N,...
                     time,time_cycle,'clobber',vtransform);
@@ -209,18 +213,16 @@ if makeclim==1 | makebry==1
   else
     nc_clm=[];
   end
-
 %---------------------------------------------------------------
 % Perform interpolations for all selected records
 %---------------------------------------------------------------
-for tndx=1:length(time)
-  disp([' Time step : ',num2str(tndx),' of ',num2str(length(time)),' :'])
-  interp_OGCM_frcst(OGCM_name,Roa,interp_method,...
-                    lonU,latU,lonV,latV,lonT,latT,Z,trange(tndx),...
-		    nc_clm,nc_bry,lon,lat,angle,h,pm,pn,rmask, ...
-                    tndx,vtransform,obc)
-end
-
+  for tndx=1:length(time)
+    disp([' Time step : ',num2str(tndx),' of ',num2str(length(time)),' :'])
+    interp_OGCM_frcst(OGCM_name,Roa,interp_method,...
+                      lonU,latU,lonV,latV,lonT,latT,Z,trange(tndx),...
+                      nc_clm,nc_bry,lon,lat,angle,h,pm,pn,rmask, ...
+                      tndx,vtransform,obc)
+  end
 %
 % Close CROCO files
 %
@@ -239,21 +241,21 @@ if makeplot==1
   disp(' ')
   disp(' Make a few plots...')
   if makeini==1
-    ininame=[ini_prefix,num2str(rundate),nc_suffix];
+    ininame=[ini_prefix,num2str(date_frcst),nc_suffix];
     figure
     test_clim(ininame,grdname,'temp',1,coastfileplot)
     figure
     test_clim(ininame,grdname,'salt',1,coastfileplot)
   end
   if makeclim==1
-    clmname=[clm_prefix,num2str(rundate),nc_suffix];
+    clmname=[clm_prefix,num2str(date_frcst),nc_suffix];
     figure
     test_clim(clmname,grdname,'temp',1,coastfileplot)
     figure
     test_clim(clmname,grdname,'salt',1,coastfileplot)
   end
   if makebry==1
-    bryname=[bry_prefix,num2str(rundate),nc_suffix];
+    bryname=[bry_prefix,num2str(frcst),nc_suffix];
     figure
     test_bry(bryname,grdname,'temp',1,obc)
     figure
diff --git a/Forecast_tools/make_forecast.m b/Forecast_tools/make_forecast.m
index 4f1c4ff0..4f449259 100644
--- a/Forecast_tools/make_forecast.m
+++ b/Forecast_tools/make_forecast.m
@@ -1,86 +1,90 @@
-%
-%  make_forecast.m
-%
-%  Preparation of the files for the forecast system:
-%     - launch make_OGCM_frcst and make_GFS
-% 
-%  Further Information:  
-%  http://www.croco-ocean.org
-%  
-%  This file is part of CROCOTOOLS
-%
-%  CROCOTOOLS is free software; you can redistribute it and/or modify
-%  it under the terms of the GNU General Public License as published
-%  by the Free Software Foundation; either version 2 of the License,
-%  or (at your option) any later version.
-%
-%  CROCOTOOLS is distributed in the hope that it will be useful, but
-%  WITHOUT ANY WARRANTY; without even the implied warranty of
-%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-%  GNU General Public License for more details.
-%
-%  You should have received a copy of the GNU General Public License
-%  along with this program; if not, write to the Free Software
-%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-%  MA  02111-1307  USA
-%
-%  Copyright (c) 2006 by Pierrick Penven 
-%  e-mail:Pierrick.Penven@ird.fr  
-%
-%  Updated    8-Sep-2006 by Pierrick Penven
-%  Updated   12-Feb-2016 by P. Marchesiello
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-start
-tic
-crocotools_param
-
-%
-% Get the lateral boundary conditions
-%
-make_OGCM_frcst
-%
-% Get the surface forcing
-%
-make_GFS
-%
-% Copy the resulting files
-%
-rundate=datenum(date)-datenum(Yorig,1,1); nc_suffix='.nc';
-eval(['!cp ',bry_prefix,num2str(rundate),nc_suffix,' ',bry_prefix,'0',nc_suffix])
-eval(['!cp ',blk_prefix,num2str(rundate),nc_suffix,' ',blk_prefix,'0',nc_suffix])
-eval(['!cp ',frc_prefix,num2str(rundate),nc_suffix,' ',frc_prefix,'0',nc_suffix])
-eval(['!cp ',clm_prefix,num2str(rundate),nc_suffix,' ',clm_prefix,'0',nc_suffix])
-eval(['!cp ',ini_prefix,num2str(rundate),nc_suffix,' ',ini_prefix,'0',nc_suffix])
-%
-% Add tidal data in forcing file 
-%
-if add_tides_fcst==1
-  disp(['Add tidal data ... '])
-  frcname=[CROCO_files_dir,'croco_frc_GFS_0.nc'];
-  [Y,M,d,h,mi,s] = datevec(date);
-  add_tidal_data(tidename,grdname,frcname,Ntides,tidalrank, ...
-                 Yorig,Y,M,coastfileplot,sal_tides,salname)
-end
-%
-%  Set the clock right: 
-%  - copy croco_ini.nc in FORECAST/croco_ini.nc if not available
-%  - update scrum_time in FORECAST/croco_ini.nc using timezone information
-%    In this case, initial scrum_time is the UTC time corresponding to 
-%    local midnight of day=now-hdays (scrum_time needs to be a UTC time
-%    since all forcing fields are referenced to UTC time). 
-%
-disp('Set the clock right in initial file using Time Zone information')
-time=(floor(now)-datenum(Yorig,1,1)-hdays-timezone/24)*86400;
-ininame='FORECAST/croco_ini.nc';
-nc=netcdf(ininame,'write');
-if isempty(nc)
-  rundate=datenum(date)-datenum(Yorig,1,1); nc_suffix='.nc';
-  disp('No restart file available in CROCO_FILES, copy OGCM inifile')
-  eval(['!cp ',ini_prefix,num2str(rundate),nc_suffix,' ',ininame])
-  nc=netcdf(ininame,'write');
-end
-nc{'scrum_time'}(:)=time;
-close(nc)
-toc
-return
+%
+%  make_forecast.m
+%
+%  Preparation of the files for the forecast system:
+%     - launch make_OGCM_frcst and make_GFS
+% 
+%  Further Information:  
+%  http://www.croco-ocean.org
+%  
+%  This file is part of CROCOTOOLS
+%
+%  CROCOTOOLS is free software; you can redistribute it and/or modify
+%  it under the terms of the GNU General Public License as published
+%  by the Free Software Foundation; either version 2 of the License,
+%  or (at your option) any later version.
+%
+%  CROCOTOOLS is distributed in the hope that it will be useful, but
+%  WITHOUT ANY WARRANTY; without even the implied warranty of
+%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+%  GNU General Public License for more details.
+%
+%  You should have received a copy of the GNU General Public License
+%  along with this program; if not, write to the Free Software
+%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+%  MA  02111-1307  USA
+%
+%  Copyright (c) 2006 by Pierrick Penven 
+%  e-mail:Pierrick.Penven@ird.fr  
+%
+%  Updated    8-Sep-2006 by Pierrick Penven
+%  Updated   12-Feb-2016 by P. Marchesiello
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+start
+tic
+crocotools_param
+
+%
+% Get the lateral boundary conditions
+%
+make_OGCM_mercator_frcst
+%
+% Get the surface forcing
+%
+make_GFS
+%
+% Copy the resulting files
+%
+rundate=datenum(date)-datenum(Yorig,1,1); 
+nc_suffix='.nc';
+eval(['!cp ',bry_prefix,num2str(rundate),nc_suffix,' ',bry_prefix,'0',nc_suffix])
+eval(['!cp ',blk_prefix,num2str(rundate),nc_suffix,' ',blk_prefix,'0',nc_suffix])
+eval(['!cp ',frc_prefix,num2str(rundate),nc_suffix,' ',frc_prefix,'0',nc_suffix])
+eval(['!cp ',clm_prefix,num2str(rundate),nc_suffix,' ',clm_prefix,'0',nc_suffix])
+eval(['!cp ',ini_prefix,num2str(rundate),nc_suffix,' ',ini_prefix,'0',nc_suffix])
+%
+% Add tidal data in forcing file 
+%
+if add_tides_fcst==1
+  disp(['Add tidal data ... '])
+  frcname=[CROCO_files_dir,'croco_frc_GFS_0.nc'];
+  [Y,M,d,h,mi,s] = datevec(date);
+  add_tidal_data(tidename,grdname,frcname,Ntides,tidalrank, ...
+                 Yorig,Y,M,coastfileplot,sal_tides,salname)
+end
+%
+%  Set the clock right: 
+%  - copy croco_ini.nc in FORECAST/croco_ini.nc if not available
+%  - update scrum_time in FORECAST/croco_ini.nc using timezone information
+%    In this case, initial scrum_time is the UTC time corresponding to 
+%    local midnight of day=now-hdays (scrum_time needs to be a UTC time
+%    since all forcing fields are referenced to UTC time). 
+%
+disp('Set the clock right in initial file using Time Zone information')
+time=(floor(now)-datenum(Yorig,1,1)-hdays-timezone/24)*86400;
+if ~exist('FORECAST', 'dir')
+  mkdir('FORECAST');
+end
+ininame='FORECAST/croco_ini.nc';
+nc=netcdf(ininame,'write');
+if isempty(nc)
+  rundate=datenum(date)-datenum(Yorig,1,1); nc_suffix='.nc';
+  disp('No restart file available in CROCO_FILES, copy OGCM inifile')
+  eval(['!cp ',ini_prefix,num2str(rundate),nc_suffix,' ',ininame])
+  nc=netcdf(ininame,'write');
+end
+nc{'scrum_time'}(:)=time;
+close(nc)
+toc
+return
diff --git a/Forecast_tools/motuclient-python/LICENSE b/Forecast_tools/motuclient-python/LICENSE
deleted file mode 100755
index f0156c53..00000000
--- a/Forecast_tools/motuclient-python/LICENSE
+++ /dev/null
@@ -1,165 +0,0 @@
-                   GNU LESSER GENERAL PUBLIC LICENSE
-                       Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-
-  This version of the GNU Lesser General Public License incorporates
-the terms and conditions of version 3 of the GNU General Public
-License, supplemented by the additional permissions listed below.
-
-  0. Additional Definitions.
-
-  As used herein, "this License" refers to version 3 of the GNU Lesser
-General Public License, and the "GNU GPL" refers to version 3 of the GNU
-General Public License.
-
-  "The Library" refers to a covered work governed by this License,
-other than an Application or a Combined Work as defined below.
-
-  An "Application" is any work that makes use of an interface provided
-by the Library, but which is not otherwise based on the Library.
-Defining a subclass of a class defined by the Library is deemed a mode
-of using an interface provided by the Library.
-
-  A "Combined Work" is a work produced by combining or linking an
-Application with the Library.  The particular version of the Library
-with which the Combined Work was made is also called the "Linked
-Version".
-
-  The "Minimal Corresponding Source" for a Combined Work means the
-Corresponding Source for the Combined Work, excluding any source code
-for portions of the Combined Work that, considered in isolation, are
-based on the Application, and not on the Linked Version.
-
-  The "Corresponding Application Code" for a Combined Work means the
-object code and/or source code for the Application, including any data
-and utility programs needed for reproducing the Combined Work from the
-Application, but excluding the System Libraries of the Combined Work.
-
-  1. Exception to Section 3 of the GNU GPL.
-
-  You may convey a covered work under sections 3 and 4 of this License
-without being bound by section 3 of the GNU GPL.
-
-  2. Conveying Modified Versions.
-
-  If you modify a copy of the Library, and, in your modifications, a
-facility refers to a function or data to be supplied by an Application
-that uses the facility (other than as an argument passed when the
-facility is invoked), then you may convey a copy of the modified
-version:
-
-   a) under this License, provided that you make a good faith effort to
-   ensure that, in the event an Application does not supply the
-   function or data, the facility still operates, and performs
-   whatever part of its purpose remains meaningful, or
-
-   b) under the GNU GPL, with none of the additional permissions of
-   this License applicable to that copy.
-
-  3. Object Code Incorporating Material from Library Header Files.
-
-  The object code form of an Application may incorporate material from
-a header file that is part of the Library.  You may convey such object
-code under terms of your choice, provided that, if the incorporated
-material is not limited to numerical parameters, data structure
-layouts and accessors, or small macros, inline functions and templates
-(ten or fewer lines in length), you do both of the following:
-
-   a) Give prominent notice with each copy of the object code that the
-   Library is used in it and that the Library and its use are
-   covered by this License.
-
-   b) Accompany the object code with a copy of the GNU GPL and this license
-   document.
-
-  4. Combined Works.
-
-  You may convey a Combined Work under terms of your choice that,
-taken together, effectively do not restrict modification of the
-portions of the Library contained in the Combined Work and reverse
-engineering for debugging such modifications, if you also do each of
-the following:
-
-   a) Give prominent notice with each copy of the Combined Work that
-   the Library is used in it and that the Library and its use are
-   covered by this License.
-
-   b) Accompany the Combined Work with a copy of the GNU GPL and this license
-   document.
-
-   c) For a Combined Work that displays copyright notices during
-   execution, include the copyright notice for the Library among
-   these notices, as well as a reference directing the user to the
-   copies of the GNU GPL and this license document.
-
-   d) Do one of the following:
-
-       0) Convey the Minimal Corresponding Source under the terms of this
-       License, and the Corresponding Application Code in a form
-       suitable for, and under terms that permit, the user to
-       recombine or relink the Application with a modified version of
-       the Linked Version to produce a modified Combined Work, in the
-       manner specified by section 6 of the GNU GPL for conveying
-       Corresponding Source.
-
-       1) Use a suitable shared library mechanism for linking with the
-       Library.  A suitable mechanism is one that (a) uses at run time
-       a copy of the Library already present on the user's computer
-       system, and (b) will operate properly with a modified version
-       of the Library that is interface-compatible with the Linked
-       Version.
-
-   e) Provide Installation Information, but only if you would otherwise
-   be required to provide such information under section 6 of the
-   GNU GPL, and only to the extent that such information is
-   necessary to install and execute a modified version of the
-   Combined Work produced by recombining or relinking the
-   Application with a modified version of the Linked Version. (If
-   you use option 4d0, the Installation Information must accompany
-   the Minimal Corresponding Source and Corresponding Application
-   Code. If you use option 4d1, you must provide the Installation
-   Information in the manner specified by section 6 of the GNU GPL
-   for conveying Corresponding Source.)
-
-  5. Combined Libraries.
-
-  You may place library facilities that are a work based on the
-Library side by side in a single library together with other library
-facilities that are not Applications and are not covered by this
-License, and convey such a combined library under terms of your
-choice, if you do both of the following:
-
-   a) Accompany the combined library with a copy of the same work based
-   on the Library, uncombined with any other library facilities,
-   conveyed under the terms of this License.
-
-   b) Give prominent notice with the combined library that part of it
-   is a work based on the Library, and explaining where to find the
-   accompanying uncombined form of the same work.
-
-  6. Revised Versions of the GNU Lesser General Public License.
-
-  The Free Software Foundation may publish revised and/or new versions
-of the GNU Lesser General Public License from time to time. Such new
-versions will be similar in spirit to the present version, but may
-differ in detail to address new problems or concerns.
-
-  Each version is given a distinguishing version number. If the
-Library as you received it specifies that a certain numbered version
-of the GNU Lesser General Public License "or any later version"
-applies to it, you have the option of following the terms and
-conditions either of that published version or of any later version
-published by the Free Software Foundation. If the Library as you
-received it does not specify a version number of the GNU Lesser
-General Public License, you may choose any version of the GNU Lesser
-General Public License ever published by the Free Software Foundation.
-
-  If the Library as you received it specifies that a proxy can decide
-whether future versions of the GNU Lesser General Public License shall
-apply, that proxy's public statement of acceptance of any version is
-permanent authorization for you to choose that version for the
-Library.
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/MANIFEST.in b/Forecast_tools/motuclient-python/MANIFEST.in
deleted file mode 100755
index 4f24fe08..00000000
--- a/Forecast_tools/motuclient-python/MANIFEST.in
+++ /dev/null
@@ -1,8 +0,0 @@
-# Author: CLS, smarty@cls.fr
-include LICENSE
-include pom.xml
-include README.md
-include setup.cfg
-include setup.py
-include src/python/motu_utils/cfg/log.ini
-include src/python/motu_utils/cfg/messages.properties
diff --git a/Forecast_tools/motuclient-python/README.md b/Forecast_tools/motuclient-python/README.md
deleted file mode 100755
index d1cabd5f..00000000
--- a/Forecast_tools/motuclient-python/README.md
+++ /dev/null
@@ -1,334 +0,0 @@
-# Motu Client Python Project 
-@author Product owner <tjolibois@cls.fr>  
-@author Scrum master, software architect <smarty@cls.fr>  
-@author Quality assurance, continuous integration manager <smarty@cls.fr>  
-
->How to read this file? 
-Use a markdown reader: 
-plugins [chrome](https://chrome.google.com/webstore/detail/markdown-preview/jmchmkecamhbiokiopfpnfgbidieafmd?utm_source=chrome-app-launcher-info-dialog) exists (Once installed in Chrome, open URL chrome://extensions/, and check "Markdown Preview"/Authorise access to file URL.), 
-or for [firefox](https://addons.mozilla.org/fr/firefox/addon/markdown-viewer/)  (anchor tags do not work)
-and also plugin for [notepadd++](https://github.com/Edditoria/markdown_npp_zenburn).
-
->Be careful: Markdown format has issue while rendering underscore "\_" character which can lead to bad variable name or path.
-
-
-# Summary
-* [Overview](#Overview)
-* [Build](#Build)
-* [Installation](#Installation)
-    * [Prerequisites](#InstallationPre)
-    * [Using PIP](#InstallationPIP)
-    * [From tar.gz file](#InstallationTGZ)
-* [Configuration](#Configuration)
-* [Usage and options](#Usage)
-    * [Usage from PIP installation](#UsagePIP)
-    * [Usage from tar.gz installation](#UsageTGZ)
-* [Usage examples](#UsageExamples)
-    * [Download](#UsageExamplesDownload)
-    * [GetSize](#UsageExamplesGetSize)	
-    * [DescribeProduct](#UsageExamplesDescribeProduct)
-* [Licence](#Licence)
-* [Troubleshooting](#Troubleshooting)
-    * [Unable to download the latest version watched on GitHub from PIP](#Troubleshooting)  
-    * [From Windows, Parameter error](#TroubleshootingWinArgErr)
-
-# <a name="Overview">Overview</a>
-Motu client "motuclient-python" is a python script used to connect to Motu HTTP server in order to:  
-
-* __extract__ the data of a dataset, with geospatial, temporal and variable criterias (default option)   
-* __get the size__ of an extraction with geospatial, temporal and variable criterias  
-* __get information__ about a dataset  
-
-This program can be integrated into a processing chain in order to automate the downloading of products via the Motu.  
-  
-  
-# <a name="Build">Build</a>  
-From the root folder runs the command:  
-  
-```
-./patchPOMtoBuild.sh  
-mvn clean install -Dmaven.test.skip=true
-[...]
-[INFO] BUILD SUCCESS
-[...]
-```  
-
-This creates two archives in the target folder:
-
-* motuclient-python-$version-$buildTimestamp-src.tar.gz: Archive containing all the source code
-* motuclient-python-$version-$buildTimestamp-bin.tar.gz: Archive ready to be installed
-
-
-
-# <a name="Installation">Installation</a> 
-
-## <a name="InstallationPre">Prerequisites</a>
-You must use python version 2.7.X or later.  
-This program is fully compatible with Python 3.X versions.  
-There is two methods to install the client, by using PIP or from a tar.gz file.  
- [setuptools](#InstallationSetuptools) python package has be installed in order to display the motuclient version successfully.    
-  
-## <a name="InstallationPIP">Using PIP</a>
-Python Package Index is used to ease installation.  
-If your host needs a PROXY set it, for example:  
-```
-export HTTPS_PROXY=http://myCompanyProxy:8080  
-```  
-
-Then run:  
-  
-```
-pip install motuclient  
-```
-  
-Now "motuclient" is installed, you can [configured it](#Configuration) and [use it](#UsagePIP).
-  
-  
-## <a name="InstallationTGZ">From tar.gz file</a>
-Deploy the archive (file motuclient-python-$version-bin.tar.gz available from [GitHub release](https://github.com/clstoulouse/motu-client-python/releases)) in the directory of your choice.  
-```  
-tar xvzf motuclient-python-$version-$buildTimestamp-bin.tar.gz
-```  
-
-Create a [configuration file](#Configuration) and set the user and password to use to connect to the CAS server.   
-
-## <a name="InstallationSetuptools">Install setuptools python package</a>
-"[Setuptools](https://pypi.python.org/pypi/setuptools)" python package has to be installed in order to display the version with option --version, here is how to install it:    
- 
-If your host needs a PROXY set it, for example:  
-```
-export HTTPS_PROXY=http://myCompanyProxy:8080  
-```  
-
-Then run:  
-
-```  
-sudo apt install python-pip  
-pip install --upgrade setuptools  
-```  
-
-# <a name="Configuration">Configuration</a>  
-All parameters can be defined as command line options or can be written in a configuration file.
-The configuration file is a .ini file. This file is located in the following directory:  
-
-* on __Unix__ platforms: $HOME/motuclient/motuclient-python.ini
-* on __Windows__ platforms: %USERPROFILE%\motuclient\motuclient-python.ini
-  
-The expected structure of file is:  
-``` 
-[Main]  
-# Motu credentials  
-user=john  
-pwd=secret  
-
-motu=http://motu-ip-server:port/motu-web/Motu  
-service_id=GLOBAL_ANALYSIS_FORECAST_PHY_001_024-TDS   
-product_id=global-analysis-forecast-phy-001-024-hourly-t-u-v-ssh  
-date_min=2019-03-27  
-date_max=2019-03-27  
-latitude_min=-30  
-latitude_max=40.0  
-longitude_min=-10  
-longitude_max=179.9166717529297    
-depth_min=0.493    
-depth_max=0.4942  
-# Empty or non set means all variables  
-# 1 or more variables separated by a coma and identified by their standard name  
-variable=sea_water_potential_temperature,sea_surface_height_above_geoid 
-# Accept relative or absolute path. The dot character "." is the current folder  
-out_dir=./out_dir  
-out_name=test.nc  
-
-# Logging
-# https://docs.python.org/3/library/logging.html#logging-levels  
-# log_level=X {CRITICAL:50, ERROR:40, WARNING:30, INFO:20, DEBUG:10, TRACE:0}   
-log_level=0   
-
-# block_size block used to download file (integer expressing bytes) default=65535
-# block_size=65535  
-socket_timeout=120000  
-
-# Http proxy to connect to Motu server
-# proxy_server=proxy.domain.net:8080  
-# proxy_user=john  
-# proxy_pwd=secret  
-``` 
-
-A configuration file in another location can be specified by the `--config-file` option. It is even possible to split the configuration into two or more files. This is useful, for example, to keep server configuration in one file and dataset configuration in another:
-```  
-./motuclient.py --config-file ~/server.ini --config-file ~/mercator.ini
-``` 
-If by chance there is a parameter listed in both configuration files, the value in the last file (e.g. `mercator.ini`) is the one actually used.
-
-# <a name="Usage">Usage</a>  
-Starts the motu python client.  
-
-## <a name="UsagePIP">Usage from PIP installation</a>  
-Since version 1.8.0:  
-```  
-motuclient -h  
-motuclient [options]
-```  
-Before version 1.8.0:  
-```  
-python -m motu-client -h  
-python -m motu-client [options]
-```  
-  
-[Options](#UsageOptions) are listed below.  
-Method to used when it has been installed with [PIP method](#InstallationPIP).  
-
-
-## <a name="UsageTGZ">Usage from tar.gz installation</a>  
-```  
-./motuclient.py  -h  
-motuclient.py [options]
-```  
-Method to used when it has been installed with [tar.gz method](#InstallationTGZ).  
-Usefull if host is offline and has no Internet access.
-
-### <a name="UsageOptions">__Options:__</a>  
-
-
-* __-h, --help__            show this help message and exit  
-* __-q, --quiet__           print logs with level WARN in stdout, used to prevent any output in stdout  
-* __--noisy__               print logs with level TRACE in stdout  
-* __--verbose__             print logs with level DEBUG in stdout  
-* __--version__             show program's version number and exit, [setuptools](#InstallationSetuptools) python package has be installed to run it successfully    
-
-* __--proxy-server=PROXY_SERVER__ Proxy server (url) used to contact Motu 
-* __--proxy-user=PROXY_USER__ Proxy user name (string)
-* __--proxy-pwd=PROXY_PWD__ Proxy password (string)  
-
-* __--auth-mode=AUTH_MODE__  the authentication mode: [default: cas]  
-  * __none__ for no authentication
-  * __basic__ for basic authentication
-  * __cas__ for Central Authentication Service  
-* __-u USER, --user=USER__  User name (string) for the specified authentication mode
-* __-p PWD, --pwd=PWD__ the user password (string) for the specified authentication mode. Special characters can be used.  
-  * __Example 1__ From a Windows batch, if your password contains a percent character, double the percent character: If password is CMS2017@%! then enter -u username-p CMS2017@%%! 
-  * __Example 2__ From a Windows batch, if your password contains a space character, set password between double quotes: If password is CMS2017 @%! then enter -u username-p "CMS2017 @%%!"
-  * __Example 3__ From a Linux shell, if your password contains a space character, set password between simple quotes: If password is CMS2017 @%! then enter -u username-p 'CMS2017 @%!'
-
-* __-m MOTU, --motu=MOTU__ Motu server url, e.g. "-m http://localhost:8080/motu-web/Motu"  
-* __-s SERVICE_ID, --service-id=SERVICE_ID__ The service identifier (string), e.g. -s Mercator_Ocean_Model_Global-TDS  
-* __-d PRODUCT_ID, --product-id=PRODUCT_ID__ The product (data set) to download (string), e.g. -d dataset-mercator-psy4v3-gl12-bestestimate-uv  
-* __-t DATE_MIN, --date-min=DATE_MIN__ The min date with optional hour resolution (string following format YYYY-MM-DD [HH:MM:SS]), e.g. -t "2016-06-10" or -t "2016-06-10 12:00:00". Be careful to not forget double quotes around the date.     
-* __-T DATE_MAX, --date-max=DATE_MAX__ The max date with optional hour resolution (string following format YYYY-MM-DD  [HH:MM:SS ]), e.g. -T "2016-06-11" or -T "2016-06-10 12:00:00".  Be careful to not forget double quotes around the date.      
-* __-y LATITUDE_MIN, --latitude-min=LATITUDE_MIN__ The min latitude (float in the interval  [-90 ; 90 ]), e.g. -y -80.5  
-* __-Y LATITUDE_MAX, --latitude-max=LATITUDE_MAX__ The max latitude (float in the interval  [-90 ; 90 ]), e.g. -Y 80.5   
-* __-x LONGITUDE_MIN, --longitude-min=LONGITUDE_MIN__ The min longitude (float in the interval [-180 ; 180 ]), e.g. -x -180      
-* __-X LONGITUDE_MAX, --longitude-max=LONGITUDE_MAX__ The max longitude (float in the interval  [-180 ; 180 ]), e.g. -X 35.5      
-* __-z DEPTH_MIN, --depth-min=DEPTH_MIN__ The min depth (float in the interval  [0 ; 2e31 ] or string 'Surface'), e.g. -z 0.49  
-* __-Z DEPTH_MAX, --depth-max=DEPTH_MAX__ The max depth (float in the interval  [0 ; 2e31 ] or string 'Surface'), e.g. -Z 0.50
-* __-v VARIABLE, --variable=VARIABLE__ The variable (list of strings), e.g. -v salinity -v sst  
-* __-S, --sync-mode__ Sets the download mode to synchronous (not recommended). If this parameter is set, Motu server is called with parameter [console](https://github.com/clstoulouse/motu#download-product). Otherwise
-, Motu server is called with parameter [status](https://github.com/clstoulouse/motu#download-product).   
-
-
-* __-o OUT_DIR, --out-dir=OUT_DIR__ The output dir where result (download file) is written (string). If it starts with "console", behaviour is the same as with --console-mode.       
-* __-f OUT_NAME, --out-name=OUT_NAME__ The output file name (string)  
-* __--console-mode__ Write result on stdout. In case of an extraction, write the nc file http URL where extraction result can be downloaded. In case of a getSize or a describeProduct request, display the XML result.
-
-* __-D, --describe-product__ Get all updated information on a dataset. Output is in XML format, [API details](https://github.com/clstoulouse/motu#describe-product)  
-* __--size__ Get the size of an extraction. Output is in XML format, [API details](https://github.com/clstoulouse/motu#get-size)
-
-* __--block-size=BLOCK_SIZE__ The block used to download file (integer expressing bytes), default=65535 bytes  
-* __--socket-timeout=SOCKET_TIMEOUT__ Set a timeout on blocking socket operations (float expressing seconds)  
-* __--user-agent=USER_AGENT__ Set the identification string (user-agent) for HTTP requests. By default this value is 'Python-urllib/x.x' (where x.x is the version of the python interpreter)  
-  
-  
-# <a name="UsageExamples">Usage examples</a>   
-In the following examples, variable ${MOTU\_USER} and ${MOTU\_PASSWORD} are user name and user password used to connect to the CAS server for single sign on.  
-${MOTU\_SERVER\_URL} is the URL on the MOTU HTTP(s) server. For example http://localhost:8080/motu-web/Motu.  
-Commands "./motuclient.py" has to be replaced by "python -m motuclient" if it has been installed with [PIP method](#UsagePIP).  
-
-
-## <a name="UsageExamplesDownload">Download</a>  
-### Download and save extracted file on the local machine
-This command writes the extraction result data in file: /data/test.nc  
-
-```  
-./motuclient.py --verbose --auth-mode=none -m ${MOTU_SERVER_URL} -s HR_MOD_NCSS-TDS -d HR_MOD -z 0.49 -Z 0.50 -x -70 -X 25 -y -75 -Y 10 -t "2016-06-10" -T "2016-06-11" -v salinity -o /data -f test.nc
-``` 
-
-### Display on stdout the HTTP(s) URL of the NC file available on the Motu server
-The HTTP(s) URL is displayed on stdout. This URL is a direct link to the file which is available to be downloaded.  
-
-```  
-./motuclient.py --quiet --auth-mode=cas -u ${MOTU_USER} -p ${MOTU_PASSWORD}  -m ${MOTU_SERVER_URL} -s HR_MOD_NCSS-TDS -d HR_MOD -z 0.49 -Z 0.50 -x -70 -X 25 -y -75 -Y 10 -t "2016-06-10" -T "2016-06-11" -v salinity -o console
-``` 
-
-## <a name="UsageExamplesGetSize">GetSize</a>  
-See [https://github.com/clstoulouse/motu#ClientAPI_GetSize](https://github.com/clstoulouse/motu#ClientAPI_GetSize) for more details about XML result.  
-
-### Get the XML file which contains the extraction size on the local machine
-```  
-./motuclient.py --size --auth-mode=cas -u ${MOTU_USER} -p ${MOTU_PASSWORD}  -m ${MOTU_SERVER_URL} -s HR_MOD_NCSS-TDS -d HR_MOD -z 0.49 -Z 0.50 -x -70 -X 25 -y -75 -Y 10 -t "2016-06-10" -T "2016-06-11" -v salinity -o /data -f getSizeResult.xml
-``` 
-
-### Display the extraction size as XML on stdout
-```  
-./motuclient.py --quiet --size --auth-mode=cas -u ${MOTU_USER} -p ${MOTU_PASSWORD}  -m ${MOTU_SERVER_URL} -s HR_MOD_NCSS-TDS -d HR_MOD -z 0.49 -Z 0.50 -x -70 -X 25 -y -75 -Y 10 -t "2016-06-10" -T "2016-06-11" -v salinity -o console
-``` 
-
-
-## <a name="UsageExamplesDescribeProduct">DescribeProduct</a>  
-See [https://github.com/clstoulouse/motu#describe-product](https://github.com/clstoulouse/motu#describe-product) for more details about XML result.  
-
-### Get the XML file which contains the dataset description on the local machine
-```  
-./motuclient.py -D --auth-mode=cas -u ${MOTU_USER} -p ${MOTU_PASSWORD}  -m ${MOTU_SERVER_URL} -s HR_MOD_NCSS-TDS -d HR_MOD -o /data -f describeProductResult.xml
-``` 
-
-### Display the dataset description XML result on stdout
-```  
-./motuclient.py --quiet -D --auth-mode=cas -u ${MOTU_USER} -p ${MOTU_PASSWORD}  -m ${MOTU_SERVER_URL} -s HR_MOD_NCSS-TDS -d HR_MOD -o console
-``` 
-
-
-
-
-# <a name="Licence">Licence</a> 
-This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.  
-  
-This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.  
-  
-You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.  
-
-# <a name="Troubleshooting">Troubleshooting</a>  
-# <a name="TroubleshootingPIPCache">Unable to download the latest version watched on GitHub from PIP</a>
-Example:  
-```  
-pip install motuclient  
-Collecting motuclient  
-  Using cached https://test-files.pythonhosted.org/packages/4a/7d/41c3bdd973baf119371493c193248349c9b7107477ebf343f3889cabbf48/motuclient-X.Y.Z.zip  
-Installing collected packages: motuclient  
-  Running setup.py install for motuclient ... done  
-Successfully installed motuclient-X.Y.Z  
-```  
-  
-Clear your PIP cache: On Windows, delete the folder %HOMEPATH%/pip. On archlinux pip cache is located at ~/.cache/pip.
-After re run the command:  
-```  
-pip install motuclient  
-Collecting motuclient  
-  Using https://test-files.pythonhosted.org/packages/4a/7d/41c3bdd973baf119371493c193248349c9b7107477ebf343f3889cabbf48/motuclient-X.Y.Z.zip  
-Installing collected packages: motuclient  
-  Running setup.py install for motuclient ... done  
-Successfully installed motuclient-X.Y.Z  
-``` 
-
-# <a name="TroubleshootingWinArgErr">From Windows, Parameter error</a>
-From Windows, the command "motuclient.py --version" returns an error.  
-10:44:24 [ERROR] Execution failed: [Excp 13] User (option 'user') is mandatory when 'cas' authentication is set. Please provide it.
-
-__Analyse:__  
-This issue comes from the fact that Windows command line does not pass parameters to python command.  
-  
-__Solution:__  
-``` 
-Edit the Windows Registry Key "HKEY_CLASSES_ROOT\py_auto_file\shell\open\command" and append at the end of the value %*  
-Exemple: "C:\dvltSoftware\python\Python27\python.exe" "%1" %*  
-``` 
-
diff --git a/Forecast_tools/motuclient-python/motu-client.py b/Forecast_tools/motuclient-python/motu-client.py
deleted file mode 100755
index 623f3587..00000000
--- a/Forecast_tools/motuclient-python/motu-client.py
+++ /dev/null
@@ -1,28 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# Deprecated
-# Only for retrocompatibility of Motu <= v1.7
-import logging
-import motuclient
-
-deprecatedWarnMsg='"motu-client" module is deprecated since version1.8. A new Python module named "motuclient" without a dash separator between motu and client shall be used instead of "motu-client".'
-motuclient.initLogger()
-motuclient.log.warn( deprecatedWarnMsg )    
-
-
-def get_client_version():
-    #motuclient.log.warn( deprecatedWarnMsg + 'e.g. motuclient.get_client_version()')    
-    return motuclient.get_client_version()
-
-def get_client_artefact():
-    #motuclient.log.warn( deprecatedWarnMsg + ', e.g. motuclient.get_client_artefact()')  
-    return motuclient.get_client_artefact()
-
-def main():
-    #motuclient.log.warn( deprecatedWarnMsg + ', e.g. motuclient.main()')  
-    motuclient.main()
-
-if __name__ == '__main__':
-    #motuclient.log.warn( deprecatedWarnMsg + ', e.g. motuclient.main()')  
-    motuclient.main()
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/__init__.py b/Forecast_tools/motuclient-python/motu_utils/__init__.py
deleted file mode 100755
index e69de29b..00000000
diff --git a/Forecast_tools/motuclient-python/motu_utils/cfg/log.ini b/Forecast_tools/motuclient-python/motu_utils/cfg/log.ini
deleted file mode 100755
index ff8a4ee6..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/cfg/log.ini
+++ /dev/null
@@ -1,24 +0,0 @@
-[loggers]
-keys=root
-
-[handlers]
-keys=console
-
-[formatters]
-keys=default
-
-[logger_root]
-level=NOTSET
-handlers=console
-qualname=motuclient
-
-[handler_console]
-class=StreamHandler
-level=NOTSET
-formatter=default
-args=(sys.stdout,)
-stream=sys.stdout
-
-[formatter_default]
-format=%(asctime)s.%(msecs)03d [%(levelname)5s] %(message)s
-datefmt = %Y-%m-%d %H:%M:%S
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/cfg/messages.properties b/Forecast_tools/motuclient-python/motu_utils/cfg/messages.properties
deleted file mode 100755
index 1b73d07e..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/cfg/messages.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-motuclient.exception.option.mandatory=[Excp 1] Option '%s' is mandatory. Please provide it.
-motuclient.exception.option.mandatory.user=[Excp 13] User (option '%s') is mandatory when '%s' authentication is set. Please provide it.
-motuclient.exception.option.mandatory.mode=[Excp 17] Authentication mode other than '%s' (option '%s') is mandatory when a user ('%s')  is set. Please provide it.
-motuclient.exception.option.mandatory.password=[Excp 14] Password (option '%s') is mandatory for user '%s'. Please provide it.
-motuclient.exception.option.outdir-notexist=[Excp 2] The given output directory '%s' does not exist.
-motuclient.exception.option.outdir-notwritable=[Excp 3] The given output directory (%s) is not writable.
-motuclient.exception.option.not-url=[Excp 4] Option '%s' has a bad url scheme "%s".
-motuclient.exception.option.linked=[Excp 5] Option '%s' and '%s' must be provided both, or none.
-motuclient.exception.option.out-of-range=[Excp 6] Option '%s' is out of range for value '%s'.
-motuclient.exception.option.invalid=[Excp 12] Value '%s' is not valid for option '%s'. Expected one of %s.
-motuclient.exception.option.geographic-box=[Excp 7] Geographic coverage is not fully defined. Missing '%s' parameters.
-motuclient.exception.authentication.unfound-url=[Excp 8] CAS Url Server can't be found in '%s'. Check the contacted service use CAS for authentication.
-motuclient.exception.authentication.not-redirected=[Excp 15] Service '%s' seems to not have been redirected to the CAS service. Check the contacted service use CAS for authentication.
-motuclient.exception.authentication.redirected=[Excp 16] Service '%s' seems to have been redirected to the CAS service ('%s'). Check the contacted service doesn't need a CAS authentication first.
-motuclient.exception.authentication.tgt=[Excp 9] Unable to retrieve the Ticket Granting Ticket (TGT) when authenticating with CAS mode.
-motuclient.exception.motu.error=[Excp 10] Motu server failed to process the request. Response returned is the following: '%s'.
-motuclient.exception.download.too-short=[Excp 11] "Dataset retrival incomplete. Got only %i out of %i bytes.
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/motu_api.py b/Forecast_tools/motuclient-python/motu_utils/motu_api.py
deleted file mode 100755
index 21600cd8..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/motu_api.py
+++ /dev/null
@@ -1,652 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# Python motu client
-#
-# Motu, a high efficient, robust and Standard compliant Web Server for Geographic
-#  Data Dissemination.
-# 
-#  http://cls-motu.sourceforge.net/
-# 
-#  (C) Copyright 2009-2010, by CLS (Collecte Localisation Satellites) -
-#  http://www.cls.fr - and Contributors
-# 
-# 
-#  This library is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU Lesser General Public License as published by
-#  the Free Software Foundation; either version 2.1 of the License, or
-#  (at your option) any later version.
-# 
-#  This library is distributed in the hope that it will be useful, but
-#  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-#  or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-#  License for more details.
-# 
-#  You should have received a copy of the GNU Lesser General Public License
-#  along with this library; if not, write to the Free Software Foundation,
-#  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
-
-import sys
-
-
-if sys.version_info > (3, 0):
-    import urllib.request, urllib.error
-    from urllib.request import BaseHandler
-    from urllib.parse import unquote, quote_plus, urlparse
-else:
-    from urllib import quote_plus, quote
-    from urlparse import urlparse
-
-
-import os
-import re
-import datetime
-import time
-import socket
-from xml.dom import minidom
-from pkg_resources import get_distribution
-
-# Import project libraries
-from motu_utils import utils_http, utils_stream, utils_cas, utils_log, utils_messages, utils_unit, \
-    stop_watch, pom_version
-from motu_utils import utils_collection
-import logging
-
-# constant for authentication modes
-AUTHENTICATION_MODE_NONE  = 'none'
-AUTHENTICATION_MODE_BASIC = 'basic'
-AUTHENTICATION_MODE_CAS   = 'cas'
-
-# constant for date time string format
-DATETIME_FORMAT = "%Y-%m-%d% %H:%M:%S"
-
-
-# shared logger
-log = None
-
-def get_client_version():
-    """Return the version (as a string) of this client.
-    
-    The value is automatically set by the maven processing build, so don't 
-    touch it unless you know what you are doing."""
-    version = 'unknown'
-    try:
-        version = get_distribution('motuclient').version    
-    except:
-        version = pom_version.getPOMVersion()
-    return version
-
-def get_client_artefact():
-    """Return the artifact identifier (as a string) of this client.
-    
-    The value is automatically set by the maven processing build, so don't 
-    touch it unless you know what you are doing."""
-    return 'motuclient-python'
-    
-def build_params(_options):
-    """Function that builds the query string for Motu according to the given options"""
-    temporal = ''
-    geographic = ''
-    vertical = ''
-    other_opt = ''
-    
-    """
-    Build the main url to connect to
-    """
-    query_options = utils_collection.ListMultimap()
-    
-    # describeProduct in XML format (sync) / productDownload (sync/async)
-    if _options.describe:
-        query_options.insert( action  = 'describeProduct',                
-                              service = _options.service_id,
-                              product = _options.product_id 
-                            )   
-    elif _options.size:   
-        query_options.insert( action  = 'getSize',                
-                              service = _options.service_id,
-                              product = _options.product_id 
-                            )        
-    else:                        
-        # synchronous/asynchronous mode
-        if _options.sync:
-            log.info('Synchronous mode set')
-            query_options.insert( action  = 'productdownload',
-                                  scriptVersion = quote_plus(get_client_version()),
-                                  mode = 'console',
-                                  service = _options.service_id,
-                                  product = _options.product_id 
-                                )                        
-        else:
-            log.info('Asynchronous mode set')
-            query_options.insert( action  = 'productdownload',
-                                  scriptVersion = quote_plus(get_client_version()),
-                                  mode    = 'status',
-                                  service = _options.service_id,
-                                  product = _options.product_id 
-                                )
-    
-    # geographical parameters
-    if _options.extraction_geographic:
-        query_options.insert( x_lo = _options.longitude_min,
-                              x_hi = _options.longitude_max,
-                              y_lo = _options.latitude_min,
-                              y_hi = _options.latitude_max
-                            )
-    
-    if _options.extraction_vertical:
-        query_options.insert( z_lo = _options.depth_min,
-                              z_hi = _options.depth_max
-                            )
-        
-    if _options.extraction_output:
-        query_options.insert(output=_options.outputWritten)
-    else:
-        query_options.insert(output="netcdf")
-    
-    if _options.extraction_temporal:
-        # date are strings, and they are send to Motu "as is". If not, we convert them into string
-        if _options.date_min is not None or _options.date_min != None:            
-            date_min = _options.date_min
-            if not isinstance(date_min, str):
-               date_min = date_min.strftime(DATETIME_FORMAT)
-            query_options.insert( t_lo = date_min )
-            
-        if _options.date_max is not None or _options.date_max != None:            
-            date_max = _options.date_max
-            if not isinstance(date_max, str):
-               date_max = date_max.strftime(DATETIME_FORMAT)
-            query_options.insert( t_hi = date_max )
-
-    variable = _options.variable
-    if variable is not None:
-        for i, opt in enumerate(variable):
-            query_options.insert( variable = opt )
-    
-    
-    if _options.console_mode or _options.out_dir.startswith("console") :
-        query_options.insert(mode="console")
-        
-    return utils_http.encode(query_options)
-
-def check_options(_options):    
-    """function that checks the given options for coherency."""    
-    
-    # Check Mandatory Options
-    if (_options.auth_mode != AUTHENTICATION_MODE_NONE and 
-        _options.auth_mode != AUTHENTICATION_MODE_BASIC and
-        _options.auth_mode != AUTHENTICATION_MODE_CAS):
-        raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.invalid'] % (_options.auth_mode, 'auth-mode', [AUTHENTICATION_MODE_NONE, AUTHENTICATION_MODE_BASIC, AUTHENTICATION_MODE_CAS]))
-       
-    # if authentication mode is set we check both user & password presence
-    if (_options.user == None and
-        _options.auth_mode != AUTHENTICATION_MODE_NONE):
-        raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.mandatory.user'] % ('user', _options.auth_mode))
-
-    # check that if a user is set, a password should be set also
-    if (_options.pwd == None and
-        _options.user != None):
-        raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.mandatory.password'] % ('pwd', _options.user))
-    
-    #check that if a user is set, an authentication mode should also be set
-    if (_options.user != None and
-        _options.auth_mode == AUTHENTICATION_MODE_NONE):
-        raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.mandatory.mode'] % (AUTHENTICATION_MODE_NONE, 'auth-mode', _options.user))
-    
-    # those following parameters are required
-    if _options.motu == None :
-        raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.mandatory'] % 'motu')
-    
-    if _options.service_id == None :
-        raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.mandatory'] % 'service-id')
-    
-    if _options.product_id == None :
-        raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.mandatory'] % 'product-id')
-    
-    if _options.out_dir == None :
-        raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.mandatory'] % 'out-dir')
-    
-    out_dir = _options.out_dir
-    if not out_dir.startswith("console"):
-        # check directory existence
-        if not os.path.exists(out_dir):
-            raise Exception(
-                utils_messages.get_external_messages()['motuclient.exception.option.outdir-notexist'] % out_dir)
-        # check whether directory is writable or not
-        if not os.access(out_dir, os.W_OK):
-            raise Exception(
-                utils_messages.get_external_messages()['motuclient.exception.option.outdir-notwritable'] % out_dir)
-    
-        if _options.out_name == None :
-            raise Exception(
-                utils_messages.get_external_messages()['motuclient.exception.option.mandatory'] % 'out-name')
-
-    # Check PROXY Options
-    _options.proxy = False
-    if (_options.proxy_server != None) and (len(_options.proxy_server) != 0):
-        _options.proxy = True
-        # check that proxy server is a valid url
-        url = _options.proxy_server
-        p = re.compile('^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?')
-        m = p.match(url)
-        
-        if not m :
-            raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.not-url'] % ('proxy-server', url))
-        # check that if proxy-user is defined then proxy-pwd shall be also, and reciprocally.
-        if (_options.proxy_user != None) != ( _options.proxy_pwd != None ) :
-            raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.linked'] % ('proxy-user', 'proxy-name'))
-    
-        
-    # Check VERTICAL Options
-    _options.extraction_vertical = False
-    if _options.depth_min != None or _options.depth_max != None :
-        _options.extraction_vertical = True
-        
-    # Check TEMPORAL  Options
-    _options.extraction_temporal = False
-    if _options.date_min != None or _options.date_max != None :
-         _options.extraction_temporal = True
-    
-    #Check OUTPUT Options
-    _options.extraction_output = False
-    if _options.outputWritten != None :
-        _options.extraction_output = True
-    
-    # Check GEOGRAPHIC Options
-    _options.extraction_geographic = False
-    if _options.latitude_min != None or _options.latitude_max != None or _options.longitude_min != None or _options.longitude_max != None :
-        _options.extraction_geographic = True
-        if( _options.latitude_min == None ):
-            raise Exception(
-                utils_messages.get_external_messages()['motuclient.exception.option.geographic-box'] % 'latitude_min')
-
-        if( _options.latitude_max == None ):
-            raise Exception(
-                utils_messages.get_external_messages()['motuclient.exception.option.geographic-box'] % 'latitude_max')
-        
-        if( _options.longitude_min == None ):
-            raise Exception(
-                utils_messages.get_external_messages()['motuclient.exception.option.geographic-box'] % 'longitude_min')
-        
-        if( _options.longitude_max == None ):
-            raise Exception(
-                utils_messages.get_external_messages()['motuclient.exception.option.geographic-box'] % 'longitude_max')
-        
-        tempvalue = float(_options.latitude_min)
-        if tempvalue < -90 or tempvalue > 90 :
-            raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.out-of-range'] % ('latitude_min', str(tempvalue)))
-        tempvalue = float(_options.latitude_max)
-        if tempvalue < -90 or tempvalue > 90 :
-            raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.out-of-range'] % ('latitude_max', str(tempvalue)))
-        tempvalue = float(_options.longitude_min)
-        tempvalue = normalize_longitude(tempvalue)
-        if tempvalue < -180 or tempvalue > 180 :
-            raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.out-of-range'] % ('logitude_min', str(tempvalue)))
-        tempvalue = float(_options.longitude_max)
-        tempvalue = normalize_longitude(tempvalue)
-        if tempvalue < -180 or tempvalue > 180 :
-            raise Exception(utils_messages.get_external_messages()['motuclient.exception.option.out-of-range'] % ('longitude_max', str(tempvalue)))
-
-def normalize_longitude(lon):
-    if lon > 180:
-        while lon > 180:
-            lon -= 360
-    elif lon < -180:
-        while lon < -180:
-            lon += 360
-    return lon
-            
-def total_seconds(td):
-    return total_milliseconds(td) / 10**3 
-
-def total_milliseconds(td):
-    return (td.microseconds + (td.seconds + td.days * 24 * 3600) * 10**6) / 10**3 
-    
-def get_url_config(_options, data = None):
-    # prepare arguments    
-    kargs = {}
-    # proxy
-    if _options.proxy:
-        #proxyUrl = _options.proxy_server.partition(':')
-        proxyUrl = urlparse(_options.proxy_server)
-        kargs['proxy'] = { "scheme": proxyUrl.scheme,
-                           "netloc": proxyUrl.netloc }
-        if _options.proxy_user != None:
-            kargs['proxy']['user']     = _options.proxy_user
-            kargs['proxy']['password'] = _options.proxy_pwd
-    # authentication
-    if _options.auth_mode == AUTHENTICATION_MODE_BASIC:
-        kargs['authentication'] = { 'mode'    : 'basic',
-                                    'user'    : _options.user,
-                                    'password': _options.pwd }
-    # headers
-    kargs['headers'] = {"X-Client-Id"     : get_client_artefact(),
-                        "X-Client-Version": quote_plus(get_client_version())}
-    # data
-    if data != None:
-        kargs['data'] = data
-    
-    return kargs
-
-def get_requestUrl(dl_url, server, _options, **options):
-    """ Get the request url."""    
-    stopWatch = stop_watch.localThreadStopWatch()    
-    start_time = datetime.datetime.now()
-    stopWatch.start('get_request')
-    log.info( "Requesting file to download (this can take a while)..." ) 
-    
-    # Get request id        
-    m = utils_http.open_url(dl_url, **options)
-    responseStr = m.read()
-    dom = minidom.parseString(responseStr)
-    node = dom.getElementsByTagName('statusModeResponse')[0]
-    status = node.getAttribute('status')
-    if status == "2":
-        msg = node.getAttribute('msg')
-        log.error(msg)
-        get_req_url = None
-    else:
-        requestId = node.getAttribute('requestId')
-        # Get request url
-        get_req_url = server + '?action=getreqstatus&requestid=' + requestId + "&service=" + _options.service_id + "&product=" + _options.product_id
-        
-    stopWatch.stop('get_request')
-    
-    return get_req_url
-    
-def wait_till_finished(reqUrlCAS, **options):    
-    stopWatch = stop_watch.localThreadStopWatch()    
-    start_time = datetime.datetime.now()
-
-  
-lastProgressPercentValue=0.0
-  
-def dl_2_file(dl_url, fh, block_size = 65535, isADownloadRequest = None, **options):
-    """ Download the file with the main url (of Motu) file.
-     
-    Motu can return an error message in the response stream without setting an
-    appropriate http error code. So, in that case, the content-type response is
-    checked, and if it is text/plain, we consider this as an error.
-    
-    dl_url: the complete download url of Motu
-    fh: file handler to use to write the downstream"""    
-    
-    stopWatch = stop_watch.localThreadStopWatch()    
-    start_time = datetime.datetime.now()
-    lastProgressPercentValue=0.0
-    log.info("Downloading file (this can take a while)..." )    
-
-    # download file
-    temp = None
-    if not fh.startswith("console"):
-        temp = open(fh, 'w+b')
-        
-    try:
-        stopWatch.start('processing')
-        
-        m = utils_http.open_url(dl_url, **options)
-        try:
-            # check the real url (after potential redirection) is not a CAS Url scheme
-            match = re.search(utils_cas.CAS_URL_PATTERN, m.url)
-            if match is not None:
-                service, _, _ = dl_url.partition('?')
-                redirection, _, _ = m.url.partition('?')
-                raise Exception(
-                    utils_messages.get_external_messages()['motuclient.exception.authentication.redirected'] % (service, redirection))
-
-            # check that content type is not text/plain
-            headers = m.info()
-            if "Content-Type" in headers and len(headers['Content-Type']) > 0 and isADownloadRequest and (headers['Content-Type'].startswith('text') or headers['Content-Type'].find('html') != -1):
-                raise Exception(utils_messages.get_external_messages()['motuclient.exception.motu.error'] % m.read())
-              
-            log.info( 'File type: %s' % headers['Content-Type'] )
-            # check if a content length (size of the file) has been send
-            size = -1
-            if "Content-Length" in headers:        
-                try:
-                    # it should be an integer
-                    size = int(headers["Content-Length"]) 
-                    log.info( 'File size: %s (%i B)' % (utils_unit.convert_bytes(size), size))
-                except Exception as e:
-                    size = -1
-                    log.warn( 'File size is not an integer: %s' % headers["Content-Length"] )                      
-            elif temp is not None:
-                log.warn( 'File size: %s' % 'unknown' )
-
-            processing_time = datetime.datetime.now();        
-            stopWatch.stop('processing')        
-            stopWatch.start('downloading')
-        
-            # performs the download           
-            log.info( 'Downloading file %s' % os.path.abspath(fh) )
-        
-            def progress_function(sizeRead):
-                global lastProgressPercentValue
-                percent = sizeRead*100./size
-                if percent - lastProgressPercentValue> 1 or (lastProgressPercentValue != 100 and percent >= 100) :
-                    log.info( "- %s (%.1f%%)", utils_unit.convert_bytes(size).rjust(8), percent)
-                    lastProgressPercentValue = percent
-                    
-            def none_function(sizeRead):
-                global lastProgressPercentValue
-                percent = 100
-                log.info( "- %s (%.1f%%)", utils_unit.convert_bytes(size).rjust(8), percent)
-                lastProgressPercentValue = percent
-            
-            if temp is not None:
-                read = utils_stream.copy(m, temp, progress_function if size != -1 else none_function, block_size)
-            else:
-                if isADownloadRequest:
-                    #Console mode, only display the NC file URL on stdout
-                    read = len(m.url)
-                    print((m.url))
-                else:
-                    import io
-                    output = io.StringIO()
-                    utils_stream.copy(m, output, progress_function if size != -1 else none_function, block_size)
-                    read = len(output.getvalue())
-                    print((output.getvalue()))
-                
-            end_time = datetime.datetime.now()
-            stopWatch.stop('downloading')
-            
-            log.info( "Processing  time : %s", str(processing_time - init_time) )
-            log.info( "Downloading time : %s", str(end_time - processing_time) )
-            log.info( "Total time       : %s", str(end_time - init_time) )
-            log.info( "Download rate    : %s/s", utils_unit.convert_bytes((read / total_milliseconds(end_time - start_time)) * 10 ** 3))
-        finally:
-            m.close()
-    finally:
-        if temp is not None:
-            temp.flush()
-            temp.close()
-
-    # raise exception if actual size does not match content-length header
-    if temp is not None and size >= 0 and read < size:
-        raise Exception(
-            utils_messages.get_external_messages()['motuclient.exception.download.too-short'] % (read, size))
-
-def execute_request(_options):
-    """
-    the main function that submit a request to motu. Available options are:
-    
-    * Proxy configuration (with eventually user credentials)
-      - proxy_server: 'http://my-proxy.site.com:8080'
-      - proxy_user  : 'john'
-      - proxy_pwd   :'doe'
-
-    * Autorisation mode: 'cas', 'basic', 'none'
-      - auth_mode: 'cas'
-      
-    * User credentials for authentication 'cas' or 'basic'
-      - user: 'john'
-      - pwd:  'doe'
-    
-    * Motu service URL
-      - motu: 'http://atoll-dev.cls.fr:30080/mis-gateway-servlet/Motu'
-    
-    * Dataset identifier to download
-      - product_id: 'dataset-duacs-global-nrt-madt-merged-h'
-    
-    * Service identifier to use for retrieving dataset
-      - service_id: 'http://purl.org/myocean/ontology/service/database#yourduname'
-    
-    * Geographic extraction parameters
-      - latitude_max :  10.0
-      - latitude_min : -10.0
-      - longitude_max: -0.333333333369
-      - longitude_min:  0.0
-
-    * Vertical extraction parameters
-      - depth_max: 1000
-      - depth_min: 0
-    
-    * Temporal extraction parameters, as a datetime instance or a string (format: '%Y-%m-%d %H:%M:%S')
-      - date_max: 2010-04-25 12:05:36
-      - date_min: 2010-04-25
-
-    * Variable extraction
-      - variable: ['variable1','variable2']
-      
-    * The file name and the directory of the downloaded dataset
-      - out_dir : '.'
-      - out_name: 'dataset'
-      
-    * The block size used to perform download
-      - block_size: 12001
-      
-    * The socket timeout configuration
-      - socket_timeout: 515
-
-    * The user agent to use when performing http requests
-      - user_agent: 'motu-api-client' 
-
-    """
-    global log
-    global init_time
-
-    init_time = datetime.datetime.now()
-    stopWatch = stop_watch.localThreadStopWatch()
-    stopWatch.start()
-    try:
-        log = logging.getLogger("motu_api")
-
-        # at first, we check given options are ok
-        check_options(_options)
-
-        # print some trace info about the options set
-        log.log(utils_log.TRACE_LEVEL, '-' * 60)
-
-        for option in dir(_options):
-            if not option.startswith('_'):
-                log.log(utils_log.TRACE_LEVEL, "%s=%s" % (option, getattr(_options, option)))
-
-        log.log(utils_log.TRACE_LEVEL, '-' * 60)
-
-        # start of url to invoke
-        url_service = _options.motu
-
-        # parameters of the invoked service
-        url_params  = build_params(_options)
-
-        url_config = get_url_config(_options)
-
-        # check if question mark is in the url
-        questionMark = '?'
-        if url_service.endswith(questionMark) :
-            questionMark = ''
-        url = url_service+questionMark+url_params
-
-        if _options.describe == True or _options.size == True: 
-            _options.out_name = _options.out_name.replace('.nc','.xml')
-
-        # set-up the socket timeout if any
-        if _options.socket_timeout != None:
-            log.debug("Setting timeout %s" % _options.socket_timeout)
-            socket.setdefaulttimeout(_options.socket_timeout)
-
-        if _options.auth_mode == AUTHENTICATION_MODE_CAS:
-            stopWatch.start('authentication')
-            # perform authentication before acceding service
-            download_url = utils_cas.authenticate_CAS_for_URL(url,
-                                                              _options.user,
-                                                              _options.pwd, **url_config)
-            url_service =  download_url.split("?")[0]
-            stopWatch.stop('authentication')
-        else:
-            # if none, we do nothing more, in basic, we let the url requester doing the job
-            download_url = url
-
-        # create a file for storing downloaded stream
-        fh = os.path.join(_options.out_dir,_options.out_name)
-        if _options.console_mode:
-            fh = "console"
-            
-        try:
-            # Synchronous mode
-            if _options.sync == True or _options.describe == True or _options.size == True:
-                is_a_download_request=False
-                if _options.describe == False and _options.size == False:
-                    is_a_download_request=True
-                dl_2_file(download_url, fh, _options.block_size, is_a_download_request, **url_config)
-                log.info( "Done" )
-            # Asynchronous mode
-            else:
-                stopWatch.start('wait_request')
-                requestUrl = get_requestUrl(download_url, url_service, _options, **url_config)    
-                
-                if requestUrl != None:    
-                    # asynchronous mode
-                    status = 0
-                    dwurl = ""
-                    msg = ""
-                
-                    while True:    
-                        if _options.auth_mode == AUTHENTICATION_MODE_CAS:
-                            stopWatch.start('authentication')
-                            # perform authentication before acceding service
-                            requestUrlCas = utils_cas.authenticate_CAS_for_URL(requestUrl,
-                                                                               _options.user,
-                                                                               _options.pwd, **url_config)
-                            stopWatch.stop('authentication')
-                        else:
-                            # if none, we do nothing more, in basic, we let the url requester doing the job
-                            requestUrlCas = requestUrl    
-                        
-                        
-                        m = utils_http.open_url(requestUrlCas, **url_config)                
-                        motu_reply=m.read()
-                        dom = minidom.parseString(motu_reply)
-    
-                        for node in dom.getElementsByTagName('statusModeResponse'):
-                            status = node.getAttribute('status')    
-                            dwurl = node.getAttribute('remoteUri')
-                            msg = node.getAttribute('msg')
-                            
-                        # Check status
-                        if status == "0" or status == "3": # in progress/pending
-                            log.info('Product is not yet available (request in progress)')         
-                            time.sleep(10)
-                        else: # finished (error|success)
-                            break
-    
-                    if status == "2": 
-                        log.error(msg) 
-                    if status == "1": 
-                        log.info('The product is ready for download')
-                        if dwurl != "":
-                            dl_2_file(dwurl, fh, _options.block_size, not (_options.describe or _options.size), **url_config)
-                            log.info( "Done" )
-                        else:
-                            log.error("Couldn't retrieve file")
-                    
-                stopWatch.stop('wait_request')        
-                            
-        except:
-            try:
-                if (os.path.isfile(fh)):
-                    os.remove(fh)
-            except:
-                pass
-            raise
-    finally:
-        stopWatch.stop()
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/pom_version.py b/Forecast_tools/motuclient-python/motu_utils/pom_version.py
deleted file mode 100755
index 958faea7..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/pom_version.py
+++ /dev/null
@@ -1,25 +0,0 @@
-from xml.etree import ElementTree
-import os
-
-def getPOMVersion():
-    version="Unknown"
-    try:
-        # For production tree, while run from cur folder
-        abspath = os.path.abspath(__file__)
-        dname = os.path.dirname(abspath)
-        version = __getPOMVersion(os.path.join(dname, "..", "pom.xml") )
-    except:
-        # For development tree
-        try:
-            version = __getPOMVersion(os.path.join(dname, "..", "..", "pom.xml") )
-        except :
-            version = __getPOMVersion(os.path.join(dname, "..", "..", "..", "pom.xml") )
-    finally:
-        return version
-    
-def __getPOMVersion(POM_FILE):
-    namespaces = {'xmlns' : 'http://maven.apache.org/POM/4.0.0'}
-    tree = ElementTree.parse(POM_FILE)
-    root = tree.getroot()
-    version = root.find("xmlns:version", namespaces=namespaces)
-    return str(version.text)
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/stop_watch.py b/Forecast_tools/motuclient-python/motu_utils/stop_watch.py
deleted file mode 100755
index fe294f03..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/stop_watch.py
+++ /dev/null
@@ -1,107 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# Python motu client
-#
-# Motu, a high efficient, robust and Standard compliant Web Server for Geographic
-#  Data Dissemination.
-# 
-#  http://cls-motu.sourceforge.net/
-# 
-#  (C) Copyright 2009-2010, by CLS (Collecte Localisation Satellites) -
-#  http://www.cls.fr - and Contributors
-# 
-# 
-#  This library is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU Lesser General Public License as published by
-#  the Free Software Foundation; either version 2.1 of the License, or
-#  (at your option) any later version.
-# 
-#  This library is distributed in the hope that it will be useful, but
-#  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-#  or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-#  License for more details.
-# 
-#  You should have received a copy of the GNU Lesser General Public License
-#  along with this library; if not, write to the Free Software Foundation,
-#  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
-
-from threading import Thread, local
-
-import time
-import threading
-
-# global stats
-tsl = local()
-
-class StopWatch(object):    
-    TIME = "time"
-    GLOBAL = "global"
-    
-    def __init__(self):
-        # contains the computed times
-        self.times = {}
-        # contains the current timers
-        self.timers = {}        
-    
-    def clear(self):
-        self.timers = {}
-        self.times = {}
-        
-    def start(self,label = GLOBAL):
-        """Starts a new counter
-           Returns the time the counter has been recorded.
-        """
-        self.timers[label] = self.__time()
-        return self.timers[label]
-        
-    def stop(self,label=GLOBAL):
-        """Stops the clock for the given counter.
-        Returns the time at which the instance was stopped.
-        """        
-        self.times[label] = self.elapsed(label)
-        del self.timers[label]
-        
-        return self.times[label]
-
-    def isRunning(self, label=GLOBAL):
-        return label in self.timers
-        
-    def elapsed(self,label=GLOBAL):
-        """The number of seconds since the current time that the StopWatch
-        object was created.  If stop() was called, it is the number
-        of seconds from the instance creation until stop() was called.
-        """
-        t0 = self.times[label] if label in self.times else 0.
-        t1 = self.timers[label] if label in self.timers else 0.
-        t2 = self.__time() if label in self.timers else 0.
-        
-        return t0 + (t2 - t1)
-        
-    def getTimes(self):
-        return self.times
-          
-    def __time(self):
-        """Wrapper for time.time() to allow unit testing.
-        """
-        return time.time()
-    
-    def __str__(self):
-        """Nicely format the elapsed time
-        """
-        keys = list(self.times.keys()) + [x for x in list(self.timers.keys()) if x not in list(self.times.keys())]
-        txt = ""
-        for key in keys:
-          txt = txt + key + " : " + str(self.elapsed(key)) + " s " + ("(running)" if self.isRunning(key) else "(stopped)")+"\n"
-        return txt
-
-def localThreadStopWatch():    
-    if not hasattr(tsl,'timer'):
-        lock = threading.Lock()
-        lock.acquire()
-        try:        
-            if not hasattr(tsl,'timer'):
-                tsl.timer = StopWatch()
-        finally:
-            lock.release()
-    return tsl.timer
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/utils_cas.py b/Forecast_tools/motuclient-python/motu_utils/utils_cas.py
deleted file mode 100755
index e59de858..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/utils_cas.py
+++ /dev/null
@@ -1,152 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# Python motu client
-#
-# Motu, a high efficient, robust and Standard compliant Web Server for Geographic
-#  Data Dissemination.
-# 
-#  http://cls-motu.sourceforge.net/
-# 
-#  (C) Copyright 2009-2010, by CLS (Collecte Localisation Satellites) -
-#  http://www.cls.fr - and Contributors
-# 
-# 
-#  This library is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU Lesser General Public License as published by
-#  the Free Software Foundation; either version 2.1 of the License, or
-#  (at your option) any later version.
-# 
-#  This library is distributed in the hope that it will be useful, but
-#  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-#  or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-#  License for more details.
-# 
-#  You should have received a copy of the GNU Lesser General Public License
-#  along with this library; if not, write to the Free Software Foundation,
-#  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
-
-import logging
-import re
-import sys
-
-
-if sys.version_info > (3, 0):
-    import urllib.request, urllib.error
-    from urllib.parse import parse_qs, urlparse, quote, quote_plus
-else:
-    from urllib import quote_plus, quote
-    from urlparse import urlparse, parse_qs
-
-from motu_utils import utils_http, utils_log, utils_html, utils_messages
-from motu_utils import utils_collection
-
-
-# pattern used to search for a CAS url within a response
-CAS_URL_PATTERN = '(.*)/login.*'
-
-def authenticate_CAS_for_URL(url, user, pwd, **url_config):
-    """Performs a CAS authentication for the given URL service and returns
-    the service url with the obtained credential.
-    
-    The following algorithm is done:
-    1) A connection is opened on the given URL
-    2) We check that the response is an HTTP redirection
-    3) Redirected URL contains the CAS address
-    4) We ask for a ticket for the given user and password
-    5) We ask for a service ticket for the given service
-    6) Then we return a new url with the ticket attached
-    
-    url: the url of the service to invoke
-    user: the username
-    pwd: the password"""
-    
-    log = logging.getLogger("utils_cas:authenticate_CAS_for_URL")
-    
-    server, sep, options = url.partition( '?' )
-    
-    log.info( 'Authenticating user %s for service %s' % (user,server) )      
-    
-    connexion = utils_http.open_url(url, **url_config)
-
-    # connexion response code must be a redirection, else, there's an error (user can't be already connected since no cookie or ticket was sent)
-    if connexion.url == url:
-        raise Exception(
-            utils_messages.get_external_messages()['motuclient.exception.authentication.not-redirected'] % server)
-    
-    # find the cas url from the redirected url
-    redirected_url = connexion.url
-    p = parse_qs(urlparse(connexion.url).query, keep_blank_values=False)
-    redirectServiceUrl = p['service'][0]
-    
-    
-    m = re.search(CAS_URL_PATTERN, redirected_url)
-    
-    if m is None:
-        raise Exception(
-            utils_messages.get_external_messages()['motuclient.exception.authentication.unfound-url'] % redirected_url)
-    
-    url_cas = m.group(1) + '/v1/tickets'
-
-    opts = utils_http.encode(utils_collection.ListMultimap(username = quote(user), password = quote(pwd)))
-
-    utils_log.log_url(log, "login user into CAS:\t", url_cas + '?' + opts)
-    url_config['data']=opts.encode()
-    try:
-        connexion = utils_http.open_url(url_cas, **url_config)
-    except Exception as e:
-        if e.code == 400:
-            log.error( """Error: Bad user login or password:
-            
-                 On *nix OS, you must use the single quote, otherwise it may expand specific characters.
-                 [...] -u 'string' or --user 'string' [...]
-                 
-                 On Windows OS, you must use the double quote, because single quotes are treated literally.
-                 [...] -p "string" or --pwd "string" [...]
-                 """)
-        
-        raise e
-        
-    fp = utils_html.FounderParser()
-    for line in connexion:
-        log.log(utils_log.TRACE_LEVEL, 'utils_html.FounderParser() line: %s', line)
-        # py3 compatibility
-        if (isinstance(line, bytes)):
-            fp.feed(line.decode())
-        else:
-            fp.feed(line)
-        
-    tgt = fp.action_[fp.action_.rfind('/') + 1:]
-    log.log(utils_log.TRACE_LEVEL, 'TGT: %s', tgt)
-
-    # WARNING : don't use 'fp.action_' as url : it seems protocol is always http never https 
-    # use 'url_cas', extract TGT from 'fp.action_' , then construct url_ticket.
-    # url_ticket = fp.action_
-    url_ticket = url_cas + '/' + tgt
-
-    if url_ticket is None:
-        raise Exception(utils_messages.get_external_messages()['motuclient.exception.authentication.tgt'])
-    
-    utils_log.log_url(log, "found url ticket:\t", url_ticket)
-
-    opts = utils_http.encode(utils_collection.ListMultimap(service = quote_plus(redirectServiceUrl)))
-
-    utils_log.log_url(log, 'Granting user for service\t', url_ticket + '?' + opts)
-    url_config['data']=opts.encode()
-
-    ticket = utils_http.open_url(url_ticket, **url_config).readline()
-
-    # py3 compatibility
-    if (isinstance(ticket, bytes)):
-        ticket = ticket.decode()
-
-    utils_log.log_url(log, "found service ticket:\t", ticket)
-    
-    # we append the download url with the ticket and return the result  
-    service_url = redirectServiceUrl + '&ticket=' + ticket
-    
-    utils_log.log_url(log, "service url is:\t", service_url)
-      
-    return service_url
-
-    
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/utils_collection.py b/Forecast_tools/motuclient-python/motu_utils/utils_collection.py
deleted file mode 100755
index ab279255..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/utils_collection.py
+++ /dev/null
@@ -1,110 +0,0 @@
-"""  
-The multimap data structure associates multiple values to a key. 
-
-In this module the multimap is implemented by a dictionary in which each key is  
-associated to a container, which can be a list, a dictionary, or a set. 
-
-These containers are created, accessed, and extended using the usual array 
-notation, e.g. m["a"] = 1, m["a"] = 2 creates a container for key "a" 
-containing 1 and 2. An item within a container can be removed using the 
-"remove"  method.
-
-Requires Python 2.7.  
-"""
-
-import collections
-
-class Map(object):
-    """ Map wraps a dictionary. It is essentially an abstract class from which
-    specific multimaps are subclassed. """
-    def __init__(self):
-        self._dict = {}
-        
-    def __repr__(self):
-        return "%s(%s)" % (self.__class__.__name__, repr(self._dict))
-    
-    __str__ = __repr__
-        
-    def __getitem__(self, key):
-        return self._dict[key]
-    
-    def __setitem__(self, key, value):
-        self._dict[key] = value
-    
-    def __delitem__(self, key):
-        del self._dict[key]
-    
-    def insert(self, **values):
-        for k, v in values.items():
-           self.__setitem__(k, v)
-    
-    def remove(self, key, value):
-        del self._dict[key]
-    
-    def dict(self):
-        """ Allows access to internal dictionary, if necessary. Caution: multimaps 
-        will break if keys are not associated with proper container."""
-        return self._dict
-
-class ListMultimap(Map):
-    """ ListMultimap is based on lists and allows multiple instances of same value. """
-    def __init__(self, **values):
-        self._dict = collections.defaultdict(list)
-        self.insert(**values)
-        
-    def __setitem__(self, key, value):
-        self._dict[key].append(value)
-    
-    def remove(self, key, value):
-        self._dict[key].remove(value)
-
-class SetMultimap(Map):
-    """ SetMultimap is based on sets and prevents multiple instances of same value. """
-    def __init__(self):
-        self._dict = collections.defaultdict(set)
-        
-    def __setitem__(self, key, value):
-        self._dict[key].add(value)
-    
-    def remove(self, key, value):
-        self._dict[key].remove(value)
-
-class DictMultimap(Map):
-    """ DictMultimap is based on dicts and allows fast tests for membership. """
-    def __init__(self):
-        self._dict = collections.defaultdict(dict)
-        
-    def __setitem__(self, key, value):
-        self._dict[key][value] = True
-    
-    def remove(self, key, value):
-        del self._dict[key][value]
-
-def test():
-    def test_multimap(m):
-        print("__________________________________")
-        print(m["a"])
-        m["a"] = 1
-        m["a"] = 2
-        m["a"] = 2
-        m["a"] = 3
-        m["a"] = 4
-        m.insert( b = 'v1', c = 'v2' )
-        print(m)
-        m.remove("a", 4)
-        print(m)
-        print(("a" in m.dict()))
-        print(m["a"])
-        m["a"] = 5
-        m["b"] = 6
-        print(m)
-        del m["b"]
-        print(m)
-        print((3 in m["a"]))
-        
-    test_multimap(ListMultimap())
-    test_multimap(SetMultimap())
-    test_multimap(DictMultimap())
-
-if __name__ == "__main__":
-    test()
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/utils_configpath.py b/Forecast_tools/motuclient-python/motu_utils/utils_configpath.py
deleted file mode 100755
index 607a8688..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/utils_configpath.py
+++ /dev/null
@@ -1,20 +0,0 @@
-import sys
-import os
-
-MOTU_CLIENT_CONFIG_PATH = os.path.join("motu_utils", "cfg")
-LINUX_CONFIG_PATH = os.path.join("/usr", "local", MOTU_CLIENT_CONFIG_PATH)
-WINDOWS_CONFIG_PATH = os.path.join(sys.prefix, MOTU_CLIENT_CONFIG_PATH)
-VIT_ENV_CONFIG_PATH = MOTU_CLIENT_CONFIG_PATH
-LOCAL_CONFIG_PATH = os.path.join(os.path.dirname(os.path.abspath(__file__)), "..", "motu_utils", "cfg")
-
-def getConfigPath():
-    if os.path.isdir(LINUX_CONFIG_PATH):
-    	return LINUX_CONFIG_PATH
-    elif os.path.isdir(WINDOWS_CONFIG_PATH):
-    	return WINDOWS_CONFIG_PATH
-    elif os.path.isdir(LOCAL_CONFIG_PATH):
-        return LOCAL_CONFIG_PATH
-    elif os.path.isdir(VIT_ENV_CONFIG_PATH):
-    	return VIT_ENV_CONFIG_PATH
-    else:
-    	return ""
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/utils_html.py b/Forecast_tools/motuclient-python/motu_utils/utils_html.py
deleted file mode 100755
index 6d6976d1..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/utils_html.py
+++ /dev/null
@@ -1,48 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# Python motu client
-#
-# Motu, a high efficient, robust and Standard compliant Web Server for Geographic
-#  Data Dissemination.
-# 
-#  http://cls-motu.sourceforge.net/
-# 
-#  (C) Copyright 2009-2010, by CLS (Collecte Localisation Satellites) -
-#  http://www.cls.fr - and Contributors
-# 
-# 
-#  This library is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU Lesser General Public License as published by
-#  the Free Software Foundation; either version 2.1 of the License, or
-#  (at your option) any later version.
-# 
-#  This library is distributed in the hope that it will be useful, but
-#  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-#  or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-#  License for more details.
-# 
-#  You should have received a copy of the GNU Lesser General Public License
-#  along with this library; if not, write to the Free Software Foundation,
-#  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
-
-import sys
-if sys.version_info > (3, 0):
-    from html.parser import HTMLParser
-else:
-    from HTMLParser import HTMLParser
-
-
-
-class FounderParser(HTMLParser):
-    """
-    Parser witch found the form/action section an return it
-    """
-    def __init__(self, *args, **kargs):
-        HTMLParser.__init__(self, *args, **kargs)
-        self.action_ = None
-
-    def handle_starttag(self, tag, attrs):
-        d = dict(attrs)
-        if tag == 'form' and 'action' in d:
-            self.action_ = d['action']
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/utils_http.py b/Forecast_tools/motuclient-python/motu_utils/utils_http.py
deleted file mode 100755
index d3ab68c9..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/utils_http.py
+++ /dev/null
@@ -1,181 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# Python motu client
-#
-# Motu, a high efficient, robust and Standard compliant Web Server for Geographic
-#  Data Dissemination.
-# 
-#  http://cls-motu.sourceforge.net/
-# 
-#  (C) Copyright 2009-2010, by CLS (Collecte Localisation Satellites) -
-#  http://www.cls.fr - and Contributors
-# 
-# 
-#  This library is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU Lesser General Public License as published by
-#  the Free Software Foundation; either version 2.1 of the License, or
-#  (at your option) any later version.
-# 
-#  This library is distributed in the hope that it will be useful, but
-#  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-#  or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-#  License for more details.
-# 
-#  You should have received a copy of the GNU Lesser General Public License
-#  along with this library; if not, write to the Free Software Foundation,
-#  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
-
-import sys
-
-
-if sys.version_info > (3, 0):
-    import urllib.request, urllib.error
-    from urllib.request import HTTPCookieProcessor, Request
-    from urllib.request import HTTPSHandler, HTTPHandler, install_opener, build_opener, \
-        HTTPRedirectHandler, ProxyHandler, HTTPBasicAuthHandler, HTTPPasswordMgrWithDefaultRealm
-    from urllib.request import HTTPErrorProcessor as HTTPErrorProcessor_
-    from http.client import HTTPConnection, HTTPSConnection
-    from http.cookiejar import CookieJar
-else:
-    from httplib import HTTPConnection, HTTPSConnection
-    from urllib2 import HTTPSHandler, install_opener, build_opener, \
-    HTTPRedirectHandler, HTTPRedirectHandler, ProxyHandler, HTTPBasicAuthHandler, \
-    HTTPPasswordMgrWithDefaultRealm, HTTPCookieProcessor, HTTPSHandler, HTTPHandler, Request
-    from urllib2 import HTTPErrorProcessor as HTTPErrorProcessor_
-    from cookielib import CookieJar
-
-from motu_utils import utils_log
-import logging
-import ssl
-import socket
-
-
-class TLS1v2Connection(HTTPSConnection):
-    """Like HTTPSConnection but more specific"""
-    def __init__(self, host, **kwargs):
-        HTTPSConnection.__init__(self, host, **kwargs)
- 
-    def connect(self):
-        """Overrides HTTPSConnection.connect to specify TLS version"""
-        # Standard implementation from HTTPSConnection, which is not
-        # designed for extension, unfortunately
-        sock = socket.create_connection((self.host, self.port),
-                self.timeout, self.source_address)
-        if getattr(self, '_tunnel_host', None):
-            self.sock = sock
-            self._tunnel()
- 
-        # This is the only difference; default wrap_socket uses SSLv23
-        self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file,
-                ssl_version=ssl.PROTOCOL_TLSv1_2)
- 
-class TLS1v2Handler(HTTPSHandler):
-    """Like HTTPSHandler but more specific"""
-    def __init__(self):
-        HTTPSHandler.__init__(self)
- 
-    def https_open(self, req):
-        return self.do_open(TLS1v2Connection, req)
-
-# Overide default handler
-install_opener(build_opener(TLS1v2Handler()))
-
-
-class HTTPErrorProcessor(HTTPErrorProcessor_):
-    def https_response(self, request, response):
-        # Consider error codes that are not 2xx (201 is an acceptable response)
-        code, msg, hdrs = response.code, response.msg, response.info()
-        if code >= 300:
-            response = self.parent.error('http', request, response, code, msg, hdrs)
-        return response
-    
-
-class SmartRedirectHandler(HTTPRedirectHandler):
-
-    def http_error_302(self, req, fp, code, msg, headers):
-        result = HTTPRedirectHandler.http_error_302(
-            self, req, fp, code, msg, headers)              
-        result.status = code                                
-        return result
-    
-    
-def open_url(url, **kargsParam):
-    """open an url and return an handler on it.
-       arguments can be :
-         headers : http headers to send
-            headers = {"Accept": "text/plain", 
-                       "User-Agent": "a user agent"
-                      }
-                      
-         proxy : the proxy to use when connecting to the url
-            proxy = { "url": "http://aproxy.server",
-                      "port": 8080,
-                      "user": "username",
-                      "password": "userpassword"
-                    }
-          
-         authentication: the authentication information
-            authentication = { "mode": "basic",
-                               "user": "username",
-                               "password": "password" }
-    """   
-    data = None
-    log = logging.getLogger("utils_http:open_url")
-    kargs = kargsParam.copy()
-    # common handlers
-    handlers = [SmartRedirectHandler(),
-                HTTPCookieProcessor(CookieJar()),
-                HTTPHandler(),
-                TLS1v2Handler(),
-                utils_log.HTTPDebugProcessor(log),
-                HTTPErrorProcessor()
-                ]
-
-    # add handlers for managing proxy credentials if necessary        
-    if 'proxy' in kargs:
-        urlProxy = ''
-        if 'user' in kargs['proxy']:
-            urlProxy = kargs['proxy']['user'] + ':' + kargs['proxy']['password'] + '@'
-
-        urlProxy += kargs['proxy']['netloc'] 
-
-        handlers.append( ProxyHandler({'http':urlProxy, 'https':urlProxy}) )
-        handlers.append( HTTPBasicAuthHandler() )
-        
-        del kargs['proxy']
-        
-    if 'authentication' in kargs:
-        # create the password manager
-        #password_mgr = HTTPPasswordMgrWithDefaultRealm(ssl_version=ssl.PROTOCOL_TLSv1)
-        password_mgr = HTTPPasswordMgrWithDefaultRealm()
-        urlPart = url.partition('?')
-        password_mgr.add_password(None, urlPart, kargs['authentication']['user'], kargs['authentication']['password'])
-        # add the basic authentication handler
-        handlers.append(HTTPSHandler(password_mgr))
-        del kargs['authentication']
-    
-    if 'data' in kargs:
-        data = kargs['data']
-        del kargs['data']
-    
-    _opener = build_opener(*handlers)
-    log.log(utils_log.TRACE_LEVEL, 'list of handlers:')
-    for h in _opener.handlers:
-        log.log(utils_log.TRACE_LEVEL, ' . %s', str(h))
-
-    # create the request
-    if( data != None ):
-        r = Request(url, data, **kargs)
-    else:
-        r = Request(url, **kargs)
-
-    # open the url, but let the exception propagates to the caller  
-    return _opener.open(r)
-
-def encode(options):    
-    opts = []
-    for k, vset in options.dict().items():
-        for v in vset:
-           opts.append('%s=%s' % (str(k), str(v).replace('#','%23').replace(' ','%20')))
-    return '&'.join(opts)
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/utils_log.py b/Forecast_tools/motuclient-python/motu_utils/utils_log.py
deleted file mode 100755
index 0457164d..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/utils_log.py
+++ /dev/null
@@ -1,94 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# Python motu client
-#
-# Motu, a high efficient, robust and Standard compliant Web Server for Geographic
-#  Data Dissemination.
-# 
-#  http://cls-motu.sourceforge.net/
-# 
-#  (C) Copyright 2009-2010, by CLS (Collecte Localisation Satellites) -
-#  http://www.cls.fr - and Contributors
-# 
-# 
-#  This library is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU Lesser General Public License as published by
-#  the Free Software Foundation; either version 2.1 of the License, or
-#  (at your option) any later version.
-# 
-#  This library is distributed in the hope that it will be useful, but
-#  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-#  or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-#  License for more details.
-# 
-#  You should have received a copy of the GNU Lesser General Public License
-#  along with this library; if not, write to the Free Software Foundation,
-#  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
-
-
-import sys
-if sys.version_info > (3, 0):
-    import urllib.request, urllib.error
-    from urllib.request import BaseHandler
-    from urllib.parse import unquote
-else:
-
-    from urllib2 import BaseHandler
-    from urllib2 import unquote
-
-
-
-import logging
-
-# trace level
-TRACE_LEVEL = 1
-
-def log_url(log, message, url, level = logging.DEBUG ):
-    """Nicely logs the given url.
-    
-    Print out the url with the first part (protocol, host, port, authority,
-    user info, path, ref) and in sequence all the query parameters.
-    
-    log: the log into which write the message
-    message: a message to print before the url
-    url: the url to log
-    level: (optional) the log level to use"""
-    
-    urls = url.split('?')
-    log.log( level, message + unquote(urls[0]) )
-    if len(urls) > 1:
-        for a in sorted(urls[1].split('&')):
-            param = a.split('=')
-            if( len(param) < 2 ):
-              param.append('')
-            log.log( level, ' . %s = %s', unquote(param[0]), unquote(param[1]) )
-
-            
-class HTTPDebugProcessor(BaseHandler):
-    """ Track HTTP requests and responses with this custom handler.
-    """
-    def __init__(self, log, log_level=TRACE_LEVEL):
-        self.log_level = log_level
-        self.log = log
-
-    def http_request(self, request):
-        host, full_url = request.host, request.get_full_url()
-        url_path = full_url[full_url.find(host) + len(host):]
-        log_url ( self.log, "Requesting: ", request.get_full_url(), TRACE_LEVEL )
-        self.log.log(self.log_level, "%s %s" % (request.get_method(), url_path))
-
-        for header in request.header_items():
-            self.log.log(self.log_level, " . %s: %s" % header[:])
-
-        return request
-
-    def http_response(self, request, response):
-        code, msg, headers = response.code, response.msg, response.info().items()
-        self.log.log(self.log_level, "Response:")
-        self.log.log(self.log_level," HTTP/1.x %s %s" % (code, msg))
-        
-        for key, value in headers:
-            self.log.log(self.log_level, " . %s: %s" % (key, value))
-
-        return response            
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/utils_messages.py b/Forecast_tools/motuclient-python/motu_utils/utils_messages.py
deleted file mode 100755
index 1878288f..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/utils_messages.py
+++ /dev/null
@@ -1,74 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# Python motu client
-#
-# Motu, a high efficient, robust and Standard compliant Web Server for Geographic
-#  Data Dissemination.
-# 
-#  http://cls-motu.sourceforge.net/
-# 
-#  (C) Copyright 2009-2010, by CLS (Collecte Localisation Satellites) -
-#  http://www.cls.fr - and Contributors
-# 
-# 
-#  This library is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU Lesser General Public License as published by
-#  the Free Software Foundation; either version 2.1 of the License, or
-#  (at your option) any later version.
-# 
-#  This library is distributed in the hope that it will be useful, but
-#  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-#  or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-#  License for more details.
-# 
-#  You should have received a copy of the GNU Lesser General Public License
-#  along with this library; if not, write to the Free Software Foundation,
-#  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
-
-from motu_utils import utils_configpath
-import os, sys
-_messages = None
-
-MESSAGES_FILE = utils_configpath.getConfigPath() + '/messages.properties'
-
-
-def _process_content(content):
-    propDict = dict()
-    for propLine in content:
-        propDef = propLine.strip()
-        if len(propDef) == 0:
-            continue
-        if propDef[0] in ('!', '#'):
-            continue
-        punctuation = [propDef.find(c) for c in ':= '] + [len(propDef)]
-        found = min([pos for pos in punctuation if pos != -1])
-        name = propDef[:found].rstrip()
-        value = propDef[found:].lstrip(":= ").rstrip()
-        propDict[name] = value
-
-    _messages = propDict
-    return _messages
-
-
-def _process_file_py3(path):
-    with open(path) as propFile:
-        return _process_content(propFile.readlines())
-
-
-def _process_file_py2(path):
-    propFile = file(path, "rU")
-    processed_content = _process_content(propFile)
-    propFile.close()
-    return processed_content
-
-
-def get_external_messages():
-    """Return a table of externalized messages.
-
-    The table is lazzy instancied (loaded once when called the first time)."""
-    global _messages
-    if _messages is None:
-        if sys.version_info > (3, 0):
-            return _process_file_py3(MESSAGES_FILE)
-        return _process_file_py2(MESSAGES_FILE)
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/utils_stream.py b/Forecast_tools/motuclient-python/motu_utils/utils_stream.py
deleted file mode 100755
index 27680c66..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/utils_stream.py
+++ /dev/null
@@ -1,66 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# Python motu client
-#
-# Motu, a high efficient, robust and Standard compliant Web Server for Geographic
-#  Data Dissemination.
-# 
-#  http://cls-motu.sourceforge.net/
-# 
-#  (C) Copyright 2009-2010, by CLS (Collecte Localisation Satellites) -
-#  http://www.cls.fr - and Contributors
-# 
-# 
-#  This library is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU Lesser General Public License as published by
-#  the Free Software Foundation; either version 2.1 of the License, or
-#  (at your option) any later version.
-# 
-#  This library is distributed in the hope that it will be useful, but
-#  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-#  or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-#  License for more details.
-# 
-#  You should have received a copy of the GNU Lesser General Public License
-#  along with this library; if not, write to the Free Software Foundation,
-#  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
-import io, sys
-
-def copy(sourceHandler, destHandler, callback = None, blockSize = 65535 ):
-    """Copy the available content through the given handler to another one. Process
-    can be monitored with the (optional) callback function.
-    
-    sourceHandler: the handler through witch downloading content
-    destHandler: the handler into which writing data        
-    callback: the callback function called for each block read. Signature: f: sizeRead -> void
-    blockSize: the size of the block used to read data
-    
-    returns the total size read
-    """
-    read = 0        
-    while 1:
-        block = sourceHandler.read(blockSize)
-        exit_condition = ''
-        if(isinstance(block, bytes)):
-           exit_condition = b''
-        if block == exit_condition:
-           break
-        read += len(block)
-        try:
-          if type(destHandler) == io.StringIO:
-            strBlock=str(block)
-            if sys.version_info > (3, 0):
-              destHandler.write( str(block, 'utf-8') )
-            else:
-              destHandler.write( unicode(block, 'utf-8') )
-          else:
-            destHandler.write(block)
-        except Exception as inst:
-          print(type(inst))    # the exception instance
-          print(inst.args)     # arguments stored in .args
-          print(inst) 
-          
-        callback(read)
-
-    return read
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motu_utils/utils_unit.py b/Forecast_tools/motuclient-python/motu_utils/utils_unit.py
deleted file mode 100755
index 60a91424..00000000
--- a/Forecast_tools/motuclient-python/motu_utils/utils_unit.py
+++ /dev/null
@@ -1,47 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# Python motu client
-#
-# Motu, a high efficient, robust and Standard compliant Web Server for Geographic
-#  Data Dissemination.
-# 
-#  http://cls-motu.sourceforge.net/
-# 
-#  (C) Copyright 2009-2010, by CLS (Collecte Localisation Satellites) -
-#  http://www.cls.fr - and Contributors
-# 
-# 
-#  This library is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU Lesser General Public License as published by
-#  the Free Software Foundation; either version 2.1 of the License, or
-#  (at your option) any later version.
-# 
-#  This library is distributed in the hope that it will be useful, but
-#  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-#  or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-#  License for more details.
-# 
-#  You should have received a copy of the GNU Lesser General Public License
-#  along with this library; if not, write to the Free Software Foundation,
-#  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
-
-# SI unit prefixes
-SI_K, SI_M, SI_G, SI_T = 10 ** 3, 10 ** 6, 10 ** 9, 10 ** 12
-
-def convert_bytes(n):
-    """Converts the given bytes into a string with the most appropriate
-    unit power.
-    
-    Note that prefixes like M, G, T are power of 10 (ISO/IEC 80000-13:2008) and
-    not power of 2."""        
-    if   n >= SI_T:
-        return '%.1f TB' % (float(n) / SI_T)
-    elif n >= SI_G:
-        return '%.1f GB' % (float(n) / SI_G)
-    elif n >= SI_M:
-        return '%.1f MB' % (float(n) / SI_M)
-    elif n >= SI_K:
-        return '%.1f kB' % (float(n) / SI_K)
-    else:
-        return '%d B' % n
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/motuclient.py b/Forecast_tools/motuclient-python/motuclient.py
deleted file mode 100755
index 35e6b52f..00000000
--- a/Forecast_tools/motuclient-python/motuclient.py
+++ /dev/null
@@ -1,329 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-#
-# Python motu client
-#
-# Motu, a high efficient, robust and Standard compliant Web Server for Geographic
-#  Data Dissemination.
-#
-#  http://cls-motu.sourceforge.net/
-#
-#  (C) Copyright 2009-2010, by CLS (Collecte Localisation Satellites) -
-#  http://www.cls.fr - and Contributors
-#
-#
-#  This library is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU Lesser General Public License as published by
-#  the Free Software Foundation; either version 2.1 of the License, or
-#  (at your option) any later version.
-#
-#  This library is distributed in the hope that it will be useful, but
-#  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-#  or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
-#  License for more details.
-#
-#  You should have received a copy of the GNU Lesser General Public License
-#  along with this library; if not, write to the Free Software Foundation,
-#  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
-
-
-import sys
-from cgi import log
-if sys.version_info > (3, 0):
-    import urllib
-    import configparser as ConfigParser
-else:
-    import urllib2 as urllib
-    import ConfigParser
-
-import traceback
-import platform
-import sys
-import os
-import datetime
-import logging
-import logging.config
-
-import optparse
-from motu_utils import utils_configpath
-
-# error code to use when exiting after exception catch
-ERROR_CODE_EXIT=1
-
-# the config file to load from
-CFG_FILE = '~/motuclient/motuclient-python.ini'
-LOG_CFG_FILE = './motu_utils/cfg/log.ini'
-
-SECTION = 'Main'
-
-# shared logger
-log = None
-
-# shared variables to download
-_variables = []
-
-# project libraries path
-LIBRARIES_PATH = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'motu_utils')
-# Manage imports of project libraries
-if not os.path.exists(LIBRARIES_PATH):
-    sys.stderr.write('\nERROR: can not find project libraries path: %s\n\n' % os.path.abspath(LIBRARIES_PATH))
-    sys.exit(1)
-sys.path.append(LIBRARIES_PATH)
-
-# Import project libraries
-import utils_log
-import utils_messages
-import motu_api
-
-def get_client_version():
-    """Return the version (as a string) of this client.
-
-    The value is automatically set by the maven processing build, so don't
-    touch it unless you know what you are doing."""
-    return motu_api.get_client_version()
-
-def get_client_artefact():
-    """Return the artifact identifier (as a string) of this client.
-
-    The value is automatically set by the maven processing build, so don't
-    touch it unless you know what you are doing."""
-    return motu_api.get_client_artefact()
-
-def load_options():
-    """load options to handle"""
-
-    _options = None
-
-    # create option parser
-    parser = optparse.OptionParser(version=get_client_artefact() + ' v' + get_client_version())
-
-    # add available options
-    parser.add_option( '--quiet', '-q',
-                       help = "prevent any output in stdout",
-                       action = 'store_const',
-                       const = logging.WARN,
-                       dest='log_level')
-
-    parser.add_option( '--verbose',
-                       help = "print information in stdout",
-                       action='store_const',
-                       const = logging.DEBUG,
-                       dest='log_level')
-
-    parser.add_option( '--noisy',
-                       help = "print more information (traces) in stdout",
-                       action='store_const',
-                       const = utils_log.TRACE_LEVEL,
-                       dest='log_level')
-
-    parser.add_option( '--user', '-u',
-                       help = "the user name (string)")
-
-    parser.add_option( '--pwd', '-p',
-                       help = "the user password (string)")
-
-    parser.add_option( '--auth-mode',
-                       default = motu_api.AUTHENTICATION_MODE_CAS,
-                       help = "the authentication mode: '" + motu_api.AUTHENTICATION_MODE_NONE  +
-                              "' (for no authentication), '"+ motu_api.AUTHENTICATION_MODE_BASIC +
-                              "' (for basic authentication), or '"+motu_api.AUTHENTICATION_MODE_CAS +
-                              "' (for Central Authentication Service) [default: %default]")
-
-    parser.add_option( '--proxy-server',
-                       help = "the proxy server (url)")
-
-    parser.add_option( '--proxy-user',
-                       help = "the proxy user (string)")
-
-    parser.add_option( '--proxy-pwd',
-                       help = "the proxy password (string)")
-
-    parser.add_option( '--motu', '-m',
-                       help = "the motu server to use (url)")
-
-    parser.add_option( '--service-id', '-s',
-                       help = "The service identifier (string)")
-
-    parser.add_option( '--product-id', '-d',
-                       help = "The product (data set) to download (string)")
-
-    parser.add_option( '--date-min', '-t',
-                       help = "The min date with optional hour resolution (string following format YYYY-MM-DD [HH:MM:SS])")
-
-    parser.add_option( '--date-max', '-T',
-                       help = "The max date with optional hour resolution (string following format YYYY-MM-DD [HH:MM:SS])",
-                       default = datetime.date.today().isoformat())
-
-    parser.add_option( '--latitude-min', '-y',
-                       type = 'float',
-                       help = "The min latitude (float in the interval [-90 ; 90])")
-
-    parser.add_option( '--latitude-max', '-Y',
-                       type = 'float',
-                       help = "The max latitude (float in the interval [-90 ; 90])")
-
-    parser.add_option( '--longitude-min', '-x',
-                       type = 'float',
-                       help = "The min longitude (float in the interval [-180 ; 180])")
-
-    parser.add_option( '--longitude-max', '-X',
-                       type = 'float',
-                       help = "The max longitude (float in the interval [-180 ; 180])")
-
-    parser.add_option( '--depth-min', '-z',
-                       type = 'string',
-                       help = "The min depth (float in the interval [0 ; 2e31] or string 'Surface')")
-
-    parser.add_option( '--depth-max', '-Z',
-                       type = 'string',
-                       help = "The max depth (float in the interval [0 ; 2e31] or string 'Surface')")
-
-    parser.add_option( '--variable', '-v',
-                       help = "The variable (list of strings)",
-                       callback=option_callback_variable,
-                       dest="variable",
-                       type="string",
-                       action="callback")
-
-    parser.add_option( '--sync-mode', '-S',
-                       help = "Sets the download mode to synchronous (not recommended)",
-                       action='store_true',
-					   dest='sync')
-
-    parser.add_option( '--describe-product', '-D',
-                       help = "Get all updated information on a dataset. Output is in XML format",
-                       action='store_true',
-					   dest='describe')
-
-    parser.add_option( '--size',
-                       help = "Get the size of an extraction. Output is in XML format",
-                       action='store_true',
-                       dest='size')
-
-    parser.add_option( '--out-dir', '-o',
-                       help = "The output dir where result (download file) is written (string). If it starts with 'console', behaviour is the same as with --console-mode. ",
-                       default=".")
-
-    parser.add_option( '--out-name', '-f',
-                       help = "The output file name (string)",
-                       default="data.nc")
-
-    parser.add_option( '--block-size',
-                       type = 'int',
-                       help = "The block used to download file (integer expressing bytes)",
-                       default="65536")
-
-    parser.add_option( '--socket-timeout',
-                       type = 'float',
-                       help = "Set a timeout on blocking socket operations (float expressing seconds)")
-    parser.add_option( '--user-agent',
-                       help = "Set the identification string (user-agent) for HTTP requests. By default this value is 'Python-urllib/x.x' (where x.x is the version of the python interpreter)")
-
-    parser.add_option( '--outputWritten',
-                       help = "Optional parameter used to set the format of the file returned by the download request: netcdf or netcdf4. If not set, netcdf is used.")
-
-    parser.add_option( '--console-mode',
-                       help = "Optional parameter used to display result on stdout, either URL path to download extraction file, or the XML content of getSize or describeProduct requests.",
-                       action='store_true',
-                       dest='console_mode')
-
-    parser.add_option( '--config-file',
-                       help = "Path of the optional configuration file [default: %s]" % CFG_FILE,
-                       action='append',
-                       dest="config_file",
-                       type="string")
-
-    # create config parser
-    conf_parser = ConfigParser.ConfigParser()
-
-    # read configuration file name from cli arguments or use default
-    # cant set default in parser.add_option due to optparse/argparse bug:
-    # https://bugs.python.org/issue16399
-    config_file = parser.parse_args()[0].config_file
-    if config_file is None:
-        config_file = [CFG_FILE]
-    config_file=[os.path.expanduser(x) for x in config_file]
-    conf_parser.read(config_file)
-
-    # set default values by picking from the configuration file
-    default_values = {}
-    default_variables = []
-    for option in parser.option_list:
-        if (option.dest != None) and conf_parser.has_option(SECTION, option.dest):
-            if option.dest == "variable":
-                variablesInCfgFile = conf_parser.get(SECTION, option.dest)
-                if (not variablesInCfgFile is None) and variablesInCfgFile.strip():
-                    allVariablesArray = variablesInCfgFile.split(",")
-                    default_variables = default_variables + allVariablesArray
-                    default_values[option.dest] = default_variables
-            else:
-                default_values[option.dest] = conf_parser.get(SECTION, option.dest)
-
-    parser.set_defaults( **default_values )
-
-    return parser.parse_args()
-
-def option_callback_variable(option, opt, value, parser):
-    global _variables
-    _variables.append(value)
-    setattr(parser.values, option.dest, _variables)
-
-
-def initLogger():
-    logging.addLevelName(utils_log.TRACE_LEVEL, 'TRACE')
-    logging.config.fileConfig(  os.path.join(os.path.dirname(__file__),LOG_CFG_FILE) )
-    global log
-    log = logging.getLogger(__name__)
-
-    logging.getLogger().setLevel(logging.INFO)
-#===============================================================================
-# The Main function
-#===============================================================================
-def main():
-    start_time = datetime.datetime.now()
-
-    initLogger()
-
-    try:
-        # we prepare options we want
-        (_options, args) = load_options()
-
-        if _options.log_level != None:
-            logging.getLogger().setLevel(int(_options.log_level))
-
-        motu_api.execute_request(_options)
-    except Exception as e:
-        log.error( "Execution failed: %s", e )
-        if hasattr(e, 'reason'):
-          log.info( ' . reason: %s', e.reason )
-        if hasattr(e, 'code'):
-          log.info( ' . code  %s: ', e.code )
-        if hasattr(e, 'read'):
-          log.log( utils_log.TRACE_LEVEL, ' . detail:\n%s', e.read() )
-
-        log.debug( '-'*60 )
-        log.debug( "Stack trace exception is detailed herafter:" )
-        exc_type, exc_value, exc_tb = sys.exc_info()
-        x = traceback.format_exception(exc_type, exc_value, exc_tb)
-        for stack in x:
-            log.debug( ' . %s', stack.replace('\n', '') )
-        log.debug( '-'*60 )
-        log.log( utils_log.TRACE_LEVEL, 'System info is provided hereafter:' )
-        system, node, release, version, machine, processor = platform.uname()
-        log.log( utils_log.TRACE_LEVEL, ' . system   : %s', system )
-        log.log( utils_log.TRACE_LEVEL, ' . node     : %s', node )
-        log.log( utils_log.TRACE_LEVEL, ' . release  : %s', release )
-        log.log( utils_log.TRACE_LEVEL, ' . version  : %s', version )
-        log.log( utils_log.TRACE_LEVEL, ' . machine  : %s', machine )
-        log.log( utils_log.TRACE_LEVEL, ' . processor: %s', processor )
-        log.log( utils_log.TRACE_LEVEL, ' . python   : %s', sys.version )
-        log.log( utils_log.TRACE_LEVEL, ' . client   : %s', get_client_version() )
-        log.log( utils_log.TRACE_LEVEL, '-'*60 )
-
-        sys.exit(ERROR_CODE_EXIT)
-
-    finally:
-        log.debug( "Elapsed time : %s", str(datetime.datetime.now() - start_time) )
-
-if __name__ == '__main__':
-    main()
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/pom.xml b/Forecast_tools/motuclient-python/pom.xml
deleted file mode 100755
index fb4c1380..00000000
--- a/Forecast_tools/motuclient-python/pom.xml
+++ /dev/null
@@ -1,83 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-    <groupId>cls.atoll.motu.client</groupId>
-    <artifactId>motuclient-python</artifactId>
-    <version>1.8.4</version>
-    <packaging>pom</packaging>
-
-    <name>Motu Client Python</name>
-    <description>This package holds the python scripts used to address Motu servers for ordering, extracting and
-        downloading oceanographic data.
-    </description>
-	
-	<properties>
-    	<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-  	</properties>
-    
-    <build>
-        <scriptSourceDirectory>${basedir}/src</scriptSourceDirectory>
-        <testSourceDirectory>${basedir}/bin</testSourceDirectory>
-        <outputDirectory>${basedir}/bin</outputDirectory>
-        <testOutputDirectory>${basedir}/bin</testOutputDirectory>
-        <plugins>
-            <plugin>
-                <artifactId>maven-assembly-plugin</artifactId>
-                <version>2.4</version>
-    			<configuration>
-					<finalName>${project.artifactId}-${project.version}-${build-timestamp}</finalName>
-                    <descriptors>
-                        <descriptor>${basedir}/assembly/bin.xml</descriptor>
-                        <descriptor>${basedir}/assembly/src.xml</descriptor>
-                    </descriptors>
-                </configuration>
-                <executions>
-                    <execution>
-                        <id>make-assembly</id>
-                        <phase>package</phase>
-                        <goals>
-                            <goal>single</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-			<!-- Used to build a "build-timestamp" property, this property could be overridden by ANT calls from /motu-distribution/build.xml -->
-			<plugin>
-				<groupId>org.codehaus.mojo</groupId>
-				<artifactId>buildnumber-maven-plugin</artifactId>
-				<version>1.4</version>
-				<configuration>
-					<revisionOnScmFailure>no.scm.config.in.pom</revisionOnScmFailure>
-				</configuration>
-				<executions>
-					<execution>
-						<id>create-timestamp-id</id>
-						<phase>validate</phase>
-						<goals>
-							<goal>create-timestamp</goal>
-						</goals>
-						<configuration>
-							<timestampFormat>yyyyMMddHHmmssSSS</timestampFormat>
-							<timestampPropertyName>build-timestamp</timestampPropertyName>
-							<!-- formats the timestamp all together like 2016-04-04 14:17:05.123 
-								and puts it in the ${myBuildNumberVariable} buildProperty -->
-						</configuration>
-					</execution>
-				</executions>
-			</plugin>
-        </plugins>
-    </build>
-
-    <organization>
-        <name>CLS (Collecte Localisation Satelite)</name>
-        <url>http://www.cls.fr</url>
-    </organization>
-
-    <licenses>
-        <license>
-            <name>GNU Lesser General Public License (LGPL)</name>
-            <url>http://www.gnu.org/licenses/lgpl.html</url>
-            <distribution>repo</distribution>
-            <comments>A business-friendly Open Source license</comments>
-        </license>
-    </licenses>
-</project>
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/setup.cfg b/Forecast_tools/motuclient-python/setup.cfg
deleted file mode 100755
index a2f3748e..00000000
--- a/Forecast_tools/motuclient-python/setup.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-[metadata]
-description-file = README.md
\ No newline at end of file
diff --git a/Forecast_tools/motuclient-python/setup.py b/Forecast_tools/motuclient-python/setup.py
deleted file mode 100755
index b0fab61c..00000000
--- a/Forecast_tools/motuclient-python/setup.py
+++ /dev/null
@@ -1,61 +0,0 @@
-import os
-import sys
-
-from setuptools import setup, find_packages
-
-# project libraries path
-LIBRARIES_PATH = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'src', 'python')
-
-# Manage imports of project libraries
-if not os.path.exists(LIBRARIES_PATH):
-    sys.stderr.write('\nERROR: can not find project libraries path: %s\n\n' % os.path.abspath(LIBRARIES_PATH))
-    sys.exit(1)
-sys.path.append(LIBRARIES_PATH)
-
-from motu_utils import pom_version
-
-setup(
-    name='motuclient',
-    version=pom_version.getPOMVersion(),
-    python_requires='>=2.7',
-    description='Extract and download gridded data through a python command line from Motu web server. Used in CMEMS context http://marine.copernicus.eu/',
-    long_description='Motu is a high efficient and robust Web Server which fills the gap between heterogeneous data providers to end users. Motu handles, extracts and transforms oceanographic huge volumes of data without performance collapse. This client enables to extract and download data through a python command line.',
-    keywords=[
-        'Copernicus',
-        'CMEMS',
-        'CLS',
-        'Motu',
-        'motuclient-python',
-        'Dissemination Unit'
-    ],
-
-    author='Sylvain MARTY, CLS',
-    author_email='smarty@cls.fr',
-    platforms=['any'],
-
-    url='https://github.com/clstoulouse/motu-client-python',
-    license='LGPL',
-
-    package_dir = {'': 'src/python', 'motu_utils': 'src/python/motu_utils'},
-    packages=['motu_utils'],
-    py_modules = ['motuclient', 'motu-client'],
-    include_package_data=True,
-
-    download_url='https://github.com/clstoulouse/motu-client-python/releases/',
-
-    classifiers=[
-        'Development Status :: 5 - Production/Stable',
-        'Programming Language :: Python :: 2.7',
-        'License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)',
-        'Topic :: Scientific/Engineering :: GIS',
-        'Environment :: Console',
-        'Natural Language :: English',
-        'Operating System :: OS Independent'
-    ],
-
-    entry_points={
-        'console_scripts': [
-            'motuclient = motuclient:main'
-        ]
-    }
-)
diff --git a/Forecast_tools/plot_forecast_croco.m b/Forecast_tools/plot_forecast_croco.m
index 82375860..13e0b207 100644
--- a/Forecast_tools/plot_forecast_croco.m
+++ b/Forecast_tools/plot_forecast_croco.m
@@ -1,439 +1,465 @@
-%*********************************************************
-% plot CROCO forecast analysis at noon for each day
-%*********************************************************
-clear all
-close all
-start
-crocotools_param
-as_consts % load constants
-
-disp('Forecast analysis')
-%********************************************************
-%            User defined parameters
-%
-dirin     = './';
-dirout    = './Figs/';
-eval(['!mkdir ',dirout])
-grdname   = [dirin,'SCRATCH/croco_grd.nc'];
-frcname   = [dirin,'SCRATCH/croco_frc_GFS_0.nc'];
-avgname   = [dirin,'SCRATCH/croco_avg.nc'];
-coastfile = [dirin,'coastline_l.mat'];
-
-%lonmin=8; lonmax=22; latmin=-38; latmax=-26;
-
-skip_wnd  =  2;
-skip_cur  =  2;
-zoom      =  0;
-fsize     = 14;   % Font size
-nx        =  3;   % number of days
-titlemark = ['IRD: ',datestr(now)];
-
-mean_currents = 0;  % 1: plot 0-500 mean currents
-                    % 0: surface currents
-
-plot_fig_1 = 0; % wind
-plot_fig_2 = 0; % surface currents
-plot_fig_3 = 1; % SST + surface currents
-plot_fig_4 = 1; % SSH
-plot_fig_5 = 0; % HBL
-
-% offset to convert UTC  model time 
-% into local matlab time (days]
-days_off = timezone/24+datenum(Yorig,1,1); 
-%
-%************ End of users's defined parameter ************
-%
-% time (in matlab time)
-%
-today=floor(now);
-%
-% date in 'Yorig' time
-%
-rundate=datenum(today)-datenum(Yorig,1,1);
-%
-nc=netcdf(grdname);
-lon=nc{'lon_rho'}(:);
-lat=nc{'lat_rho'}(:);
-h=nc{'h'}(:);
-mask=nc{'mask_rho'}(:);
-angle=nc{'angle'}(:);
-close(nc)
-mask(mask==0)=NaN;
-%
-nc=netcdf(avgname);
-N=length(nc('s_rho'));
-close(nc)
-[M L]=size(lon);
-Mu=M; Lu=L-1; Mv=M-1; Lv=L;
-zeta(1:M,1:L)=0;
-zw=zlevs(h,zeta,theta_s,theta_b,hc,N,'w',vtransform);
-zu=rho2u_3d(zw);
-zv=rho2v_3d(zw);
-dzu=zu(2:end,:,:)-zu(1:end-1,:,:);
-dzv=zv(2:end,:,:)-zv(1:end-1,:,:);
-%
-% coastline
-%bounds=[lonmin lonmax latmin latmax]; res='l';
-%coastfile=make_coast2(bounds,res)
-
-%
-barwidth=0.5;
-barheight=0.04;
-titleheight=0.01;
-hmargin=0.025;
-vmargin=0.10;
-clear title;
-
-if plot_fig_1,
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% 1: wind
-%
- disp('PLot winds ...')
- itime=0;
- cmin=0; cint=5; cmax=30; cff_wnd=.4; % winds
- [LON,LAT]=meshgrid([lonmin:1/3:lonmax],[latmin:1/3:latmax]);
- nc=netcdf(frcname);
- smstime=nc{'sms_time'}(:);
- smstime0=floor(now)-datenum(Yorig,1,1)-1/24-1;  %midday
- for tndx=1:nx;
-  smstime0=smstime0+1;
-  itime=itime+1;
-  disp(['Day ',num2str(itime)])
-  outname=['WIND',num2str(itime)];
-  close all
-  figure('position',[5 5 1000 600]);
-  subplot('position',[0 0.2 1 .75]);
-  istr=max(find(smstime<=smstime0));
-  iend=min(find(smstime>=smstime0));
-  u1=squeeze(nc{'sustr'}(istr,:,:));
-  v1=squeeze(nc{'svstr'}(istr,:,:));
-  u2=squeeze(nc{'sustr'}(iend,:,:));
-  v2=squeeze(nc{'svstr'}(iend,:,:));
-  u=(u1*(smstime(iend)-smstime0)+u2*(smstime0-smstime(istr)))/ ...
-                                (smstime(iend)-smstime(istr));
-  v=(v1*(smstime(iend)-smstime0)+v2*(smstime0-smstime(istr)))/ ...
-                                (smstime(iend)-smstime(istr));
-  stress=sqrt((u2rho_2d(u)).^2+(v2rho_2d(v)).^2);
-  [ur,vr,lonr,latr,maskr]=uv_vec2rho(u,v,lon,lat,angle,mask,skip_wnd,[0 0 0 0]);
-
-  spd=1.94384*sqrt(stress./(rho_air*1.15e-3));
-  spdr=sqrt(ur.^2+vr.^2)./(rho_air*1.15e-3);
-  ur=1.94384*ur./(rho_air*1.15e-3*spdr);
-  vr=1.94384*vr./(rho_air*1.15e-3*spdr);
-
-  U=interp2(lonr,latr,ur,LON,LAT);
-  V=interp2(lonr,latr,vr,LON,LAT);
-
-  m_proj('mercator',...
-       'lon',[lonmin lonmax],...
-       'lat',[latmin latmax]);
-% [C0,h0]=m_contourf(lon,lat,stress,[0:0.04:0.3],'k');
-  [C0,h0]=m_contourf(lon,lat,spd,[cmin:cint:cmax],'k');
-  shading flat
-  caxis([cmin cmax])
-  hold on
-  %h=m_quiver(lonr,latr,cff_wnd*ur,cff_wnd*vr,0,'k'); hold on;
-  h=m_streamslice(LON,LAT,U,V,1); hold on;
-  %m_streamslice(lonr,latr,ur,vr,1); hold on;
-  set(h,'color','b');
-  m_usercoast(coastfile,'patch',[.0 .0 .0]);
-  hold off
-  m_grid('box','fancy','tickdir','in','FontSize',fsize);
-  set(findobj('tag','m_grid_color'),'facecolor','white')
-  title([datestr(smstime0+days_off,1)],'FontSize',fsize+1)
-  ht=m_text(lonmax,latmax+.5,titlemark);
-  set(ht,'horizontalalignment','right','fontsize',fsize-4,'Color','b');
-  set(gca,'Layer','top');
-  subplot('Position',[0.5-0.5*barwidth vmargin barwidth barheight])
-  colormap(1-copper)
-  x=[0:1];
-  y=[cmin:cint:cmax];
-  [X,Y]=meshgrid(x,y);
-  contourf(Y,X,Y,y)
-  caxis([cmin cmax])
-  set(gca,'XTick',[cmin:cint:cmax],'YTickLabel',[' '])
-  set(gca,'FontSize',fsize)
-  set(gca,'Layer','top');
-%  xlabel('Wind Stress [N m^{-2}]','FontSize',fsize)
-  xlabel('Wind [knots]','FontSize',fsize)
-  set(gcf, 'PaperPositionMode', 'auto');
-
-  export_fig -transparent file.pdf
-  eval(['! mv -f file.pdf ',dirout,outname,'.pdf']);
- end
-close(nc)
-end % plot_fig_1
-
-if plot_fig_2,
-%
-% 2: Surface currents
-%
-disp('PLot surface currents ...')
-itime=0;
-cmin=0; cint=0.1; cmax=2.0; cff_cur=2; 
-for tndx=hdays+1:nx+hdays
-  itime=itime+1;
-  disp(['Day ',num2str(itime)])
-  outname=['FLOW',num2str(itime)];
-  close all
-  figure('position',[5 5 1000 600]);
-  subplot('position',[0 0.2 1 .75]);
-
-  nc=netcdf(avgname);
-  scrumtime=[];
-  scrumtime=(nc{'scrum_time'}(tndx))/86400+days_off;
-  if ~isempty(scrumtime)
-    U=zeros(Mu,Lu);
-    V=zeros(Mv,Lv);
-    N=length(nc('s_rho'));
-    if mean_currents,
-      u=squeeze(nc{'u'}(tndx,:,:,:));
-      v=squeeze(nc{'v'}(tndx,:,:,:));
-      for j=1:Mu; for i=1:Lu; for k=N:-1:1;
-        if zu(k,j,i)>-500,
-          U(j,i)=U(j,i)+u(k,j,i).*dzu(k,j,i);
-          hu(j,i)=-zu(k,j,i);
-        end;
-      end; end; end;
-      clear u; u=U./hu; clear U;
-      for j=1:Mv; for i=1:Lv; for k=N:-1:1;
-        if zv(k,j,i)>-500,
-          V(j,i)=V(j,i)+v(k,j,i).*dzv(k,j,i);
-          hv(j,i)=-zv(k,j,i);
-        end;
-      end; end; end;
-      clear v; v=V./hv; clear V;
-    else
-      u=squeeze(nc{'u'}(tndx,N,:,:));
-      v=squeeze(nc{'v'}(tndx,N,:,:));
-    end
-    close(nc)
-
-    spd=1.94384*mask.*sqrt((u2rho_2d(u)).^2+(v2rho_2d(v)).^2);
-    spd=get_missing_val(lon,lat,spd);
-    [ur,vr,lonr,latr,maskr]=uv_vec2rho(u,v,lon,lat,angle,mask,skip_cur,[0 0 0 0]);
-
-    m_proj('mercator',...
-       'lon',[lonmin lonmax],...
-       'lat',[latmin latmax]);
-    [C0,h0]=m_contourf(lon,lat,spd,[cmin:cint:cmax],'k');
-    shading flat
-    caxis([cmin cmax])
-    hold on
-    m_quiver(lonr,latr,cff_cur*ur,cff_cur*vr,0,'k');
-    m_usercoast(coastfile,'patch',[.0 .0 .0]);
-    hold off
-    m_grid('box','fancy','tickdir','in','FontSize',fsize);
-    set(findobj('tag','m_grid_color'),'facecolor','white')
-    title([datestr(scrumtime,1)],'FontSize',fsize+1)
-    ht=m_text(lonmax,latmax+.5,titlemark);
-    set(ht,'horizontalalignment','right','fontsize',fsize-3,'Color','b');
-    set(gca,'Layer','top');
-    subplot('Position',[0.5-0.5*barwidth vmargin barwidth barheight])
-    colormap(1-copper)
-    x=[0:1];
-    y=[cmin:cint:cmax];
-    [X,Y]=meshgrid(x,y);
-    caxis([cmin cmax])
-    contourf(Y,X,Y,y)
-    set(gca,'XTick',[cmin:cint:cmax],'YTickLabel',[' '])
-    set(gca,'FontSize',fsize)
-    set(gca,'Layer','top');
-    if mean_currents,
-      xlabel('0-500m mean currents [Knots]','FontSize',fsize)
-    else
-      xlabel('Surface currents [Knots]','FontSize',fsize)
-    end
-    set(gcf, 'PaperPositionMode', 'auto');
-
-    export_fig -transparent file.pdf
-    eval(['! mv -f file.pdf ',dirout,outname,'.pdf']);
-  end
-end
-end % plot_fig_2
-
-if plot_fig_3,
-%
-% 3: SST and Surface Currents
-%
-disp('PLot SST and surface currents ...')
-itime=0;
-nc=netcdf(avgname);
-sst=mask.*squeeze(nc{'temp'}(1,N,:,:));
-close(nc)
-cmin=floor(min(min(sst)));
-cmax= ceil(max(max(sst)));
-cint=1; cff_cur=1.5;
-%cmin=13; cmax=20;
-for tndx=hdays+1:nx+hdays
-  itime=itime+1;
-  disp(['Day ',num2str(itime)])
-  outname=['SST',num2str(itime)];
-  close all
-  figure('position',[5 5 1000 600]);
-  subplot('position',[0 0.2 1 .75]);
-
-  nc=netcdf(avgname);
-  scrumtime=[];
-  scrumtime=(nc{'scrum_time'}(tndx))/86400+days_off;
-  if ~isempty(scrumtime)
-    N=length(nc('s_rho'));
-    sst=mask.*squeeze(nc{'temp'}(tndx,N,:,:));
-    u=squeeze(nc{'u'}(tndx,N,:,:));
-    v=squeeze(nc{'v'}(tndx,N,:,:));
-    close(nc)
-    [ur,vr,lonr,latr,maskr]=uv_vec2rho(u,v,lon,lat,angle,mask,skip_cur,[0 0 0 0]);
-    spdr=sqrt(ur.^2+vr.^2);
-    sst=get_missing_val(lon,lat,sst);
-    ur=get_missing_val(lonr,latr,ur);
-    vr=get_missing_val(lonr,latr,vr);
-
-    %plot_res=1/3;
-    %[LON,LAT]=meshgrid([lonmin:plot_res:lonmax],[latmin:plot_res:latmax]);
-    %U=interp2(lonr,latr,ur,LON,LAT);
-    %V=interp2(lonr,latr,vr,LON,LAT);
-
-    m_proj('mercator',...
-         'lon',[lonmin lonmax],...
-         'lat',[latmin latmax]);
-    [C0,h0]=m_contourf(lon,lat,sst,[cmin:cint:cmax],'k');
-    shading flat
-    caxis([cmin cmax])
-    hold on
-    m_quiver(lonr,latr,cff_cur*ur,cff_cur*vr,0,'k');
-    %m_streamslice(LON,LAT,U,V,2);
-    m_usercoast(coastfile,'patch',[.0 .0 .0]);
-    hold off
-    m_grid('box','fancy','tickdir','in','FontSize',fsize-2);
-    set(findobj('tag','m_grid_color'),'facecolor','white')
-    title([datestr(scrumtime,1)],'FontSize',fsize+1);
-    ht=m_text(lonmax,latmax+.5,titlemark);
-    set(ht,'horizontalalignment','right','fontsize',fsize-3,'Color','b');
-    set(gca,'Layer','top');
-
-    subplot('Position',[0.5-0.5*barwidth vmargin barwidth barheight])
-    x=[0:1];
-    y=[cmin:cint:cmax];
-    [X,Y]=meshgrid(x,y);
-    caxis([cmin cmax])
-    contourf(Y,X,Y,y)
-    set(gca,'XTick',[cmin:cint:cmax],'YTickLabel',[' '])
-    set(gca,'FontSize',fsize)
-    set(gca,'Layer','top');
-    xlabel('SST [^{o}C]','FontSize',fsize)
-    set(gcf, 'PaperPositionMode', 'auto');
-
-    export_fig -transparent file.pdf
-    eval(['! mv -f file.pdf ',dirout,outname,'.pdf']);
-  end
-end
-end % plot_fig_3
-%
-if plot_fig_4,
-%
-% 4: Sea Surface Height
-%
-disp('PLot SSH ...')
-itime=0;
-cmin=-50; cint=5; cmax=50;
-for tndx=hdays+1:nx+hdays
-  itime=itime+1;
-  disp(['Day ',num2str(itime)])
-  outname=['SSH',num2str(itime)];
-  close all
-  figure('position',[5 5 1000 600]);
-  subplot('position',[0 0.2 1 .75]);
-
-  nc=netcdf(avgname);
-  scrumtime=[];
-  scrumtime=(nc{'scrum_time'}(tndx))/86400+days_off;
-  if ~isempty(scrumtime)
-    N=length(nc('s_rho'));
-    ssh=100*squeeze(nc{'zeta'}(tndx,:,:));
-    ssh=(ssh-mean(mean(ssh))).*mask;
-    close(nc)
-    ssh=get_missing_val(lon,lat,ssh);
-
-    m_proj('mercator','lon',[lonmin lonmax],'lat',[latmin latmax]);
-    [C0,h0]=m_contourf(lon,lat,ssh,[cmin:cint:cmax]);
-%    shading flat
-    caxis([cmin cmax])
-    m_usercoast(coastfile,'patch',[.0 .0 .0]);
-    m_grid('box','fancy','tickdir','in','FontSize',fsize-2);
-    set(findobj('tag','m_grid_color'),'facecolor','white')
-    title([datestr(scrumtime,1)],'FontSize',fsize+1)
-	ht=m_text(lonmax,latmax+.5,titlemark);
-    set(ht,'horizontalalignment','right','fontsize',fsize-3,'Color','b');
-    set(gca,'Layer','top');
-
-    subplot('Position',[0.5-0.5*barwidth vmargin barwidth barheight])
-    x=[0:1];
-    y=[cmin:cint:cmax];
-    [X,Y]=meshgrid(x,y);
-    caxis([cmin cmax])
-    contourf(Y,X,Y,y)
-    set(gca,'XTick',[cmin:cint:cmax],'YTickLabel',[' '])
-    set(gca,'FontSize',fsize)
-    set(gca,'Layer','top');
-    xlabel('SSH [cm]','FontSize',fsize)
-    set(gcf, 'PaperPositionMode', 'auto');
-
-    export_fig -transparent file.pdf
-    eval(['! mv -f file.pdf ',dirout,outname,'.pdf']);
-  end
-end
-end % plot_fig_4
-
-if plot_fig_5,
-%
-% 5: Surface Boundary Layer Depth
-%
-disp('PLot HBL ...')
-itime=0;
-cmin=0; cint=10; cmax=100;
-for tndx=hdays+1:nx+hdays
-  itime=itime+1;
-  disp(['Day ',num2str(itime)])
-  outname=['HBL',num2str(itime)];
-  close all
-  figure('position',[5 5 1000 600]);
-  subplot('position',[0 0.2 1 .75]);
-
-  nc=netcdf(avgname);
-  scrumtime=[];
-  scrumtime=(nc{'scrum_time'}(tndx))/86400+days_off;
-  if ~isempty(scrumtime)
-    hbl=mask.*squeeze(nc{'hbl'}(tndx,:,:));
-    close(nc)
-%    hbl=get_missing_val(lon,lat,hbl);
-
-    m_proj('mercator','lon',[lonmin lonmax],'lat',[latmin latmax]);
-    m_pcolor(lon,lat,hbl);
-    shading flat
-    caxis([cmin cmax])
-    m_usercoast(coastfile,'patch',[.0 .0 .0]);
-    m_grid('box','fancy','tickdir','in','FontSize',fsize-2);
-    set(findobj('tag','m_grid_color'),'facecolor','white')
-    title([datestr(scrumtime,1)],'FontSize',fsize+1)
-	ht=m_text(lonmax,latmax+.5,titlemark);
-    set(ht,'horizontalalignment','right','fontsize',fsize-3,'Color','b');
-    set(gca,'Layer','top');
-
-    subplot('Position',[0.5-0.5*barwidth vmargin barwidth barheight])
-    x=[0:1];
-    y=[cmin:cint:cmax];
-    [X,Y]=meshgrid(x,y);
-    caxis([cmin cmax])
-    contourf(Y,X,Y,y)
-    set(gca,'XTick',[cmin:cint:cmax],'YTickLabel',[' '])
-    set(gca,'FontSize',fsize)
-    set(gca,'Layer','top');
-    xlabel('HBL [m]','FontSize',fsize)
-    set(gcf, 'PaperPositionMode', 'auto');
-
-    export_fig -transparent file.pdf
-    eval(['! mv -f file.pdf ',dirout,outname,'.pdf']);
-  end
-end
-end % plot_fig_5
+%*********************************************************
+% plot CROCO forecast analysis at noon of each day
+%*********************************************************
+clear all
+close all
+start
+crocotools_param
+as_consts % load constants
+
+disp('Forecast analysis')
+%********************************************************
+%            User defined parameters
+%
+dirin     = './';
+dirout    = './Figs/';
+eval(['!mkdir ',dirout])
+grdname   = [dirin,'SCRATCH/croco_grd.nc'];
+frcname   = [dirin,'SCRATCH/croco_frc_GFS_0.nc'];
+hisname   = [dirin,'SCRATCH/croco_his.nc'];
+avgname   = [dirin,'SCRATCH/croco_avg.nc'];
+coastfile = [dirin,'coastline_f.mat'];
+
+skip_wnd  =  2;
+skip_cur  =  2;
+zoom      =  0;
+fsize     = 14;   % Font size
+nx        =  3;   % number of forecast days
+%
+titlemark = ['CROCO: ',datestr(now)];
+
+mean_currents = 0;  % 1: plot 0-500 mean currents
+                    % 0: surface currents
+
+plot_fig_1 = 0; % wind
+plot_fig_2 = 1; % surface currents
+plot_fig_3 = 1; % SST + surface currents
+plot_fig_4 = 1; % SSH
+plot_fig_5 = 0; % HBL
+
+% offset to convert UTC model time 
+% into local matlab time [days]
+days_off = timezone/24+datenum(Yorig,1,1); 
+%
+%************ End of users's defined parameter ************
+%
+today=floor(now);
+%
+% date in 'Yorig' time
+%
+rundate=datenum(today)-datenum(Yorig,1,1);
+%
+nc=netcdf(grdname);
+lon=nc{'lon_rho'}(:);
+lat=nc{'lat_rho'}(:);
+h=nc{'h'}(:);
+mask=nc{'mask_rho'}(:);
+angle=nc{'angle'}(:);
+close(nc)
+mask(mask==0)=NaN;
+%
+nc=netcdf(avgname);
+N=length(nc('s_rho'));
+close(nc)
+[M L]=size(lon);
+Mu=M; Lu=L-1; Mv=M-1; Lv=L;
+zeta(1:M,1:L)=0;
+zw=zlevs(h,zeta,theta_s,theta_b,hc,N,'w',vtransform);
+zu=rho2u_3d(zw);
+zv=rho2v_3d(zw);
+dzu=zu(2:end,:,:)-zu(1:end-1,:,:);
+dzv=zv(2:end,:,:)-zv(1:end-1,:,:);
+%
+% coastline
+%bounds=[lonmin lonmax latmin latmax]; res='l';
+%coastfile=make_coast2(bounds,res)
+%
+barwidth=0.5;
+barheight=0.04;
+titleheight=0.01;
+hmargin=0.025;
+vmargin=0.10;
+clear title;
+
+if plot_fig_1,
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% 1: wind
+%
+ disp('Plot winds ...')
+ itime=0;
+ cmin=0; cint=5; cmax=30; cff_wnd=.4; % winds
+ [LON,LAT]=meshgrid([lonmin:1/3:lonmax],[latmin:1/3:latmax]);
+ nc=netcdf(frcname);
+ smstime=nc{'sms_time'}(:);
+ smstime0=floor(now)-datenum(Yorig,1,1)-1/24-1;  %midday
+ for tndx=hdays+1:nx+hdays
+  smstime0=smstime0+1;
+  itime=itime+1;
+  disp(['Day ',num2str(itime)])
+  outname=['WIND',num2str(itime)];
+  close all
+  figure('position',[5 5 1000 600]);
+  subplot('position',[0 0.2 1 .75]);
+  istr=max(find(smstime<=smstime0));
+  iend=min(find(smstime>=smstime0));
+  u1=squeeze(nc{'sustr'}(istr,:,:));
+  v1=squeeze(nc{'svstr'}(istr,:,:));
+  u2=squeeze(nc{'sustr'}(iend,:,:));
+  v2=squeeze(nc{'svstr'}(iend,:,:));
+  u=(u1*(smstime(iend)-smstime0)+u2*(smstime0-smstime(istr)))/ ...
+                                (smstime(iend)-smstime(istr));
+  v=(v1*(smstime(iend)-smstime0)+v2*(smstime0-smstime(istr)))/ ...
+                                (smstime(iend)-smstime(istr));
+  stress=sqrt((u2rho_2d(u)).^2+(v2rho_2d(v)).^2);
+  [ur,vr,lonr,latr,maskr]=uv_vec2rho(u,v,lon,lat,angle,mask,skip_wnd,[0 0 0 0]);
+
+  spd=1.94384*sqrt(stress./(rho_air*1.15e-3));
+  spdr=sqrt(ur.^2+vr.^2)./(rho_air*1.15e-3);
+  ur=1.94384*ur./(rho_air*1.15e-3*spdr);
+  vr=1.94384*vr./(rho_air*1.15e-3*spdr);
+
+  U=interp2(lonr,latr,ur,LON,LAT);
+  V=interp2(lonr,latr,vr,LON,LAT);
+
+  m_proj('mercator',...
+       'lon',[lonmin lonmax],...
+       'lat',[latmin latmax]);
+% [C0,h0]=m_contourf(lon,lat,stress,[0:0.04:0.3],'k');
+  [C0,h0]=m_contourf(lon,lat,spd,[cmin:cint:cmax],'k');
+  shading flat
+  caxis([cmin cmax])
+  hold on
+  %h=m_quiver(lonr,latr,cff_wnd*ur,cff_wnd*vr,0,'k'); hold on;
+  h=m_streamslice(LON,LAT,U,V,1); hold on;
+  %m_streamslice(lonr,latr,ur,vr,1); hold on;
+  set(h,'color','b');
+  if ~isempty(coastfile)  
+   m_usercoast(coastfile,'patch',[.0 .0 .0]);
+  else
+   m_gshhs_f('patch',[.7 .7 .7],'edgecolor','k')
+  end
+  hold off
+  m_grid('box','fancy','tickdir','in','FontSize',fsize);
+  set(findobj('tag','m_grid_color'),'facecolor','white')
+  title([datestr(smstime0+days_off,1)],'FontSize',fsize+1)
+  ht=m_text(lonmax,latmax+.5,titlemark);
+  set(ht,'horizontalalignment','right','fontsize',fsize-4,'Color','b');
+  set(gca,'Layer','top');
+  subplot('Position',[0.5-0.5*barwidth vmargin barwidth barheight])
+  colormap(1-copper)
+  x=[0:1];
+  y=[cmin:cint:cmax];
+  [X,Y]=meshgrid(x,y);
+  contourf(Y,X,Y,y)
+  caxis([cmin cmax])
+  set(gca,'XTick',[cmin:cint:cmax],'YTickLabel',[' '])
+  set(gca,'FontSize',fsize)
+  set(gca,'Layer','top');
+%  xlabel('Wind Stress [N m^{-2}]','FontSize',fsize)
+  xlabel('Wind [knots]','FontSize',fsize)
+  set(gcf, 'PaperPositionMode', 'auto');
+
+  % export_fig -transparent file.pdf
+  % eval(['! mv -f file.pdf ',dirout,outname,'.pdf']);
+  eval(['print -bestfit -dpdf',dirout,outname,'.pdf']);
+ end
+close(nc)
+end % plot_fig_1
+
+if plot_fig_2,
+%
+% 2: Surface currents
+%
+disp('Plot surface currents ...')
+itime=0;
+cmin=0; cint=0.1; cmax=2.0; cff_cur=2; 
+for tndx=hdays+1:nx+hdays
+  itime=itime+1;
+  disp(['Day ',num2str(itime)])
+  outname=['FLOW',num2str(itime)];
+  close all
+  figure('position',[5 5 1000 600]);
+  subplot('position',[0 0.2 1 .75]);
+
+  nc=netcdf(avgname);
+  scrumtime=[];
+  scrumtime=(nc{'scrum_time'}(tndx))/86400+days_off;
+  if ~isempty(scrumtime)
+    U=zeros(Mu,Lu);
+    V=zeros(Mv,Lv);
+    N=length(nc('s_rho'));
+    if mean_currents,
+      u=squeeze(nc{'u'}(tndx,:,:,:));
+      v=squeeze(nc{'v'}(tndx,:,:,:));
+      for j=1:Mu; for i=1:Lu; for k=N:-1:1;
+        if zu(k,j,i)>-500,
+          U(j,i)=U(j,i)+u(k,j,i).*dzu(k,j,i);
+          hu(j,i)=-zu(k,j,i);
+        end;
+      end; end; end;
+      clear u; u=U./hu; clear U;
+      for j=1:Mv; for i=1:Lv; for k=N:-1:1;
+        if zv(k,j,i)>-500,
+          V(j,i)=V(j,i)+v(k,j,i).*dzv(k,j,i);
+          hv(j,i)=-zv(k,j,i);
+        end;
+      end; end; end;
+      clear v; v=V./hv; clear V;
+    else
+      u=squeeze(nc{'u'}(tndx,N,:,:));
+      v=squeeze(nc{'v'}(tndx,N,:,:));
+    end
+    close(nc)
+
+    spd=1.94384*mask.*sqrt((u2rho_2d(u)).^2+(v2rho_2d(v)).^2);
+    spd=get_missing_val(lon,lat,spd);
+    [ur,vr,lonr,latr,maskr]=uv_vec2rho(u,v,lon,lat,angle,mask,skip_cur,[0 0 0 0]);
+
+    m_proj('mercator',...
+       'lon',[lonmin lonmax],...
+       'lat',[latmin latmax]);
+    [C0,h0]=m_contourf(lon,lat,spd,[cmin:cint:cmax],'k');
+    shading flat
+    caxis([cmin cmax])
+    hold on
+    m_quiver(lonr,latr,cff_cur*ur,cff_cur*vr,0,'k');
+    m_usercoast(coastfile,'patch',[.0 .0 .0]);
+    if ~isempty(coastfile)  
+     m_usercoast(coastfile,'patch',[.0 .0 .0]);
+    else
+     m_gshhs_f('patch',[.7 .7 .7],'edgecolor','k')
+    end
+    hold off
+    m_grid('box','fancy','tickdir','in','FontSize',fsize);
+    set(findobj('tag','m_grid_color'),'facecolor','white')
+    title([datestr(scrumtime,1)],'FontSize',fsize+1)
+    ht=m_text(lonmax,latmax+.5,titlemark);
+    set(ht,'horizontalalignment','right','fontsize',fsize-3,'Color','b');
+    set(gca,'Layer','top');
+    subplot('Position',[0.5-0.5*barwidth vmargin barwidth barheight])
+    colormap(1-copper)
+    x=[0:1];
+    y=[cmin:cint:cmax];
+    [X,Y]=meshgrid(x,y);
+    caxis([cmin cmax])
+    contourf(Y,X,Y,y)
+    set(gca,'XTick',[cmin:cint:cmax],'YTickLabel',[' '])
+    set(gca,'FontSize',fsize)
+    set(gca,'Layer','top');
+    if mean_currents,
+      xlabel('0-500m mean currents [Knots]','FontSize',fsize)
+    else
+      xlabel('Surface currents [Knots]','FontSize',fsize)
+    end
+    set(gcf, 'PaperPositionMode', 'auto');
+
+    % export_fig -transparent file.pdf
+    % eval(['! mv -f file.pdf ',dirout,outname,'.pdf']);
+    eval(['print -bestfit -dpdf ',dirout,outname,'.pdf']);
+  end
+end
+end % plot_fig_2
+
+if plot_fig_3,
+%
+% 3: SST and Surface Currents
+%
+disp('Plot SST and surface currents ...')
+itime=0;
+nc=netcdf(avgname);
+sst=mask.*squeeze(nc{'temp'}(1,N,:,:));
+close(nc)
+cmin=floor(min(min(sst)));
+cmax= ceil(max(max(sst)));
+cint=1; cff_cur=1.5;
+%cmin=13; cmax=20;
+for tndx=hdays+1:nx+hdays
+  itime=itime+1;
+  disp(['Day ',num2str(itime)])
+  outname=['SST',num2str(itime)];
+  close all
+  figure('position',[5 5 1000 600]);
+  subplot('position',[0 0.2 1 .75]);
+
+  nc=netcdf(avgname);
+  scrumtime=[];
+  scrumtime=(nc{'scrum_time'}(tndx))/86400+days_off;
+  if ~isempty(scrumtime)
+    N=length(nc('s_rho'));
+    sst=mask.*squeeze(nc{'temp'}(tndx,N,:,:));
+    u=squeeze(nc{'u'}(tndx,N,:,:));
+    v=squeeze(nc{'v'}(tndx,N,:,:));
+    close(nc)
+    [ur,vr,lonr,latr,maskr]=uv_vec2rho(u,v,lon,lat,angle,mask,skip_cur,[0 0 0 0]);
+    spdr=sqrt(ur.^2+vr.^2);
+    sst=get_missing_val(lon,lat,sst);
+    ur=get_missing_val(lonr,latr,ur);
+    vr=get_missing_val(lonr,latr,vr);
+
+    %plot_res=1/3;
+    %[LON,LAT]=meshgrid([lonmin:plot_res:lonmax],[latmin:plot_res:latmax]);
+    %U=interp2(lonr,latr,ur,LON,LAT);
+    %V=interp2(lonr,latr,vr,LON,LAT);
+
+    m_proj('mercator',...
+         'lon',[lonmin lonmax],...
+         'lat',[latmin latmax]);
+    [C0,h0]=m_contourf(lon,lat,sst,[cmin:cint:cmax],'k');
+    shading flat
+    caxis([cmin cmax])
+    hold on
+    m_quiver(lonr,latr,cff_cur*ur,cff_cur*vr,0,'k');
+    %m_streamslice(LON,LAT,U,V,2);
+    m_usercoast(coastfile,'patch',[.0 .0 .0]);
+    if ~isempty(coastfile)  
+     m_usercoast(coastfile,'patch',[.0 .0 .0]);
+    else
+     m_gshhs_f('patch',[.7 .7 .7],'edgecolor','k')
+    end
+    hold off
+    m_grid('box','fancy','tickdir','in','FontSize',fsize-2);
+    set(findobj('tag','m_grid_color'),'facecolor','white')
+    title([datestr(scrumtime,1)],'FontSize',fsize+1);
+    ht=m_text(lonmax,latmax+.5,titlemark);
+    set(ht,'horizontalalignment','right','fontsize',fsize-3,'Color','b');
+    set(gca,'Layer','top');
+
+    subplot('Position',[0.5-0.5*barwidth vmargin barwidth barheight])
+    x=[0:1];
+    y=[cmin:cint:cmax];
+    [X,Y]=meshgrid(x,y);
+    caxis([cmin cmax])
+    contourf(Y,X,Y,y)
+    set(gca,'XTick',[cmin:cint:cmax],'YTickLabel',[' '])
+    set(gca,'FontSize',fsize)
+    set(gca,'Layer','top');
+    xlabel('SST [^{o}C]','FontSize',fsize)
+    set(gcf, 'PaperPositionMode', 'auto');
+
+    % export_fig -transparent file.pdf
+    % eval(['! mv -f file.pdf ',dirout,outname,'.pdf']);
+    eval(['print -bestfit -dpdf ',dirout,outname,'.pdf']);
+  end
+end
+end % plot_fig_3
+%
+if plot_fig_4,
+%
+% 4: Sea Surface Height
+%
+disp('Plot SSH ...')
+itime=0;
+cmin=-50; cint=5; cmax=50;
+for tndx=hdays+1:nx+hdays
+  itime=itime+1;
+  disp(['Day ',num2str(itime)])
+  outname=['SSH',num2str(itime)];
+  close all
+  figure('position',[5 5 1000 600]);
+  subplot('position',[0 0.2 1 .75]);
+
+  nc=netcdf(avgname);
+  scrumtime=[];
+  scrumtime=(nc{'scrum_time'}(tndx))/86400+days_off;
+  if ~isempty(scrumtime)
+    N=length(nc('s_rho'));
+    ssh=100*squeeze(nc{'zeta'}(tndx,:,:));
+    ssh=(ssh-mean(mean(ssh))).*mask;
+    close(nc)
+    ssh=get_missing_val(lon,lat,ssh);
+
+    m_proj('mercator','lon',[lonmin lonmax],'lat',[latmin latmax]);
+    [C0,h0]=m_contourf(lon,lat,ssh,[cmin:cint:cmax]);
+%    shading flat
+    caxis([cmin cmax])
+    if ~isempty(coastfile)  
+     m_usercoast(coastfile,'patch',[.0 .0 .0]);
+    else
+     m_gshhs_f('patch',[.7 .7 .7],'edgecolor','k')
+    end
+    m_grid('box','fancy','tickdir','in','FontSize',fsize-2);
+    set(findobj('tag','m_grid_color'),'facecolor','white')
+    title([datestr(scrumtime,1)],'FontSize',fsize+1)
+	ht=m_text(lonmax,latmax+.5,titlemark);
+    set(ht,'horizontalalignment','right','fontsize',fsize-3,'Color','b');
+    set(gca,'Layer','top');
+
+    subplot('Position',[0.5-0.5*barwidth vmargin barwidth barheight])
+    x=[0:1];
+    y=[cmin:cint:cmax];
+    [X,Y]=meshgrid(x,y);
+    caxis([cmin cmax])
+    contourf(Y,X,Y,y)
+    set(gca,'XTick',[cmin:cint:cmax],'YTickLabel',[' '])
+    set(gca,'FontSize',fsize)
+    set(gca,'Layer','top');
+    xlabel('SSH [cm]','FontSize',fsize)
+    set(gcf, 'PaperPositionMode', 'auto');
+
+    % export_fig -transparent file.pdf
+    % eval(['! mv -f file.pdf ',dirout,outname,'.pdf']);
+    eval(['print -bestfit -dpdf ',dirout,outname,'.pdf']);
+  end
+end
+end % plot_fig_4
+
+if plot_fig_5,
+%
+% 5: Surface Boundary Layer Depth
+%
+disp('Plot HBL ...')
+itime=0;
+cmin=0; cint=10; cmax=100;
+for tndx=hdays+1:nx+hdays
+  itime=itime+1;
+  disp(['Day ',num2str(itime)])
+  outname=['HBL',num2str(itime)];
+  close all
+  figure('position',[5 5 1000 600]);
+  subplot('position',[0 0.2 1 .75]);
+
+  nc=netcdf(avgname);
+  scrumtime=[];
+  scrumtime=(nc{'scrum_time'}(tndx))/86400+days_off;
+  if ~isempty(scrumtime)
+    hbl=mask.*squeeze(nc{'hbl'}(tndx,:,:));
+    close(nc)
+%    hbl=get_missing_val(lon,lat,hbl);
+
+    m_proj('mercator','lon',[lonmin lonmax],'lat',[latmin latmax]);
+    m_pcolor(lon,lat,hbl);
+    shading flat
+    caxis([cmin cmax])
+    if ~isempty(coastfile)  
+     m_usercoast(coastfile,'patch',[.0 .0 .0]);
+    else
+     m_gshhs_f('patch',[.7 .7 .7],'edgecolor','k')
+    end
+    m_grid('box','fancy','tickdir','in','FontSize',fsize-2);
+    set(findobj('tag','m_grid_color'),'facecolor','white')
+    title([datestr(scrumtime,1)],'FontSize',fsize+1)
+	ht=m_text(lonmax,latmax+.5,titlemark);
+    set(ht,'horizontalalignment','right','fontsize',fsize-3,'Color','b');
+    set(gca,'Layer','top');
+
+    subplot('Position',[0.5-0.5*barwidth vmargin barwidth barheight])
+    x=[0:1];
+    y=[cmin:cint:cmax];
+    [X,Y]=meshgrid(x,y);
+    caxis([cmin cmax])
+    contourf(Y,X,Y,y)
+    set(gca,'XTick',[cmin:cint:cmax],'YTickLabel',[' '])
+    set(gca,'FontSize',fsize)
+    set(gca,'Layer','top');
+    xlabel('HBL [m]','FontSize',fsize)
+    set(gcf, 'PaperPositionMode', 'auto');
+
+    % export_fig -transparent file.pdf
+    % eval(['! mv -f file.pdf ',dirout,outname,'.pdf']);
+    eval(['print  -bestfit -dpdf ',dirout,outname,'.pdf']);
+  end
+end
+end % plot_fig_5
+
+
diff --git a/Forecast_tools/plot_quick_forecast.m b/Forecast_tools/plot_quick_forecast.m
deleted file mode 100644
index 9fc96d73..00000000
--- a/Forecast_tools/plot_quick_forecast.m
+++ /dev/null
@@ -1,334 +0,0 @@
-%
-%  forecast_analysis.m
-%
-%  Create an image from the forecast results and send it to the 
-%  forecast web page.
-%  
-% 
-%  Further Information:  
-%  http://www.croco-ocean.org
-%  
-%  This file is part of CROCOTOOLS
-%
-%  CROCOTOOLS is free software; you can redistribute it and/or modify
-%  it under the terms of the GNU General Public License as published
-%  by the Free Software Foundation; either version 2 of the License,
-%  or (at your option) any later version.
-%
-%  CROCOTOOLS is distributed in the hope that it will be useful, but
-%  WITHOUT ANY WARRANTY; without even the implied warranty of
-%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-%  GNU General Public License for more details.
-%
-%  You should have received a copy of the GNU General Public License
-%  along with this program; if not, write to the Free Software
-%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-%  MA  02111-1307  USA
-%
-%  Copyright (c) 2006 by Pierrick Penven 
-%  e-mail:Pierrick.Penven@ird.fr  
-%
-%  Updated    8-Sep-2006 by Pierrick Penven
-%  Updated    5-Oct-2006 by Pierrick Penven (changes in file names)
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-start
-disp('Forecast analysis')
-%
-% Common parameters
-%
-crocotools_param
-%
-% plot the wind speed at noon for each day
-%
-skip=5;
-zoom=0;
-X=30;
-Y=22;
-% time (in matlab time)
-%
-today=floor(now);
-%
-% date in 'Yorig' time
-%
-rundate=datenum(today)-datenum(Yorig,1,1);
-%
-nc=netcdf(grdname);
-lon=nc{'lon_rho'}(:);
-lat=nc{'lat_rho'}(:);
-mask=nc{'mask_rho'}(:);
-angle=nc{'angle'}(:);
-close(nc)
-mask(mask==0)=NaN;
-%
-lonmin=min(min(lon))-zoom;
-lonmax=max(max(lon))+zoom;
-latmin=min(min(lat))-zoom;
-latmax=max(max(lat))+zoom;
-%
-close all
-figure('Units','centimeters',...
-       'Position',[1 1 X Y],...
-       'PaperPosition',[1 1 X Y],...
-       'PaperUnits','centimeters')
-%
-fsize=8;
-nx=6;
-cff1=4;
-cff2=2;
-%
-barwidth=0.2;
-barheight=0.01;
-titleheight=0.01;
-hmargin=0.025;
-vmargin=0.06;
-%
-width=(1-(1+nx)*hmargin)/(nx);
-height=(1-6.6*vmargin-3*barheight-titleheight)/3;
-%
-left1=hmargin;
-%
-bot1=vmargin;
-bot2=bot1+barheight+0.5*vmargin;
-bot3=bot2+height+1.5*vmargin;
-bot4=bot3+barheight+0.5*vmargin;
-bot5=bot4+height+1.5*vmargin;
-bot6=bot5+barheight+0.5*vmargin;
-bot7=bot6+height+1.5*vmargin;
-%
-% title
-%
-subplot('Position',[0.5-0.5*barwidth bot7 barwidth titleheight])
-set(gca,'XTickLabel',[' '])
-xlabel(['CROCO experiment: ',datestr(today)],'FontSize',10)
-%
-% 1: wind stress
-%
-left=left1;
-bot=bot6;
-for tndx=4*5:4:4*5+4*(nx)
-  subplot('Position',[left bot width height])
-  nc=netcdf('SCRATCH/croco_frc_GFS_0.nc');
-  smstime=[];
-  smstime=nc{'sms_time'}(tndx);
-  if ~isempty(smstime)
-    u=squeeze(nc{'sustr'}(tndx,:,:));
-    v=squeeze(nc{'svstr'}(tndx,:,:));
-    close(nc)
-    stress=mask.*sqrt((u2rho_2d(u)).^2+(v2rho_2d(v)).^2);
-    [ur,vr,lonr,latr,spd]=uv_vec2rho(u,v,lon,lat,angle,mask,skip,[0 0 0 0]);
-     m_proj('mercator',...
-         'lon',[lonmin lonmax],...
-         'lat',[latmin latmax]);
-    [C0,h0]=m_contourf(lon,lat,stress,[0:0.04:0.3],'k');
-    shading flat
-    caxis([0 0.3])
-    hold on
-    m_quiver(lonr,latr,cff1*ur,cff1*vr,0,'k');
-    m_usercoast(coastfileplot,'patch',[.9 .9 .9]);
-    hold off
-    m_grid('box','fancy','xtick',5,'ytick',5,'tickdir','out',...
-           'FontSize',fsize-2);
-    set(findobj('tag','m_grid_color'),'facecolor','white')
-    title([datestr(smstime+datenum(Yorig,1,1))],'FontSize',fsize)
-    left=left+width+hmargin;
-  end
-end
-subplot('Position',[0.5-0.5*barwidth bot5 barwidth barheight])
-x=[0:1];
-y=[0:0.04:0.3];
-[X,Y]=meshgrid(x,y);
-contourf(Y,X,Y,y)
-caxis([0 0.3])
-set(gca,'XTick',[0:0.04:0.3],'YTickLabel',[' '])
-set(gca,'FontSize',fsize)
-xlabel('Wind stress [N.m^{-2}]','FontSize',fsize)
-%
-% 2: Surface currents
-%
-left=left1;
-bot=bot4;
-for tndx=1:nx
-  subplot('Position',[left bot width height])
-  nc=netcdf('SCRATCH/croco_avg.nc');
-  scrumtime=[];
-  scrumtime=(nc{'scrum_time'}(tndx))/(24*3600);
-  if ~isempty(scrumtime)
-    N=length(nc('s_rho'));
-    u=squeeze(nc{'u'}(tndx,N,:,:));
-    v=squeeze(nc{'v'}(tndx,N,:,:));
-    close(nc)
-    spd=mask.*sqrt((u2rho_2d(u)).^2+(v2rho_2d(v)).^2);
-    [ur,vr,lonr,latr,spdr]=uv_vec2rho(u,v,lon,lat,angle,mask,skip,[0 0 0 0]);
-     m_proj('mercator',...
-       'lon',[lonmin lonmax],...
-       'lat',[latmin latmax]);
-    [C0,h0]=m_contourf(lon,lat,100*spd,[0:10:80],'k');
-    shading flat
-    caxis([0 80])
-    hold on
-    m_quiver(lonr,latr,cff2*ur,cff2*vr,0,'k');
-    m_usercoast(coastfileplot,'patch',[.9 .9 .9]);
-    hold off
-    m_grid('box','fancy','xtick',5,'ytick',5,'tickdir','out',...
-           'FontSize',fsize-2);
-    set(findobj('tag','m_grid_color'),'facecolor','white')
-    title([datestr(scrumtime+datenum(Yorig,1,1))],'FontSize',fsize)
-    left=left+width+hmargin;
-  end
-end
-subplot('Position',[0.5-0.5*barwidth bot3 barwidth barheight])
-x=[0:1];
-y=[0:10:80];
-[X,Y]=meshgrid(x,y);
-caxis([0 80])
-contourf(Y,X,Y,y)
-set(gca,'XTick',[0:10:80],'YTickLabel',[' '])
-set(gca,'FontSize',fsize)
-xlabel('Surface currents [cm.s^{-1}]','FontSize',fsize)
-%
-% 3: SST 
-%
-left=left1;
-bot=bot2;
-for tndx=1:nx
-  subplot('Position',[left bot width height])
-  nc=netcdf('SCRATCH/croco_avg.nc');
-  scrumtime=[];
-  scrumtime=(nc{'scrum_time'}(tndx))/(24*3600);
-  if ~isempty(scrumtime)
-    N=length(nc('s_rho'));
-    sst=squeeze(nc{'temp'}(tndx,N,:,:));
-    close(nc)
-     m_proj('mercator',...
-         'lon',[lonmin lonmax],...
-         'lat',[latmin latmax]);
-    [C0,h0]=m_contourf(lon,lat,sst,[10:1:25],'k');
-    shading flat
-    caxis([10 25])
-    hold on
-    m_usercoast(coastfileplot,'patch',[.9 .9 .9]);
-    hold off
-    m_grid('box','fancy','xtick',5,'ytick',5,'tickdir','out',...
-           'FontSize',fsize-2);
-    set(findobj('tag','m_grid_color'),'facecolor','white')
-    title([datestr(scrumtime+datenum(Yorig,1,1))],'FontSize',fsize)
-    left=left+width+hmargin;
-  end
-end
-subplot('Position',[0.5-0.5*barwidth bot1 barwidth barheight])
-x=[0:1];
-y=[10:1:25];
-[X,Y]=meshgrid(x,y);
-caxis([10 25])
-contourf(Y,X,Y,y)
-set(gca,'XTick',[10:2:25],'YTickLabel',[' '])
-set(gca,'FontSize',fsize)
-xlabel('SST [^{o}C]','FontSize',fsize)
-%
-% Print the image
-%
-eval(['print -depsc2 croco_',num2str(rundate),'.eps'])
-eval(['!convert -density 85 croco_',num2str(rundate),...
-      '.eps croco_',num2str(rundate),'.jpg'])
-eval(['!mv -f croco_',num2str(rundate),'.jpg croco_realtime.jpg'])
-%
-% send the file to the web site
-%
-% %!./envoi.csh croco_realtime.jpg
-% %
-% close all
-% %
-% nc=netcdf('SCRATCH/croco_sta_hindcast.nc');
-% t1=nc{'scrum_time'}(:)/(24*3600);
-% sst1=squeeze(nc{'temp'}(:,1,32));
-% bott1=squeeze(nc{'temp'}(:,1,1));
-% temp1=squeeze(nc{'temp'}(:,1,:));
-% z1=squeeze(nc{'depth'}(:,1,:));
-% u1=1e3*squeeze(nc{'u'}(:,1,:));
-% v1=1e3*squeeze(nc{'v'}(:,1,:));
-% close(nc)
-% tmin=min(t1);
-% sst1(1)=NaN; 
-% bott1(1)=NaN; 
-% u1(1,:)=NaN;
-% v1(1,:)=NaN;
-% temp1(1,:)=NaN;
-% 
-% nc=netcdf('SCRATCH/croco_sta_forecast.nc');
-% t2=nc{'scrum_time'}(:)/(24*3600);
-% sst2=squeeze(nc{'temp'}(:,1,32));
-% bott2=squeeze(nc{'temp'}(:,1,1));
-% temp2=squeeze(nc{'temp'}(:,1,:));
-% z2=squeeze(nc{'depth'}(:,1,:));
-% u2=1e3*squeeze(nc{'u'}(:,1,:));
-% v2=1e3*squeeze(nc{'v'}(:,1,:));
-% close(nc)
-% temp2=temp2(2:end,:);
-% u2=u2(2:end,:);
-% v2=v2(2:end,:);
-% z2=z2(2:end,:);
-% t2=t2(2:end);
-% sst2=sst2(2:end);
-% bott2=bott2(2:end);
-% z=squeeze(z2(1,:));
-% t1=t1-tmin;
-% t2=t2-tmin;
-% 
-% figure('Units','centimeters',...
-%        'Position',[1 1 20 20],...
-%        'PaperPosition',[1 1 20 20],...
-%        'PaperUnits','centimeters')
-% 
-% subplot(3,1,1)
-% pcolor(t1,z,u1')
-% hold on
-% pcolor(t2,z,u2')
-% axis([0 9 -30 0])
-% shading flat
-% caxis([-250 250])
-% colorbar
-% title(['Velocity East [mm/s]'])
-% ylabel('Depth')
-% set(gca,'Xticklabel',[])
-% 
-% subplot(3,1,2)
-% pcolor(t1,z,v1')
-% hold on
-% pcolor(t2,z,v2')
-% axis([0 9 -30 0])
-% shading flat
-% caxis([-250 250])
-% colorbar
-% title(['Velocity North [mm/s]'])
-% ylabel('Depth')
-% set(gca,'Xticklabel',[])
-% 
-% subplot(3,1,3)
-% pcolor(t1,z,temp1')
-% hold on
-% pcolor(t2,z,temp2')
-% axis([0 9 -30 0])
-% shading flat
-% caxis([10 15])
-% colorbar
-% title(['Temperature [^oC]'])
-% ylabel('Depth')
-% set(gca,'Xtick',[0.5:1:9],...
-%     'Xticklabel',datestr(tmin+[0.5:1:9]+datenum(Yorig,1,1),19))
-% %
-% % Print the image
-% %
-% eval(['print -depsc2 -painters bob_',num2str(rundate),'.eps'])
-% eval(['!convert -density 85 bob_',num2str(rundate),...
-%       '.eps bob_',num2str(rundate),'.jpg'])
-% eval(['!cp -f bob_',num2str(rundate),'.jpg bob_realtime.jpg'])
-% %
-% % send the file to the web site
-% %
-% %!./envoi.csh bob_realtime.jpg
-
-
-
-
-
diff --git a/Nesting_tools/create_nestedclim.m b/Nesting_tools/create_nestedclim.m
index 49768926..ace52e95 100644
--- a/Nesting_tools/create_nestedclim.m
+++ b/Nesting_tools/create_nestedclim.m
@@ -126,8 +126,8 @@ ncclim{'theta_s'} = ncdouble('one') ;
 ncclim{'theta_b'} = ncdouble('one') ;
 ncclim{'Tcline'} = ncdouble('one') ;
 ncclim{'hc'} = ncdouble('one') ;
-ncclim{'sc_r'} = ncdouble('s_rho') ;
-ncclim{'Cs_r'} = ncdouble('s_rho') ;
+ncclim{'s_rho'} = ncdouble('s_rho') ;
+ncclim{'Cs_rho'} = ncdouble('s_rho') ;
 ncclim{'tclm_time'} = ncdouble('tclm_time') ;
 ncclim{'sclm_time'} = ncdouble('sclm_time') ;
 ncclim{'uclm_time'} = ncdouble('uclm_time') ;
@@ -180,23 +180,23 @@ ncclim{'hc'}.long_name = 'S-coordinate parameter, critical depth';
 ncclim{'hc'}.units = ncchar('meter');
 ncclim{'hc'}.units = 'meter';
 %
-ncclim{'sc_r'}.long_name = ncchar('S-coordinate at RHO-points');
-ncclim{'sc_r'}.long_name = 'S-coordinate at RHO-points';
-ncclim{'sc_r'}.units = ncchar('nondimensional');
-ncclim{'sc_r'}.units = 'nondimensional';
-ncclim{'sc_r'}.valid_min = -1;
-ncclim{'sc_r'}.valid_max = 0;
-ncclim{'sc_r'}.field = ncchar('sc_r, scalar');
-ncclim{'sc_r'}.field = 'sc_r, scalar';
-%
-ncclim{'Cs_r'}.long_name = ncchar('S-coordinate stretching curves at RHO-points');
-ncclim{'Cs_r'}.long_name = 'S-coordinate stretching curves at RHO-points';
-ncclim{'Cs_r'}.units = ncchar('nondimensional');
-ncclim{'Cs_r'}.units = 'nondimensional';
-ncclim{'Cs_r'}.valid_min = -1;
-ncclim{'Cs_r'}.valid_max = 0;
-ncclim{'Cs_r'}.field = ncchar('Cs_r, scalar');
-ncclim{'Cs_r'}.field = 'Cs_r, scalar';
+ncclim{'s_rho'}.long_name = ncchar('S-coordinate at RHO-points');
+ncclim{'s_rho'}.long_name = 'S-coordinate at RHO-points';
+ncclim{'s_rho'}.units = ncchar('nondimensional');
+ncclim{'s_rho'}.units = 'nondimensional';
+ncclim{'s_rho'}.valid_min = -1;
+ncclim{'s_rho'}.valid_max = 0;
+ncclim{'s_rho'}.field = ncchar('s_rho, scalar');
+ncclim{'s_rho'}.field = 's_rho, scalar';
+%
+ncclim{'Cs_rho'}.long_name = ncchar('S-coordinate stretching curves at RHO-points');
+ncclim{'Cs_rho'}.long_name = 'S-coordinate stretching curves at RHO-points';
+ncclim{'Cs_rho'}.units = ncchar('nondimensional');
+ncclim{'Cs_rho'}.units = 'nondimensional';
+ncclim{'Cs_rho'}.valid_min = -1;
+ncclim{'Cs_rho'}.valid_max = 0;
+ncclim{'Cs_rho'}.field = ncchar('Cs_rho, scalar');
+ncclim{'Cs_rho'}.field = 'Cs_rho, scalar';
 %
 ncclim{'tclm_time'}.long_name = ncchar('time for temperature climatology');
 ncclim{'tclm_time'}.long_name = 'time for temperature climatology';
@@ -308,7 +308,7 @@ ncclim.history = history;
 %
 result = endef(ncclim);
 %
-[sc_r,Cs_r,sc_w,Cs_w] = scoordinate(theta_s,theta_b,N,hc,vtransform);
+[s_rho,Cs_rho,s_w,Cs_w] = scoordinate(theta_s,theta_b,N,hc,vtransform);
 %
 % Write variables
 %
@@ -320,8 +320,8 @@ ncclim{'theta_s'}(:) =  theta_s;
 ncclim{'theta_b'}(:) =  theta_b;
 ncclim{'Tcline'}(:) =  Tcline;
 ncclim{'hc'}(:) =  hc;
-ncclim{'sc_r'}(:) =  sc_r;
-ncclim{'Cs_r'}(:) =  Cs_r;
+ncclim{'s_rho'}(:) =  s_rho;
+ncclim{'Cs_rho'}(:) =  Cs_rho;
 ncclim{'tclm_time'}(:) =  ttime;
 ncclim{'sclm_time'}(:) =  stime;
 ncclim{'uclm_time'}(:) = utime ;
diff --git a/Nesting_tools/create_nestedinitial.m b/Nesting_tools/create_nestedinitial.m
index c4bb989d..7bb1e37e 100644
--- a/Nesting_tools/create_nestedinitial.m
+++ b/Nesting_tools/create_nestedinitial.m
@@ -110,8 +110,8 @@ ncini{'theta_s'} = ncdouble('one') ;
 ncini{'theta_b'} = ncdouble('one') ;
 ncini{'Tcline'} = ncdouble('one') ;
 ncini{'hc'} = ncdouble('one') ;
-ncini{'sc_r'} = ncdouble('s_rho') ;
-ncini{'Cs_r'} = ncdouble('s_rho') ;
+ncini{'s_rho'} = ncdouble('s_rho') ;
+ncini{'Cs_rho'} = ncdouble('s_rho') ;
 ncini{'scrum_time'} = ncdouble('time') ;
 ncini{'u'} = ncdouble('time','s_rho','eta_u','xi_u') ;
 ncini{'v'} = ncdouble('time','s_rho','eta_v','xi_v') ;
@@ -169,23 +169,23 @@ ncini{'hc'}.long_name = 'S-coordinate parameter, critical depth';
 ncini{'hc'}.units = ncchar('meter');
 ncini{'hc'}.units = 'meter';
 %
-ncini{'sc_r'}.long_name = ncchar('S-coordinate at RHO-points');
-ncini{'sc_r'}.long_name = 'S-coordinate at RHO-points';
-ncini{'sc_r'}.units = ncchar('nondimensional');
-ncini{'sc_r'}.units = 'nondimensional';
-ncini{'sc_r'}.valid_min = -1;
-ncini{'sc_r'}.valid_max = 0;
-ncini{'sc_r'}.field = ncchar('sc_r, scalar');
-ncini{'sc_r'}.field = 'sc_r, scalar';
-%
-ncini{'Cs_r'}.long_name = ncchar('S-coordinate stretching curves at RHO-points');
-ncini{'Cs_r'}.long_name = 'S-coordinate stretching curves at RHO-points';
-ncini{'Cs_r'}.units = ncchar('nondimensional');
-ncini{'Cs_r'}.units = 'nondimensional';
-ncini{'Cs_r'}.valid_min = -1;
-ncini{'Cs_r'}.valid_max = 0;
-ncini{'Cs_r'}.field = ncchar('Cs_r, scalar');
-ncini{'Cs_r'}.field = 'Cs_r, scalar';
+ncini{'s_rho'}.long_name = ncchar('S-coordinate at RHO-points');
+ncini{'s_rho'}.long_name = 'S-coordinate at RHO-points';
+ncini{'s_rho'}.units = ncchar('nondimensional');
+ncini{'s_rho'}.units = 'nondimensional';
+ncini{'s_rho'}.valid_min = -1;
+ncini{'s_rho'}.valid_max = 0;
+ncini{'s_rho'}.field = ncchar('s_rho, scalar');
+ncini{'s_rho'}.field = 's_rho, scalar';
+%
+ncini{'Cs_rho'}.long_name = ncchar('S-coordinate stretching curves at RHO-points');
+ncini{'Cs_rho'}.long_name = 'S-coordinate stretching curves at RHO-points';
+ncini{'Cs_rho'}.units = ncchar('nondimensional');
+ncini{'Cs_rho'}.units = 'nondimensional';
+ncini{'Cs_rho'}.valid_min = -1;
+ncini{'Cs_rho'}.valid_max = 0;
+ncini{'Cs_rho'}.field = ncchar('Cs_rho, scalar');
+ncini{'Cs_rho'}.field = 'Cs_rho, scalar';
 %
 ncini{'scrum_time'}.long_name = ncchar('time since initialization');
 ncini{'scrum_time'}.long_name = 'time since initialization';
@@ -290,7 +290,7 @@ ncini.creation_method = 'Nestgui @ CROCOTOOLS';
 % Leave define mode
 %
 %%result = endef(ncini);
-[sc_r,Cs_r,sc_w,Cs_w] = scoordinate(theta_s,theta_b,N,hc,vtransform);
+[s_rho,Cs_rho,s_w,Cs_w] = scoordinate(theta_s,theta_b,N,hc,vtransform);
 %
 % Write variables
 %
@@ -302,8 +302,8 @@ ncini{'theta_s'}(:)=theta_s;
 ncini{'theta_b'}(:)=theta_b; 
 ncini{'Tcline'}(:)=Tcline; 
 ncini{'hc'}(:)=hc; 
-ncini{'sc_r'}(:)=sc_r; 
-ncini{'Cs_r'}(:)=Cs_r; 
+ncini{'s_rho'}(:)=s_rho; 
+ncini{'Cs_rho'}(:)=Cs_rho; 
 ncini{'scrum_time'}(1)=time; 
 ncini{'u'}(:)=0; 
 ncini{'v'}(:)=0; 
diff --git a/Nesting_tools/create_nestedrestart.m b/Nesting_tools/create_nestedrestart.m
index b328c8f8..cdc87b27 100644
--- a/Nesting_tools/create_nestedrestart.m
+++ b/Nesting_tools/create_nestedrestart.m
@@ -292,10 +292,10 @@ disp('Get the vertical grid')
 ncrst.theta_s=ncprt.theta_s(:);
 ncrst.theta_b=ncprt.theta_b(:);
 ncrst.hc=ncprt.hc(:);
-ncrst.sc_w=ncprt.sc_w(:);
+ncrst.s_w=ncprt.s_w(:);
 ncrst.Cs_w=ncprt.Cs_w(:);
-ncrst.sc_r=ncprt.sc_r(:);
-ncrst.Cs_r=ncprt.Cs_r(:);
+ncrst.s_rho=ncprt.s_rho(:);
+ncrst.Cs_rho=ncprt.Cs_rho(:);
 ncrst.ntimes=ncprt.ntimes(:);
 ncrst.ndtfast=ncprt.ndtfast(:);
 ncrst.dt=ncprt.dt(:);
diff --git a/Nesting_tools/nested_grid.m b/Nesting_tools/nested_grid.m
index 9280ae2d..60caeba5 100644
--- a/Nesting_tools/nested_grid.m
+++ b/Nesting_tools/nested_grid.m
@@ -152,8 +152,6 @@ while (bbound_east | bbound_west | bbound_south | bbound_north)
     disp(' ')
     disp(' Do the  interpolations...')
     lonpchild=interp2(igrd_p,jgrd_p,lonp_parent,ichildgrd_p,jchildgrd_p,'cubic');
-    lonpchild(1,1);
-    lonp_parent(imin,1);
     latpchild=interp2(igrd_p,jgrd_p,latp_parent,ichildgrd_p,jchildgrd_p,'cubic');
     xpchild=interp2(igrd_p,jgrd_p,xp_parent,ichildgrd_p,jchildgrd_p,'cubic');
     ypchild=interp2(igrd_p,jgrd_p,yp_parent,ichildgrd_p,jchildgrd_p,'cubic');
diff --git a/Oforc_OGCM/Copernicus_Marine_Toolbox_installation.md b/Oforc_OGCM/Copernicus_Marine_Toolbox_installation.md
new file mode 100644
index 00000000..3e99a2e2
--- /dev/null
+++ b/Oforc_OGCM/Copernicus_Marine_Toolbox_installation.md
@@ -0,0 +1,74 @@
+# Copernicus Marine Toolbox installation
+
+The Copernicus Marine Toolbox is used to download and extract data from the Copernicus Marine Data Store (Global Ocean Physics Reanalysis, Global Ocean Physics Analysis and Forecast, ...) to create oceanic open boundary and initial conditions. [ https://data.marine.copernicus.eu/products ]
+
+
+All the instructions can be found here :
+   *  1) https://help.marine.copernicus.eu/en/collections/4060068-copernicus-marine-toolbox
+   *  2) https://help.marine.copernicus.eu/en/articles/7970514-copernicus-marine-toolbox-installation
+
+
+Prerequisites:
+   * python version >= 3.9 & <3.12
+
+
+---
+## 2 ways to download it:
+
+   1) typing :
+      ```console
+      python -m pip install copernicusmarine
+      ```
+
+
+   2) Use of conda/mamba package (replace conda by mamba command below)
+
+      * Install a dedicated environment, by default named cmt_1.0 . First, you need to copy the file copernicusmarine_env.yml from the directory Forecast_tools/CopernicusMarineToolbox/
+
+         ```console
+         conda env create -f copernicusmarine_env.yml
+         ```
+
+        Note that you can use micromamba instead of mamba to install the python environment
+
+
+         Firstly, you need to activate the environment cmt_1.0 :
+
+         ```console
+         conda activate cmt_1.0
+         ```
+
+         The location of the executable (here after pathCMC) will be found typing :
+
+         ```console
+         ls $CONDA_PREFIX/bin/copernicusmarine
+         ```
+        Note that the value returned by your terminal here, will be your pathCMC to fill in your
+           crocotools_param.m and download_glorys_data.sh script
+
+
+---
+## When it's installed :
+
+You will have access to the copernicusmarine executable with various sub-command, very useful to get, extract and download data from the Copernicus Marine Data Store :
+
+```console
+copernicusmarine -h
+```
+
+Or alternatively:
+
+```console
+$CONDA_PREFIX/bin/copernicusmarine -h
+```
+
+
+To be used in the Matlab croco_tools, in the crocotools_param.m, you need to :
+
+- define the path to the copernicusmarine executable (`pathCMC`) in crocotools_param.m at *section 7, Option for make_OGCM_frcst or make_OGCM_mercator*
+- define your copernicus marine `login` and `password` in crocotools_param.m at *section 7, Options for for make_OGCM_frcst or make_OGCM_mercator*
+
+
+
+
+
diff --git a/Oforc_OGCM/README b/Oforc_OGCM/README
deleted file mode 100644
index e6c1fb90..00000000
--- a/Oforc_OGCM/README
+++ /dev/null
@@ -1,24 +0,0 @@
-==
-make_OGCM.m is a way to get initial and boundary conditions
-for CROCO simulations from different global oceanic models.
-for the moment it works with SODA and ECCO. 
-it uses DODS to extract the subgrids.
-
-Pierrick 2006/1/19.
-
-==
-Update:
-Now it use the ECCO2 data, every 3 days
-Gildas 2014/2/14
-
-==
-24-11-2020 : Update by Gildas Cambon
-Now you can process oceanic frocing from the global daily glorys12 reanalysis
-at 1/12 degree resolution.
-It is distributed by copernicus/mecator =>  https://resources.marine.copernicus.eu/
-
-It use the python-motu client to download a space and time 
-extraction of the reanalysis.
-Have a look at the routines :
-- download_mercator_frcst_python.m
-- get_file_python_mercator.m
diff --git a/Oforc_OGCM/README.md b/Oforc_OGCM/README.md
new file mode 100644
index 00000000..31f4a7ca
--- /dev/null
+++ b/Oforc_OGCM/README.md
@@ -0,0 +1,20 @@
+## 23-02-2024 : Update to use the Copernicus Marine Toolbox
+ 
+ - see Copernicus_Marine_Toolbox_installation.md
+
+## 24-11-2020 : Update by Gildas Cambon
+Now you can process oceanic forcing from the global daily glorys12 reanalysis
+at 1/12 degree resolution.
+It is distributed by copernicus/mecator =>  https://resources.marine.copernicus.eu/
+
+It use the python-motu client to download a space and time 
+extraction of the reanalysis.
+Have a look at the routines :
+- download_mercator_frcst_python.m
+- get_file_python_mercator.m
+
+## 14-02-2014 : Gildas Cambon
+Now it use the ECCO2 data, every 3 days
+
+## 01-19-2006 : Pierrick Penven
+make_OGCM.m is a way to get initial and boundary conditions. For CROCO simulations from different global oceanic models. For the moment it works with SODA and ECCO. it uses DODS to extract the subgrids
diff --git a/Oforc_OGCM/README.md.bck b/Oforc_OGCM/README.md.bck
new file mode 100644
index 00000000..31f4a7ca
--- /dev/null
+++ b/Oforc_OGCM/README.md.bck
@@ -0,0 +1,20 @@
+## 23-02-2024 : Update to use the Copernicus Marine Toolbox
+ 
+ - see Copernicus_Marine_Toolbox_installation.md
+
+## 24-11-2020 : Update by Gildas Cambon
+Now you can process oceanic forcing from the global daily glorys12 reanalysis
+at 1/12 degree resolution.
+It is distributed by copernicus/mecator =>  https://resources.marine.copernicus.eu/
+
+It use the python-motu client to download a space and time 
+extraction of the reanalysis.
+Have a look at the routines :
+- download_mercator_frcst_python.m
+- get_file_python_mercator.m
+
+## 14-02-2014 : Gildas Cambon
+Now it use the ECCO2 data, every 3 days
+
+## 01-19-2006 : Pierrick Penven
+make_OGCM.m is a way to get initial and boundary conditions. For CROCO simulations from different global oceanic models. For the moment it works with SODA and ECCO. it uses DODS to extract the subgrids
diff --git a/Oforc_OGCM/create_OGCM.m b/Oforc_OGCM/create_OGCM.m
index 24e4ae1e..88f04690 100644
--- a/Oforc_OGCM/create_OGCM.m
+++ b/Oforc_OGCM/create_OGCM.m
@@ -80,6 +80,18 @@ nc{'vbar'}.long_name='MERIDIONAL BAROTROPIC VELOCITY';
 nc{'vbar'}.units=ncchar('m/sec');
 nc{'vbar'}.units='m/sec';
 nc{'vbar'}.missing_value=missval;
+%nc{'taux'}=ncfloat('time','latU','lonU') ;
+%nc{'taux'}.long_name=ncchar('TAU_X');
+%nc{'taux'}.long_name='TAU_X';
+%nc{'taux'}.units=ncchar('N.m-2');
+%nc{'taux'}.units='N.m-2';
+%nc{'taux'}.missing_value=missval;
+%nc{'tauy'}=ncfloat('time','latV','lonV') ;
+%nc{'tauy'}.long_name=ncchar('TAU_Y');
+%nc{'tauy'}.long_name='TAU_Y';
+%nc{'tauy'}.units=ncchar('N.m-2');
+%nc{'tauy'}.units='N.m-2';
+%nc{'tauy'}.missing_value=missval;
 nc{'ssh'}=ncfloat('time','latT','lonT') ;
 nc{'ssh'}.long_name=ncchar('SEA LEVEL HEIGHT');
 nc{'ssh'}.long_name='SEA LEVEL HEIGHT';
@@ -129,6 +141,8 @@ nc{'time'}(tndx)=time(tndx);
 %
   if length(time)==1
     nc{'ssh'}(tndx,:,:)=ssh;
+%    nc{'taux'}(tndx,:,:)=taux;
+%    nc{'tauy'}(tndx,:,:)=tauy;
     u1=u;
     v1=v;
     nc{'u'}(tndx,:,:,:)=u1;
@@ -137,6 +151,8 @@ nc{'time'}(tndx)=time(tndx);
     nc{'salt'}(tndx,:,:,:)=salt;
   else
     nc{'ssh'}(tndx,:,:)=squeeze(ssh(tndx,:,:));
+%    nc{'taux'}(tndx,:,:)=squeeze(taux(tndx,:,:));
+%    nc{'tauy'}(tndx,:,:)=squeeze(tauy(tndx,:,:));
     u1=squeeze(u(tndx,:,:,:));
     v1=squeeze(v(tndx,:,:,:));
     nc{'u'}(tndx,:,:,:)=u1;
diff --git a/Oforc_OGCM/create_SODA.m b/Oforc_OGCM/create_SODA.m
deleted file mode 100644
index 2d22d123..00000000
--- a/Oforc_OGCM/create_SODA.m
+++ /dev/null
@@ -1,199 +0,0 @@
-function create_SODA(fname,lonT,latT,lonU,latU,lonV,latV,depth,time,...
-                     temp,salt,u,v,ssh,taux,tauy,Yorig)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Create the OGCM file
-%
-%  Further Information:  
-%  http://www.croco-ocean.org
-%  
-%  This file is part of CROCOTOOLS
-%
-%  CROCOTOOLS is free software; you can redistribute it and/or modify
-%  it under the terms of the GNU General Public License as published
-%  by the Free Software Foundation; either version 2 of the License,
-%  or (at your option) any later version.
-%
-%  CROCOTOOLS is distributed in the hope that it will be useful, but
-%  WITHOUT ANY WARRANTY; without even the implied warranty of
-%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-%  GNU General Public License for more details.
-%
-%  You should have received a copy of the GNU General Public License
-%  along with this program; if not, write to the Free Software
-%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-%  MA  02111-1307  USA
-%
-%  Copyright (c) 2005-2006 by Pierrick Penven 
-%  e-mail:Pierrick.Penven@ird.fr  
-%
-%  Updated    6-Sep-2006 by Pierrick Penven
-%  Updated    7-Oct-2013 by Gildas Cambon
-%  Updated   14-Fev-2013 by Gildas Cambon
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-missval=NaN;
-disp('    Create the OGCM file')
-nc=netcdf(fname,'clobber');
-redef(nc);
-nc('lonT')=length(lonT);
-nc('latT')=length(latT);
-nc('lonU')=length(lonU);
-nc('latU')=length(latU);
-nc('lonV')=length(lonV);
-nc('latV')=length(latV);
-nc('depth')=length(depth);
-nc('time')=length(time);
-nc{'temp'}=ncfloat('time','depth','latT','lonT') ;
-nc{'temp'}.long_name=ncchar('TEMPERATURE');
-nc{'temp'}.long_name='TEMPERATURE';
-nc{'temp'}.units=ncchar('deg. C');
-nc{'temp'}.units='deg. C';
-nc{'temp'}.missing_value=missval;
-nc{'salt'}=ncfloat('time','depth','latT','lonT') ;
-nc{'salt'}.long_name=ncchar('SALINITY');
-nc{'salt'}.long_name='SALINITY';
-nc{'salt'}.units=ncchar('ppt');
-nc{'salt'}.units='ppt';
-nc{'salt'}.missing_value=missval;
-nc{'u'}=ncfloat('time','depth','latU','lonU') ;
-nc{'u'}.long_name=ncchar('ZONAL VELOCITY');
-nc{'u'}.long_name='ZONAL VELOCITY';
-nc{'u'}.units=ncchar('m/sec');
-nc{'u'}.units='m/sec';
-nc{'u'}.missing_value=missval;
-nc{'v'}=ncfloat('time','depth','latV','lonV') ;
-nc{'v'}.long_name=ncchar('MERIDIONAL VELOCITY');
-nc{'v'}.long_name='MERIDIONAL VELOCITY';
-nc{'v'}.units=ncchar('m/sec');
-nc{'v'}.units='m/sec';
-nc{'v'}.missing_value=missval;
-nc{'ubar'}=ncfloat('time','latU','lonU') ;
-nc{'ubar'}.long_name=ncchar('ZONAL BAROTROPIC VELOCITY');
-nc{'ubar'}.long_name='ZONAL BAROTROPIC VELOCITY';
-nc{'ubar'}.units=ncchar('m/sec');
-nc{'ubar'}.units='m/sec';
-nc{'ubar'}.missing_value=missval;
-nc{'vbar'}=ncfloat('time','latV','lonV') ;
-nc{'vbar'}.long_name=ncchar('MERIDIONAL BAROTROPIC VELOCITY');
-nc{'vbar'}.long_name='MERIDIONAL BAROTROPIC VELOCITY';
-nc{'vbar'}.units=ncchar('m/sec');
-nc{'vbar'}.units='m/sec';
-nc{'vbar'}.missing_value=missval;
-nc{'taux'}=ncfloat('time','latU','lonU') ;
-nc{'taux'}.long_name=ncchar('TAU_X');
-nc{'taux'}.long_name='TAU_X';
-nc{'taux'}.units=ncchar('N.m-2');
-nc{'taux'}.units='N.m-2';
-nc{'taux'}.missing_value=missval;
-nc{'tauy'}=ncfloat('time','latV','lonV') ;
-nc{'tauy'}.long_name=ncchar('TAU_Y');
-nc{'tauy'}.long_name='TAU_Y';
-nc{'tauy'}.units=ncchar('N.m-2');
-nc{'tauy'}.units='N.m-2';
-nc{'tauy'}.missing_value=missval;
-nc{'ssh'}=ncfloat('time','latT','lonT') ;
-nc{'ssh'}.long_name=ncchar('SEA LEVEL HEIGHT');
-nc{'ssh'}.long_name='SEA LEVEL HEIGHT';
-nc{'ssh'}.units=ncchar('m');
-nc{'ssh'}.units='m';
-nc{'ssh'}.missing_value=missval;
-nc{'lonT'}=ncdouble('lonT') ;
-nc{'lonT'}.units=ncchar('degrees_east');
-nc{'lonT'}.units='degrees_east';
-nc{'latT'}=ncdouble('latT') ;
-nc{'latT'}.units=ncchar('degrees_north');
-nc{'latT'}.units='degrees_north';
-nc{'lonU'}=ncdouble('lonU') ;
-nc{'lonU'}.units=ncchar('degrees_east');
-nc{'lonU'}.units='degrees_east';
-nc{'latU'}=ncdouble('latU') ;
-nc{'latU'}.units=ncchar('degrees_north');
-nc{'latU'}.units='degrees_north';
-nc{'lonV'}=ncdouble('lonV') ;
-nc{'lonV'}.units=ncchar('degrees_east');
-nc{'lonV'}.units='degrees_east';
-nc{'latV'}=ncdouble('latV') ;
-nc{'latV'}.units=ncchar('degrees_north');
-nc{'latV'}.units='degrees_north';
-nc{'depth'}=ncdouble('depth') ;
-nc{'depth'}.units=ncchar('meters');
-nc{'depth'}.units='meters';
-nc{'time'}=ncdouble('time') ;
-eval(['nc{''time''}.units = ncchar(''days since 1-Jan-',num2str(Yorig),' 00:00:0.0'');'])
-eval(['nc{''time''}.units = ''days since 1-Jan-',num2str(Yorig),' 00:00:0.0'';'])
-endef(nc);
-%
-% File the file
-%
-disp('    Fill the OGCM file')
-nc{'depth'}(:)=depth;
-nc{'latT'}(:)=latT;
-nc{'lonT'}(:)=lonT;
-nc{'latU'}(:)=latU;
-nc{'lonU'}(:)=lonU;
-nc{'latV'}(:)=latV;
-nc{'lonV'}(:)=lonV;
-%
-for tndx=1:length(time)
-%
-nc{'time'}(tndx)=time(tndx);
-%
-if length(time)==1
-  nc{'ssh'}(tndx,:,:)=ssh;
-  nc{'taux'}(tndx,:,:)=taux;
-  nc{'tauy'}(tndx,:,:)=tauy;
-  u1=u;
-  v1=v;
-  nc{'u'}(tndx,:,:,:)=u1;
-  nc{'v'}(tndx,:,:,:)=v1;
-  nc{'temp'}(tndx,:,:,:)=temp;
-  nc{'salt'}(tndx,:,:,:)=salt;
-else
-  nc{'ssh'}(tndx,:,:)=squeeze(ssh(tndx,:,:));
-  nc{'taux'}(tndx,:,:)=squeeze(taux(tndx,:,:));
-  nc{'tauy'}(tndx,:,:)=squeeze(tauy(tndx,:,:));
-  u1=squeeze(u(tndx,:,:,:));
-  v1=squeeze(v(tndx,:,:,:));
-  nc{'u'}(tndx,:,:,:)=u1;
-  nc{'v'}(tndx,:,:,:)=v1;
-  nc{'temp'}(tndx,:,:,:)=squeeze(temp(tndx,:,:,:));
-  nc{'salt'}(tndx,:,:,:)=squeeze(salt(tndx,:,:,:));
-end
-%
-% Compute the barotropic velocities
-%
-masku=isfinite(u1);
-maskv=isfinite(v1);
-u1(isnan(u1))=0;
-v1(isnan(v1))=0;
-dz=gradient(depth);
-NZ=length(depth);
-du=0*squeeze(u1(1,:,:));
-zu=du;
-dv=0*squeeze(v1(1,:,:));
-zv=dv;
-for k=1:NZ
-  du=du+dz(k)*squeeze(u1(k,:,:));
-  zu=zu+dz(k)*squeeze(masku(k,:,:));
-  dv=dv+dz(k)*squeeze(v1(k,:,:));
-  zv=zv+dz(k)*squeeze(maskv(k,:,:));
-end
-du(zu==0)=NaN;
-dv(zv==0)=NaN;
-zu(zu==0)=NaN;
-zv(zv==0)=NaN;
-ubar=du./zu;
-vbar=dv./zv;
-%
-nc{'ubar'}(tndx,:,:)=ubar;
-nc{'vbar'}(tndx,:,:)=vbar;
-%
-end
-%
-close(nc)
-%
-return
-
-end
-
diff --git a/Oforc_OGCM/download_ECCO.m b/Oforc_OGCM/download_ECCO.m
deleted file mode 100644
index 144424cc..00000000
--- a/Oforc_OGCM/download_ECCO.m
+++ /dev/null
@@ -1,102 +0,0 @@
-function download_ECCO (Ymin,Ymax,Mmin,Mmax,lonmin,lonmax,latmin,latmax,...
-                        OGCM_dir,OGCM_prefix,url,Yorig)
-%
-% Extract a subgrid from ECCO to get a CROCO forcing
-% Store that into monthly files.
-% Take care of the Greenwitch Meridian.
-%
-%
-%  Further Information:
-%  http://www.croco-ocean.org
-%
-%  This file is part of CROCOTOOLS
-%
-%  CROCOTOOLS is free software; you can redistribute it and/or modify
-%  it under the terms of the GNU General Public License as published
-%  by the Free Software Foundation; either version 2 of the License,
-%  or (at your option) any later version.
-%
-%  CROCOTOOLS is distributed in the hope that it will be useful, but
-%  WITHOUT ANY WARRANTY; without even the implied warranty of
-%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-%  GNU General Public License for more details.
-%
-%  You should have received a copy of the GNU General Public License
-%  along with this program; if not, write to the Free Software
-%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-%  MA  02111-1307  USA
-%
-%  Copyright (c) 2006 by Pierrick Penven
-%  e-mail:Pierrick.Penven@ird.fr
-%
-%  Updated    6-Sep-2006 by Pierrick Penven
-%  Updated   14-Feb-2014 by Gildas cambon : ECCO2 server
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-disp([' '])
-disp(['Get data from Y',num2str(Ymin),'M',num2str(Mmin),...
-    ' to Y',num2str(Ymax),'M',num2str(Mmax)])
-disp(['Minimum Longitude: ',num2str(lonmin)])
-disp(['Maximum Longitude: ',num2str(lonmax)])
-disp(['Minimum Latitude: ',num2str(latmin)])
-disp(['Maximum Latitude: ',num2str(latmax)])
-disp([' '])
-%
-% Catalogue vvname for ECCO2
-%
-catalog_vname={'THETA','SALT','UVEL','VVEL','SSH'};
-catalog_vname2={'temp','salt','u','v','ssh'};
-%
-% Create the directory
-%
-disp(['Making output data directory ',OGCM_dir])
-eval(['!mkdir ',OGCM_dir])
-%
-% Start
-%
-disp(['Process the dataset: ',url])
-%
-% Find a subset of the ECCO grid
-%
-fname=[url,'THETA.nc/THETA.1440x720x50.19920102.nc'];
-[i1min,i1max,i2min,i2max,i3min,i3max,...
-    i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u,...
-    jrange,jrange_v,krange,lon,lon_u,lat,lat_v,depth]=...
-    get_ECCO_subgrid(fname,lonmin,lonmax,latmin,latmax);
-
-time0=readdap(fname,'TIME',[]);
-%
-% Loop on the years
-%
-for Y=Ymin:Ymax
-    disp(['Processing year: ',num2str(Y)])
-    %
-    % Loop on the months
-    %
-    if Y==Ymin
-        mo_min=Mmin;
-    else
-        mo_min=1;
-    end
-    if Y==Ymax
-        mo_max=Mmax;
-    else
-        mo_max=12;
-    end
-    for M=mo_min:mo_max
-        disp(['  Processing month: ',num2str(M)])
-        ECCO_file=[OGCM_dir,OGCM_prefix,'Y',num2str(Y),'M',num2str(M),'.cdf'];
-        %
-        % Extract ECCO data
-        %
-        extract_ECCO(OGCM_dir,OGCM_prefix,url,Y,M,...
-                        catalog_vname,catalog_vname2,...
-                        lon,lat,depth,krange,jrange,...
-                        i1min,i1max,i2min,i2max,i3min,i3max,Yorig)
-
-    end
-end
-return
-
-end
-
diff --git a/Oforc_OGCM/download_glorys_data.sh b/Oforc_OGCM/download_glorys_data.sh
index 7c85633f..8b20c40a 100755
--- a/Oforc_OGCM/download_glorys_data.sh
+++ b/Oforc_OGCM/download_glorys_data.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 set -e
-source ../../myenv_mypath.sh
+#source ../../myenv_mypath.sh
 ##########################
 # python
 # ======
@@ -10,27 +10,14 @@ source ../../myenv_mypath.sh
 #
 # motuclient
 # ==========
-# 1- Use croco's motuclient (pathMotu => Forecast_tools) or ...
-# 2- Install your own motuclient:
-#   To update/upgrade and get the latest version of motuclient 
-#   from a previous version (<= v1.8.3), type in the following:
-#      $ python -m pip install --upgrade motuclient
-#   Otherwise (if there is no previous installation of motuclient), 
-#   type in the following:
-#      $ python -m pip install motuclient
-#   It should install and display motuclient package v1.8.4 (Oct. 2019). 
-#   To make sure, display the version:
-#      $ python -m motuclient --version
-#   If it does not return: "motuclient-python v1.8.X" ("X" >= "4"), 
-#   then type in the following:
-#     $ python -m pip install motuclient==1.8.4
+# 1- Use copernicusmarine client ...
 #### USER INFORMATIONS ####
 user='XXXXXXXXX'
-password='XXXXXXXXXX'
+password='XXXXXXXXX'
 ###
-### motu client ###
-path_to_motu="${OCE}/../../croco_tools" # Use croco's motuclient croco_tools/Forecast_tools
-# if you want to use your own motu, leave empty
+### Copernicus marine client ###
+# this is the pathCMC (described on the readme file Copernicus_Marine_Toolbox_installation.md)
+path_to_cmt="/home/to/your/bin/copernicusmarine" 
 ### 
 YEAR_START=2017
 MONTH_START=1
@@ -49,7 +36,8 @@ DT_TIME=   # Value in days. Default value when empty is 1 month.
 kdata="MONTHLY" # DAILY or MONTHLY
 ####################
 READ_GRD=1 # read croco_grid to find lon/lat min-max
-INPUT_GRD="${OCE_FILES_DIR}/croco_grd.nc"
+#INPUT_GRD="${OCE_FILES_DIR}/croco_grd.nc"
+INPUT_GRD="CROCO_FILES/croco_grd.nc"
 # In case you don't want to read croco_grd
 # Please use -180/180 -90/90 format
 lon_min="-90"
@@ -72,16 +60,14 @@ for field in ${vars}; do
 done
 ###
 
-### motu command ###
-if [[ -z ${path_to_motu} ]]; then
-    command_line="python -m motuclient"
+if [[ -z ${path_to_cmt} ]]; then
+	echo "You need to define your path_to_cmt variable ..."
+	exit 12
 else
-    command_line="${path_to_motu}/Forecast_tools/motuclient-python/motuclient.py"
+    command_line=${path_to_cmt}" "
 fi
 
-## motu info
-motu_url_reana='http://my.cmems-du.eu/motu-web/Motu'
-service_id_reana='GLOBAL_MULTIYEAR_PHY_001_030-TDS'
+## cmt info
 if [[ ${kdata} == "DAILY" ]]; then
     product_id_reana='cmems_mod_glo_phy_my_0.083_P1D-m'
 elif [[ ${kdata} == "MONTHLY" ]]; then
@@ -126,18 +112,20 @@ for YEAR in `seq ${YEAR_START} ${YEAR_END}`; do
             daystrt=1
             start_date=$( printf "%04d-%02d-%02d" $YEAR $MONTH $daystrt)
             end_date=$(printf `date +"%Y-%m-%d" -d "${start_date} +1 month - 1 day"`) 
-            OUTNAME="${OUTDIR}/raw_motu_${PREFIX}_Y${YEAR}M${MONTH}.nc"            
-            ${command_line} --motu ${motu_url_reana} --service-id ${service_id_reana} --product-id ${product_id_reana} --longitude-min ${lon_min} --longitude-max ${lon_max} --latitude-min ${lat_min} --latitude-max ${lat_max} --date-min "${start_date} 12:00:00" --date-max "${end_date} 12:00:00" --depth-min 0.493 --depth-max 5727.918 ${variables} --out-dir ./ --out-name ${OUTNAME} --user ${user} --pwd ${password}
+            OUTNAME="${OUTDIR}/raw_${PREFIX}_Y${YEAR}M${MONTH}.nc"
+			echo "${command_line} subset -i ${product_id_reana} -x ${lon_min} -X ${lon_max} -y ${lat_min} -Y ${lat_max} -t "${start_date}" -T "${end_date}" -z 0.493 -Z 5727.918 ${variables} -o ./ -f ${OUTNAME} --username ${user} --password ${password} --force-download"
+            ${command_line} subset -i ${product_id_reana} -x ${lon_min} -X ${lon_max} -y ${lat_min} -Y ${lat_max} -t "${start_date}" -T "${end_date}" -z 0.493 -Z 5727.918 ${variables} -o ./ -f ${OUTNAME} --username ${user} --password ${password} --force-download
 
         elif [[ ${kdata} == "DAILY" ]]; then
             if [ -z ${DT_TIME} ]; then
                 start_date=$( printf "%04d-%02d-%02d" $YEAR $MONTH $daystrt)
                 end_date=$(printf `date +"%Y-%m-%d" -d "${start_date} +1 month - 1 day"`)
-                OUTNAME="${OUTDIR}/raw_motu_${PREFIX}_Y${YEAR}M${MONTH}.nc"
-                ${command_line} --motu ${motu_url_reana} --service-id ${service_id_reana} --product-id ${product_id_reana} --longitude-min ${lon_min} --longitude-max ${lon_max} --latitude-min ${lat_min} --latitude-max ${lat_max} --date-min "${start_date} 12:00:00" --date-max "${end_date} 12:00:00" --depth-min 0.493 --depth-max 5727.918 ${variables} --out-dir ./ --out-name ${OUTNAME} --user ${user} --pwd ${password}
+                OUTNAME="${OUTDIR}/raw_${PREFIX}_Y${YEAR}M${MONTH}.nc"
+				echo "${command_line} subset -i ${product_id_reana} -x ${lon_min} -X ${lon_max} -y ${lat_min} -Y ${lat_max} -t "${start_date}" -T "${end_date}" -z 0.493 -Z 5727.918 ${variables} -o ./ -f ${OUTNAME} --username ${user} --password ${password} --force-download"
+                ${command_line} subset -i ${product_id_reana} -x ${lon_min} -X ${lon_max} -y ${lat_min} -Y ${lat_max} -t "${start_date}" -T "${end_date}" -z 0.493 -Z 5727.918 ${variables} -o ./ -f ${OUTNAME} --username ${user} --password ${password} --force-download
             else
                 for DAY in `seq ${dstart} ${DT_TIME} ${dend}`; do
-                    tmpoutname="${OUTDIR}/raw_motu_${PREFIX}_Y${YEAR}M${MONTH}D${DAY}.nc"
+                    tmpoutname="${OUTDIR}/raw_${PREFIX}_Y${YEAR}M${MONTH}D${DAY}.nc"
                     start_date=$( printf "%04d-%02d-%02d" $YEAR $MONTH $DAY )
                     end_date=$( date +"%Y-%m-%d" -d "${start_date} +${DT_TIME} day - 1 day" )
                     tmpsdate=$( echo `date -d ${start_date} +"%Y%m"` )
@@ -150,12 +138,13 @@ for YEAR in `seq ${YEAR_START} ${YEAR_END}`; do
                         nbdays=$(( (${second_date} - ${first_date})/86400 ))
                         end_date=$( date +"%Y-%m-%d" -d "${end_date} - ${nbdays} day" )
                     fi
-                    ${command_line} --motu ${motu_url_reana} --service-id ${service_id_reana} --product-id ${product_id_reana} --longitude-min ${lon_min} --longitude-max ${lon_max} --latitude-min ${lat_min} --latitude-max ${lat_max} --date-min "${start_date} 12:00:00" --date-max "${end_date} 12:00:00" --depth-min 0.493 --depth-max 5727.918 ${variables} --out-dir ./ --out-name ${tmpoutname} --user ${user} --pwd ${password} 
+					echo "${command_line} subset -i ${product_id_reana} -x ${lon_min} -X ${lon_max} -y ${lat_min} -Y ${lat_max} -t "${start_date}" -T "${end_date}" -z 0.493 -Z 5727.918 ${variables} -o ./ -f ${tmpoutname} --username ${user} --password ${password} --force-download"
+                    ${command_line} subset -i ${product_id_reana} -x ${lon_min} -X ${lon_max} -y ${lat_min} -Y ${lat_max} -t "${start_date}" -T "${end_date}" -z 0.493 -Z 5727.918 ${variables} -o ./ -f ${tmpoutname} --username ${user} --password ${password} --force-download 
                     ncks -O -F --mk_rec_dmn time ${tmpoutname} ${tmpoutname}
                 done
                 cd ${OUTDIR}
-                ncrcat -O raw_motu_${PREFIX}_Y${YEAR}M${MONTH}D*.nc raw_motu_${PREFIX}_Y${YEAR}M${MONTH}.nc
-                rm -r raw_motu_${PREFIX}_Y${YEAR}M${MONTH}D*.nc
+                ncrcat -O raw_${PREFIX}_Y${YEAR}M${MONTH}D*.nc raw_${PREFIX}_Y${YEAR}M${MONTH}.nc
+                rm -r raw_${PREFIX}_Y${YEAR}M${MONTH}D*.nc
                 cd -
             fi
         fi  
diff --git a/Oforc_OGCM/download_mercator_python.m b/Oforc_OGCM/download_mercator_python.m
index eb98f398..31d4ea54 100644
--- a/Oforc_OGCM/download_mercator_python.m
+++ b/Oforc_OGCM/download_mercator_python.m
@@ -1,5 +1,5 @@
-function download_mercator_python(pathMotu,user,password,mercator_type, ...
-                                  motu_url,service_id,product_id, ...
+function download_mercator_python(pathCMC,user,password,mercator_type, ...
+                                  product_id, ...
                                   Y,M, ...
                                   lonmin,lonmax,latmin,latmax,zmax, ...
                                   OGCM_dir,OGCM_prefix,thedatemonth,Yorig)
@@ -37,7 +37,6 @@ function download_mercator_python(pathMotu,user,password,mercator_type, ...
 %  Updated    20-Aug-2008 by Matthieu Caillaud & P. Marchesiello
 %  Update     23-Oct-2020 by Gildas Cambon
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% pathMotu is a deprecated parameter ! 
 download_raw_data=1;
 convert_raw2crocotools=1; % convert -> crocotools format data
 %
@@ -48,7 +47,7 @@ vars = {'zos' ...
         'vo' ...
         'thetao' ...
         'so'};
-
+%
 disp([' '])
 disp(['Get data for Y',num2str(Y),'M',num2str(M)])
 disp(['Minimum Longitude: ',num2str(lonmin)])
@@ -60,8 +59,7 @@ disp([' '])
 % Create the directory
 %
 disp(['Making output data directory ',OGCM_dir])
-eval(['!mkdir ',OGCM_dir])                 
-
+eval(['!mkdir ',OGCM_dir, ' 2> /dev/null'])
 %
 % Get files and dates
 %
@@ -69,7 +67,6 @@ eval(['!mkdir ',OGCM_dir])
 time1=datenum(Y,M,01);
 time2=datenum(Y,M+1,01) - 1;
 %time2=datenum(Y,M,02);  %for debug
-%e debug
 time=cat(2,time1,time2);
 tiempo_inicial = time(1);
 tiempo_final = time(end);
@@ -80,47 +77,84 @@ end
 if (lonmax > 180)
     lonmax = lonmax - 360;
 end
-raw_mercator_name=[OGCM_dir,'raw_motu_',OGCM_prefix,thedatemonth,'.nc'];
+raw_mercator_name=[OGCM_dir,'raw_',OGCM_prefix,thedatemonth,'.nc'];
 
 if download_raw_data
     %
-    % Get data 
-    % (temporarily removing Matlab lib path to avoid conflict with Python, mandatory with python 2.7.X)
-    %  for example problem like : 
-    %   Execution failed: /usr/lib/python2.7/lib-dynload/pyexpat.x86_64-linux-gnu.so: 
-    %                     undefined symbol: XML_SetHashSalt" ) 
-    
-    pathdyld=getenv('DYLD_LIBRARY_PATH');
-    setenv('DYLD_LIBRARY_PATH','');
-    pathld=getenv('LD_LIBRARY_PATH');
-    setenv('LD_LIBRARY_PATH','');
-
-    get_file_python_mercator(pathMotu,mercator_type, ...
-                             motu_url,service_id,product_id, ...
+    % Get data
+    if mercator_type==1
+      get_file_python_mercator(pathCMC, ...
+                             product_id, ...
                              vars, ...
                              [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
                              {datestr(tiempo_inicial,'yyyy-mm-dd') ...
                              datestr(tiempo_final,  'yyyy-mm-dd')}, ...
                              {user password}, ...
-                             raw_mercator_name);
-    
-    setenv('DYLD_LIBRARY_PATH',pathdyld); % set back Matlab libs path
-    setenv('LD_LIBRARY_PATH',pathld);     % set back Matlab libs path
-end  %end download_raw_data
+                             raw_mercator_name); 
+   
+    elseif mercator_type==2
+      %zos
+      get_file_python_mercator(pathCMC,...
+                             product_id{1}, ...
+                             vars{1}, ...
+                             [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
+                             {datestr(tiempo_inicial,'yyyy-mm-dd') ...
+                             datestr(tiempo_final,  'yyyy-mm-dd')}, ...
+                             {user password}, ...
+                             [raw_mercator_name(1:end-3),'_z.nc']);
 
+      %uo/vo
+      get_file_python_mercator(pathCMC, ...
+                             product_id{2}, ...
+                             {vars{2:3}}, ...
+                             [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
+                             {datestr(tiempo_inicial,'yyyy-mm-dd') ...
+                             datestr(tiempo_final,  'yyyy-mm-dd')}, ...
+                             {user password}, ...
+                             [raw_mercator_name(1:end-3),'_u.nc']);
 
+      %thetao
+      get_file_python_mercator(pathCMC, ...
+                             product_id{3}, ...
+                             vars{4}, ...
+                             [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
+                             {datestr(tiempo_inicial,'yyyy-mm-dd') ...
+                             datestr(tiempo_final,  'yyyy-mm-dd')}, ...
+                             {user password}, ...
+                             [raw_mercator_name(1:end-3),'_t.nc']);
+      %so
+      get_file_python_mercator(pathCMC, ...
+                             product_id{4}, ...
+                             vars{5}, ...
+                             [lonmin-1 lonmax+1 latmin-1 latmax+1 0 zmax], ...
+                             {datestr(tiempo_inicial,'yyyy-mm-dd') ...
+                             datestr(tiempo_final,  'yyyy-mm-dd')}, ...
+                             {user password}, ...
+                             [raw_mercator_name(1:end-3),'_s.nc']);
+    end
+%
+end  %end download_raw_data
+%
 if convert_raw2crocotools 
     %
     % Convert data format and write in a more CROCOTOOLS 
     % compatible input file 
     %
-    mercator_name=[OGCM_dir,'raw_motu_',OGCM_prefix,thedatemonth,'.nc'];
+    mercator_name=[OGCM_dir,'raw_',OGCM_prefix,thedatemonth,'.nc'];
     if exist(mercator_name)  
         disp('Mercator file already exist => overwrite it')
     end
-    write_mercator(OGCM_dir,OGCM_prefix,raw_mercator_name, ...
-                   mercator_type,vars,time,thedatemonth,Yorig); % write data
-    eval(['! rm -f ',raw_mercator_name]);
+    if mercator_type==1
+      write_mercator(OGCM_dir,OGCM_prefix,raw_mercator_name, ...
+                     mercator_type,vars,time,thedatemonth,Yorig); % write data
+%      eval(['! rm -f ',raw_mercator_name]);
+    elseif mercator_type==2
+      write_mercator_multi(OGCM_dir,OGCM_prefix,raw_mercator_name, ...
+                           mercator_type,vars,time,thedatemonth,Yorig); % write data
+%      eval(['! rm -f ',raw_mercator_name(1:end-3),'*.nc']);
+    end
+
+
 end
 
 end
diff --git a/Oforc_OGCM/extract_ECCO.m b/Oforc_OGCM/extract_ECCO.m
deleted file mode 100644
index 936831af..00000000
--- a/Oforc_OGCM/extract_ECCO.m
+++ /dev/null
@@ -1,172 +0,0 @@
-function extract_ECCO(OGCM_dir,OGCM_prefix,url,Y,M,catalog_vname,...
-                      catalog_vname2,...
-                      lon,lat,depth,...
-                      krange,jrange,...
-                      i1min,i1max,i2min,i2max,i3min,i3max,......
-                      Yorig)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Extract a subset from ECCO using DODS
-% Write it in a local file (keeping the classic
-% SODA netcdf format)
-%
-%
-%  Further Information:
-%  http://www.croco-ocean.org
-%
-%  This file is part of CROCOTOOLS
-%
-%  CROCOTOOLS is free software; you can redistribute it and/or modify
-%  it under the terms of the GNU General Public License as published
-%  by the Free Software Foundation; either version 2 of the License,
-%  or (at your option) any later version.
-%
-%  CROCOTOOLS is distributed in the hope that it will be useful, but
-%  WITHOUT ANY WARRANTY; without even the implied warranty of
-%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-%  GNU General Public License for more details.
-%
-%  You should have received a copy of the GNU General Public License
-%  along with this program; if not, write to the Free Software
-%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-%  MA  02111-1307  USA
-%
-%  Copyright (c) 2006 by Pierrick Penven
-%  e-mail:Pierrick.Penven@ird.fr
-%
-%  Updated    6-Sep-2006 by Pierrick Penven
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-disp(['    Download ECCO2 for ',num2str(Y),...
-    ' - ',num2str(M)])
-%
-% Get Matlab version
-%
-matversion=version('-release');
-matlab_new=~verLessThan('matlab','7.14');
-disp([' Matlab version : ',matversion])
-disp(['    !!! WARNING !!! '])
-if matlab_new
-  disp(['    Matlab version >= 2012a '])
-  disp(['    --> use Matlab built-in support for OPeNDAP'])
-  disp(['        with Matlab scripts in Opendap_tools_no_loaddap'])
-  disp(['        (set path in start.m)'])
-else
-  disp(['    Matlab version < 2012a '])
-  disp(['    --> use Matlab scripts in Opendap_tools'])
-  disp(['        (set path in start.m)'])
-end
-disp(['    !!! WARNING !!! '])
-%
-% Get the number of days in the month
-%
-nmax=daysinmonth(Y,M);
-%%nmax=5;
-Lm=length(lon);
-Mm=length(lat);
-N=length(depth);
-%int_3D=3; % Interval in days between ECCO2 data for 3D variables
-%int_2D=1; % Interval in days between ECCO2 data for 2D variables
-for vv=1:length(catalog_vname)
-    vname=char(catalog_vname(vv));
-    vname2=char(catalog_vname2(vv));
-    prefix=[char(vname),'.nc/'];
-    % Get starting day of month
-    if strcmp(vname,'THETA')
-        Dst=1;
-        disp(['-->'])
-        disp([' Check ',vname,' for ',datestr(datenum(Y,M,Dst,0,0,0))])
-        fname0=get_filename_ECCO(vname,Y,M,Dst);
-        fname=[url,prefix,fname0];
-        % Determine if dap file exists at day D0
-        %   --> if not, increment
-        dok=[];
-        try; dok=loaddap('-A -e +v ',fname); end;
-        while isempty(dok)==1
-            Dst=Dst+1;
-            fname0=get_filename_ECCO(vname,Y,M,Dst);
-            fname=[url,prefix,fname0];
-            try; dok=loaddap('-A -e +v ',fname); end;
-        end
-    end
-    % Compute 3D variable every 3 days
-    if ~strcmp(vname,'SSH')% v-> name='UVEL, VVEL'
-        var0=nan*zeros(N,Mm,Lm);
-        tndx=0;
-        for D=Dst:3:nmax
-            tndx=tndx+1;
-            disp(['===>'])
-            disp([' Downloading ',vname,' for ',datestr(datenum(Y,M,D,0,0,0))])
-            fname0=get_filename_ECCO(vname,Y,M,D);
-            fname=[url,prefix,fname0];
-            time=readdap(fname,'TIME',[]);
-            time3d(tndx)=time+datenum(1992,1,1)-datenum(Yorig,1,1);
-            x=readattribute(fname);
-            eval(['missing_value=x.',vname,'.missing_value;'])
-            var0=getdap('',fname,vname,'[0:0]', ...
-                           krange,jrange,i1min,i1max,i2min,i2max,i3min,i3max);
-            var0(var0<=-2000)=NaN;
-            if matlab_new
-              var(tndx,:,:,:)=var0;
-            else
-              var(tndx,:,:,:)=permute(var0,[3 1 2]); % old readdap version
-            end
-            %size(var)
-        end
-        if strcmp(vname,'UVEL')
-            u=var;
-        elseif strcmp(vname,'VVEL')
-            v=var;
-        elseif strcmp(vname,'THETA')
-            temp=var;
-        elseif strcmp(vname,'SALT')
-            salt=var;
-        end
-        % disp(['Write variable ',vname2])
-        % create_ECCO_3D([OGCM_dir,vname2,'_Y',num2str(Y),'M',num2str(M),'.cdf'], ...
-        %                 vname2,lon,lat,depth,time3d,var,Yorig)
-        clear var
-        
-    else
-        
-        % Compute 2D variable every 3 days also!
-        var0=nan*zeros(Mm,Lm);
-        tndx=0;
-        for D=Dst:3:nmax
-            tndx=tndx+1;
-            disp(['===>'])
-            disp([' Downloading ',vname,' for ',datestr(datenum(Y,M,D,0,0,0))])
-            fname0=get_filename_ECCO(vname,Y,M,D);
-            fname=[url,prefix,fname0];
-            time=readdap(fname,'TIME',[]);
-            time3d(tndx)=time+datenum(1992,1,1)-datenum(Yorig,1,1);
-            x=readattribute(fname);
-            eval(['missing_value=x.',vname,'.missing_value;'])
-            var0=getdap('',fname,vname,'[0:0]','', ...
-                           jrange,i1min,i1max,i2min,i2max,i3min,i3max);
-            var0(var0<=-2000)=NaN;
-            var(tndx,:,:)=var0;
-        end
-        if strcmp(vname,'SSH')
-            ssh=var;
-        end
-        % disp(['Write variable ',vname2])
-        % create_ECCO_2D([OGCM_dir,vname2,'_Y',num2str(Y),'M',num2str(M),'.cdf'], ...
-        %                 vname2,lon,lat,time3d,var,Yorig)
-        clear var
-
-    end %-> if
-
-end     %-> catalogue_vname list
-
-%
-% Create ECCO file and write variables
-%
-create_OGCM([OGCM_dir,OGCM_prefix,'Y',num2str(Y),'M',num2str(M),'.cdf'],...
-             lon,lat,lon,lat,lon,lat,depth,time3d,temp,salt,u,v,ssh,Yorig)
-
-return
-
-end
-
diff --git a/Oforc_OGCM/extract_SODA.m b/Oforc_OGCM/extract_SODA.m
index acc65077..77c7936b 100644
--- a/Oforc_OGCM/extract_SODA.m
+++ b/Oforc_OGCM/extract_SODA.m
@@ -32,8 +32,10 @@ function extract_SODA(SODA_dir,SODA_prefix,url,year,month,...
 %  e-mail:Pierrick.Penven@ird.fr  
 %
 %  Updated   6-Sep-2006 by Pierrick Penven
-%  Updated : 23-Oct-2009 by Gildas Cambon Adaptation for the special tratment 
+%  Updated : 23-Oct-2009 by Gildas Cambon Adaptation for the special treatement 
 %            for the bry file
+%  Updated 18-March-2024 by Gildas Cambon
+%                        - remove download of taux and tauy
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
 disp(['    Download SODA for ',num2str(year),...
@@ -62,33 +64,33 @@ if missval<0
 else
   ssh(ssh>=(0.9*missval))=NaN;
 end
-%
-% Get TAUX
-%
-disp('    ...TAUX')
-taux=getdap(url,'',...
-		'taux',trange,'',jrange,...
-		i1min,i1max,i2min,i2max,i3min,i3max);
-eval(['missval=double(x.taux.',missname,');'])
-if missval<0
-  taux(taux<=(0.9*missval))=NaN;
-else
-  taux(taux>=(0.9*missval))=NaN;
-end
-%
-% Get TAUY
-%
-disp('    ...TAUY')
-tauy=getdap(url,'',...
-		'tauy',trange,'',jrange,...
-		i1min,i1max,i2min,i2max,i3min,i3max);
-eval(['missval=double(x.tauy.',missname,');'])
-if missval<0
-  tauy(tauy<=(0.9*missval))=NaN;
-else
-  tauy(tauy>=(0.9*missval))=NaN;
-end
-%
+% %
+% % Get TAUX
+% %
+% disp('    ...TAUX')
+% taux=getdap(url,'',...
+% 		'taux',trange,'',jrange,...
+% 		i1min,i1max,i2min,i2max,i3min,i3max);
+% eval(['missval=double(x.taux.',missname,');'])
+% if missval<0
+%   taux(taux<=(0.9*missval))=NaN;
+% else
+%   taux(taux>=(0.9*missval))=NaN;
+% end
+% %
+% % Get TAUY
+% %
+% disp('    ...TAUY')
+% tauy=getdap(url,'',...
+% 		'tauy',trange,'',jrange,...
+% 		i1min,i1max,i2min,i2max,i3min,i3max);
+% eval(['missval=double(x.tauy.',missname,');'])
+% if missval<0
+%   tauy(tauy<=(0.9*missval))=NaN;
+% else
+%   tauy(tauy>=(0.9*missval))=NaN;
+% end
+% %
 % Get U
 %
 disp('    ...U')
@@ -147,8 +149,11 @@ end
 %
 % Create the SODA file
 %
-create_SODA([SODA_dir,SODA_prefix,'Y',num2str(year),'M',num2str(month),'.cdf'],...
+% create_SODA([SODA_dir,SODA_prefix,'Y',num2str(year),'M',num2str(month),'.cdf'],...
+%             lon,lat,lon,lat,lon,lat,depth,time,...
+%             temp,salt,u,v,ssh,taux,tauy,Yorig)
+create_OGCM([SODA_dir,SODA_prefix,'Y',num2str(year),'M',num2str(month),'.cdf'],...
             lon,lat,lon,lat,lon,lat,depth,time,...
-            temp,salt,u,v,ssh,taux,tauy,Yorig)
+            temp,salt,u,v,ssh,Yorig)
 %
 return
diff --git a/Oforc_OGCM/extract_mercator.m b/Oforc_OGCM/extract_mercator.m
deleted file mode 100644
index 6842dea3..00000000
--- a/Oforc_OGCM/extract_mercator.m
+++ /dev/null
@@ -1,212 +0,0 @@
-function extract_mercator(OGCM_dir,OGCM_prefix,url,Y,M,...
-                          lon,lon_u,lat,lat_v,depth,...
-                          krange,jrange,jrange_v,...
-                          i1min,i1max,i2min,i2max,i3min,i3max,...
-                          i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u,...
-                          Yorig)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Extract a subset from ECCO using DODS
-% Write it in a local file (keeping the classic
-% SODA netcdf format) 
-%
-%
-%  Further Information:
-%  http://www.croco-ocean.org
-%
-%  This file is part of CROCOTOOLS
-%
-%  CROCOTOOLS is free software; you can redistribute it and/or modify
-%  it under the terms of the GNU General Public License as published
-%  by the Free Software Foundation; either version 2 of the License,
-%  or (at your option) any later version.
-%
-%  CROCOTOOLS is distributed in the hope that it will be useful, but
-%  WITHOUT ANY WARRANTY; without even the implied warranty of
-%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-%  GNU General Public License for more details.
-%
-%  You should have received a copy of the GNU General Public License
-%  along with this program; if not, write to the Free Software
-%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-%  MA  02111-1307  USA
-%
-%  Copyright (c) 2006 by Pierrick Penven 
-%  e-mail:Pierrick.Penven@ird.fr  
-%
-%  Updated    6-Sep-2006 by Pierrick Penven
-%  Updated    20-Aug-2008 by Matthieu Caillaud & P. Marchesiello
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-disp(['    Download mercator for ',num2str(Y),...
-      ' - ',num2str(M)])
-
-%
-% Get the dataset attributes
-%
-
-%  test if the file exist
-%
-%
-foundfile=0;
-  fname=url;
-  warning off
-  try
-    x=loaddap('-A -e +v ', fname);
-    foundfile=1;
-  catch
-    foundfile=0;
-  end
-  if foundfile==1 & ~isempty(x)
-    disp('  File found')
-  else
-    foundfile=0;
-    disp('  File does not exist')
-  end
-  warning on
-%
-%
-missval=x.ssh.missing_value; %PSY3V1
-
-%missval=x.ssh.ml__FillValue; %PSY3V2
-
-
-
-%
-% Get the time range
-%
-time=readdap(fname,'time',[]);
-%
-% Process the time
-%
-time=time+datenum(1950,1,1);
-
-disp(datestr(time));
-c=datevec(time);
-y0=c(:,1);
-m0=c(:,2);
-d0=c(:,3);
-oktime=1;
-d=[12;13;14;15;16;17;18];
-if Y~=mean(y0)
-  disp(['Warning: dates are not all for year: ',num2str(Y)])
-  oktime=0;
-end
-tndx=find(m0==M & y0==Y);
-if isempty(tndx)
-  error('Time problem: did not find the corresponding month')
-end
-%
-if oktime==0 & M==12 % to get the value of 1 jan of next year %
-  tndx=[tndx;tndx(end)+1];
-end
-
-trange=['[',num2str(min(tndx)-1),':',num2str(max(tndx)-1),']'];
-
-
-% tndx=find(m0==M & y0==Y);
-   % trange=['[',num2str(tndx(1)-1),']'];
-
-%
-% Put the time into "Yorig time"
-%
-time=time(tndx)-datenum(Yorig,1,1);
-%
-% Get SSH
-%
-disp('    ...SSH')
-vname='ssh';
-fname='';
-ssh=getdap(url,fname,vname,...
-          trange,'',jrange,...
-            i1min,i1max,i2min,i2max,i3min,i3max);
-	    
-       
-	   
-ssh=shiftdim(ssh,2);
-%missval=x.ssh.missing_value;
-ssh(ssh>=missval)=NaN;	
-%
-% Get TAUX
-%
-disp('    ...TAUX')
-taux=getdap(url,fname,...
-            'taux',trange,'',jrange,...
-            i1min,i1max,i2min,i2max,i3min,i3max);
-
-
-%missval=x.taux.missing_value;
-taux(taux>=missval)=NaN;
-%
-% Get TAUY
-%
-disp('    ...TAUY')
-tauy=getdap(url,fname,...
-            'tauy',trange,'',jrange,...
-            i1min,i1max,i2min,i2max,i3min,i3max);
-%missval=x.tauy.missing_value;
-tauy(tauy>=missval)=NaN;
-%
-
-% Get U
-%
-disp('    ...U')
-vname='u';
-u=getdap(url,fname,vname,...
-          trange,krange,jrange,...
-          i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u);
-u=permute(u,[4 3 1 2]);
-%u=shiftdim(u,2);
-%missval=x.u.missing_value;
-u(u>=missval)=NaN;
-%
-% Get V
-%
-disp('    ...V')
-vname='v';
-v=getdap(url,fname,vname,...
-          trange,krange,jrange_v,...
-          i1min,i1max,i2min,i2max,i3min,i3max);
-v=permute(v,[4 3 1 2]);
-%missval=x.v.missing_value;
-v(v>=missval)=NaN;
-%
-% Get TEMP
-%
-disp('    ...TEMP')
-vname='temperature';
-temp=getdap(url,fname,vname,...
-             trange,krange,jrange,...
-             i1min,i1max,i2min,i2max,i3min,i3max);
-temp=permute(temp,[4 3 1 2]);
-
-%temp=shiftdim(temp,2);
-%missval=x.temperature.missing_value;
-temp(temp>=missval)=NaN;
-%
-% Get SALT
-%
-disp('    ...SALT')
-vname='salinity';
-salt=getdap(url,fname,vname,...
-             trange,krange,jrange,...
-             i1min,i1max,i2min,i2max,i3min,i3max);
-salt=permute(salt,[4 3 1 2]);
-%salt=shiftdim(salt,2);
-%missval=x.salinity.missing_value;
-salt(salt>=missval)=NaN;
-%
-% Create the ECCO file
-%
-fname=url
-%
-%
-create_OGCM([OGCM_dir,OGCM_prefix,'Y',num2str(Y),'M',num2str(M),'.cdf'],...
-             lon,lat,lon_u,lat,lon,lat_v,depth,time,...
-             temp,salt,u,v,ssh,Yorig)
-%
-return
-
-end
-
diff --git a/Oforc_OGCM/get_ECCO_subgrid.m b/Oforc_OGCM/get_ECCO_subgrid.m
deleted file mode 100644
index f7488716..00000000
--- a/Oforc_OGCM/get_ECCO_subgrid.m
+++ /dev/null
@@ -1,138 +0,0 @@
-function [i1min,i1max,i2min,i2max,i3min,i3max,...
-          i1min_u,i1max_u,i2min_u,i2max_u,i3min_u,i3max_u,...
-          jrange,jrange_v,krange,lon,lon_u,lat,lat_v,depth]=...
-         get_ECCO_subgrid(path,lonmin,lonmax,latmin,latmax)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Get the indices for a ECCO subgrid 
-%
-%
-%  Further Information:  
-%  http://www.croco-ocean.org
-%  
-%  This file is part of CROCOTOOLS
-%
-%  CROCOTOOLS is free software; you can redistribute it and/or modify
-%  it under the terms of the GNU General Public License as published
-%  by the Free Software Foundation; either version 2 of the License,
-%  or (at your option) any later version.
-%
-%  CROCOTOOLS is distributed in the hope that it will be useful, but
-%  WITHOUT ANY WARRANTY; without even the implied warranty of
-%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-%  GNU General Public License for more details.
-%
-%  You should have received a copy of the GNU General Public License
-%  along with this program; if not, write to the Free Software
-%  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-%  MA  02111-1307  USA
-%
-%  Copyright (c) 2006 by Pierrick Penven 
-%  e-mail:Pierrick.Penven@ird.fr  
-%
-%  Updated    6-Sep-2006 by Pierrick Penven
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-dl=1;
-lonmin=lonmin-dl;
-lonmax=lonmax+dl;
-latmin=latmin-dl;
-latmax=latmax+dl;
-%
-% Get the global grid
-%
-lon=readdap(path,'LONGITUDE_T',[]);
-lat=readdap(path,'LATITUDE_T',[]);
-depth=readdap(path,'DEPTH_T',[]);
-%
-% Quick fix because lon_u and lat_v are 
-%
-disp('GET_ECCO_SUBGRID: Warning lon_u and lat_v are no more downloaded from the server') 
-lon_u=lon-0.5;
-lat_v=lat-0.5;
-%
-% Get a subgrid
-%
-%
-% 1 Longitude: take care of greenwitch
-%
-i1=find(lon-360>=lonmin & lon-360<=lonmax);
-i2=find(lon>=lonmin & lon<=lonmax);
-i3=find(lon+360>=lonmin & lon+360<=lonmax);
-%
-lon=cat(1,lon(i1)-360,lon(i2),lon(i3)+360);
-%
-if ~isempty(i1)
-  i1min=min(i1)-1;
-  i1max=max(i1)-1;
-else
-  i1min=[];
-  i1max=[];
-end
-if ~isempty(i2)
-  i2min=min(i2)-1;
-  i2max=max(i2)-1;
-else
-  i2min=[];
-  i2max=[];
-end
-if ~isempty(i3)
-  i3min=min(i3)-1;
-  i3max=max(i3)-1;
-else
-  i3min=[];
-  i3max=[];
-end
-%
-i1_u=find(lon_u-360>=lonmin & lon_u-360<=lonmax);
-i2_u=find(lon_u>=lonmin & lon_u<=lonmax);
-i3_u=find(lon_u+360>=lonmin & lon_u+360<=lonmax);
-%
-lon_u=cat(1,lon_u(i1_u)-360,lon_u(i2_u),lon(i3_u)+360);
-%
-if ~isempty(i1_u)
-  i1min_u=min(i1_u)-1;
-  i1max_u=max(i1_u)-1;
-else
-  i1min_u=[];
-  i1max_u=[];
-end
-if ~isempty(i2_u)
-  i2min_u=min(i2_u)-1;
-  i2max_u=max(i2_u)-1;
-else
-  i2min_u=[];
-  i2max_u=[];
-end
-if ~isempty(i3_u)
-  i3min_u=min(i3_u)-1;
-  i3max_u=max(i3_u)-1;
-else
-  i3min_u=[];
-  i3max_u=[];
-end
-%
-% 2 Latitude
-%
-j=find(lat>=latmin & lat<=latmax);
-lat=lat(j);
-jmin=min(j)-1;
-jmax=max(j)-1;
-jrange=['[',num2str(jmin),':',num2str(jmax),']'];
-%
-j_v=find(lat_v>=latmin & lat_v<=latmax);
-lat_v=lat_v(j_v);
-jmin_v=min(j_v)-1;
-jmax_v=max(j_v)-1;
-jrange_v=['[',num2str(jmin_v),':',num2str(jmax_v),']'];
-%
-% 3 Depth
-%
-k=length(depth);
-krange=['[',num2str(0),':',num2str(k-1),']'];
-%
-return
-
-end
-
diff --git a/Oforc_OGCM/get_file_python_mercator.m b/Oforc_OGCM/get_file_python_mercator.m
index 4320a577..1fe41bcf 100644
--- a/Oforc_OGCM/get_file_python_mercator.m
+++ b/Oforc_OGCM/get_file_python_mercator.m
@@ -1,7 +1,8 @@
-function outname = get_file_python_mercator(pathmotu,mercator_type,...
-                                            motu_url,service_id,product_id, ...
-                                            vars, ...
-                                            geom,date,info,outname)
+function outname = get_file_python_mercator(pathCMC,...
+                                            product_id,...
+                                            vars,...
+                                            geom,date,...
+                                            info,outname)
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
 %  Extract a subgrid from MERCATOR to get a CROCO forcing
@@ -33,115 +34,36 @@ function outname = get_file_python_mercator(pathmotu,mercator_type,...
 %
 %  Updated   12-Feb-2016 by P. Marchesiello
 %  Updated   26-Nov-2020 by G. Cambon
+%  Updated   22-Feb-2024 by G. Cambon
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Usage: 
-%=======
-% get_file_python_mercator(pathMotu,mercator_type,...
-%                          motu_url,service_id,product_id, ...
-%                          {'varname1' 'varname2'}, ...
-%                          [lonmin lonmax latmin latmax, depthmin depthmax], ...
-%                          {'startdate' 'enddate'},{user password},
-%                          'outname.nc');
-% 
-% For GLORYS 12 reanalysis
-% ========================
-% motu_url='http://my.cmems-du.eu/motu-web/Motu';
-% service_id='GLOBAL_REANALYSIS_PHY_001_030-TDS';
-% product_id='global-reanalysis-phy-001-030-daily';
-%
-% For Mercator 1/12 forecast
-% ==========================
-% motu_url='http://nrt.cmems-du.eu/motu-web/Motu';
-% service_id='GLOBAL_ANALYSIS_FORECAST_PHY_001_024-TDS';
-% product_id='global-analysis-forecast-phy-001-024';
-%
-% For Met-Office 1/4 forecast
-% ===========================
-% motu_url='http://nrtcmems.mercator-ocean.fr/motu-web/Motu';
-% service_id='GLOBAL_ANALYSIS_FORECAST_PHYS_001_015-TDS';
-% product_id='global-analysis-forecast-phys-001-015';
-%
-% Check http://marine.copernicus.eu/web/34-products-and-services-faq.php 
-% for changes in the command line: addresses, file names, variable names ...
-%
-% Currently needs Python2.7.X (with X >= 10) or Python 3.X (with >=4) 
-% and motuclient.py v.1.8.X (where "X" is equal or higher to "4") 
-% from https://marine.copernicus.eu/services-portfolio/technical-faq/#motu-client
-%
-% python
-% ======
-% Type:
-%   python --version
-% It should return: "Python 2.7.10+" or "Python 3.4+".
-%
-% motuclient
-% ==========
-% 1- Use croco's motuclient (pathMotu => Forecast_tools) or ...
-% 2- Install your own motuclient:
-%   To update/upgrade and get the latest version of motuclient 
-%   from a previous version (<= v1.8.3), type in the following:
-%      $ python -m pip install --upgrade motuclient
-%   Otherwise (if there is no previous installation of motuclient), 
-%   type in the following:
-%      $ python -m pip install motuclient
-%   It should install and display motuclient package v1.8.4 (Oct. 2019). 
-%   To make sure, display the version:
-%      $ python -m motuclient --version
-%   If it does not return: "motuclient-python v1.8.X" ("X" >= "4"), 
-%   then type in the following:
-%      $ python -m pip install motuclient==1.8.4
-%=======
-%
-eval(['! rm ',outname])
+% Informations : 
+% => https://help.marine.copernicus.eu/en/collections/4060068-copernicus-marine-toolbox
+% => https://help.marine.copernicus.eu/en/articles/8206131-how-to-download-a-copernicus-marine-toolbox-request-in-matlab
+%
+eval(['! rm -f ',outname])
+disp([' '])
+disp(['Extraction of product: ', product_id])
+disp([' '])
+command = {  sprintf('export PYTHONWARNINGS="ignore"; ')
+             sprintf('%s',pathCMC)
+             sprintf(' subset')
+             sprintf(' --username %s --password %s',info{1},info{2})
+             sprintf(' -i %s',product_id)
+             sprintf(' -t %s -T %s',['"',date{1},'"'],['"',date{2},'"'])
+             sprintf(' -x %f -X %f',geom(1),geom(2))
+             sprintf(' -y %f -Y %f',geom(3),geom(4))
+             sprintf(' -z %f -Z %f',geom(5),geom(6))
+             sprintf(' -o ./')
+             sprintf(' -f %s',outname)
+             sprintf(' --force-download')};
 
-if isempty(pathmotu),  % use your own motuclient
-
-    command = {'!python -m motuclient'
-               sprintf(' -u %s -p %s',info{1},info{2}) 
-               sprintf(' -m %s',motu_url)
-               sprintf(' -s %s',service_id)
-               sprintf(' -d %s',product_id)
-               sprintf(' -t %s -T %s',date{1},date{2})
-               sprintf(' -x %f -X %f',geom(1),geom(2))
-               sprintf(' -y %f -Y %f',geom(3),geom(4))
-               sprintf(' -z %f -Z %f',geom(5),geom(6))
-               sprintf(' -o ./')
-               sprintf(' --out-name %s',outname)};
-
-else                  % use croco's motuclient
-
-    command = {'!'
-    	       sprintf('%s',pathmotu)
-    	      'motuclient-python/motuclient.py'
-    	       sprintf(' -u %s -p %s',info{1},info{2})
-               sprintf(' -m %s',motu_url)
-               sprintf(' -s %s',service_id)
-               sprintf(' -d %s',product_id)
-               sprintf(' -t %s -T %s',date{1},date{2})
-               sprintf(' -x %f -X %f',geom(1),geom(2))
-               sprintf(' -y %f -Y %f',geom(3),geom(4))
-               sprintf(' -z %f -Z %f',geom(5),geom(6))
-               sprintf(' -o ./')
-               sprintf(' --out-name %s',outname)};
-end
-    
-for k =1:length(vars)
-    command{end+1}=sprintf(' -v %s ',vars{k});
+if isa(vars,'cell')
+ for k =1:size(vars,2)
+     command{end+1}=sprintf(' -v %s',vars{k});
+ end
 end
 
-%===
-%  If using a proxy server, uncomment the following line and replace by your 
-%  proxy url and port server. Beware that a SPACE is needed between 
-%  "--proxy-server=" and "the proxy-server-name" !
-%
-%command{end+2}=sprintf('--proxy-server= http://your_proxy_server:your_proxy_port');
-%===
 disp([command{:}])
-eval([command{:}])
+system([command{:}]);
 
-%
-% example of a python motuclient commands
-%
-%python -m motuclient --motu http://my.cmems-du.eu/motu-web/Motu --service-id GLOBAL_REANALYSIS_PHY_001_030-TDS --product-id global-reanalysis-phy-001-030-daily --longitude-min 15 --longitude-max 20 --latitude-min -40 --latitude-max -25 --date-min "2004-12-31 12:00:00" --date-max "2005-02-01 12:00:00" --depth-min 0.493 --depth-max 5727.918 --variable so --variable thetao --variable uo --variable vo --variable zos --out-dir <OUTPUT_DIRECTORY> --out-name <OUTPUT_FILENAME> --user <USERNAME> --pwd <PASSWORD>
-end
 
diff --git a/Oforc_OGCM/get_filename_ECCO.m b/Oforc_OGCM/get_filename_ECCO.m
deleted file mode 100644
index 02893a34..00000000
--- a/Oforc_OGCM/get_filename_ECCO.m
+++ /dev/null
@@ -1,24 +0,0 @@
-function fname=get_filename_ECCO(vname,Y,M,D)
-
-stryear=num2str(Y);
-if M<10
-    strmonth=['0',num2str(M)];
-else
-    strmonth=[num2str(M)];
-end
-
-if D<10
-    strday=['0',num2str(D)];
-else
-    strday=[num2str(D)];
-end
-
-if strcmp(vname,'SSH')
-    fname=[vname,'.1440x720.',stryear,strmonth,strday,'.nc'] ;
-else
-    fname=[vname,'.1440x720x50.',stryear,strmonth,strday,'.nc'] ;
-end
-return
-
-end
-
diff --git a/Oforc_OGCM/make_OGCM.m b/Oforc_OGCM/make_OGCM_SODA.m
similarity index 93%
rename from Oforc_OGCM/make_OGCM.m
rename to Oforc_OGCM/make_OGCM_SODA.m
index 13b070e9..f59e5e54 100644
--- a/Oforc_OGCM/make_OGCM.m
+++ b/Oforc_OGCM/make_OGCM_SODA.m
@@ -1,6 +1,6 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
-% Create and fill CROCO clim and bry files with OGCM data.
+% Create and fill CROCO clim and bry files with OGCM SODA data.
 %
 % The on-line reference to SODA is at
 % http://iridl.ldeo.columbia.edu./SOURCES/.CARTON-GIESE/.SODA/
@@ -45,35 +45,13 @@ close all
 % Common parameters
 %
 crocotools_param
-%
-if strcmp(OGCM,'SODA')
+
   %
   %  SODA DODS URL
   %
-  % SODA 2.0.2-4
-  %url= 'http://apdrc.soest.hawaii.edu:80/dods/public_data/SODA/soda_pop2.0.4'
-  
-  % SODA_2.1.6 [ ERA40/QSCAT 1958-2008 / POP2.1 / WOD09 ]
-  %%url='http://iridl.ldeo.columbia.edu/SOURCES/.CARTON-GIESE/.SODA/.v2p1p6' ;
-  %url='http://apdrc.soest.hawaii.edu:80/dods/public_data/SODA/soda_pop2.1.6' ;
-  
   % SODA_2.2.4/ [ C20R-2 1871-2008 / POP2.1 ]
   %%url='http://iridl.ldeo.columbia.edu/SOURCES/.CARTON-GIESE/.SODA/.v2p2p4' ;
   url='http://apdrc.soest.hawaii.edu:80/dods/public_data/SODA/soda_pop2.2.4' ;
-  
-elseif strcmp(OGCM,'ECCO')
-  %
-  %  ECCO DODS URL
-  %
-  % Kalman filter 
-  %
-  %  url = 'http://ecco.jpl.nasa.gov/thredds/dodsC/las/kf080/kf080_'; 
-     url = 'http://ecco2.jpl.nasa.gov:80/opendap/data1/cube/cube92/lat_lon/quart_90S_90N/'
-  %
-else
-  error(['Unknown OGCM: ',OGCM])
-  % for mercator/glorys12 reanalysis use make_OGCM_mercator.m
-end
 %
 itolap_tot=itolap_a + itolap_p;
 disp(['Overlap before =',num2str(itolap_a)])
@@ -118,8 +96,8 @@ if Download_data==1
   % Download data with DODS (the download matlab routine depends on the OGCM)
   % 
   disp('Download data...')
-  eval(['download_',OGCM,'(Ymin,Ymax,Mmin,Mmax,lonmin,lonmax,latmin,latmax,',...
-        'OGCM_dir,OGCM_prefix,url,Yorig)'])
+ download_SODA(Ymin,Ymax,Mmin,Mmax,lonmin,lonmax,latmin,latmax,...
+               OGCM_dir,OGCM_prefix,url,Yorig)
 end
 %
 %------------------------------------------------------------------------------------
@@ -322,10 +300,10 @@ if makeclim==1 | makebry==1
 	      Yp=Y;
 	      for aa=1:itolap_p    
 	         tndx_OGCM(aa)=ntimes;
-	       end
+              end
       else
 	      for aa=1:itolap_p  
-	      tndx_OGCM(aa)=aa;
+                tndx_OGCM(aa)=aa;
 	      end;
       end
       %
diff --git a/Oforc_OGCM/make_OGCM_mercator.m b/Oforc_OGCM/make_OGCM_mercator.m
index 1619d15f..510f2069 100644
--- a/Oforc_OGCM/make_OGCM_mercator.m
+++ b/Oforc_OGCM/make_OGCM_mercator.m
@@ -3,6 +3,19 @@
 %  Create and fill CROCO clim and bry files with OGCM 
 %  MERCATOR data.
 %
+%  On crocotools_param.m, available datasets:
+%    SODA     -> Description :  1/4 deg SODA v2.2.4 monthly means
+%                                                           (187101 -> 201012)
+%    mercator -> 2 options for mercator_type parameter:
+%
+%                1 -->  1/12 deg Mercator global reanalysis (1993   -> 202101)
+%                                           (Monthly or Daily product)
+%                2 -->  1/12 deg Mercator global analysis   (202011 -> )
+%       
+%            Note for 2:
+%                    (7days from now -> now-1day : Near Real Time analysis)
+%                    (more than 15days from now  : Best analysis)
+%
 %  Online reference to MERCATOR is at http://marine.copernicus.eu
 % 
 %  Further Information:  
@@ -109,10 +122,9 @@ if Download_data==1
             mo_max=12;
         end
         for M=mo_min:mo_max
-            %motu_url_reana
             thedatemonth=['Y',num2str(Y),'M',num2str(M)];          
-            download_mercator_python(pathMotu,user,password,1,...
-                                     motu_url_reana,service_id_reana,product_id_reana, ...
+            download_mercator_python(pathCMC,user,password,mercator_type,...
+                                     product_id, ...
                                      Y,M, ...
                                      lonmin,lonmax,latmin,latmax,hmax, ...
                                      OGCM_dir,OGCM_prefix,thedatemonth,Yorig)           
@@ -154,7 +166,8 @@ if makeini==1
   % Process the time in Yorig time (i.e days since Yorig-01-01)
   %
   tini=datenum(Ymin,Mmin,1)-datenum(Yorig,1,1);
-  disp(['Create an initial file for ',datestr(tini+datenum(Yorig,1,1));])
+  disp([' '])
+  disp(['=> Create an initial file for ',datestr(tini+datenum(Yorig,1,1));])
   create_inifile(ininame,grdname,CROCO_title,...
 		 theta_s,theta_b,hc,N,...
 		 tini,'clobber', vtransform);
@@ -211,10 +224,10 @@ if makeclim==1 | makebry==1
       OGCM_time=nc{'time'}(:);
       ntimes=length(OGCM_time);
       if ntimes==1
-	      dt=30; % monthly files (SODA..)
+	dt=30; % monthly files
         itolap_a=1; itolap_p=1;
         itolap_tot=itolap_a + itolap_p;
-        disp(['Reduced overlap for monthly SODA files'])
+        disp(['Reduced overlap for monthly files'])
         disp(['...'])
       else
 	      dt=max(gradient(OGCM_time));
@@ -254,6 +267,8 @@ if makeclim==1 | makebry==1
       if makebry==1
 	      bryname=[bry_prefix,'Y',num2str(Y),...
 		            'M',num2str(sprintf(Mth_format,M)),nc_suffix];
+	      disp([' '])
+              disp(['=> Create bry file : ',  bryname ])
 	      create_bryfile(bryname,grdname,CROCO_title,[1 1 1 1],...
 		       theta_s,theta_b,hc,N,...
 		       croco_time,0,'clobber',vtransform);
diff --git a/Oforc_OGCM/prepro_soda.m b/Oforc_OGCM/prepro_soda.m
index 3ba9797b..2bd90cae 100644
--- a/Oforc_OGCM/prepro_soda.m
+++ b/Oforc_OGCM/prepro_soda.m
@@ -1,4 +1,4 @@
 clear all
 close all
 start ; 
-make_OGCM ; 
+make_OGCM_SODA ; 
diff --git a/Oforc_OGCM/write_mercator.m b/Oforc_OGCM/write_mercator.m
index 1a765e56..353f1e9f 100644
--- a/Oforc_OGCM/write_mercator.m
+++ b/Oforc_OGCM/write_mercator.m
@@ -2,8 +2,8 @@ function write_mercator(OGCM_dir,OGCM_prefix,raw_mercator_name,...
                          mercator_type,vars,time,thedatemonth,Yorig)
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
-% Extract a subset from Mercator in the case of hindcast
-% using python motu client (cls)
+% Extract a subset from Mercator  in the case of hindcast 
+% using python  copernicusmarine client
 % Write it in a local file (keeping the classic SODA netcdf format)
 % 
 %  Further Information:  
@@ -35,18 +35,16 @@ function write_mercator(OGCM_dir,OGCM_prefix,raw_mercator_name,...
 %
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
-disp(['    writing MERCATOR file'])
+disp(['    Writing MERCATOR file'])
 %
 % Get grid and time frame
 %
 nc = netcdf(raw_mercator_name);
-if mercator_type==1,
-  lon = nc{'longitude'}(:);
-  lat = nc{'latitude'}(:);
-  depth = nc{'depth'}(:);
-  time = nc{'time'}(:);
-  time = time / 24 + datenum(1950,1,1) - datenum(Yorig,1,1);
-end
+lon = nc{'longitude'}(:);
+lat = nc{'latitude'}(:);
+depth = nc{'depth'}(:);
+time = nc{'time'}(:);
+time = time / 24 + datenum(1950,1,1) - datenum(Yorig,1,1);
 %
 % Get SSH
 %
@@ -95,9 +93,8 @@ temp=ncc(:);
 missval=ncc.FillValue_(:);
 scale_factor=ncc.scale_factor(:);
 add_offset=ncc.add_offset(:);
-ktoc=272.15;
 temp(temp<=missval)=NaN;
-temp = temp.*scale_factor + add_offset; % - ktoc;
+temp = temp.*scale_factor + add_offset;
 %
 % Get SALT
 %
diff --git a/Forecast_tools/write_mercator_frcst.m b/Oforc_OGCM/write_mercator_multi.m
similarity index 65%
rename from Forecast_tools/write_mercator_frcst.m
rename to Oforc_OGCM/write_mercator_multi.m
index e82e3616..75779986 100644
--- a/Forecast_tools/write_mercator_frcst.m
+++ b/Oforc_OGCM/write_mercator_multi.m
@@ -1,9 +1,10 @@
-function write_mercator_frcst(FRCST_dir,FRCST_prefix,raw_mercator_name,...
-                              mercator_type,vars,time,Yorig)
+function write_mercator_multi(OGCM_dir,OGCM_prefix,raw_mercator_name,...
+                              mercator_type,vars,time,thedatemonth,Yorig)
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
-% Extract a subset from Marcator using python motu client (cls)
-% Write it in a local file (keeping the classic SODA netcdf format)
+% Extract a subset from Mercator in the case of 
+% using python
+% Write mercator multi files for analysis and forecast
 % 
 %  Further Information:  
 %  http://www.croco-ocean.org
@@ -31,10 +32,10 @@ function write_mercator_frcst(FRCST_dir,FRCST_prefix,raw_mercator_name,...
 %  Updated    9-Sep-2006 by Pierrick Penven
 %  Updated    19-May-2011 by Andres Sepulveda & Gildas Cambon
 %  Updated    12-Feb-2016 by P. Marchesiello
-%  Updated    06-May-2023 by Efrain Rodriguez-Rubio & P. Marchesiello
+%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
-disp(['    writing MERCATOR file'])
+disp(['    Writing MERCATOR multifiles '])
 
 fname_z=[raw_mercator_name(1:end-3),'_z.nc'];
 fname_u=[raw_mercator_name(1:end-3),'_u.nc'];
@@ -44,51 +45,51 @@ fname_s=[raw_mercator_name(1:end-3),'_s.nc'];
 %
 % Get grid and time frame
 %
-nc = netcdf(fname_u,'r');
-if mercator_type==1,
-  lon = nc{'longitude'}(:);
-  lat = nc{'latitude'}(:);
-  depth = nc{'depth'}(:);
-  time = nc{'time'}(:);
-  time = time / 24 + datenum(1950,1,1) - datenum(Yorig,1,1);
+nc = netcdf(fname_u);
+lon = nc{'longitude'}(:);
+lat = nc{'latitude'}(:);
+depth = nc{'depth'}(:);
+time = nc{'time'}(:);
+%
+if (mercator_type == 4) | (mercator_type == 5)
+  time = time / (24*60) + datenum(1900,1,1) - datenum(Yorig,1,1);
 else
-  lon = nc{'lon'}(:);
-  lat = nc{'lat'}(:);
-  depth = nc{'depth'}(:);
-  time = nc{'time'}(:);
-  time = time / 86400 + datenum(2014,1,9) - datenum(Yorig,1,1);
+  time = time / 24 + datenum(1950,1,1) - datenum(Yorig,1,1);
 end
 close(nc)
 %
 % Get SSH
 %
-%missval = -32767;
 disp('    ...SSH')
 nc = netcdf(fname_z,'r');
 vname=sprintf('%s',vars{1});
 ncc=nc{vname};
 ssh=ncc(:);
 missval=ncc.FillValue_(:);
-scale_factor=1; %ncc.scale_factor(:);
-add_offset=0.;  %ncc.add_offset(:);
+scale_factor=1;
+add_offset=0;
 ssh(ssh>=missval)=NaN;
+%scale_factor=ncc.scale_factor(:);
+%add_offset=ncc.add_offset(:);
+%ssh(ssh<=missval)=NaN;
 ssh = ssh.*scale_factor + add_offset;
-close(nc)
+close(nc) % close raw_mercator_name
 %
 %
-% Get U
-%
 disp('    ...U')
 nc = netcdf(fname_u,'r');
 vname=sprintf('%s',vars{2});
 ncc=nc{vname};
 u=ncc(:);
 missval=ncc.FillValue_(:);
-scale_factor=1; %ncc.scale_factor(:);
-add_offset=0.;  %ncc.add_offset(:);
+scale_factor=1;
+add_offset=0;
 u(u>=missval)=NaN;
+%scale_factor=ncc.scale_factor(:);
+%add_offset=ncc.add_offset(:);
+%u(u<=missval)=NaN;
 u = u.*scale_factor + add_offset;
-close(nc)
+close(nc) % close raw_mercator_name
 %
 % Get V
 %
@@ -98,11 +99,14 @@ vname=sprintf('%s',vars{3});
 ncc=nc{vname};
 v=ncc(:);
 missval=ncc.FillValue_(:);
-scale_factor=1; %ncc.scale_factor(:);
-add_offset=0.;  %ncc.add_offset(:);
+scale_factor=1;
+add_offset=0;
 v(v>=missval)=NaN;
+%scale_factor=ncc.scale_factor(:);
+%add_offset=ncc.add_offset(:);
+%v(v<=missval)=NaN;
 v = v.*scale_factor + add_offset;
-close(nc)
+close(nc) % close raw_mercator_name
 %
 % Get TEMP
 %
@@ -112,12 +116,14 @@ vname=sprintf('%s',vars{4});
 ncc=nc{vname};
 temp=ncc(:);
 missval=ncc.FillValue_(:);
-scale_factor=1; %ncc.scale_factor(:);
-add_offset=0.;  %ncc.add_offset(:);
-ktoc=272.15;
+scale_factor=1;
+add_offset=0;
 temp(temp>=missval)=NaN;
-temp = temp.*scale_factor + add_offset; % - ktoc;
-close(nc)
+%scale_factor=ncc.scale_factor(:);
+%add_offset=ncc.add_offset(:);
+%temp(temp<=missval)=NaN;
+temp = temp.*scale_factor + add_offset;
+close(nc) % close raw_mercator_name
 %
 % Get SALT
 %
@@ -127,18 +133,18 @@ vname=sprintf('%s',vars{5});
 ncc=nc{vname};
 salt=ncc(:);
 missval=ncc.FillValue_(:);
-scale_factor=1; %ncc.scale_factor(:);
-add_offset=0.;  %ncc.add_offset(:);
+scale_factor=1;
+add_offset=0;
 salt(salt>=missval)=NaN;
+%scale_factor=ncc.scale_factor(:);
+%add_offset=ncc.add_offset(:);
+%salt(salt<=missval)=NaN;
 salt = salt.*scale_factor + add_offset;
-close(nc)
+close(nc) % close raw_mercator_name
 %
 % Create the Mercator file
 %
-rundate_str=date;
-rundate=datenum(rundate_str)-datenum(Yorig,1,1);
-
-create_OGCM([FRCST_dir,FRCST_prefix,num2str(rundate),'.cdf'],...
+create_OGCM([OGCM_dir,OGCM_prefix,thedatemonth,'.cdf'],...
              lon,lat,lon,lat,lon,lat,depth,time,...
              squeeze(temp),squeeze(salt),squeeze(u),...
              squeeze(v),squeeze(ssh),Yorig)
diff --git a/Preprocessing_tools/create_bryfile.m b/Preprocessing_tools/create_bryfile.m
index e2c3af8a..e36dde8a 100644
--- a/Preprocessing_tools/create_bryfile.m
+++ b/Preprocessing_tools/create_bryfile.m
@@ -163,47 +163,47 @@ nc{'hc'}.long_name = 'S-coordinate parameter, critical depth';
 nc{'hc'}.units = ncchar('meter');
 nc{'hc'}.units = 'meter';
 %
-nc{'sc_r'} = ncdouble('s_rho') ;
-nc{'sc_r'}.long_name = ncchar('S-coordinate at RHO-points');
-nc{'sc_r'}.long_name = 'S-coordinate at RHO-points';
-nc{'sc_r'}.valid_min = -1.;
-nc{'sc_r'}.valid_max = 0.;
-nc{'sc_r'}.positive = ncchar('up');
-nc{'sc_r'}.positive = 'up';
+nc{'s_rho'} = ncdouble('s_rho') ;
+nc{'s_rho'}.long_name = ncchar('S-coordinate at RHO-points');
+nc{'s_rho'}.long_name = 'S-coordinate at RHO-points';
+nc{'s_rho'}.valid_min = -1.;
+nc{'s_rho'}.valid_max = 0.;
+nc{'s_rho'}.positive = ncchar('up');
+nc{'s_rho'}.positive = 'up';
 if (vtransform == 1)
-    nc{'sc_r'}.standard_name = ncchar('ocean_s_coordinate_g1');
-    nc{'sc_r'}.standard_name = 'ocean_s_coordinate_g1';
+    nc{'s_rho'}.standard_name = ncchar('ocean_s_coordinate_g1');
+    nc{'s_rho'}.standard_name = 'ocean_s_coordinate_g1';
 elseif (vtransform == 2)
-    nc{'sc_r'}.standard_name = ncchar('ocean_s_coordinate_g2');
-    nc{'sc_r'}.standard_name = 'ocean_s_coordinate_g2';     
+    nc{'s_rho'}.standard_name = ncchar('ocean_s_coordinate_g2');
+    nc{'s_rho'}.standard_name = 'ocean_s_coordinate_g2';     
 end
-nc{'sc_r'}.formula_terms = ncchar('s: s_rho C: Cs_r eta: zeta depth: h depth_c: hc');
-nc{'sc_r'}.formula_terms = 's: s_rho C: Cs_r eta: zeta depth: h depth_c: hc';
-%
-nc{'sc_w'} = ncdouble('s_w') ;
-nc{'sc_w'}.long_name = ncchar('S-coordinate at W-points');
-nc{'sc_w'}.long_name = 'S-coordinate at W-points';
-nc{'sc_w'}.valid_min = -1. ;
-nc{'sc_w'}.valid_max = 0. ;
-nc{'sc_w'}.positive = ncchar('up');
-nc{'sc_w'}.positive = 'up';
+nc{'s_rho'}.formula_terms = ncchar('s: s_rho C: Cs_rho eta: zeta depth: h depth_c: hc');
+nc{'s_rho'}.formula_terms = 's: s_rho C: Cs_rho eta: zeta depth: h depth_c: hc';
+%
+nc{'s_w'} = ncdouble('s_w') ;
+nc{'s_w'}.long_name = ncchar('S-coordinate at W-points');
+nc{'s_w'}.long_name = 'S-coordinate at W-points';
+nc{'s_w'}.valid_min = -1. ;
+nc{'s_w'}.valid_max = 0. ;
+nc{'s_w'}.positive = ncchar('up');
+nc{'s_w'}.positive = 'up';
 if (vtransform == 1)
-    nc{'sc_w'}.standard_name = ncchar('ocean_s_coordinate_g1');
-    nc{'sc_w'}.standard_name = 'ocean_s_coordinate_g1';
+    nc{'s_w'}.standard_name = ncchar('ocean_s_coordinate_g1');
+    nc{'s_w'}.standard_name = 'ocean_s_coordinate_g1';
 elseif (vtransform == 2)
-    nc{'sc_w'}.standard_name = ncchar('ocean_s_coordinate_g2');
-    nc{'sc_w'}.standard_name = 'ocean_s_coordinate_g2';
+    nc{'s_w'}.standard_name = ncchar('ocean_s_coordinate_g2');
+    nc{'s_w'}.standard_name = 'ocean_s_coordinate_g2';
 end
-nc{'sc_w'}.formula_terms = ncchar('s: s_w C: Cs_w eta: zeta depth: h depth_c: hc');
-nc{'sc_w'}.formula_terms = 's: s_w C: Cs_w eta: zeta depth: h depth_c: hc';
+nc{'s_w'}.formula_terms = ncchar('s: s_w C: Cs_w eta: zeta depth: h depth_c: hc');
+nc{'s_w'}.formula_terms = 's: s_w C: Cs_w eta: zeta depth: h depth_c: hc';
 %
-nc{'Cs_r'} = ncdouble('s_rho') ;
-nc{'Cs_r'}.long_name = ncchar('S-coordinate stretching curves at RHO-points');
-nc{'Cs_r'}.long_name = 'S-coordinate stretching curves at RHO-points';
-nc{'Cs_r'}.units = ncchar('nondimensional');
-nc{'Cs_r'}.units = 'nondimensional';
-nc{'Cs_r'}.valid_min = -1;
-nc{'Cs_r'}.valid_max = 0;
+nc{'Cs_rho'} = ncdouble('s_rho') ;
+nc{'Cs_rho'}.long_name = ncchar('S-coordinate stretching curves at RHO-points');
+nc{'Cs_rho'}.long_name = 'S-coordinate stretching curves at RHO-points';
+nc{'Cs_rho'}.units = ncchar('nondimensional');
+nc{'Cs_rho'}.units = 'nondimensional';
+nc{'Cs_rho'}.valid_min = -1;
+nc{'Cs_rho'}.valid_max = 0;
 %
 nc{'Cs_w'} = ncdouble('s_w') ;
 nc{'Cs_w'}.long_name = ncchar('S-coordinate stretching curves at W-points');
@@ -582,7 +582,7 @@ nc.history = history;
 %
 % Compute S coordinates
 %
-[sc_r,Cs_r,sc_w,Cs_w] = scoordinate(theta_s,theta_b,N,hc,vtransform);
+[s_rho,Cs_rho,s_w,Cs_w] = scoordinate(theta_s,theta_b,N,hc,vtransform);
 %disp(['vtransform=',num2str(vtransform)])
 %
 % Write variables
@@ -596,9 +596,9 @@ nc{'theta_s'}(:) =  theta_s;
 nc{'theta_b'}(:) =  theta_b; 
 nc{'Tcline'}(:) =  hc; 
 nc{'hc'}(:) =  hc; 
-nc{'sc_r'}(:) = sc_r;
-nc{'sc_w'}(:) = sc_w;
-nc{'Cs_r'}(:) = Cs_r ; 
+nc{'s_rho'}(:) = s_rho;
+nc{'s_w'}(:) = s_w;
+nc{'Cs_rho'}(:) = Cs_rho ; 
 nc{'Cs_w'}(:) = Cs_w;
 nc{'tclm_time'}(:) =  time; 
 nc{'temp_time'}(:) =  time; 
diff --git a/Preprocessing_tools/create_climfile.m b/Preprocessing_tools/create_climfile.m
index f8bda105..7e2bee7a 100644
--- a/Preprocessing_tools/create_climfile.m
+++ b/Preprocessing_tools/create_climfile.m
@@ -124,9 +124,9 @@ nc{'theta_s'} = ncdouble('one') ;
 nc{'theta_b'} = ncdouble('one') ;
 nc{'Tcline'} = ncdouble('one') ;
 nc{'hc'} = ncdouble('one') ;
-nc{'sc_r'} = ncdouble('s_rho') ;
-nc{'sc_w'} = ncdouble('s_w') ;
-nc{'Cs_r'} = ncdouble('s_rho') ;
+nc{'s_rho'} = ncdouble('s_rho') ;
+nc{'s_w'} = ncdouble('s_w') ;
+nc{'Cs_rho'} = ncdouble('s_rho') ;
 nc{'Cs_w'} = ncdouble('s_w') ;
 nc{'tclm_time'} = ncdouble('tclm_time') ;
 nc{'temp_time'} = ncdouble('temp_time') ;
@@ -192,44 +192,44 @@ nc{'hc'}.long_name = 'S-coordinate parameter, critical depth';
 nc{'hc'}.units = ncchar('meter');
 nc{'hc'}.units = 'meter';
 %
-nc{'sc_r'}.long_name = ncchar('S-coordinate at RHO-points');
-nc{'sc_r'}.long_name = 'S-coordinate at RHO-points';
-nc{'sc_r'}.valid_min = -1.;
-nc{'sc_r'}.valid_max = 0.;
-nc{'sc_r'}.positive = ncchar('up');
-nc{'sc_r'}.positive = 'up';
+nc{'s_rho'}.long_name = ncchar('S-coordinate at RHO-points');
+nc{'s_rho'}.long_name = 'S-coordinate at RHO-points';
+nc{'s_rho'}.valid_min = -1.;
+nc{'s_rho'}.valid_max = 0.;
+nc{'s_rho'}.positive = ncchar('up');
+nc{'s_rho'}.positive = 'up';
 if (vtransform ==1)
-    nc{'sc_r'}.standard_name = ncchar('ocean_s_coordinate_g1');
-    nc{'sc_r'}.standard_name = 'ocean_s_coordinate_g1';
+    nc{'s_rho'}.standard_name = ncchar('ocean_s_coordinate_g1');
+    nc{'s_rho'}.standard_name = 'ocean_s_coordinate_g1';
 elseif (vtransform ==2)
-    nc{'sc_r'}.standard_name = ncchar('ocean_s_coordinate_g2');
-    nc{'sc_r'}.standard_name = 'ocean_s_coordinate_g2';     
+    nc{'s_rho'}.standard_name = ncchar('ocean_s_coordinate_g2');
+    nc{'s_rho'}.standard_name = 'ocean_s_coordinate_g2';     
 end
-nc{'sc_r'}.formula_terms = ncchar('s: s_rho C: Cs_r eta: zeta depth: h depth_c: hc');
-nc{'sc_r'}.formula_terms = 's: s_rho C: Cs_r eta: zeta depth: h depth_c: hc';
-%
-nc{'sc_w'}.long_name = ncchar('S-coordinate at W-points');
-nc{'sc_w'}.long_name = 'S-coordinate at W-points';
-nc{'sc_w'}.valid_min = -1. ;
-nc{'sc_w'}.valid_max = 0. ;
-nc{'sc_w'}.positive = ncchar('up');
-nc{'sc_w'}.positive = 'up';
+nc{'s_rho'}.formula_terms = ncchar('s: s_rho C: Cs_rho eta: zeta depth: h depth_c: hc');
+nc{'s_rho'}.formula_terms = 's: s_rho C: Cs_rho eta: zeta depth: h depth_c: hc';
+%
+nc{'s_w'}.long_name = ncchar('S-coordinate at W-points');
+nc{'s_w'}.long_name = 'S-coordinate at W-points';
+nc{'s_w'}.valid_min = -1. ;
+nc{'s_w'}.valid_max = 0. ;
+nc{'s_w'}.positive = ncchar('up');
+nc{'s_w'}.positive = 'up';
 if (vtransform == 1)
-    nc{'sc_w'}.standard_name = ncchar('ocean_s_coordinate_g1');
-    nc{'sc_w'}.standard_name = 'ocean_s_coordinate_g1';
+    nc{'s_w'}.standard_name = ncchar('ocean_s_coordinate_g1');
+    nc{'s_w'}.standard_name = 'ocean_s_coordinate_g1';
 elseif (vtransform == 2)
-    nc{'sc_w'}.standard_name = ncchar('ocean_s_coordinate_g2');
-    nc{'sc_w'}.standard_name = 'ocean_s_coordinate_g2';
+    nc{'s_w'}.standard_name = ncchar('ocean_s_coordinate_g2');
+    nc{'s_w'}.standard_name = 'ocean_s_coordinate_g2';
 end
-nc{'sc_w'}.formula_terms = ncchar('s: s_w C: Cs_w eta: zeta depth: h depth_c: hc');
-nc{'sc_w'}.formula_terms = 's: s_w C: Cs_w eta: zeta depth: h depth_c: hc';
+nc{'s_w'}.formula_terms = ncchar('s: s_w C: Cs_w eta: zeta depth: h depth_c: hc');
+nc{'s_w'}.formula_terms = 's: s_w C: Cs_w eta: zeta depth: h depth_c: hc';
 %
-nc{'Cs_r'}.long_name = ncchar('S-coordinate stretching curves at RHO-points');
-nc{'Cs_r'}.long_name = 'S-coordinate stretching curves at RHO-points';
-nc{'Cs_r'}.units = ncchar('nondimensional');
-nc{'Cs_r'}.units = 'nondimensional';
-nc{'Cs_r'}.valid_min = -1;
-nc{'Cs_r'}.valid_max = 0;
+nc{'Cs_rho'}.long_name = ncchar('S-coordinate stretching curves at RHO-points');
+nc{'Cs_rho'}.long_name = 'S-coordinate stretching curves at RHO-points';
+nc{'Cs_rho'}.units = ncchar('nondimensional');
+nc{'Cs_rho'}.units = 'nondimensional';
+nc{'Cs_rho'}.valid_min = -1;
+nc{'Cs_rho'}.valid_max = 0;
 %
 nc{'Cs_w'}.long_name = ncchar('S-coordinate stretching curves at W-points');
 nc{'Cs_w'}.long_name = 'S-coordinate stretching curves at W-points';
@@ -411,17 +411,17 @@ nc.history = history;
 %
 % Set S-Curves in domain [-1 < sc < 0] at vertical W- and RHO-points.
 %
-[sc_r,Cs_r,sc_w,Cs_w] = scoordinate(theta_s,theta_b,N,hc,vtransform);
+[s_rho,Cs_rho,s_w,Cs_w] = scoordinate(theta_s,theta_b,N,hc,vtransform);
 %disp(['vtransform=',num2str(vtransform)])
 
 % cff1=1./sinh(theta_s);
 % cff2=0.5/tanh(0.5*theta_s);
-% sc_r=((1:N)-N-0.5)/N;
-% Cs_r=(1.-theta_b)*cff1*sinh(theta_s*sc_r)...
-%     +theta_b*(cff2*tanh(theta_s*(sc_r+0.5))-0.5);
-% sc_w=((0:N)-N)/N;
-% Cs_w=(1.-theta_b)*cff1*sinh(theta_s*sc_w)...
-%     +theta_b*(cff2*tanh(theta_s*(sc_w+0.5))-0.5);
+% s_rho=((1:N)-N-0.5)/N;
+% Cs_rho=(1.-theta_b)*cff1*sinh(theta_s*s_rho)...
+%     +theta_b*(cff2*tanh(theta_s*(s_rho+0.5))-0.5);
+% s_w=((0:N)-N)/N;
+% Cs_w=(1.-theta_b)*cff1*sinh(theta_s*s_w)...
+%     +theta_b*(cff2*tanh(theta_s*(s_w+0.5))-0.5);
 
 
 %
@@ -436,9 +436,9 @@ nc{'theta_s'}(:) =  theta_s;
 nc{'theta_b'}(:) =  theta_b; 
 nc{'Tcline'}(:) =  hc; 
 nc{'hc'}(:) =  hc; 
-nc{'sc_r'}(:) = sc_r;
-nc{'sc_w'}(:) = sc_w;
-nc{'Cs_r'}(:) =  Cs_r; 
+nc{'s_rho'}(:) = s_rho;
+nc{'s_w'}(:) = s_w;
+nc{'Cs_rho'}(:) =  Cs_rho; 
 nc{'Cs_w'}(:) = Cs_w;
 nc{'tclm_time'}(:) =  time; 
 nc{'temp_time'}(:) =  time; 
diff --git a/Preprocessing_tools/create_inifile.m b/Preprocessing_tools/create_inifile.m
index 8a2e8332..acdc9abc 100644
--- a/Preprocessing_tools/create_inifile.m
+++ b/Preprocessing_tools/create_inifile.m
@@ -109,8 +109,8 @@ nc{'theta_s'} = ncdouble('one') ;
 nc{'theta_b'} = ncdouble('one') ;
 nc{'Tcline'} = ncdouble('one') ;
 nc{'hc'} = ncdouble('one') ;
-nc{'sc_r'} = ncdouble('s_rho') ;
-nc{'Cs_r'} = ncdouble('s_rho') ;
+nc{'s_rho'} = ncdouble('s_rho') ;
+nc{'Cs_rho'} = ncdouble('s_rho') ;
 nc{'ocean_time'} = ncdouble('time') ;
 nc{'scrum_time'} = ncdouble('time') ;
 nc{'u'} = ncdouble('time','s_rho','eta_u','xi_u') ;
@@ -159,19 +159,19 @@ nc{'hc'}.long_name = 'S-coordinate parameter, critical depth';
 nc{'hc'}.units = ncchar('meter');
 nc{'hc'}.units = 'meter';
 %
-nc{'sc_r'}.long_name = ncchar('S-coordinate at RHO-points');
-nc{'sc_r'}.long_name = 'S-coordinate at RHO-points';
-nc{'sc_r'}.units = ncchar('nondimensional');
-nc{'sc_r'}.units = 'nondimensional';
-nc{'sc_r'}.valid_min = -1;
-nc{'sc_r'}.valid_max = 0;
+nc{'s_rho'}.long_name = ncchar('S-coordinate at RHO-points');
+nc{'s_rho'}.long_name = 'S-coordinate at RHO-points';
+nc{'s_rho'}.units = ncchar('nondimensional');
+nc{'s_rho'}.units = 'nondimensional';
+nc{'s_rho'}.valid_min = -1;
+nc{'s_rho'}.valid_max = 0;
 %
-nc{'Cs_r'}.long_name = ncchar('S-coordinate stretching curves at RHO-points');
-nc{'Cs_r'}.long_name = 'S-coordinate stretching curves at RHO-points';
-nc{'Cs_r'}.units = ncchar('nondimensional');
-nc{'Cs_r'}.units = 'nondimensional';
-nc{'Cs_r'}.valid_min = -1;
-nc{'Cs_r'}.valid_max = 0;
+nc{'Cs_rho'}.long_name = ncchar('S-coordinate stretching curves at RHO-points');
+nc{'Cs_rho'}.long_name = 'S-coordinate stretching curves at RHO-points';
+nc{'Cs_rho'}.units = ncchar('nondimensional');
+nc{'Cs_rho'}.units = 'nondimensional';
+nc{'Cs_rho'}.valid_min = -1;
+nc{'Cs_rho'}.valid_max = 0;
 %
 nc{'ocean_time'}.long_name = ncchar('time since initialization');
 nc{'ocean_time'}.long_name = 'time since initialization';
@@ -239,7 +239,7 @@ nc.history = history;
 %
 % Compute S coordinates
 %
-[sc_r,Cs_r,sc_w,Cs_w] = scoordinate(theta_s,theta_b,N,hc,vtransform);
+[s_rho,Cs_rho,s_w,Cs_w] = scoordinate(theta_s,theta_b,N,hc,vtransform);
 %disp(['vtransform=',num2str(vtransform)])
 %
 % Write variables
@@ -253,8 +253,8 @@ nc{'theta_s'}(:) =  theta_s;
 nc{'theta_b'}(:) =  theta_b; 
 nc{'Tcline'}(:) =  hc; 
 nc{'hc'}(:) =  hc; 
-nc{'sc_r'}(:) =  sc_r; 
-nc{'Cs_r'}(:) =  Cs_r; 
+nc{'s_rho'}(:) =  s_rho; 
+nc{'Cs_rho'}(:) =  Cs_rho; 
 nc{'scrum_time'}(1) =  time*24*3600; 
 nc{'ocean_time'}(1) =  time*24*3600; 
 nc{'u'}(:) =  0; 
diff --git a/Preprocessing_tools/geost_currents.m b/Preprocessing_tools/geost_currents.m
index 73026f9b..2363074b 100644
--- a/Preprocessing_tools/geost_currents.m
+++ b/Preprocessing_tools/geost_currents.m
@@ -162,8 +162,8 @@ for l=1:tlen
 %
 % Ekman transport
 %
-  if ~isempty(frcname)
-%    disp('Add the Ekman transport')
+  if exist(frcname)
+    disp('Add the Ekman transport')
     sustr(:,:)=nfrc{'sustr'}(l,:,:);
     svstr(:,:)=nfrc{'svstr'}(l,:,:);
 %    rhoA=1.3; Cd=1.4e-3;
diff --git a/Preprocessing_tools/geost_currents_bry.m b/Preprocessing_tools/geost_currents_bry.m
index cc0f2e0a..eaad7517 100644
--- a/Preprocessing_tools/geost_currents_bry.m
+++ b/Preprocessing_tools/geost_currents_bry.m
@@ -193,8 +193,8 @@ for l=1:tlen
 %
 % Ekman transport
 %
-  if ~isempty(frcname)
-%    disp('Add the Ekman transport')
+   if exist(frcname)
+      disp('Add the Ekman transport')
     if obcndx==1
       tmp=squeeze(nfrc{'sustr'}(l,1,:));
       sustr=0*h; 
diff --git a/Preprocessing_tools/make_config.m b/Preprocessing_tools/make_config.m
index d6e53acf..94b89ab9 100644
--- a/Preprocessing_tools/make_config.m
+++ b/Preprocessing_tools/make_config.m
@@ -47,5 +47,5 @@ make_clim
 % Interannual forcing
 % 
 %make_NCEP
-%make_OGCM
+%make_OGCM_mercator (SODA)
 return
diff --git a/UTILITIES/export_fig/.ignore/ghostscript.txt b/UTILITIES/export_fig/.ignore/ghostscript.txt
new file mode 100644
index 00000000..cb507525
--- /dev/null
+++ b/UTILITIES/export_fig/.ignore/ghostscript.txt
@@ -0,0 +1 @@
+gs
\ No newline at end of file
diff --git a/UTILITIES/export_fig/.ignore/gs_font_path.txt b/UTILITIES/export_fig/.ignore/gs_font_path.txt
new file mode 100644
index 00000000..cf71a1b3
--- /dev/null
+++ b/UTILITIES/export_fig/.ignore/gs_font_path.txt
@@ -0,0 +1 @@
+UTILITIES/export_fig/.ignore/ghostscript.txt /usr/share/fonts:/usr/local/share/fonts:/usr/share/fonts/X11:/usr/local/share/fonts/X11:/usr/share/fonts/truetype:/usr/local/share/fonts/truetype
\ No newline at end of file
diff --git a/crocotools_param.m b/crocotools_param.m
index 3cd89505..7f59da61 100644
--- a/crocotools_param.m
+++ b/crocotools_param.m
@@ -5,7 +5,7 @@
 %
 %                  This file is used by make_grid.m, make_forcing.m, 
 %                  make_clim.m, make_biol.m, make_bry.m, make_tides.m,
-%                  make_NCEP.m, make_OGCM.m, make_...
+%                  make_NCEP.m, make_OGCM_*.m, make_...
 % 
 %  Further Information:  
 %  http://www.croco-ocean.org
@@ -92,7 +92,7 @@ hmax_coast = 500;
 % Maximum depth [m] (cut the topography to prevent
 % extrapolations below WOA data)
 %
-hmax = 5000;
+hmax = 6000;
 %
 % Slope parameter (r=grad(h)/h) maximum value for topography smoothing
 %
@@ -150,7 +150,7 @@ CROCO_files_dir=[RUN_dir,'CROCO_FILES/'];
 %
 %  Global data directory (etopo, coads, datasets download from ftp, etc..)
 %
-DATADIR='../../croco_tools/'; 
+DATADIR='../../croco_tools/';
 %
 %  Forcing data directory (ncep, quikscat, datasets download with opendap, etc..)
 %
@@ -221,7 +221,7 @@ pathfinder_sst_name=[DATADIR,...
 %
 % 4 - Open boundaries and initial conditions parameters
 %     used by make_clim.m, make_biol.m, make_bry.m
-%             make_OGCM.m and make_OGCM_frcst.m
+%             make_OGCM_*.m and make_OGCM_frcst.m
 %
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
@@ -235,7 +235,7 @@ zref = -1000;
 %
 %  initial/boundary data options (1 = process)
 %  (used in make_clim, make_biol, make_bry,
-%   make_OGCM.m and make_OGCM_frcst.m)
+%   make_OGCM_*.m and make_OGCM_*frcst.m)
 %
 makeini    = 1;   % initial data
 makeclim   = 1;   % climatological data (for boundaries and nudging layers)
@@ -322,7 +322,7 @@ Z0   =  1;       % Mean depth of tide gauge
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
 % 6 - Reference date and simulation times
-%     (used for make_tides, make_CFSR (or make_NCEP), make_OGCM)
+%     (used for make_tides, make_CFSR (or make_NCEP), make_OGCM_*)
 %
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
@@ -353,7 +353,7 @@ Download_data = 1;   % Get data from OPENDAP sites
 level         = 0;   % AGRIF level; 0 = parent grid
 %					  
 NCEP_version  = 3;   % NCEP version: 
-                     % [ CFSR up-to-date product are recommandated ]
+                     % [ CFSR up-to-date product are recommended ]
                      %  1: NCEP/NCAR Reanalysis, 1/1/1948 - present
                      %  2: NCEP-DOE Reanalysis, 1/1/1979 - present
                      %  3: CFSR (Climate Forecast System Reanalysis), 
@@ -401,9 +401,9 @@ QSCAT_clim_file  = [DATADIR,'QuikSCAT_clim/',...              % QSCAT climatolog
 %
 Reformat_ECMWF = 1;
 ECMWF_dir    = [FORC_DATA_DIR,'ECMWF_',CROCO_config,'/'];  % ERA-I data dir. [croco format]
-My_ECMWF_dir = [FORC_DATA_DIR,'ERAI/'];                  % ERA-I native data downloaded 
-                                                       % with python script
-itolap_ecmwf = 3;                                      % 3 records for daily  ECMWF
+My_ECMWF_dir = [FORC_DATA_DIR,'ERAI/'];                    % ERA-I native data downloaded 
+                                                           % with python script
+itolap_ecmwf = 3;                                          % 3 records for daily  ECMWF
 %
 %--------------------------------------------------
 %  Options for make_ERA5 
@@ -417,10 +417,10 @@ itolap_era5 = 2;                                               % 2 records = 2 h
 %
 %
 %--------------------------------------------
-% Options for make_OGCM or make_OGCM_mercator
+% Options for make_OGCM_SODA or make_OGCM_mercator
 %--------------------------------------------
 %
-OGCM        = 'SODA';        % Select OGCM: SODA, ECCO, mercator
+OGCM        = 'SODA';        % Select OGCM: SODA or mercator
 %
 OGCM_dir    = [FORC_DATA_DIR,OGCM,'_',CROCO_config,'/'];  % OGCM data dir. [croco format]
 %
@@ -429,21 +429,52 @@ clm_prefix  = [CROCO_files_dir,'croco_clm_',OGCM,'_'];    % generic climatology
 ini_prefix  = [CROCO_files_dir,'croco_ini_',OGCM,'_'];    % generic initial file name
 OGCM_prefix = [OGCM,'_'];                                 % generic OGCM file name 
 
+
+mercator_type=1;     % 1 -->  1/12 deg Mercator global reanalysis
+                     % 2 -->  1/12 deg Mercator global analysis
+                     % 3 -->  1/12 deg Mercator global forecast (See Section 8.)
+                     % 4 -->  1/24 deg Mercator Mediterranean analysis/forecast (See Section 8.)
+                     % 5 -->      the same than 4 but with detiding postprocessing on current and ssh
+
+%  =============
+%  To download CMEMS data: set login/password (http://marine.copernicus.eu) 
+%  and path to copernicusmarine executable
+%  see Oforc_OGCM/Copernicus_Marine_Toolbox_installation.md
+%
+%  Various sets of data are proposed in the Copernicus web site
+%
 if strcmp(OGCM,'mercator')
+ %
+ pathCMC='/path/to/home/copernicusmarine'; % copernicusmarine client
+ %
+ user     = 'XXXX';
+ password = 'XXXX';
+ %
+ if mercator_type==1
     % ========================
-    % For GLORYS 12 reanalysis extraction + download using python motuclient
+    % For GLORYS 12 reanalysis extraction
     % ========================
-    raw_mercator_name = 'mercator';
-    kdata='MONTHLY' ; % or DAILY 
-    motu_url_reana='http://my.cmems-du.eu/motu-web/Motu';
-    service_id_reana='GLOBAL_MULTIYEAR_PHY_001_030-TDS';
+    kdata='MONTHLY' ; % DAILY or MONTHLY 
     if strcmp(kdata,'DAILY')
-      product_id_reana='cmems_mod_glo_phy_my_0.083_P1D-m';
+       product_id='cmems_mod_glo_phy_my_0.083_P1D-m';
     elseif strcmp(kdata,'MONTHLY')
-      product_id_reana='cmems_mod_glo_phy_my_0.083_P1M-m'
+       product_id='cmems_mod_glo_phy_my_0.083_P1M-m';
     else
-       disp('Please specify what reanalysis frequency you want (DAILY or MONTHLY)')
+       disp('Please specify what kind of data you want (DAILY or MONTHLY)')
     end
+ %
+ elseif mercator_type==2
+    % ========================
+    % 2 -> For analysis PSY4
+    % ========================
+    product_id={'cmems_mod_glo_phy_anfc_0.083deg_P1D-m'  ...
+                'cmems_mod_glo_phy-cur_anfc_0.083deg_P1D-m', ...
+                'cmems_mod_glo_phy-thetao_anfc_0.083deg_P1D-m', ...
+                'cmems_mod_glo_phy-so_anfc_0.083deg_P1D-m'};
+ %	
+ else
+ end
+%
 end
 %
 % Number of OGCM bottom levels to remove 
@@ -451,14 +482,14 @@ end
 %
 rmdepth     = 2;
 %
-% Overlap parameters : nb of records around each monthly sequence
+% Overlap parameters : nb of records around each sequence
 %
 itolap_a    = 1;   % before
 itolap_p    = 1;   % after
-                   %
-%--------------------------
-% Options for make_bry_WKB 
-%--------------------------
+%
+%----------------------------------------------------
+% Options for make_bry_WKB_ECMWF or make_bry_WKB_ERA5 
+%----------------------------------------------------
 %
 wkb_prefix=[CROCO_files_dir,'croco_wkb'];
 wkb_obc= [1 1 1 1];
@@ -468,25 +499,21 @@ wkb_obc= [1 1 1 1];
 % 8 - Parameters for the forecast system
 %
 %     --> select OGCM name above (mercator ...)
+%     --> select Aforc name (GFS)
 %     --> don't forget to define in cppdefs.h:
-%                    - ROBUST_DIAG
-%                    - CLIMATOLOGY
-%                    - BULK_FLUX
-%                    - TIDES if you choose so, but without TIDERAMP
+%             - ROBUST_DIAG
+%             - CLIMATOLOGY
+%             - BULK_FLUX
+%             - TIDES if you choose so, but without TIDERAMP
 %
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %
 FRCST_dir = [FORC_DATA_DIR,'Forecast/'];  % path to local OGCM data directory
 %
-% Number of hindcast/forecast days
+% Number of hindcast / forecast days
 %
-if strcmp(OGCM,'ECCO')
-  hdays=1;
-  fdays=6;
-elseif strcmp(OGCM,'mercator')
-  hdays=1;
-  fdays=3;
-end
+hdays=1;
+fdays=3;
 %
 % Local time= UTC + timezone
 %
@@ -496,36 +523,38 @@ timezone = +2;
 %
 add_tides_fcst = 1;       % 1: add tides
 %
-%  MERCATOR case: 
+%  MERCATOR cases (See Section 7): 
 %  =============
-%  To download CMEMS data: set login/password (http://marine.copernicus.eu)
-%  and path to croco's motuclient python package;
-%  or set pathMotu='' (empty) to use your own motuclient
-%
-%  Various sets of data are proposed in the Copernicus web site 
 %
 if strcmp(OGCM,'mercator')
-  user     = 'XXX';
-  password = 'XXX';
-
-  pathMotu =[CROCOTOOLS_dir,'Forecast_tools/'];
-
-  mercator_type=1;   % 1 -->  1/12 deg Mercator forecast
-                     % 2 -->  high-resolution regional grids
-  if mercator_type==1
-      motu_url_fcst='http://nrt.cmems-du.eu/motu-web/Motu';
-      service_id_fcst='GLOBAL_ANALYSISFORECAST_PHY_001_024-TDS';
-      product_id_fcst={'cmems_mod_glo_phy_anfc_0.083deg_P1D-m', ...
-                       'cmems_mod_glo_phy-cur_anfc_0.083deg_P1D-m', ...
-                       'cmems_mod_glo_phy-thetao_anfc_0.083deg_P1D-m', ... 
-                       'cmems_mod_glo_phy-so_anfc_0.083deg_P1D-m'};
-  elseif mercator_type==2
-      motu_url_fcst='http://nrt.cmems-du.eu/motu-web/Motu';
-      service_id_fcst='MEDSEA_ANALYSISFORECAST_PHY_006_013-TDS';
-      product_id_fcst={'cmems_mod_med_phy-ssh_anfc_4.2km_P1D-m', ...
-                       'cmems_mod_med_phy-cur_anfc_4.2km_P1D-m', ...
-                       'cmems_mod_med_phy-tem_anfc_4.2km_P1D-m', ... 
-                       'cmems_mod_med_phy-sal_anfc_4.2km_P1D-m'};
+  if mercator_type==3
+    % ========================
+    % 3 -> For Global Forecast PSY4
+    % ========================
+    product_id={'cmems_mod_glo_phy_anfc_0.083deg_P1D-m'  ...
+                'cmems_mod_glo_phy-cur_anfc_0.083deg_P1D-m', ...
+                'cmems_mod_glo_phy-thetao_anfc_0.083deg_P1D-m', ...
+                'cmems_mod_glo_phy-so_anfc_0.083deg_P1D-m'};
+  %
+  elseif mercator_type==4
+    % ========================
+    % 4 -> For Mediterannean Forecast PSY4 4.2km
+    % ========================
+    product_id={'cmems_mod_med_phy-ssh_anfc_4.2km_P1D-m', ...
+                'cmems_mod_med_phy-cur_anfc_4.2km_P1D-m', ...
+                'cmems_mod_med_phy-tem_anfc_4.2km_P1D-m', ... 
+                'cmems_mod_med_phy-sal_anfc_4.2km_P1D-m'};
+  %
+  elseif mercator_type==5
+    % ========================
+    % 5 -> For Mediterannean Forecast PSY4 4.2km (ssh detided)
+    % ========================
+    product_id={'cmems_mod_med_phy-ssh_anfc_detided_4.2km_P1D-m', ...
+                'cmems_mod_med_phy-cur_anfc_4.2km_P1D-m', ...
+                'cmems_mod_med_phy-tem_anfc_4.2km_P1D-m', ... 
+                'cmems_mod_med_phy-sal_anfc_4.2km_P1D-m'};
+  %
+  else           
   end
 end
 %
diff --git a/start.m b/start.m
index cb94c5cb..52509619 100644
--- a/start.m
+++ b/start.m
@@ -41,6 +41,7 @@ myutilpath=[tools_path,'UTILITIES/'];
 addpath([myutilpath,'m_map1.4h'])
 addpath([myutilpath,'air_sea'])
 addpath([myutilpath,'mask'])
+addpath([myutilpath,'export_fig'])
 %
 % CROCOTOOLS directories
 %
-- 
GitLab