GENERATION DU MAILLAGE ET DE LA BATHYMETRIE

La génération de la grille se fait avec le logiciel BMGTOOLS

http://wwz.ifremer.fr/mars3d/Les-outils/BathyMeshGridTOOLS

Il est composé de deux modules java distincts :

  • CreateBMG pour la construction du maillage
  • CheckBMG pour la retouche de la bathymétrie

Construction d’un maillage avec le module CreateBMG

En entrée du module CreateBMG il faut un fichier de traît de côte au format compatible (extension .line). Un exemple est fourni à cet endroit

/home11/caparmor/mars/BMGTOOLS_Data/france.line

Pour lancer le logciel se placer dans le répertoire create_bmg-5.0.0/ via un terminal et lancer l’exécutable java

./CreateBMG.sh

Etapes de création du maillage

  1. Définir un nouvea projet (Fichier => nouveau projet)
  2. Choisir un nom de projet et un acronyme pour le modèle
  3. Chosir son traît de côte (france.line)
  4. Rester en mode de création de grilles en Coordonnées géographiques(degrés)
_images/bmg1.png
  1. Construire une nouvelle grille à l’aide du bouton création de nouvelle grille situé dans la barre d’outil au dessus de la carte

La grille peut être définie par son nombre de mailles (selon i et j) ou par la taille des mailles

Note

Pour une taille de maille de grille en mètre choisir dans le menu déroulant Grille définie par choisir Taille de maille curviligne(mètres)

_images/bmg2.png
  1. La grille peut ensuite être modifiée de deux manières :
  • En étirant interactivement les bords de la grille à l’aide du bouton Modifier la grille dans la barre d’outil. .. note :: attention au mode de modification qui permet de conserver soit la taille de la maille (donc augmenter ou diminuer le nombre de mailles) soit conserver le nombre de mailles. Dans ce cas c’est la taille des mailles qui est ajustée.
  • En modifiant dans la fenêtre de gauche les caractéristiques de la grille :
    1. Sélectionner sa grille parmi les couches (fenêtre en haut à gauche)
    2. Choisir dans le menu déroulant du haut Dimensions curvilignes
    3. Modifier les limites Est/Ouest/Nord/Sud à la main si besoin
    4. Choisir le mode de modification Conserver le nombre de mailles ou Conserver la taille des mailles
    5. Cliquer sur le bouton Redimensionner
    6. Modifier si besoin la taille des mailles
    7. Cliquer sur le bouton Redimensionner
_images/bmg3.png
  1. Enregistrer le projet

Après l’enregistrement un répertoire avec le nom du projet est crée et contient les fichiers suivants :

  • head.TEST : fichier head décrivant l’emprise et la résolution des grilles et qui sera lu par le modèle MARS
  • TEST.glo : fichier utilisé par BMGTOOLS pour retrouver la projection, l’emprise et la taille des grilles
  • RootGrid_Test.nc : fichier de grille au format Netcdf contenant les variables H0,HX,HY vides ie avant interpolation de la bathymétrie

See also

Pour plus d’info sur le module CreateBMG voir la documentation complete dans le répertoire create_bmg-5.0.0/documentation/IFR-BMGV5-D1B-Create-User-Manual-V5.0.0.pdf

Note

Exemple : voir exercice de formation Formation MARS3D

Interpolation de sondes bathymétriques sur la grille

L’étape suivant est de remplir le fichier Netcdf en interpolant des données de bathymétrie sur la grille du modèle. Ces interpolations sont gérées à l’aide de programmes en fortran et sont pilotés par un fichier namelist en entrée.

Plusieurs types d’interpolations existent :

  1. Le programme communément appelé INTERP_BATHY.exe qui permet de produire deux types d’interpolation :
    • Interpolation d’un semi de point (lon,lat,z) vers la grille. C’est une interpolation de type nuage de points vers grille structurée. Dans la namelist ce module est appelé interp_sounding2grid. Il est utilisé typiquement à partir de sondes bathymétriques ou de relevés LIDAR qui ne sont pas déjà grillés.
    • Interpolation grille à grille à partir d’un MNT (modèle numérique de terrain) vers la grille. Comme son nom l’indique, cette interpolation est utilisée quand le jeu de données est déjà grillé (ETOPO,GEBCO,MNT IFREMER ou bathy déjà existante)
  2. Un autre programme d’interpolation de sondes sur la grille existe. C’est un programme fortran mais qui utilise un algorithme de Krigeage et la notion de qualité de jeu de sondes. Il est nommé interpolation_sondes.exe et utilise une namelist différente du programme vu en 1.

Utilisation de INTERP_BATHY.exe

En entrée

/home1/caparmor/mcaillau/TOOLS/libs/marmo/Bathymetry/interp_bathy/trunk/INTERP_BATHY.exe
/home1/caparmor/mcaillau/TOOLS/libs/marmo/Bathymetry/interp_bathy/trunk/namelist

paramétrisation de la namelist

  1. Choix du mode d’interpolation (sondes vers grille ou grille à grille)

  2. Selon le choix remplir la section de la namelist correspondant et laisser les autres valeurs par défaut :

    • interp_soundings2grid

      • data_catalog : catalogue de sondes contenant la liste des fichiers de sondes au format sdg. Exemple

        cat sondes.cat
        /home1/caparmor/spetton/MARS/FORMATION/BATHY/SONDES/MNT_100m_SHOM_IFREMER_ZH.sdg
        /home1/caparmor/spetton/MARS/FORMATION/BATHY/SONDES/MNT_LIDAR_10m_WGS84_GEO_ZeroHydro.sdg
        
      • grid_file : fichier Netcdf crée par le module CreateBMG (cf Construction d’un maillage avec le module CreateBMG)

      • coastfile : fichier de trait de côte au format exemple

        /home11/caparmor/mars/BMGTOOLS_Data/france.line
        
      • nivmoypath : Fichier de niveau moyens au format ASCII

        /home13/dedale/BATHY/NiveauxMoyens/niveaux_moyens_CST_FRANCE_24062009.nmoy
        
    • interp_grid2grid

      • data_catalog : liste de MNT au format netcdf. Exemple

        cat mnt.cat
        /home13/dedale/BATHY/MNT/IFR_MBAN_MANCHEATL_100_02_R/BN-depth2010.mnt.bmg.nc
        /home13/dedale/BATHY/MNT/IFR_MBAN_MANCHEATL_100_02_R/BS-depth2010.mnt.etendu_nord_sud.bmg.nc
        
      • grid_file : cf interp_soundings2grid

      • nivmoypath : cf interp_soundings2grid

Warning

L’ordre des fichiers dans le catalogue de MNT est très important !!! Il faut mettre en premier les MNT à la résolution la plus haute

Warning

Pour le trait de côte dans le partie interp_grid2grid c’est celui de la section interp_soundings2grid qui est utilisé

Lancement de l’exécutable

L’exécutable lit en entrée le fichier nommé namelist

./INTERP_BATHY.exe

Utilisation du programme de Krigeage

En entrée

/home1/caparmor/mcaillau/TOOLS/BATHY/INTERP_BMG/sound/namelist
/home1/caparmor/mcaillau/TOOLS/BATHY/INTERP_BMG/sound/interpolation_sondes.exe

Préparation du jeu de sondes avec indice de qualité

Les fichiers de sondes bathymétriques doivent posséder un indice de qualité pour chaque sonde (1 pour le meilleur et des indices croissants plus la qualité diminue)

  • Fichier de qualité moyenne

    head /home1/caparmor/spetton/MARS/FORMATION/BATHY/SONDES/MNT_100m_SHOM_IFREMER_ZH.sdg
    -4.841002476  -4.190371783  48.050929917  48.566770237
    WGS84      zero_hydro           124496
    -4.841002476  48.050929917   4.310000000         5
    -4.839711542  48.050929917   5.720000000         5
    -4.838420608  48.050929917   5.740000000         5
    
  • Fichier de meilleure qualité (MNT LIDAR plus fine résolution)

    head /home1/caparmor/spetton/MARS/FORMATION/BATHY/SONDES/MNT_LIDAR_10m_WGS84_GEO_ZeroHydro.sdg
    -5.067547448  -4.148677333  47.980455915  48.471360732
     WGS84      zero_hydro          1482809
     -5.055748700  48.057680463  23.438653959         1
     -5.055735029  48.057590943  22.223798337         1
     -5.055601496  48.057600107  21.683784277         1
     -5.055467963  48.057609272  21.858770217         1
    

Regrouper ces fichiers dans un catalogue (peut importe l’ordre). Le programme va lire chaque sonde et son indice de qualité et définir par sous zones du domaine quel est le meilleur jeu de sondes disponible.

Paramétrisation de la namelist

Note

Dans l’algorithme de Krigeage on défini une fonction de répartition des points de sondes dans l’espace via leur covariance

Semi variogramme exponentiel : f( h ) = C( 1 - exp( -h/A ) )

Semi variogramme linéaire : f( h ) = C.h/A.

Editer la partie interp_soundings2grid :

  • catalogPath : chemin vers le catalogue de sondes

  • nivmoypath : chemin vers le niveau moyen

    /home13/dedale/BATHY/NiveauxMoyens/niveaux_moyens_CST_FRANCE_24062009.nmoy
    
  • linecount : nombre de lignes de la grille de prétraitement (=-1 pour calcul auto)

  • columnCount : nombre de colonnes de la grille de prétraitement (=-1 pour calcul auto)

  • gridFile : Fichier Netcdf crée par BMGTOOLS

  • coastlineFile : même format et fichier que pour INTERP_BATHY

  • semiVariogrammType : type de semi variogramme pour l’algo de Krigeage : 0=exponentiel ; 1=lineaire

  • semiVariogrammFactorA : facteur A du semi variogramme (defaut=1.5)

  • semiVariogrammFactorC : facteur C du semi variogramme (defaut=10.5)

  • cellNumberDistance : Distance max en nombre de mailles de la grille de prétraitement autour du point où l’on veut faire l’interpolation pour la recherche de sondes (defaut=4)

  • neighborByPart : L’algo de Krigeage divise l’espace de recherche de sondes autour du pt d’intérêt en 4 parties. Dans chaque partie l’algo recherche la sonde la plus proche dans la grille de prétraitement. Cette variable définie le nombre maximum de sondes qui sont cherchées dans chaque partie. (defaut=3)

  • seaLongitude : longitude d’un point situé en mer (H0>0.). Dans l’algorithme un premier traitement est effectué pour savoir quelles mailles sont situées à terre ou en mer. Pour cela l’algo a besoin de partir d’une maille en mer. Si on met une longitude absurde (ex: -400), l’algo considère la première maille de la grille (i=0,j=0) en mer (sans vérifier). En précisant une longitude (pt le proche) d’un point en mer on s’assure du bon fonctionnement de l’algo.

  • sealatitude : latitude du point en mer (si latitude absurde on considère la première maille du modèle)

  • tidalfile : fichier de marée au format Netcdf qui utilise le niveau moyen pour définir le trait de côte. ce fichier n’est pas indispensable mais sert à définir mieux le trait de côte comme la côte z=-2*niv_moy

Lancement de l’exécutable

L’exécutable lit en entrée le fichier nommé namelist

./interpolation_sondes.exe

Retouche d’une bathymétrie avec le programme CheckBMG

Le module CheckBMG permet de retoucher un maillage bathymétrique une fois l’interpolation effectuée : * Soit pour retoucher les valeurs bathymétriques le long du traît de côte * Rajouter une digue ou autre ouvrage en définissant comme valeur à terre certaines mailles * Reboucher certains lacs crées (par erreur d’interpolation) à terre * Creuser des canaux pour mieux prendre en compte le débit des rivières

En entrée du module il faut :

  • un fichier de traît de côte au format compatible line
  • un fichier de grille au format Netcdf crée par CreateBMG

Pour lancer le logciel se placer dans le répertoire check_bmg-5.0.0/ via un terminal et lancer l’exécutable java

./CheckBMG.sh
  1. Après le lancement cliquer sur le bouton ouvrir un fichier de grille en haut à gauche de l’interface
  2. Une fenêtre apparait avec les choix suivants :
  • Fichier de grille : allez chercher le fichier Netcdf crée par le module CreateBMG
  • Fichier de traits de côte : aller chercher le fichier france.line (ou autre)
  • Fichier de sondes : optionnel fichier de sondes (au format sdg) pour affichier des sondes par dessus la grille pour aide à la modification et pour vérifier le résultats de l’interpolation.
  • Fichier rivière : NE MARCHE PAS
_images/bmg4.png
  1. Description du module :
_images/bmg5.png
  • En bas à gauche un bouton Editer la barre de couleurs permet d’ajuster la palette
  • En haut à droite un menu Mode d’affichage permet de basculer la visualisation en mode H0. Par défaut, c’est le mode HX/HY qui est utilisé car c’est celui là qui est utile pour faire des modifications

Warning

Le mode d’affichage H0 n’est valable que pour de la visualisation. Il ne faut pas modifier la bathy dans ce mode et il n’est pas mis à jour si l’on modifie en mode HX/HY

  • Dans le volet de gauche, si on déroule le menu de la grille, il est possible de faire afficher les valeurs de grille
_images/bmg6.png
  1. Outils de retouche

    Un bouton est disponible dans la barre d’outil pour sélectionner son outil de retouche. 5 types de retouche sont disponibles et diffèrent par le mode de sélection des mailles:

    • Point unique : on sélectionne un bord de maille (HX ou HY) à la fois et en tapant entrée on peut attribuer une nouvelle côte à cette maille.
    • Séquence : on peut sélectionner plusieurs mailles de suite et leur attribuer une nouvelle côte
    • Polyligne : permet de sélectionner plusieurs mailles en suivant une ligne par exemple le trait de côte
    • Polygone : Sélection de plusieurs mailles selon un polygone
    • Rectangle : Sélection de plusieurs mailles selon un rectangle
_images/bmg7.png

Note

Un historique des changements est conservé dans un fichier texte crée avec l’extension .history. Il est possible d’annuler un ou plusieurs changements via l’onglet Historique dans la barre de tâche.