ZonAgri - Objectifs - Interface

Pour envisager une gestion intégrée de l'eau à l'échelle d'un territoire aménagé, il peut être nécessaire de disposer d'une représentation de la demande agricole en eau et de sa valorisation au travers des productions. L'environnement de modélisation ZonAgri permet de représenter les activités des exploitations agricoles dans une région et de tester des scénarios d'évolution de ces activités. La représentation se fonde sur une typologie des exploitations agricoles et des ateliers de production, et utilise un modèle simple issu du formalisme Olympe (développé par J.M.Attonaty) : une région est considérée comme un ensemble de zones géographiques, chacune étant considérée comme la somme pondérée d'exploitations agricoles types (les pondérations correspondent aux effectifs). Une exploitation agricole est considérée comme la somme pondérée d'ateliers de production types (les pondérations correspondent aux tailles des ateliers). Ces ateliers de production consomment des inputs et produisent des outputs en certaines quantités. Ces inputs et outputs peuvent avoir des prix. Ceci qui permet de calculer par agrégation les volumes d'inputs consommés et d'outputs produits, ainsi que les marges brutes au niveau des exploitations types et des zones géographiques.

 

L'environnement de modélisation ZonAgri a été développée dans le cadre modélisation générique OdefiX, qui propose des composants de logiciel Java pour permettre de co-développer et interfacer des modèles orientés objets. En particulier, les modèles de tableau OdefiX permettent de définir les différents objets et d'échanger avec des tableurs. Le prix d'un input (ou d'un output) peut ainsi être défini par sa moyenne annuelle, ou bien par des valeurs mensuelles, ou encore par une formule mathématique faisant référence à d'autres prix et qui peut être conditionnée par d'autres propriétés. Les formules OdefiX peuvent contenir des fonctions mathématiques de base, dont des fonctions stochastiques de type random, loi normale, etc.

 

Une simulation ZonAgri est constituée de scénarios d'évolution sur les zones, les exploitations, les ateliers et les prix. Un scénario permet de créer une variante et une projection sur un objet. Une variante concerne la modification des propriétés de l'objet original ; une projection concerne l'évolution annuelle des valeurs associées aux propriétés de l'objet. Si les propriétés de certains objets utilisent des formules stochastiques, l'évaluation du scénario d'évolution consistera en l'analyse fréquentielle des résultats de plusieurs tirages. Les résultats obtenus à l'échelle des zones géographiques peuvent être cartographiés en utilisant les composant de l'environnement spatial d'OdefiX.

 

Objectifs - Interface

L'interface homme-machine proposée vise à répondre de manière générale aux 3 grandes fonctionnalités d'un environnement de modélisation pour l'aide à la décision :
  • la construction de modèles ;
  • la simulation de modèles ;
  • l'évaluation des performances.

 

L'interface graphique définie sert ainsi à visualiser et modifier les objets de l'application (modèles, documents, composants...) et à naviguer d'un à l'autre. Une fenêtre centrale donne une représentation texte, tableau ou graphique d'un objet sur lequel on peut éventuellement agir.
 
L'application, bien que portable entre différentes plateformes (utilisation du langage de programmation Java), adopte la configuration classique sous l'environnement Microsoft Windows avec un menu principal, des barres d'outils et une fenêtre principale.
 
L'affichage de la fenêtre principale est conditionné par les onglets du bas permettant de choisir entre un mode texte, tableau ou graphique.

hs-table-map.jpg
Figure C2.1. - Explorateur, vues sous forme Tableau et Carte

L'interface proposée permet de :

 

  • définir des modèles, des documents sous forme d'objets structurés ;

  • faciliter la sélection de ces objets à partir d'un explorateur ou par lien (menu contextuel Objet) dans une fenêtre de Vue ;

  • visualiser les objets sous différentes facettes (description, définition, validité, résultats divers, etc) sous forme de Tableau, Graphique, Carte, etc.

 

 


 

Le menu et la barre d'outils Affichage     |    |            permet de visualiser différents aspects de l'objet sélectionné.

 

  Précédent

affiche l'élément précédent dans l'historique des objets déjà visualisés.

  Suivant

affiche l'élément suivant dans l'historique des objets déjà visualisés.

  Mise à jour

met à jour l'affichage de la vue courante.

  Nouvel onglet

visualise l'objet dans un nouvel onglet.

  Fermeture onglet

ferme l'onglet de vue actif.

  Descriptions

visualise les descriptions des propriétés de l'objet actif.

  Attributs

visualise les attributs de l'objet actif.

  Définition complète

affiche la définition complète d'un objet. Pour détailler une caractéristique, il suffit de positionner le curseur sur la ligne correspondante et d'utiliser le bouton Objet du menu contextuel.

  Données par types

affiche des propriétés de l'objet actif en colonnes (une colonne par propriété). L'éditeur de cellule de chaque colonne correspond au type associé (bouton oui/non pour un booléen, choix, éventuellement éditable, dans une liste déroulante, etc).

  Problèmes de définition

affiche les problèmes éventuels de définition correspondant à l'objet actif. Ces problèmes peuvent être des avertissements ou des erreurs. Il suffit de positionner le curseur sur ce problème et d'utiliser le bouton Objet du menu contextuel pour corriger la définition.

  Résultats

affiche les résultats associés à l'objet actif, si ils existent.

 

 

 


 

Le menu et la barre d'outils Edition     |   permettent les échanges de données entre objets et avec d'autres applications en utilisant le Presse-Papiers du système d'exploitation. Ceci est en particulier utile pour copier des caractéristiques identiques entre composants ou pour coller des définitions ou des résultats dans des traitements de texte ou des tableurs.

 

  Couper

supprime l'objet(s) sélectionné(s) de leur contenu.

    Copier

copie l'objet(s) ou texte sélectionné(s) dans le Presse-papiers du système d'exploitation.

    Coller

colle l'objet(s) contenu(s) dans le Presse-papiers dans l'élément sélectionné.

    Annuler annule la dernière modification de définition active dans la liste des changements.

 

    Rétablir

rétablit la modification de définition active dans la liste des changements.

 

 


Le menu et la barre d'outils Fichier      permettent l'ouverture et la sauvegarde de documents.

  Nouveau

crée un nouvel environnement vide.

    Ouvrir

donne accès à une boîte de dialogue d'ouverture de fichiers.

    Sauvegarder

donne accès à une boîte de dialogue d'enregistrement de fichiers. Cette commande permet de sauver l'aménagement actif, la simulation courante, etc - voir Les fichiers d'entrées - sorties E1.

 


A FAIRE


A FAIRE


A FAIRE


Tout objet manipulé possède sa propre représentation graphique, qui peut être visualisée à partir de l'onglet du bas Graphique. Cette représentation fait référence à certaines caractéristiques : par exemple les courbes de remplissage d'un réservoir, la variation de la demande pour une consommation en eau - voir Figure C5.1 -, la variation des débits réservés pour un arc naturel, etc.

Sur tous les graphiques, vous pouvez utiliser les fonctionnalités suivantes :

  • effectuer un zoom avec le bouton gauche de la souris et la touche Maj du clavier enfoncés ;

  • obtenir une vue générale du graphique, après un zoom, par action de la touche R du clavier ;

  • modifier une valeur avec le bouton gauche de la souris et la touche Ctrl du clavier enfoncés ; lorsque la valeur est éditable, la modification de la définition est dynamique ;

  • modifier des propriétés du graphique par l'action du bouton droit de la souris ; une fenêtre à onglets permet alors de définir des titres, de modifier des couleurs ou des symboles de courbes, etc.

Figure C5.1. - Histogramme - Vue Graphique
hs-histo-chart.jpg

Sur les présentations sous forme d'histogrammes en 3 dimensions, comme sur la Figure C5.1, vous pouvez utiliser les fonctionnalités suivantes :

  • effectuer une rotation avec le bouton gauche de la souris enfoncé ;

  • visualiser les valeurs par déplacement de la souris sur le graphique.

Le tableau de ces caractéristiques est obtenu par l'action du bouton Données par type  serie_col.gif  de la barre d'outils Vues (voir la Figure C5.2). Les définitions sont éditables.

Ces définitions sont également placées dans le Presse-Papiers de l'environnement graphique par exemple Microsoft Windows. Les graphiques peuvent ainsi être obtenus à partir d'un tableur du type Microsoft Excel en utilisant simplement le bouton Coller  pastexl.gif. Ce fonctionnement de type Copier copyxl.gif - Coller pastexl.gif  est généralisé à toute l'interface, il est ainsi possible d'exporter mais aussi d'importer des données d'autres applications.

Figure C5.2. - Histogramme - Vue Tableau
hs-histo-table.jpg


La vue Carte permet de représenter les bassins versants en plusieurs couches (au moins 2) avec les contours et les réseaux hydrographiques. D'autres fonds cartographiques pourraient être présents sur d'autres couches (limites adminsitratives, villes, etc).

hs-map-map.jpg
Figure C6.1. - Bassins versants - Vue Carte

L'utilisateur dispose de très nombreuses fonctionnalités afin d'adapter la vue en fonction de son attente du moment. Il est ainsi possible de :

 

  • détailler et cadrer les vues, par des zooms (utiliser la boîte de règlage du zoom dans la barre d'outils ou cadrer votre vue par sélection d'une zone avec la souris, la touche "Shift" du clavier étant pressée, le curseur devient  ) et des déplacements panoramiques (utiliser les barres de défilement), sans déformation grâce au traitement vectoriel ;

  • définir les couches graphiques à afficher (icones visibilityon16.gif visibilité dans le tableau de gestion des couches), correspondant à un classement des objets par thèmes, jouer sur l’opacité des couches pour visualiser de l’information correspondants à des objets superposés, choisir d'afficher les labels des objets à partir des cases à cocher texte ;

  • visualiser les objets d’une couche suivant le classement d'une information associée, par exemple types d'objets ou classes de valeurs. On peut ainsi décliner les vues suivant différentes légendes, ordre de Strahler dans notre exemple.

 

De manière pratique, vous pouvez utiliser les fonctionnalités spécifiques suivantes :

 

  • sélectionner différents objets par l'action du bouton gauche de la souris sur un objet ou en définissant une zone, la sélection étant le mode par défaut ;

  • déplacer les objets sélectionnés par l'action du bouton gauche de la souris, la touche Alt du clavier étant pressé (ou passer en mode édition-déplacement) ;

  • déplacer des points des objets sélectionnés par l'action du bouton gauche de la souris, la touche Ctrl du clavier étant pressé (ou passer en mode édition-édition de points) ;

  • utiliser le menu contextuel (bouton droit de la souris) pour voir l'objet sélectionné (object.gif Objet), Copier les objets (voir l'exemple sur la Figure suivante), etc.

skhira-bvi-jpg9.jpg

 

 


A FAIRE


A FAIRE

 

 

 

Objectifs - Interface

La problématique

Le domaine de recherche de Christophe Cudennec est la modélisation hydrologique à base géomorphologique pour la gestion territoriale de l'eau. Ce titre scientifique décrit la recherche de modèles pluie-débit qui permettent de quantifier certaines relations entre le territoire et les circulations d'eau, et donc d'envisager un aménagement du territoire en vue de la réduction des dégâts dus aux fortes pluies.

Lorsque l'on parle ici de modèle, il s'agit d'une simplification de la réalité pour pouvoir appliquer des concepts et faire de la quantification. Un modèle pluie-débit permet de lier les pluies qui couvrent un territoire avec la quantité d'eau s'écoulant à un endroit donné pour un temps donné. Une fois un tel modèle correctement défini, l'opération inverse peut être envisagée, c'est-à-dire déduire de la quantité d'eau qui s'écoule les caractéristiques de la pluie tombée.

La problématique qui se cache derrière cette recherche est et sera de plus en plus d'actualité dans la région du Languedoc-Roussillon : les crues et la gestion de l'aménagement territorial afin de faire face à ces crues. Ce sont les précipitations de fortes intensités plutôt que le total annuel des précipitations qui causent souvent les catastrophes naturelles, comme les inondations exceptionnelles. Les précipitations fortes dépassent la capacité d'infiltration du sol et se traduisent par un ruissellement de surface qui peut devenir excessif et générer des crues importantes en aval.


Figure A.1.1 - - Le rôle intégrateur du bassin versant à l'échelle de l'évènement hydrométéorologique (Source Cudennec, 2001)

Le problème actuel est que chaque aménagement, aussi bien à l'échelle de l'agriculteur qui cherche à protéger ses récoltes qu'à l'échelle de la commune qui cherche à protéger ses habitants et leurs biens, résout des problèmes locaux de crues. Les acteurs individuels aménagent leur partie de territoire de manière à réduire les conséquences localement, sans forcément étudier l'effet de ces aménagements sur les territoires plus en aval. Pour prévenir au mieux les conséquences de ces évènements naturels, l'idée est d'étudier le comportement du territoire et de ces aménagements à un plus haut niveau d'organisation des cours d'eau et donc de résoudre les problèmes à ce niveau d'organisation : celui du bassin versant.


Le bassin versant est un territoire sur lequel les gouttes de pluie qui tombent s'écoulent, puis se rejoignent en un même endroit : l'exutoire (remarque : il existe toujours une partie de la pluie qui est stockée dans des réserves souterraines ou en surface, qui retourne à l'atmosphère par évaporation ou qui " fuit " en profondeur). Un bassin versant possède des frontières naturelles qui suivent des lignes naturelles et définissent généralement une zone fermée. Nous pouvons donc définir qu'un bassin versant est une zone délimitée par un contour. Les gouttes de pluie peuvent aussi s'infiltrer dans la roche et former des réservoirs ou des nappes souterraines ; il existe alors une circulation souterraine des eaux.

Dans un bassin versant, l'eau s'écoule toujours d'un point haut vers un point bas, soit de l'amont vers l'aval. Sur son chemin, elle recueille les eaux d'autres cours d'eau, plus petits. Ils sont appelés les affluents.

Il faut noter l'existence, à la surface du bassin versant, d'un système longitudinal, le réseau de drainage ou réseau hydrographique, défini comme l'ensemble des cours d'eau naturels ou artificiels, permanents ou temporaires, qui participent à l'écoulement. Ce réseau est plus ou moins développé selon différents facteurs (géologie, climat, pente du terrain, etc.). La carte 1 présente l'exemple du réseau hydrographique du bassin versant de Skhira :

bv-skhira.jpg
Figure A.1.2 - - Présentation du bassin versant de Skhira (Source Cudennec et al, 2005)

En définitive, le réseau hydrographique est donc un objet ramifié et hiérarchisé. Pour un bassin versant, outre l'exutoire, unique extrémité aval, le réseau hydrographique est composé de points particuliers : les extrémités amont, appelées sources, ainsi que les jonctions entre plusieurs - en général deux - branches du réseau, c'est à dire les confluences. La fraction du réseau hydrographique comprise entre deux confluences ou bien entre une confluence et une extrémité est appelée bief.

 

 

Etudes de bassins versants - Caracteristiques du reseau hydrographique" />

Dans notre objectif, la plupart des statistiques géomorphométriques d'un bassin versant seront générées à partir des caractéristiques du réseau hydrographique. Nous les définissons donc maintenant afin de ne pas perdre le lecteur par des définitions hydrologiques au milieu de la description du logiciel.

Donc, la caractéristique la plus simple à calculer, mais dont tous les autres calculs dépendent, est la longueur de chacun des biefs du réseau. En connaissant ces longueurs, il sera possible de calculer les longueurs pour d'autres éléments du bassin versant.

Une des principales études à faire sur un bassin versant est celle de la classification de son réseau hydrographique. La classification est facilitée par un système de numérotation des biefs. L'ordre des cours d'eau est donc une classification qui reflète la ramification du cours d'eau. Il existe plusieurs types de classification des biefs, dont la classification de Strahler (1952), qui est la plus utilisée. C'est celle que nous utiliserons.

Cette classification permet de décrire sans ambiguïté le développement du réseau de drainage d'un bassin de l'amont vers l'aval. Nous allons tout d'abord considérer l'ordre de Strahler sur un réseau hydrographique binaire car, dans un milieu naturel, les confluences multiples sont rares. Donc, sur un réseau hydrographique binaire, l'ordre de Strahler se base sur les règles suivantes :

  • Tout bief issu d'une source est d'ordre 1
  • Tout bief formé par la confluence de deux biefs d'ordre i et j respectivement prend l'ordre :
  • i+1 si i = j
  • Max (i,j) sinon

La figure suivante illustre l'ordre de Strahler sur le réseau hydrographique binaire du petit bassin versant tunisien de Hadada.

 

bv-hadada.jpg
Figure A.1.3 - Application des ordres de Strahler au réseau hydrographique binaire du bassin versant de Hadada (Tunisie)

Mais le traitement des MNT (Modèles numériques de terrain) peut engendrer des réseaux hydrographiques non binaires. Il faut donc adapter l'ordre de Strahler à des réseaux non binaires. Donc, voici le calcul de l'ordre de Strahler généralisé sur un réseau quelconque (binaire ou non) :

  • Tout bief issu d'une source est d'ordre 1
  • Tout bief formé par la confluence de n biefs d'ordres a, b, c, …, n prend l'ordre :
  • max + 1 si au moins deux biefs sont d'ordre max = Max(a, b, c, … , n)
  • max sinon avec max = Max(a, b, c, … , n)

bv-non-bin.jpg
Figure A.1.4 - Application des ordres de Strahler à un réseau hydrographique non binaire extrait d'un MNT

 
 
 
On peut maintenant déterminer les tronçons du réseau, un tronçon étant composé d'une succession de biefs, d'amont en aval, ayant le même ordre. Sur la figure du bassin Hadada, nous pouvons par exemple identifier le tronçon d'ordre 2 composé des biefs bief_12, bief_8 et bief_4.
 
Le calcul de ces tronçons, nous permet alors d'étudier les lois de Horton. Ces lois correspondent à la stabilité expérimentale et assez générique des deux rapports RC et RLsuivants :
 
  • RL = Li+1 / Li, où Li est la longueur moyenne des tronçons d'ordre i.
  • RC = Ni / Ni+1, où Ni est le nombre de tronçons d'ordre i.
On peut aussi définir la notion de chemin. Le chemin d'un bief est la suite de biefs à parcourir jusqu'à l'exutoire. Sur la figure 12, le chemin du bief_18 se compose des biefs bief_18, bief_12, bief_8, bief_4, bief_2 et exutoire.
Grâce à cette classification des biefs et à la notion de chemin, il est alors possible d'identifier la décomposition de chaque chemin en composantes dans chaque ordre de Strahler. La composante d'ordre i d'un chemin est ainsi la partie du chemin constituée par des biefs successifs de même ordre. Sur l'exemple précédent du chemin du bief_18, on peut énumérer les composantes suivantes :
 
 
  • La composante hydraulique d'ordre 1 composée du bief_18
  • La composante hydraulique d'ordre 2 composée des biefs biefs_12, bief__8 et bief_4
  • La composante hydraulique d'ordre 3 composée des biefs biefs_2 et exutoire.

Enfin, les longueurs des chemins (de chaque bief et de chaque point de la grille d'échantillonnage) et de leurs composantes sont considérées en termes statistiques et cartographiques.

 


L'analyse du comportement hydrologique d'un bassin versant (système hydrologique) s'effectue par le biais de l'étude de la réaction hydrologique du bassin face à une sollicitation (la précipitation). Cette réaction est mesurée à l'exutoire du système hydrologique par l'observation d'un hydrogramme qui n'est autre que la représentation de l'évolution du débit Q en fonction du temps t.

 

bv-epfl.jpg


Figure A.1.4 - Principes d'analyse du comportement hydrologique du bassin versant et hydrogramme résultant (Source http://hydram.epfl.ch/e-drologie/)

Il s'agit donc d'analyser le débit d'eau dans le cours du temps à l'exutoire d'après des relevés spatio-temporels de la pluie.

Pour calculer ce débit au cours du temps, il suffit alors d'appliquer un champ de pluie, c'est-à-dire la quantité de pluie tombée à un instant t et à une position dans l'espace p, à la représentation du bassin versant sous forme de zones isochrones. On peut alors prévoir, à chaque pas de temps suivant, la quantité d'eau provenant de ce champ de pluie et arrivant à l'exutoire. Il faut pour cela calculer la pluie nette, c'est-à-dire la quantité de pluie qui va s'écouler à travers le réseau hydrographique, à partir de la pluie brute, c'est-à-dire la quantité d'eau spécifiée par le champ de pluie. Il suffit alors d'appliquer le champ de pluie dans le temps et dans l'espace, c'est-à-dire de prendre en compte la variabilité de l'intensité et de l'emplacement des nuages de pluies, et on obtient un débit théorique dans le temps que l'on peut comparer au débit réel.

Pour cela, il est donc envisageable de déduire les zones isochrones en terme de temps d'écoulement, à partir de caractéristiques du réseau hydrographique. Les zones isochrones définies représenteront alors les zones d'égal temps de parcours de l'eau jusqu'à l'exutoire via le réseau hydrographique. Le tracé du réseau des isochrones permet donc de comprendre en partie le comportement hydrologique d'un bassin versant et l'importance relative de chacun de ses sous bassins.

isoch-skhira.jpg
Figure A.1.5 - Présentation des isochrones du bassin versant de Skhira (Source Cudennec et al, 2005)

Les zones isochrones et les comportements hydrauliques alors définis, on aboutit alors au graphique qui suit :

isoch-pluie.jpg
Figure A.1.6 - Champ de pluie appliqué aux zones isochrones d'un bassin versant (Source Cudennec et al, 2005)

 

 

 

Généralités

Les données sources du protocole proviennent de relevés topographiques, de l'interprétation de photographies aériennes ou de lecture de cartes topographiques. Il s'agit donc d'images vectorielles qui représentent le contour et le réseau hydrographique de bassins versants dont les coordonnées sont exprimées dans le même système de projection.

Le protocole définit certaines contraintes telles que :

    • Le contour du bassin versant doit être un polygone
    • L'ensemble des arcs de l'image du réseau hydrographique doit être connexe, ramifié et binaire.

Entre autres, le protocole permet d'observer les caractéristiques de n'importe quel point de la zone drainée par rapport à cette topologie. Pour cartographier ces caractéristiques sur le territoire du ou des bassins versants étudiés, il suffit donc d'étudier l'ensemble des points d'un échantillonnage du plan. C. Cudennec propose pour cela de s'appuyer sur une grille régulière dont chaque intersection est un point d'échantillonnage. La mise en forme numérique des informations acquises aboutit alors à des images raster dont les pixels sont centrés sur les points de la grille.

appli-grid.jpg
Figure A.2.1 - Application d'une grille régulière sur un bassin versant (Cudennec, 2000)

 

   

L'idée est de considérer le réseau hydrographique comme un arbre binaire. En effet, le réseau hydrographique est un objet ramifié fortement hiérarchisé où les confluences multiples sont suffisamment rares pour être négligées et assimilées à un ensemble de confluences simples. Le réseau hydrographique est donc organisé selon les deux règles suivantes :

  • Le bief exutoire est l'unique extrémité aval et a deux biefs affluents à l'amont.
  • Tout autre bief a un unique bief aval et éventuellement deux biefs affluents à l'amont ; en l'absence d'affluent, le bief a pour extrémité amont une source.
Une image vectorielle n'ayant pas cette notion de hiérarchie, mais représentant des segments et des lignes indépendants les uns des autres, une première étape consiste à hiérarchiser le réseau sous forme d'arbre dont la racine est l'exutoire.

Une fois décrits comme une arborescence, certains attributs du réseau sont alors calculables. Nous citerons l'ordre de Strahler, des statistiques de dénombrement et des mesures de longueur sur les biefs et les tronçons.


Une grille régulière pour étudier le bassin versant

La grille est définie par la coordonnée haut-gauche du début de la grille, un pas et une distance maximale de couverture dans le sens des abscisses, un pas et une distance maximale de couverture dans le sens des ordonnées. Les points ainsi définis constituent le centre de chaque maille de largeur et de hauteur définis par les pas de la grille. La grille couvre le bassin versant dans son ensemble.

Certains calculs sont définis pour chaque point de la grille qui appartient au bassin versant tel que : l'ensemble des arcs constituants le chemin hydraulique (et ses composantes hydrauliques), la longueur hydraulique (la longueur jusqu'à l'exutoire), la longueur séparant le point de la grille du réseau, l'appartenance au bassin versant, … (cf. schéma ci dessous)

schem-grid.gif
Figure A.2.3 - Schéma d'application d'une grille d'échantillonnage (Cudennec, 2000)

Ces calculs sont représentés sous forme de matrice. Chaque point de la matrice représente le point correspondant sur la grille.

 

 

 

OdefiX - Objectifs - Interface graphique - API - GUI

Cette partie présente l'architecture générale du développement. Elle détaille notamment les classes créées pour concevoir l'interface graphique générique présentée à la section précédente.

L'architecture de l'application, présentée dans la figure 5.1, est définie par le regroupement de classes dans des paquetages. Les relations entre paquetages définissent les dépendances dans l'application et déterminent la stabilité de l'architecture.

 

packmain.gif

 

 

Figure 5.1. - Architecture générale

  • Le paquetage java regroupe tous les paquetages du kit de développement fourni par Sun Microsystems. Nous utilisons le JDK 1.4 (Java Development Kit).

  • Le paquetage data contient des classes nécessaires à la construction et à l'évolution des modèles.

  • Le paquetage gui : Graphical User Interface regroupe les classes écrites pour l'interface graphique de l'application. Ce package est fortement lié au package data puisqu'il sert à les figurer, ainsi qu'à les manipuler et les visualiser.

  • Le paquetage applicatif_métier applicatif_métier correspond aux classes propres à un modèle spécifique. Ce dernier est basé sur le package data, les données d'un modèle dérivant des données génériques. Le package gui sert quant à lui à représenter ces données

L'intérêt de l'architecture réside dans la souplesse de modification pour ajouter de nouvelles caractéristiques. La génération d'applicatifs dédiés est facilitée par la structuration proposée, qui permet ainsi une extension aisée des types de composants à étudier.

 


Les classes de base

 

La présentation de l'interface graphique générique a montré l'intérêt de spécifier la notion générale de définition. Tout objet manipulé peut être traité comme une définition plus ou moins complexe. Il peut se ramener dans tous les cas à la définition d'une donnée de type simple comme une chaine de caractères, un réel, un entier, un booléen. Ces données peuvent elles mêmes être traitées comme des définitions.

Dans OdefiX, les données manipulées par le modèle seront toutes décrites par une Definition. Tout objet du monde réel nécessaire au modèle, qu'il soit concret (réservoirs, bassin versant, etc.) ou abstrait (chroniques des pluies ; variation dans le temps de certaines données, etc. ), pourra et devra être représenté par une Definition. Ces définitions sont plus ou moins complexes selon le type d'élément qu'elles vont figurer.

Figure 5.2. - les classes de base

L'abstraction Definition

Pour un objet, être une Definition assure de la spécification de :

  • un label, qui constitue la dénomination de l'objet ;
  • un identifiant le définissant de manière unique ;
  • un type, qui permet de qualifier l'objet par une brève description (méthode getType()) ;
  • la représentation et l'affectation possible des données sous forme d'une chaine de caractères (méthodes toString() et set(String s)) ;
  • la validité de l'objet (renvoi des incohérences);
  • la représentation de l'objet, sous forme d'un modèle de tableau (TableModel), suivant différents points de vue : description, définition, validité, résultats, etc.

 

Toute Definition possède également un formalisme en XML et pourra donc être stockée dans un fichier au format XML puis restaurée depuis ce fichier. Cet enregistrement/restauration des données en tant que fichier ne se fait que pour les Definition qui sont également des Documents. Toute Definition possèdera forcement un Document comme parent dans un des niveaux supérieurs de sa hiérarchie. Un document est une définition complexe, extensible, qui peut être chargée et sauvée au format XML. C'est un composant de base de l'environnement de travail.

L'avantage des Definitions est l'homogénéité. En effet, si chaque modèle et ses données sont représentés sous forme de Definition, il sera d'autant plus simple de faire cohabiter les modèles, ce qui est la finalité d'OdefiX.

-A VOIR-
- explications sur persistance en XML
- explications sur gestion de l'indexation
- explications sur la gestion des modifications sep-2004

 


OdefiX offre un ensemble de Definitions qui seront communes à de nombreux modèles. Il fournit pour cela des Definitions correspondant aux données primitives des langages de programmation (les chaînes de caractères, les nombres entiers, les nombres à virgule flottant, les booléens ), ainsi que l'équivalent des tableaux à une et deux dimensions de ces données primitives.

A chaque définition Data est associé un DataType, qui spécifie le type des données représentées (un nombre représentant un débit est différent d'un nombre représentant une coordonnée). Un type Datae données possède donc différents attributs (des bornes de validité minimale et maximale, une valeur par défaut, une unité, un format, une précision, etc.) Ces types de données sont répertoriés dans des catégories et principalement défini dans des fichiers XML. Les types de données communs à tous les modèles sont stockés dans la catégorie OdefiX, tandis que chaque modèle spécifique possède sa propre catégorie, et éventuellement son propre fichier XML.

Figure 5.3. - les définitions de type de base

Exemple de types simples sous leur forme XML :
Le type de la catégorie OdefiX décrivant un nombre à virgule flottant quelconque :
<type id="real" label="Real" base="real" minValue="0" maxValue="1000000000000" precision="0.01" format="0.0#"/>
Le type de la catégorie ZonAgri décrivant un prix se basant sur le type simple de base décrit ci-dessus:
<type id="price" label="Prix total" base="real" desc="Prix des produits total" minValue="0" maxValue="100000" precision="0.01" unit="euro" cumul="true" format="0.00" holeValue="-1"/>

 

-A VOIR-
- explications sur le formatage
- explications sur la gestion des unités


 


Une Definition possède un contenu qui peut être simple ou complexe, extensible ou prédéfini. Une Definition complexe pourra donc contenir d'autres Definition, elles-mêmes pouvant être complexes. Il apparaît alors la notion de hiérarchie, chaque Definition possédant une Definition parent et des Definitions enfants, en ce qui concerne les complexes. Les Definitions extensibles peuvent recevoir un certain nombre de Definition d'un certain type, défini par le programmeur et correspondant à la nature spécifique de l'objet contenant.

Figure 5.4. - les définitions "complexes"

Par exemple, un réservoir peut être défini pour une contenance maximum et un débit constant, qui seront tous deux des définitions simples. Une zone géographique peut alors être décrite comme un ensemble de réservoirs. Ce sera alors une définition complexe et extensible, qui possèdera une liste de réservoirs, c'est-à-dire une liste de Definitions complexes.

 


Une autre notion très importante sous OdefiX est la notion d'association. Une association peut prendre deux sens différents :

- soit créer une Definition qui n'est en fait qu'un raccourci, une référence à une Definition déjà définie ailleurs dans l'arborescence de l'environnement de modélisation. Ainsi, toute Definition de type Document sera manipulée à travers des associations ;

- soit définir une liste de Definition, à partir de laquelle on pourra choisir le type de Definition de l'objet. Par exemple, une valeur peut être définie par un nombre ou bien par un calcul (une formule). Ce sera à l'utilisateur de choisir le mode de définition.

Figure 5.5. - les associations

 


La figure 5.5 présente l'arbre d'héritage des classes pour la gestion du temps : pas de temps, variations saisonnières, chroniques, etc.

Figure 5.5. - Les classes de gestion du temps

Les pas de temps

Le pas de temps est introduit par la classe abstraite TimePeriod qui hérite de AbstractIntDefinition. La classe TimePeriod assure en plus la spécification :

  • d'un calendrier de référence, on utilise le calendrier grégorien disponible dans le paquetage java.utilgetCalendar()) ; (méthode
  • d'un format de date (méthode getFormat()) ;
  • du passage au pas de temps suivant (méthode toNext()) ;
  • du nombre de jour du pas de temps (méthode getDays()) ;
  • de diverses méthodes intéressant les dates (méthode isLeapYear(int _year), etc).

 

Les classes YearStep, MonthStep, D10Step et DayStep assurent l'implémentation de la spécification d'un pas de temps respectivement annuel, mensuel, décadaire (au sens météorologique c'est à dire période du 1 au 10, du 11 au 20, et du 21 à dernier jour du mois) et journalier.

Les variations temporelles

La variation saisonnière d'une caractéristique numérique est introduite par la classe YearlyVariation qui hérite de TimeVariation donc de AbstractDefinition. La classe YearlyVariation assure, à partir de la définition des valeurs mensuelles interannuelles, la spécification :

  • de la valeur de la variable pour une décade ou un jour particulier, actuellement traitée par interpolation linéaire (méthodes getValue(D10Step _step) et getValue(DayStep _step)) ;
  • de chroniques de valeurs interpolées en décadaire et journalier (méthodes getD10Chronicle() et getDayChronicle).

 

La classe Chronicle permet de définir la variation d'une caractéristique numérique à pas de temps fixe sur une grande période. La chronique peut être affectée à partir d'un fichier (méthode set(java.io.File file)). Le pas de temps début (méthode getFirstStep()) spécifie le type de variation : annuelle, mensuelle, décadaire ou journalière.

-A VOIR-
- explications sur le package data.time


 


Une extension d'OdefiX permet de représenter les vues cartographiques à la manière des S.I.G., c'est-à-dire la représentation par couches.

Cette extension est basée sur une structuration générique des données (gestion de cartes, plans, schémas, graphes, etc) par un typage des informations et propose une formalisation de la gestion du temps autorisant les animations graphiques.

Figure 5.6. - Les classes de représentation en 2D

Le document cartographique est une Definition composée d'objets Couche. Un document peut contenir une ou plusieurs couches. Chaque couche correspond à une agrégation d'objets permettant une représentation en deux dimensions et possédant des informations associées.

Ces objets, que nous dénommons Série, sont donc décrits par une série de valeurs x et de valeurs y, les types de valeurs correspondants et une liste d'informations associées.

-A VOIR-
- explications sur le package data.map
- explications sur les parsers ASCII dont le parser Mif/Mid

OdefiX - Objectifs - Interface graphique - API - GUI

Cette partie présente les bases du fonctionnement de l'interface graphique proposée et illustre, par des exemples de définition d'un système d'eau, différentes fonctionnalités.

 


L'interface homme-machine proposée vise à répondre de manière générale aux 3 grandes fonctionnalités d'un environnement de modélisation pour l'aide à la décision :

  • la construction de modèles ;
  • la simulation de modèles ;
  • l'évaluation des performances.

 

L'interface graphique définie sert ainsi à visualiser et modifier les objets de l'application (modèles, documents, composants...) et à naviguer d'un à l'autre. Une fenêtre centrale donne une représentation texte, tableau ou graphique d'un objet sur lequel on peut éventuellement agir.

L'application, bien que portable entre différentes plateformes (utilisation du langage de programmation Java), adopte la configuration classique sous l'environnement Microsoft Windows avec un menu principal, des barres d'outils et une fenêtre principale.

L'affichage de la fenêtre principale est conditionné par les onglets du bas permettant de choisir entre un mode texte, tableau ou graphique. La Figure C1.1 présente les vues sous forme tableau et graphique d'un même système d'eau.

hyd2006-table-map.jpg
Figure C2.1. - Explorateur, vues sous forme Tableau et Carte

L'interface proposée permet de :

  • définir des modèles, des documents sous forme d'objets structurés ;

  • faciliter la sélection de ces objets à partir d'un explorateur ou par lien (menu contextuel Objet) dans une fenêtre de Vue ;

  • visualiser les objets sous différentes facettes (description, définition, validité, résultats divers, etc) sous forme de Tableau, Graphique, Carte, etc.

 


 

Le menu et la barre d'outils Affichage     |    |            permet de visualiser différents aspects de l'objet sélectionné.

 

  Précédent

affiche l'élément précédent dans l'historique des objets déjà visualisés.

  Suivant

affiche l'élément suivant dans l'historique des objets déjà visualisés.

  Mise à jour

met à jour l'affichage de la vue courante.

  Nouvel onglet

visualise l'objet dans un nouvel onglet.

  Fermeture onglet

ferme l'onglet de vue actif.

  Descriptions

visualise les descriptions des propriétés de l'objet actif.

  Attributs

visualise les attributs de l'objet actif.

  Définition complète

affiche la définition complète d'un objet. Pour détailler une caractéristique, il suffit de positionner le curseur sur la ligne correspondante et d'utiliser le bouton Objet du menu contextuel.

  Données par types

affiche des propriétés de l'objet actif en colonnes (une colonne par propriété). L'éditeur de cellule de chaque colonne correspond au type associé (bouton oui/non pour un booléen, choix, éventuellement éditable, dans une liste déroulante, etc).

  Problèmes de définition

affiche les problèmes éventuels de définition correspondant à l'objet actif. Ces problèmes peuvent être des avertissements ou des erreurs. Il suffit de positionner le curseur sur ce problème et d'utiliser le bouton Objet du menu contextuel pour corriger la définition.

  Résultats

affiche les résultats associés à l'objet actif, si ils existent.

 

 

 


 

Le menu et la barre d'outils Edition     |    permettent les échanges de données entre objets et avec d'autres applications en utilisant le Presse-Papiers du système d'exploitation. Ceci est en particulier utile pour copier des caractéristiques identiques entre composants ou pour coller des définitions ou des résultats dans des traitements de texte ou des tableurs.

 

  Couper

supprime l'objet(s) sélectionné(s) de leur contenu.

    Copier

copie l'objet(s) ou texte sélectionné(s) dans le Presse-papiers du système d'exploitation.

    Coller

colle l'objet(s) contenu(s) dans le Presse-papiers dans l'élément sélectionné.

    Annuler annule la dernière modification de définition active dans la liste des changements.

 

    Rétablir

rétablit la modification de définition active dans la liste des changements.

 

 


Le menu et la barre d'outils Fichier      permettent l'ouverture et la sauvegarde de documents.

  Nouveau

crée un nouvel environnement vide.

    Ouvrir

donne accès à une boîte de dialogue d'ouverture de fichiers.

    Sauvegarder

donne accès à une boîte de dialogue d'enregistrement de fichiers. Cette commande permet de sauver l'aménagement actif, la simulation courante, etc - voir Les fichiers d'entrées - sorties E1.

 

La définition se présente sous la forme d'un tableau avec 13 colonnes. La première colonne, non éditable, contient les labels des définitions. Toute cellule correspondant à un champs possède un éditeur spécifique. Une vérification sur la conformité des caractères alpha-numériques et sur un dépassement de bornes éventuel est effectué lors de la validation du champs (lors du passage à une autre cellule ou par action de la touche Enter). Une cellule vide est non éditable.

Vous pouvez obtenir des informations sur la donnée d'une cellule dans le menu contextuel (action du bouton droit de la souris) comme sur l'exemple de la Figure C4.1. Vous disposez ainsi du nom, du type de la donnée, des bornes supérieures et inférieures dans le cas d'une valeur numérique et éventuellement de l'unité dans laquelle cette valeur est exprimée.


Figure C4.1. - Consommation en eau - vue définition

Pour obtenir la description de tous les champs d'une définition, actionner le bouton Niveau 3    de la barre d'outils Vues          , comme l'exemple de la Figure C4.2.

Il peut être plus clair de décrire une variation saisonnière par exemple à partir de sa propre définition, qui précisera explicitement dans ce cas les mois, et permettra d'obtenir la courbe correspondante. A cette fin, il suffit de se positionner sur la ligne à modifier et actionner le bouton Objet    de la barre d'outils Sélection      .


Figure C4.2. - Consommation en eau - vue niveau 3

La définition sous forme texte est moins conviviale que la forme tableau. Mais elle permet une utilisation très souple du Copier - Coller, notamment dans le cas de modifications de propriétés sur plusieurs composants. Pour valider une définition, il faut utiliser la commande Appliquer par l'action du bouton    de la barre d'Outils      .

 


 

Tout objet manipulé possède sa propre représentation graphique, qui peut être visualisée à partir de l'onglet du bas Graphique. Cette représentation fait référence à certaines caractéristiques : par exemple les courbes de remplissage d'un réservoir, la variation de la demande pour une consommation en eau - voir Figure C5.1 -, la variation des débits réservés pour un arc naturel, etc.

Sur tous les graphiques, vous pouvez utiliser les fonctionnalités suivantes :

 

  • effectuer un zoom avec le bouton gauche de la souris et la touche Maj du clavier enfoncés ;

  • obtenir une vue générale du graphique, après un zoom, par action de la touche R du clavier ;

  • modifier une valeur avec le bouton gauche de la souris et la touche Ctrl du clavier enfoncés ; lorsque la valeur est éditable, la modification de la définition est dynamique ;

  • modifier des propriétés du graphique par l'action du bouton droit de la souris ; une fenêtre à onglets permet alors de définir des titres, de modifier des couleurs ou des symboles de courbes, etc.

 


Figure C5.1. - Consommation d'eau - graphique variation de la demande

Sur les présentations sous forme d'histogrammes en 3 dimensions, comme sur la Figure C5.1, vous pouvez utiliser les fonctionnalités suivantes :

  • effectuer une rotation avec le bouton gauche de la souris enfoncé ;

  • visualiser les valeurs par déplacement de la souris sur le graphique.

Le tableau de ces caractéristiques est obtenu par l'action du bouton Graphe    de la barre d'outils Vues (voir la Figure C5.2). Les définitions sont éditables.

Ces définitions sont également placées dans le Presse-Papiers de l'environnement graphique par exemple Microsoft Windows. Les graphiques peuvent ainsi être obtenus à partir d'un tableur du type Microsoft Excel en utilisant simplement le bouton Coller  . Ce fonctionnement de type Copier  - Coller   est généralisé à toute l'interface, il est ainsi possible d'exporter mais aussi d'importer des données d'autres applications.

Figure C5.2. - Consommation d'eau - vue tableau graphique


 

La représentation graphique d'un système d'eau est géoréférencée et utilise des fonds cartographiques plus ou moins riches rangés par couches comme présenté sur la Figure C6.1.

Figure C6.1. - Système d'eau - représentation graphique

L'utilisateur dispose de très nombreuses fonctionnalités afin d'adapter la vue du système en fonction de son attente du moment. Il est ainsi possible de :

  • détailler et cadrer les vues, par des zooms et des déplacements panoramiques, sans déformation grâce au traitement vectoriel - boutons      et menu contextuel -

  • définir les couches graphiques à afficher, correspondant à un classement des objets par thèmes, jouer sur l’opacité des couches pour visualiser de l’information correspondants à des objets superposés

  • visualiser les objets d’une couche suivant le classement d'une information associée, par exemple types d'objets ou classes de valeurs. On peut ainsi décliner les vues suivant différentes légendes : régions, relief ou pluviométrie annuelle pour la couche Physique de notre exemple.

  • réaliser une animation graphique si l'on utilise de l'information temporelle (voir Figure C6.2). Un lecteur d'animation affiche le pas de temps courant visualisé, permet de lancer/interrompre l'animation, passer au pas de temps suivant, etc.

  • visualiser l’information associée à un objet d’une couche. Cette information peut être du texte, des valeurs numériques (simples ou des chroniques), des dates, des adresses de ressources locales ou internet pour l'affichage de documents, d'images, etc.

De manière pratique, sur la couche de l'aménagement actif, vous pouvez utiliser les fonctionnalités spécifiques suivantes :

  • sélectionner un composant par l'action du bouton gauche de la souris puis visualiser sa définition par l'action du bouton Objet    de la barre d'outils Sélection ;

  • déplacer un composant par l'action du bouton gauche de la souris et la touche Ctrl du clavier enfoncés sur l'objet sélectionné et relachés sur la position finale souhaitée ;

  • créer un nouveau composant par l'action du bouton Ajouter composant    de la barre Outils       ; ce composant est obtenu par copie de l'objet sélectionné préalablement par l'action du bouton gauche de la souris ou par une sélection antérieure ;

  • ajouter un arc par l'action du bouton gauche de la souris et la touche Alt du clavier enfoncés sur le noeud amont et relachés sur le noeud aval. L'arc est obtenu par copie du lien sélectionné préalablement par l'action du bouton gauche de la souris ou par une sélection antérieure.


Figure C6.2. - Pluies annuelles - animation graphique


 

Les résultats constituent une des vues les plus intéressantes d'une définition. Il s'agit de manière générale de représenter les conséquences de l'utilisation de la définition de l'objet manipulé ou de mieux cerner cette définition.

Ainsi, sur l'exemple de la Figure C7.1, la vue Résultats d'une demande en eau, définie par les volumes en hm3 pour chaque mois de l'année, est constituée par la variation saisonnière mensuelle du débit fictif continu en m3/s et dam3/jour et par les moyennes interannuelles correspondantes.


Figure C7.1. - Demande en eau - vue résultats

Il est possible de visualiser les variations décadaires (Figure C7.2) ou journalières des demandes, à partir de la ligne de label decade ou date, par action du bouton Définition    de la barre d'outils Sélection      , ce qui permet de vérifier le mode d'interpolation employé.


Figure C7.2. - Demande en eau - variation décadaire

 


 

Evaluation des performances

Vous pouvez visualiser différents résultats de la desserte en eau sur le système ou sur certains composants. Vous avez accès à des chroniques sur des variables du modèle et à des cumuls et des statistiques issus de ces résultats de manière à disposer d'indicateurs synthétiques pour évaluer les performances d'un aménagement.

Ainsi, en mode Graphique sur le système d'eau, l'action du bouton Résultats    de la barre d'outils Vues affiche une fenêtre du type présentée sur la Figure C8.1..

hgsa2gc7.jpg
Figure C8.1. - Système d'eau - graphique résultats globaux

Dans le mode tableau ou texte, la commande Résultats    de la barre d'outils Vues appliquée sur le système d'eau vous permet de disposer de :

  • résultats globaux sur les déficits de demande en eau où nous distinguons demande consommatrice (C), demande d'utilisation (U) et demande écologique (E) qui correspond aux débits réservés dans les arcs naturels

  • accès, par l'action du bouton Objet   , aux chroniques relatives aux résultats précédents soit en valeurs absolues, soit en pourcentages.

  • cumuls saisonniers des demandes et déficits pour les consommations d'eau (C), les besoins d'utilisation (U) et les besoins écologiques (E). Sont également cumulés mois par mois les apports et les sorties naturels du système.

  • comparaisons sur la desserte des demandes (consommations en eau et utilisations d'eau) à partir des valeurs de pourcentages et des dates sur leur déficit total, leur déficit max annuel, leur plus long déficit et leur déficit max mensuel. Vous pouvez directement accéder aux résultats d'une demande particulière par l'action du bouton Objet    sur l'un des éléments de la liste.

Les nombreuses fonctionnalités de la vue graphique d'un système d'eau facilitent grandement l'évaluation des performances d'une alternative d'aménagement ou de gestion. En un "coup d'oeil", il est ainsi possible de repérer les demandes ayant connu des déficits et de qualifier ces pénuries dans l'espace.

Vous pouvez ainsi choisir de visualiser les aménagements suivant différents aspects à partir du choix des légendes liées à des résultats caractéristiques : déficit moyen, déficit maximum annuel (voir Figure C8.2.), plus long déficit, déficit maximum mensuel, retour déficit annuel > 0%, retour déficit annuel > 5%, retour déficit annuel > 25%, déficit annuel.

La possibilité de réaliser des animations est un plus pour mieux évaluer la desserte en eau et détailler les chroniques annuelles de pénuries, les situations extrêmes, etc.

Il est possible de superposer les couches et jouer sur les transparences pour comparer des simulations.

a1s2dmac.jpg
Figure C8.2. - Aménagements - Graphique déficits max annuels


 

Diverses fonctionnalités de définition d'un système d'eau ont été examinées. Mais il est important de préciser comment est assurée la persistance de ces définitions.

La sauvegarde et l'ouverture de fichiers s'effectuent très classiquement, par l'action des boutons Sauvegarder et Ouvrir ou à partir du menu Fichier, à l'aide d'une boîte de dialogue comme présentée sur la Figure C8.1.


Figure C9.1. - Système d'eau - sauvegarde

Suivant l'extension adoptée, le stockage s'effectue suivant divers formats :

  • L'extension hyd correspond à un stockage sous forme binaire, qui utilise le mécanisme de persistance du langage Java. C'est le moyen le plus performant. Voir Les entrées-sorties : les fichiers .

  • L'extension txt correspond au stockage de la définition complète du système d'eau sous forme de texte ASCII au format libre, utilisant les tabulations comme séparateurs. Il permet un échange aisé avec les tableurs par exemple. Voir Les entrées-sorties : les fichiers.

  • L'extension xmd correspond au stockage de la représentation graphique des systèmes au format défini par ActiveMap. Voir Les entrées-sorties : les fichiers .

On peut aisément ajouter d'autres formes de stockage pour des besoins nouveaux.

 

OdefiX - Objectifs - Interface graphique - API - GUI

Les bases de l'interface graphique

Le but d'OdefiX est de pouvoir se concentrer sur la structuration et les fonctionnalités des modèles à définir et non sur l'interface graphique ou l'échanges de données (persistence XML, copier/coller Excel, etc). Théoriquement, aucune écriture spécifique de classes pour l'interface est nécessaire, le temps de développement est alors consacré à la réalisation du modèle.

L'interface proposée permet de :

  • visualiser et modifier des objets structurés (dont des données spatiales et temporelles) et faciliter la navigation entre ces objets ;

  • fournir des vues multiples d'un même objet : définition, tableau, graphique, validité, résultats, etc ;

  • ajouter, copier, couper, coller des objets ;

  • ouvrir, sauver des documents sous des formats texte, XML (Extensible Markup Language) ;

  • gérer les références entre documents => notion de modèle de référence et suivi de variantes (en cours).


 

Certains modèles, notamment pour la gestion des ressources en eau, sont caractérisés par la prise en compte de la variabilité spatio-temporelle des processus. D'où l'importance de disposer d'un système d'information à référence spatiale et temporelle.

L'interface permet une représentation spatialisée du bassin, en différentes couches d'information et à différentes échelles (voir Figure 3.1). C'est la représentation la plus naturelle pour, d'une part, faciliter les dialogues entre thématiciens et gestionnaires et, d'autre part, synthétiser et schématiser des informations.

Figure 3.1. - Représentation spatiale


Parallèlement, la même interface permet d'accéder aux différentes données temporelles : chroniques historiques (pluies, écoulements, populations, etc. ...) et chroniques prospectives liées à des scénarios d'évolution qui seront construits. La représentation des données temporelles est faite, soit sous forme de tableau, soit sous forme de graphiques temporels (voir Figure 3.2).

Figure 3.2. - Représentation chroniques temporelles

 

hydmerg-chart-chro.jpg

 


 

Le but de la plate-forme est de pouvoir activer, modifier et éventuellement construire de manière interactive différents modèles. Ainsi, dans le cas d'un modèle d'allocation des ressources en eau, chacun des composants va pouvoir être défini, modifié avec ses propriétés structurales et ses propriétés de gestion (voir Figure 3.3).

Les systèmes modélisés peuvent être simulés suivant différents paramètres afin de pouvoir évaluer les objets étudiés dans le modèle. Les résultats, qui peuvent être distribués dans l'espace et dans le temps, sont fournis sous forme de cartes, de graphiques, de tableaux, de statistiques, etc.

Figure 3.3. - Vue tableau de définitions

 

hydmerg-elhaoureb.jpg

 



La barre d'outils Vues            permet de visualiser différents aspects de l'objet sélectionné.

  Descriptions

affiche les descriptions de toutes les définitions composant l'objet sélectionné.

 

  Attributs

affiche les attributs (paramètres ne rentrant dans le contenu de la définition) de l'objet sélectionné et de toutes les définitions composant cet objet.

 

  Définition

affiche la définition complète d'un objet, soit une vue à plat de toutes les définitions composant cet objet. Pour détailler une caractéristique, il suffit de positionner le curseur sur la ligne correspondante et d'utiliser le bouton Objet de la barre Sélection pour visualiser cette propriété sous différentes facettes.

 

  Données

affiche les données par colonne, si cette vue à un sens pour l'objet sélectionné.

 

  Validité

affiche des informations relatives à la validité de la définition : rien si l'objet est valide et la liste des incohérences sinon. Il suffit de positionner le curseur sur cette incohérence et d'utiliser le bouton Objet de la barre Sélection pour corriger la définition.

 

  Résultats

affiche les résultats associés à un objet, si ils existent.

OdefiX - Objectifs - Interface graphique - API - GUI

 

Présentation générale

Le but d'OdefiX est de faciliter la conception informatique de modèles de différentes natures et leurs interactions au sein d'une même interface (Pouget et al., 2004a). OdefiX utilise les technologies Java et XML (eXtensible Markup Language) et représente en fait les composants de base de n'importe quelle application voulant décrire et exécuter un modèle.

 

Un objectif général de l'unité DIVHA est de fournir un cadre commun de modélisation et de représentation (OdefiX pour Object Definition Extension) afin de :

 

 faciliter le développement de modèles ; l'emploi d'une approche de modélisation objets et la mise à disposition de composants logiciels (gestion du temps, de l'espace, etc) soutiennent la description de la structure, des propriétés et des dynamiques des modèles ;

 

 favoriser les discussions entre spécialistes et gestionnaires grâce à une interface conviviale (représentations spatiale, graphiques...) ;

 

 faciliter le dialogue entre modèles, grâce à une interface commune, pour simuler des dynamiques qui rendent compte d'interactions entre modèles de natures différentes.

 

Il y a une volonté de développer des modèles génériques, afin de faciliter l'extension et la transposition des modèles construits et de capitaliser les expériences. La constitution de composants logiciels "métiers", utilisables dans d'autres applications, assure cette capitalisation. Les développements envisagés portent ainsi sur :

 

 une évolution des composants du modèle d'allocation de ressources en eau HyD2002 (Pouget et al., 2004b), qui permet de représenter différents types d'aménagements et de simuler divers modes d'allocation en présence d'usages et de règles multiples. Les améliorations vont porter notamment sur la représentation des aquifères, la prise en compte des temps de propagation (Simulsen), de nouveaux algorithmes d'optimisation ;

 

 la constitution de composants pour la modélisation technico-économique des activités agricoles, au niveau régional (ZonAgri) ;

 

 la constitution de composants pour la modélisation hydrologique distribuée utilisée notamment dans le cas de modifications anthropiques importantes des bassins versants (Cudennec et al., 2004a).

 
Cette partie présente les bases du fonctionnement de l'interface graphique proposée et illustre différentes fonctionnalités.
 

Avertissement : L’interface graphique utilisée pour Simulsen est commune à plusieurs logiciels développés au sein de L’unité Divha de l’IRD. De ce fait, toutes ses fonctionnalités ne concernent pas forcément les utilisateurs de Simulsen.

Le logiciel propose un affichage permettant d’accéder à l’ensemble des données et paramètres du répertoire de travail courant qui est toujours C:\SIMULSEN. La logique de l’affichage rappelle celle de l’explorateur de Windows :

  • La première ligne propose des titres sur lesquels un clic gauche provoque l’ouverture de menus associés

  • La seconde ligne (barre d’outils) propose des boutons permettant de déclencher par clic gauche des actions spécifiques.

  • La partie inférieure gauche de l’écran montre le contenu du logiciel sous forme d’une arborescence d’éléments de différentes natures. Contrairement à la version DOS, la version Windows de Simulsen permet à l’utilisateur de se déplacer de façon complètement libre dans l’arborescence du logiciel.

  • La partie inférieure droite de l’écran est une vue affichant le contenu du ou des éléments sélectionnés dans l’arbre

 

 

Le maintien fixe du pointeur de souris sur un objet quelconque affiché sur l’écran (élément de l’arbre ; case de la vue ; boutons d’actions ; menus) fait apparaître une info-bulle liée à l’objet pointé.

 

Le symbole X placé en haut à droite de la fenêtre du logiciel permet de quitter celui-ci. Si des modifications de paramètres ou données intervenues dans Simulsen n’ont pas été répercutées sur les fichiers correspondants, le logiciel demande alors à l’utilisateur s’il désire faire ces sauvegardes ou non.

3.2.1 - Arbre des éléments

 

L’arbre propose deux affichages accessibles respectivement par les options ‘’explorateur’’ et ‘’historique’’ proposées à sa base. L’option ‘’explorateur’’ donne accès à la totalité des éléments accessibles du logiciel, classés en trois grandes rubriques : ‘’Environnement temporel’’, ‘’simulations’’ et ‘’paramètres de Simulsen’’. L’option ‘’historique’’, ne montre que les éléments qui ont été sélectionnés avec l’explorateur depuis le lancement du logiciel.

 

Comme dans l’explorateur de Windows, le clic gauche sur le signe + situé à gauche d’un élément de l’arbre fait apparaître la liste des éléments qui en dépendent directement (développement de l’arbre). Au contraire, le signe moins permet de faire disparaître cette liste (réduction de l’arbre).

 

Sélection dans l’arbre, modification de nom

Lorsque le pointeur de souris est placé sur un élément de l’arbre, un clic gauche provoque la sélection de l’élément alors qu’un double clic gauche permet de modifier son nom. La frappe de la touche ‘’entrée’’ ne valide cependant cette modification de nom que pour un nombre limité d’éléments. Pour les autres, la modification, sans objet, n’est pas enregistrée.

Il est possible de faire une sélection multiple d’éléments de l’arbre par une succession de clics gauches effectués en maintenant la touche CTRL appuyée.

 

Menus contextuels des éléments de l’arbre

Un clic droit sur un élément de l’arbre provoque à fois la sélection de cet élément et l’ouverture d’un menu contextuel. La plupart des actions proposées dans les menus contextuels, variables selon l’élément sélectionné, figurent également dans les menus intitulés ‘’Outils’’ ou ‘’Edition’’ décrits plus bas. Certaines actions spécifiques sont décrites plus loin dans cette notice, avec les éléments auxquels elles sont associées. Les actions de portée plus générale sont décrites ci-dessous :

  • Dupliquer : à partir d’un élément sélectionné dans l’arbre, cette action rajoute un élément similaire dans l’élément parent. Ceci permet par exemple de créer facilement de nouveaux scénarios de besoins de débit à partir de scénarios existants, en apportant simplement les modifications nécessaires au nouveau scénario obtenu.

  • Supprimer : supprime dans l’arbre l’élément sélectionné.

  • Déplacer : permet de changer la position de l’élément sélectionné parmi les éléments de même parent dans l’arbre.

  • Couper : place l’élément sélectionné dans le presse papiers de Windows et provoque sa suppression dans l’arbre.

  • Copier : place une copie de l’élément sélectionné dans le presse papiers de Windows

  • Coller : colle le contenu du presse papiers de Windows dans l’élément sélectionné

  • Tout développer : affiche dans l’arbre les éléments dépendants de l’élément sélectionné

  • Tout réduire : masque dans l’arbre les éléments dépendants de l’élément sélectionné

  • Renommer : permet de renommer le nom de l’élément dans l’arbre. Cette action ne peut être validée que pour certains éléments .

  • Mettre à jour : permet de mettre à jour l’affichage de l’arbre, qui est en principe maintenu à jour en permanence de façon automatique mais peut très rarement ne pas être rafraîchi. L’action ‘’mettre à jour’’ peut être utilisée si l’on soupçonne un tel cas.

  • Ouvrir un nouvel onglet : provoque l’ouverture d’un nouvel onglet dans la vue, dans lequel s’affiche le contenu de l’élément sélectionné dans l’arbre.

  • Fermer l’onglet : supprime l’onglet en cours d’affichage dans la vue.

  • Propriétés : sans intérêt pour l’utilisateur de Simulsen

  • Ajouter : propose une liste dans laquelle on doit choisir un élément qui sera ajouté (en dernier rang) à ceux qui figurent déjà sous l’élément en cours de sélection dans l’arbre.

  • Choisir : permet de choisir une option dans une liste spécifique associée à l’élément sélectionné dans l’arbre.

  • Supprimer le choix : cette action concerne en particulier les éléments placés dans l’arbre sous ‘’scénarios de demandes cumulables’’ et ‘’scénarios de besoins non sommables’’ dans les consignes associées de ‘’débit supérieur à un objectif minimal variable’’, elles-mêmes placées sous ‘’simulation chronologique’’. Elle permet pour le type de besoin concerné de supprimer le choix de scénario en cours pour le remplacer par un hydrogramme nul.

  • Recharger le fichier : Permet de relire les données du fichier associé à l’élément courant afin de retrouver celles-ci dans l’état de leur dernière sauvegarde.

  • Supprimer le fichier : supprime le fichier de données associé à l’élément sélectionné. Sans intérêt pour Simulsen.

 

3.2.2 - Vue du contenu des éléments

 

Onglets

La vue située sur la partie droite de l’écran peut contenir plusieurs fenêtre (jusqu’à 15) associées chacune à un onglet supérieur rappelant l’intitulé de l’élément sélectionné dans l’arbre et affiché. Pour passer d’une fenêtre à une autre, il suffit de faire un clic gauche sur l’onglet désiré.

 

Clics gauches ou droits dans l’arbre

Lorsqu’on sélectionne un élément dans l’arbre avec un clic gauche, le contenu de celui-ci et de tous les éléments dépendants s’affiche sur la fenêtre en cours d’édition dans la vue de droite, à la place du précédent affichage. Si par contre on sélectionne un élément de l’arbre avec un clic droit pour demander ensuite ‘’ouvrir un nouvel onglet’’ dans son menu contextuel, alors ce contenu s’affiche dans une nouvelle fenêtre de la vue. Cet affichage de l’élément sélectionné dans une nouvelle fenêtre peut également être obtenu avec le bouton ‘’visualiser l’élément dans un nouvel onglet’’.

 

Afiichage en mode tableau, texte et graphique

Les modes ‘’tableau’’, ‘’texte’’ et ‘’graphique’’, proposées en bas de la vue et accessibles ou non selon la nature de l’élément sélectionné dans l’arbre, permettent différents modes d’affichage du contenu de cet élément dans la fenêtre en cours de visualisation. Chacun de ces modes peut être sélectionné par clic gauche.

 

3.2.2.1 - Mode Tableau

 

 

Avec le mode ‘’tableau’’, disponible pour la quasi-totalité des éléments de l’arbre, l’affichage dans la vue peut se faire selon les formats ‘’’définition’’ et ‘’données par colonnes’’, sélectionnables avec les boutons représentant des grilles dans la barre d’outils.

 

Valeurs modifiables ou non modifiables

Dans la plupart des cas, les cases grises d’un affichage en mode tableau ne sont susceptibles de contenir aucune valeur, alors que les cases blanches sont destinées à l’affichage de valeurs de paramètres modifiables (caractères noirs) ou non modifiables (caractères gris).

 

Format définition

Le format ‘’définition’’ présente des valeurs dans des cases organisées sous forme de lignes. Ce format est disponible pour quasiment toute sélection dans l’arbre dont le contenu peut être affiché en mode ‘’tableau’’, même si cette sélection contient plusieurs niveaux de sous-éléments de différentes natures. L’ensemble des objets dépendant de la sélection apparaît dans cette vue. Dans le cas d’objets relatifs à des séries chronologiques de valeurs, la vue affiche des tableaux annuels de N lignes et 12 colonnes dont les valeurs sont modifiables (par ex. : données de base) ou non (résultats de simulations) selon la nature de l’objet. Pour les autres types d’objets, chaque ligne affiche en première colonne de façon indistincte, soit le nom d’un élément soit le nom d’un paramètre ou d’une variable dépendant de l’élément placé au dessus. Les cases situées à droite du nom d’un élément simple, d’un paramètre ou d’une variable contiennent les valeurs affectées à ces objets., modifiables ou non selon les cas. Pour la plupart, les cases situées à droite du nom d’un élément complexe (contenant des sous-éléments) sont vides et ne peuvent faire l’objet d’aucune saisie. Certaines d’entre elles contiennent cependant le résultat d’un choix modifiable soit avec l’action ‘’choisir’’ du menu contextuel de l’élément dans l’arbre, soit par saisie directe dans la case (rang de l’option choisie, ou bien 0 ou 1 dans le cas d’un booléen).

 

Format données en colonnes

Le format ’données en colonnes’’ présente des valeurs organisées sous forme de colonnes avec un en-tête placé dans la première case en haut de chacune. Ce type d’affichage est disponible pour des tableaux à simple entrée, qui décrivent l’évolution de variables ou paramètres en fonction d’une unique variable ou paramètre, comme par exemple un barème de correspondance niveau-volume ou des séries chronologiques de débit. Il est également disponible pour les tableaux à double entrée, comme par exemple le rendement des turbines en fonction de la chute et du débit. L’en-tête de chaque colonne contient le nom de la variable ou du paramètre dont les valeurs figurent dans les cases situées en dessous. Selon la nature de l’élément sélectionné, ces valeurs sont modifiables ou non.

 

Sélection dans la vue

Dans une vue en tableau, la sélection d’une case se fait par clic gauche. Le maintien du clic permet de sélectionner un pavé de cases par balayage de celui-ci. Le clic droit (éventuellement avec balayage) entraîne simultanément la sélection de la case pointée (resp. du pavé de cases balayé) et l’ouverture d’un menu contextuel.

 

Saisie dans une case de la vue

La saisie ou la modification d’une valeur dans une case modifiable se fait après un clic gauche sur la case. Après un simple clic, la saisie effectuée remplace la totalité du contenu de la case. Après un double clic, la saisie s’insère dans le contenu préalable de la case.

Dans une case ouverte en saisie par simple clic, la touche d’échappement permet d’abandonner la saisie en cours pour rétablir la valeur préalable contenue dans la case, alors que dans une case ouverte par double clic elle valide la saisie en cours. La touche ‘’entrée’’ valide toujours la saisie en cours et sélectionne la case suivante. En cours de saisie sur une case, un clic sur une autre case sélectionne cette dernière après avoir validé la saisie en cours sur la précédente.

Lorsqu’une case modifiable dans la vue contient un booléen, il est possible de saisir ‘’oui’’ ou ‘’non’’ dans cette case, ou respectivement 1 et 0, ou respectivement ‘’o’’ ou ‘’n’’ qui ont le même effet.

Toute saisie non-conforme (valeur hors intervalle autorisé, format incorrect, lacune interdite, etc.) dans une case entraîne soit la mise en lacune de la case, soit la non modification de celle-ci.

 

Effet de la touche ‘’suppr’’

Selon le mode d’affichage en cours et l’élément sélectionné dans la vue, la frappe de la touche ‘’suppr’’ après simple clic gauche sur une case modifiable entraîne les effets suivants :

  • En format ‘’définition’’ : remplace le contenu de la case par une lacune

  • En format ‘’données en colonnes’’ :

    • pour une chronique : remplace le contenu de la case par une lacune

    • pour une variable y=f(x) : supprime une ligne

    • pour une variable y=f(x,z) : supprime une colonne

 

 

Menus contextuels des cases de la vue

Le clic droit sur une case de la vue en tableau ouvre un menu contextuel proposant des actions sur la vue qui diffèrent selon l’élément sélectionné dans l’arbre. Parmi celles-ci, on peut citer :

  • Voir l’objet sélectionné : équivaut à sélectionner dans l’arbre l’objet équivalent à la case en cours de sélection dans la vue. La vue n’affiche plus alors que le contenu de cet objet.

  • Copier : copie dans le presse-papiers de windows le contenu de la (ou des) case(s) sélectionnée(s) dans la vue.

  • Coller : colle dans le pavé de cases marqué en haut à gauche par la case en cours de sélection dans la vue, le contenu du presse-papiers de Windows.

  • Tout sélectionner : sélectionne l’ensemble de la vue

  • Mettre à jour : actualise l’affichage du tableau. Cette action peut être utilisée lorsqu’on soupçonne que l’affichage n’a pas pris en compte toutes les modifications éventuelles intervenues sur l’élément en cours de sélection.

  • Propriétés : sans intérêt pour l’utilisateur de Simulsen

  • Fermer l’onglet : permet de fermer la fenêtre en cours de visualisation

  • Insérer une colonne de données : permet d’insérer une colonne de données avant la case en cours de sélection dans la vue (tableaux à double entrée)

  • Insérer une colonne de données après : permet d’insérer une colonne de données après la case en cours de sélection dans la vue (tableaux à double entrée)

  • Supprimer des colonnes de données : permet de supprimer les colonnes de données des cases en cours de sélection dans la vue (tableaux à double entrée)

  • Insérer des ligne de données : permet d’insérer un nombre quelconque de lignes de données avant la case en cours de sélection dans la vue (tableaux à simple ou double entrée)

  • Insérer des lignes de données après : permet d’insérer un nombre quelconque de lignes de données après la case en cours de sélection dans la vue (tableaux à simple ou double entrée)

  • Insérer une ligne de données : permet d’insérer une ligne de données avant la case en cours de sélection dans la vue (tableaux à simple ou double entrée)

  • Supprimer des lignes de données : permet de supprimer la ligne de données de la case en cours de sélection dans la vue (tableaux à simple ou double entrée)

  • Effacer toutes les données : efface toutes les données contenues dans l’élément sélectionné

 

D’une façon générale, la modification du nombre de lignes ou de colonnes d’un tableau à simple ou double entrée ne peut être effectuée que dans le format d’affichage ‘’données en colonnes’’, à l’aide des actions d’insertion ou de suppression proposées dans le menu contextuel.

 

 

3.2.2.2 - Mode Texte

 

 

Ce mode d’affichage est surtout utile pour les éléments suivants dont le contenu ne peut être affiché en mode tableau :

  • ‘’description’’ sous chaque résultat de ‘’simulation chronologique’’

  • ‘’description’’ sous chaque résultat de ‘’calcul de niveau extrême d’exploitation’’

  • sous élément de ‘’dernier résultat ….’’ sous ‘’calculs ponctuels de productible….’’

 

Pour la quasi-totalité des autres éléments de Simulsen, ce mode est soit inopérant soit sans intérêt.

 

Les actions proposées dans le menu contextuel accessible par clic droit dans un affichage en mode texte sont ‘’copier’’, ‘’tout sélectionner’’, ‘’rechercher du texte’’ et ‘’mettre à jour’’. L’action ‘’rechercher du texte’’ est sans intérêt pour les utilisateurs de Simulsen, les autres sont décrites au paragraphe 3 .2 .2.1 concernant le mode tableau.

 

3.2.2.3 – Mode Graphique

 

 

Un élément sélectionné individuellement dans l’arbre n’est éditable dans le mode graphique que si son contenu décrit l’évolution d’un certain nombre de variables ou paramètres en fonction d’une variable ou d’un paramètre, comme par exemple : barème de correspondance niveau-volume (paramètres de réservoir) ; série chronologique de débit (environnement temporel) ; hydrogrammes annuels (scénarios de besoins), limnigrammes mininimaux ou maximaux annuels (consignes de niveaux limites à respecter dans la retenue). Par défaut, chaque couple (x,y) est représenté par un point en mode graphique, un tracé continu reliant entre eux les points qui ne sont séparés par aucune lacune dans le tableau de données.

 

Il est possible d’utiliser le mode graphique pour une sélection multiple d’éléments de l’arbre, à condition que tous les éléments sélectionnés soient éditables individuellement dans ce mode. Le graphique obtenu n’a cependant d’intérêt que si les marges de variation des différents éléments sont du même ordre de grandeur pour tous ces éléments, à la fois pour les abscisses et pour les ordonnées.

 

Le logiciel propose quelques possibilités de manipulations sur les graphiques affichés :

  • effectuer un zoom en balayant la zone souhaitée par clic gauche et en maintenant simultanément la touche Maj du clavier enfoncée ;

  • obtenir une vue générale du graphique, après un zoom, par action de la touche R du clavier ;

  • modifier une valeur avec le bouton gauche de la souris et la touche Ctrl du clavier enfoncés ; lorsque la valeur est modifiable, la modification de la définition est dynamique

  • modifier des propriétés du graphique par l'action du bouton droit de la souris . Il est possible en décochant ‘’visualisation des symboles’’ de faire disparaître les points associés aux couples (x,y), le graphe se présentant alors comme un tracé continu entre les points non séparés par des lacunes . Il est également possible (‘’propriétés’’) de modifier des couleurs , titres, symboles, échelles etc…

3.2.3 - Boutons de la barre d’outils

Les différents boutons proposés sur la deuxième ligne de l’écran de Simulsen sont listés ci-dessous, dans l’ordre de leur position de gauche à droite.

  • Sauvegarder les données dans le fichier courant : l’ensemble des modifications effectuées sur les différents éléments du logiciel depuis son lancement ou depuis la dernière sauvegarde est répercuté sur les fichiers de paramètres et de données

  • Elément précédent dans l’historique des sélections. : permet de sélectionner l’élément qui était sélectionné avant l’élément en cours de sélection.

  • Elément suivant dans l’historique des sélections : action inverse de l’action précédente.

  • Mettre à jour l’affichage de la vue : actualise l’affichage de la vue courante. Cette action peut être utilisée lorsqu’on soupçonne que l’affichage n’a pas pris en compte toutes les modifications éventuelles intervenues sur l’élément en cours de sélection

  • Simuler la sélection : permet de lancer un des trois types de calcul proposés par le logiciel, précédé par une mise à jour automatique de ses fichiers de paramètres et données à partir des valeurs chargées en mémoire et par une recherche automatique des incohérences éventuelles de ces paramètres. Ce bouton n’est accessible que si la sélection (simple) dans l’arbre porte sur l’un des trois éléments suivants : ‘’simulation chronologique’’ ; ‘’calcul de niveau extrême d’exploitation’’ ; ‘’calculs ponctuels de productible énergétique ou de capacité d’évacuation’’.

  • Couper les données sélectionnées : Copie les données dans le presse papier de windows tout en les supprimant de l'emplacement d'origine au moment du collage. Cette action n’opère que pour certains éléments sélectionnés dans l’arbre et certaines données sélectionnées sur la vue.

  • Copier les données sélectionnées : copie l’objet sélectionné (dans l’arbre ou dans la vue) dans le presse-papiers de Windows.

  • Coller les données sélectionnées dans la sélection : colle le contenu du presse-papiers dans l’objet sélectionné, qui peut être un élément de l’arbre ou une case de la vue en format tableau. Cette action n’opère que si le contenu du presse-papiers est compatible avec l’objet sélectionné.

  • Visualiser l’élément dans un nouvel onglet : le contenu de l’élément en cours de sélection dans l’arbre s’affiche dans une nouvelle fenêtre de la vue.

  • Fermer l’onglet actif : la fenêtre en cours de visualisation se ferme. Cette action n’est proposée que si le nombre de fenêtres ouvertes dans la vue est au moins égale à deux.

  • Descriptions : sans intérêt pour l’utilisateur de Simulsen

  • Définition : entraîne l’affichage en format standard du contenu de la sélection pour une édition en mode ‘’Tableau’’.

  • Données par colonnes : entraîne l’affichage en format colonne du contenu de la sélection pour une édition en mode ‘’Tableau’’. Ce format n’est accessible que pour certains types de sélections.

  • Incohérences : teste la cohérence du contenu de l’élément sélectionné dans l’arbre. Ces tests correspondent à ceux que la version DOS du logiciel effectue soit directement au niveau des grilles de saisie des paramètres, soit au lancement des procédures de calcul. Suite à cette action, qui peut pour certains éléments s’accompagner d’éventuelles corrections automatiques, la vue affiche soit ‘’aucune incohérence’’ si le contenu de l’élément est correct, soit la teneur des problèmes rencontrés s’il y en a. Simultanément, l’ensemble des modifications effectuées sur les différents éléments du logiciel depuis son lancement est répercuté sur les fichiers de paramètres et de données. Tout élément de l’arbre permettant de lancer un calcul (‘’simulation chronologique’’, ‘’calcul de niveau extrême d’exploitation’’ et ‘’calcul ponctuel de productible énergétique’’) doit avoir un contenu exempt de toute incohérence pour que le calcul correspondant puisse être effectué. A chaque fois que l’utilisateur demande un calcul, une recherche préalable des incohérences est donc lancée automatiquement par le logiciel.

  • Résultats : Lorsque l’élément ‘’simulation chronologique’’ ou ‘’calcul de niveau extrême d’exploitation’’ est sélectionné dans l’arbre, ce bouton provoque la sélection et l’affichage de l’élément ’description’’ du dernier résultat correspondant. Lorsque l’élément ‘’calcul ponctuel de productible ou de capacité d’évacuation’’ est sélectionné, il provoque la sélection et l’affichage du tableau des derniers résultats correspondant. Enfin, quand un élément de type série chronologique est sélectionné dans l’arbre, l’appel de ‘’résultats’’ propose divers traitements statistiques pouvant être effectués sur cette chronique. Ces traitements qui sont décrits au $ 3.2.3.1 et qui génèrent des éléments placés sous un élément ‘’résultats’’ lui-même placé dans l’arbre sous l’élément sélectionné, peuvent être appliqués sur des éléments des types suivants :

  • Elément placé sous ‘’chroniques de débits observés’’

  • Eléments placés sous ‘’chroniques…’’ sous ‘’résultats de simulation chronologique’’

  • Elément placé sous ‘’chronique : niveau’’ sous ‘’résultats de calcul de niveau extrême d’exploitation’’

  • Eléments placés sous ‘’statistiques…’’ sous ‘’résultats de calcul de niveau extrême d’exploitation’’

  • Elément ‘’évaporation’’ placé sous ‘’ données topographiques’’ sous ‘réservoirs’’

  • Scénarios d’objectifs de type autre que irrigation, placés dans ‘’réservoirs’’

  • Elements placés sous ‘’consignes de niveau minimal (ou maximal) sous ‘’consignes de niveaux limites à respecter dans la retenue’’

  • Eléments eux-mêmes créés par le bouton ‘’résultats’’ et placés dans l’arbre sous un élément ‘’résultats’’ (possibilité de calculs en chaîne).

 

3.2.3.1 – Traitements statistiques proposés par le bouton ‘’résultats’’

Pour pouvoir effectuer un traitement statistique sur une série chronologique, il faut d’abord faire apparaître la liste des traitements possibles, ce qui peut se faire des deux façons suivantes :

  • Sélectionner dans l’arbre l’élément à traiter puis cliquer sur le bouton ‘’résultats’’

  • Sélectionner s’il existe un élément ‘’résultats’’ déjà généré et situé sous l’élément à traiter

Il faut ensuite faire un clic droit sur le type de calcul que l’on désire effectuer, puis sélectionner l’action ‘’voir l’objet sélectionné’’ dans le menu contextuel qui s’affiche. Les résultats du calcul s’affichent alors sur la vue, associés à un élément placé simultanément dans l’arbre sous ‘’résultats’’ , lui-même placé sous l’élément analysé. Tant qu’il ne sont pas supprimés par l’utilisateur et tant que le logiciel n’est pas fermé, ces divers résultats bstatistiques peuvent être rappelés à l’affichage en sélectionnant l’élément correspondant dans l’arbre.

 

Les calculs proposés sont les suivants :

 

  • Chroniques des moyennes décadaires : Pour chaque mois d’une chronique journalière, les moyennes sont calculées à partir des valeurs non lacunaires pour les trois périodes allant du 1er au 10, du 11 au 20 et du 21 à la fin du mois. Le nombre de valeurs journalières lacunaires est en outre indiqué pour chacune de ces périodes. L’affichage en format ‘’définition’’ donne pour chaque année trois lignes de 12 moyennes décadaires et trois lignes de nombres de lacunes journalières. Ces résultats peuvent être affichés en format ‘’données en colonnes’’

  • Chroniques des moyennes mensuelles : Pour chaque mois d’une chronique journalière, une moyenne est calculée à partir des valeurs non lacunaires. Le nombre de valeurs journalières lacunaires est en outre indiqué pour chacune de ces périodes. L’affichage en format ‘’définition’’ donne pour chaque année une ligne de 12 moyennes mensuelles et une ligne de nombres de lacunes journalières. Ces résultats peuvent être affichés en format ‘’données en colonnes’’

  • Chroniques des moyennes annuelles : Pour chaque année d’une chronique journalière, une moyenne est calculée à partir des valeurs non lacunaires. Le nombre de valeurs journalières lacunaires est en outre indiqué pour chaque année. L’affichage des résultats donne pour chaque année une moyenne annuelle et le nombre de lacunes journalières.

  • Moyennes journalières sur toutes les années : pour chacun des 365 jours de l’année, une moyenne est calculée à partir des valeurs non lacunaires de ce jour sur toutes les années d’une chronique journalière. L’affichage en format ‘’définition’’ donne un tableau de 31 lignes et 12 colonnes de valeurs moyennes. En plus de ces moyennes, l’affichage en format ‘’données en colonnes’’ indique le nombre de lacunes journalières rencontrées sur la période pour chacun des 365 jours de l’année.

  • Moyennes décadaires sur toutes les années : pour chacune des 36 décades de l’année, une moyenne est calculée à partir des valeurs journalières non lacunaires de ces décades sur toutes les années d’une chronique journalière. L’affichage en format ‘’définition’’ donne un tableau de 3 lignes de 12 moyennes décadaires et 3 lignes de nombres de lacunes journalières. Ces résultats peuvent être affichés en format ‘’données en colonnes’’ .

  • Moyennes mensuelles sur toutes les années : pour chacun des 12 mois de l’année, une moyenne est calculée à partir des valeurs journalières non lacunaires de ces mois sur toutes les années d’une chronique journalière. L’affichage en format ‘’définition’’ affiche une ligne de 12 moyennes mensuelles et 1 ligne de nombres de lacunes journalières. Ces résultats peuvent être affichés en format ‘’données en colonnes’’ .

  • Moyenne annuelle sur toutes les années : une valeur moyenne est calculée à partir des valeurs journalières non lacunaires d’une chronique journalière. Cette moyenne est affichée avec le nombre de valeurs journalières lacunaires relevé dans la chronique.

  • Chroniques iso-fréquence : A partir des valeurs non lacunaires la chronique originale analysée sur toute sa durée, cette procédure calcule 27 chroniques annuelles correspondant à des fréquences de non dépassement prédéfinies. Ces fréquences qui s’étalent de 99/100 à 1/99 en passant par 1/2, peuvent être modifiées dans la vue des résultats affichés en format ‘’données en colonnes’’. Le nombre de valeurs contenues dans chaque chronique annuelle iso-fréquence (365, 36 ou 12) dépend de la nature de la chronique originale (valeurs journalières, décadaires ou mensuelles). Selon la durée de la chronique originale analysée, les valeurs calculées pour certaines fréquences éloignées de 0,5 peuvent être fortement extrapolées. L’utilisateur devra en tenir compte dans son interprétation. Par exemple, des valeurs centennales calculées à partir d’une chronique de 10 ans seront forcément très peu fiables.

  • Fonctions de répartition : cette procédure classe par ordre croissant les valeurs non lacunaires de la chronique analysée sur toute sa durée. Elle attribue ensuite à chaque valeur une fréquence expérimentale de non dépassement égale à (j-0,5)/N, avec N le nombre total de valeurs non lacunaires et j le rang de la valeur.

  • Fonction de répartition utilisateur : cette procédure reproduit dans un premier temps les calculs effectués par la procédure précédente. A partir de la fonction de répartition expérimentale obtenue, elle détermine ensuite par interpolation linéaire les valeurs correspondant à 27 fréquences de non dépassement prédéfinies s’étalant de 99/100 à 1/99 en passant par 1/2. Ces fréquences peuvent être modifiées dans la vue affichant les résultats.

  • Caractéristiques annuelles de non dépassement sur N jours consécutifs : pour chaque année d’une chronique journalière, la procédure détermine la plus petite des valeurs ayant été non dépassée pendant N jours consécutifs. La valeur de N, égale à 7 par défaut, peut être modifiée dans la vue affichant les résultats. Le nombre de périodes de N jours ayant au moins une lacune journalière est également indiqué.

  • Caractéristiques annuelles de dépassement sur N jours consécutifs : pour chaque année d’une chronique journalière, la procédure détermine la plus grande des valeurs ayant été atteinte ou dépassée pendant N jours consécutifs. La valeur de N, égale à 7 par défaut, peut être modifiée dans la vue affichant les résultats. Le nombre de périodes de N jours ayant au moins une lacune journalière est également indiqué.

  • Caractéristiques annuelles de non dépassement sur N jours non consécutifs : pour chaque année d’une chronique journalière, la procédure indique la Nieme plus petite valeur de l’année ainsi que le nombre de lacunes journalières. La valeur de N, égale à 7 par défaut, peut être modifiée dans la vue affichant les résultats.

  • Caractéristiques annuelles de dépassement sur N jours non consécutifs : pour chaque année d’une chronique journalière, la procédure indique la Nieme plus grande valeur de l’année ainsi que le nombre de lacunes journalières. La valeur de N, égale à 7 par défaut, peut être modifiée dans la vue affichant les résultats.

  • Nombre annuel de jours de dépassement de seuil : pour chaque année d’une chronique journalière, la procédure indique le nombre de jours ou la valeur est supérieure ou égale à un seuil S qui peut être modifié dans la vue affichant les résultats. Elle indique également le nombre de lacunes journalières.

  • Nombre annuel de jours de non dépassement de seuil : pour chaque année d’une chronique journalière, la procédure indique le nombre de jours ou la valeur est inférieure ou égale à un seuil S qui peut être modifié dans la vue affichant les résultats. Elle indique également le nombre de lacunes journalières.

3.2.4 - Menus accessibles avec les titres de la première ligne

 

La plupart des actions proposées dans ces menus sont également accessibles par les boutons de la barre d’outils ou par les menus contextuels

 

3.2.4.1 - Fichier

 

  • Sauvegarder : l’ensemble des modifications effectuées sur les différents éléments du logiciel depuis son lancement ou depuis la dernière sauvegarde est répercuté sur les fichiers de paramètres et de données du répertoire C:\SIMULSEN

  • Quitter : permet de quitter le logiciel. Si des modifications ont été effectuées sur certains éléments de Simulsen depuis son lancement (ou depuis la dernière sauvegarde), le logiciel demande si l’on désire sauvegarder ces modifications. En cas de réponse positive, elles sont répercutées sur les fichiers de paramètres et données.

 

 

 

3.2.4.2 - Edition

 

  • Couper : même fonction que le bouton de même nom. Cette action est également proposée dans de nombreux menus contextuels.

  • Copier : même fonction que le bouton de même nom. Cette action est également proposée dans de nombreux menus contextuels.

  • Coller : même fonction que le bouton de même nom Cette action est également proposée dans de nombreux menus contextuels.

  • Tout sélectionner : Sélectionne l’ensemble de la vue. Cette action est également proposée dans certains menus contextuels.

 

3.2.4.3 - Outils

 

Les actions proposées ici, qui ne concernent que les éléments sélectionnés dans l’arbre et pas les sélections effectuées dans la vue, sont également proposées dans les menus contextuels des éléments concernés, et diffèrent en fonction de ceux-ci. Ces actions (supprimer, déplacer, ajouter, choisir, détacher, recharger le fichier) sont décrites dans le paragraphe 3.2.1 relatif à l’arbre des éléments.

 

3.2.4.4 – Vue

Les actions proposées ici sont toutes décrites dans le paragraphe 3.2.3 relatif aux boutons de la barre d’outils

 

 
3.3 - Elément : Environnement temporel
 
3.3.1 - Chroniques des données de base (débits observés)

Sous cet élément figurent des chroniques de débit journalier associées à des stations figurant dans au moins un des réseaux de stations décrits sous l’élément ‘’paramètres de Simulsen’’. Chaque chronique est définie sur une période caractérisée par une date de début et une date de fin, entre lesquelles il est possible de modifier les valeurs de débit journalier. En pratique, la mise à jour d’une chronique de données se fait dans la vue, soit par saisie directe de valeurs dans les cases, soit de préférence (en format ‘’données par colonnes’’) par l’action ‘’coller’’ d’une série de valeurs préalablement copiées dans un tableur ou une base de données externe. L’ajout d’une nouvelle chronique s’effectue avec l’action ‘’ajouter’’ proposée dans le menu contextuel de ‘’chroniques de débits observés’’. Elle peut aussi se faire par duplication d’une chronique existante, à l’aide de l’action ‘’dupliquer’’ proposé dans le menu contextuel de celle-ci.

En plus d’actions standard décrites plus haut, le menu contextuel des chroniques de débits observés propose les actions spécifiques suivantes :

  • Ajout d’années : permet d’étendre la période couverte par la chronique en ajoutant un certain nombre d’années au début ou à la fin. La période ajoutée est remplie de valeurs lacunaires que l’utilisateur peut ensuite remplacer par des valeurs par saisie ou par collage

  • Suppression d’années : opération inverse de la précédente, cette action permet d’écourter la période couverte par la chronique d’un certain nombre d’années au début ou la fin. Les données de la période supprimée sont alors perdues si une sauvegarde intervient avant ou au moment de la fermeture du logiciel

  • Créer une sous chronique : une sous chronique est placée sous l’élément ’’résultats’’ de a chronique originale. Elle reprend les valeurs de cette dernière sur une période définie par une date de début et une date de fin à préciser. La création de sous-chronique peut être utile pour effectuer par exemple certains traitements statistiques sur une partie de la période couverte par la chronique originale.

  • Interpolation : les valeurs lacunaires de la chronique sont remplacées par des valeurs reconstituées au choix par interpolation linéaire, par palier ou par méthode de Lagrange (cette dernière méthode ne peut être utilisée que si les lacunes sont peu nombreuses dans la chronique). Les lacunes situées en début ou fin de chronique sont également reconstituées par extrapolation par les mêmes méthodes

  • Associer à une station : cette procédure qui est activée automatiquement lors de la création de toute nouvelle chronique de débit observé, peut être activée à la demande pour une chronique existante. Elle permet d’associer la chronique à une des stations déjà paramétrée dans simulsen (paramètres simulsen – réseaux de stations). En pratique, les débits de la chronique seront sauvegardés dans un fichier nommé en fonction de la station associée.

  • Définir la période : permet de modifier la date de début et la date de fin de la chronique. La nouvelle chronique obtenue prend les valeurs de débit de la chronique originale sur leur période commune et se trouve éventuellement remplie de lacunes en dehors de celle-ci.


3.3.2 - Résultats des simulations

3.3.2.1 - Résultats de simulations chronologiques


 

A chaque fois qu’une simulation chronologique est effectuée, un nouvel élément de résultats dont le contenu est non modifiable, est ajouté dans cette rubrique. Chaque élément de résultats est caractérisé par un rang et un titre non modifiables qui lui sont définitivement associés. La suppression instantanée et définitive d’un élément de résultats à l’aide de l’action ‘’supprimer’’ proposée dans son menu contextuel n’entraîne donc aucune modification des rangs des éléments subsistant dans la rubrique.

Chaque élément de résultat contient deux éléments : ‘’description’’ et ‘’chroniques’’. Un troisième élément (‘’chroniques de cultures de décrue’’) est également présent lorsque les conditions décrites au paragraphe 2.4.10 de la notice de version DOS sont vérifiées par la simulation génératrice du résultat. L’élément ‘’description’’, dont le contenu s’affiche en format texte dans la vue, donne le détail de tous les paramètres retenus pour la simulation concernée. Il correspond à l’édition du compte-rendu de simulation proposé dans la version DOS de Simulsen. Un clic gauche sur l’élément ‘’chroniques’’ entraîne l’affichage à sa gauche du signe + dans l’arbre, qui permet d’accéder aux chroniques journalières créées par la simulation pour les différentes variables concernées. L’élément ‘’chronique de cultures de décrue’’ contient quant à lui la chronique annuelle de superficies de cultures de décrue et les dates des corps de crue associés à ces superficies.

Comme toutes les chroniques, celles que contiennent les résultats de simulations chronologiques permettent l’extraction de sous-chroniques (menu contextuel) et peuvent être analysées par les procédures statistiques accessibles avec le bouton ‘’résultats’’.

3.3.2.2 - Résultats de calculs de niveaux extrêmes d’exploitation


A chaque fois qu’un calcul de niveau extrême d’exploitation est effectué, un nouvel élément de résultats dont le contenu est non modifiable, est ajouté dans cette rubrique. Chaque élément de résultats est caractérisé par un rang et par un titre non modifiable qui lui est définitivement associé. La suppression instantanée et définitive d’un élément de résultats à l’aide de l’action ‘’supprimer’’ proposée dans son menu contextuel entraîne une réorganisation des rangs des éléments subsistant dans la rubrique.

Chaque élément de résultat contient trois éléments : ‘’description’’, ‘’chronique’’ et ‘’statistique’’. L’élément ‘’description’’, dont le contenu s’affiche en format texte dans la vue, donne le détail de tous les paramètres retenus pour le calcul concerné, ainsi que quelques statistiques sur les résultats obtenus. . Un clic gauche sur l’élément ‘’chronique’’ entraîne l’affichage à sa gauche du signe + dans l’arbre, qui permet d’accéder à la chronique de niveau extrême dans la retenue créée par le calcul. Un clic gauche sur l’élément ‘’statistiques’’ permet de la même façon d’accéder aux limnigrammes isofréquence annuels déduits de cette chronique pour divers temps de retour.

Le menu contextuel de chaque limnigramme isofréquence propose l’action ‘’copier vers’’, qui permet d’ajouter ce limnigramme annuel dans la liste des consignes de niveau minimal ou maximal (au choix de l’utilisateur) à respecter dans le réservoir.

Les chroniques de niveau extrême ainsi que les limnigrammes isofréquence associés permettent l’extraction de sous-chroniques (menu contextuel) et peuvent être analysées par les procédures statistiques accessibles avec le bouton ‘’résultats’’.

 

 
3.4 - Element : Simulations

Au démarrage du logiciel, chaque élément associé à un type de calcul ((‘’simulation chronologique’’ ; ‘’calcul de niveau extrême d’exploitation’ ; ‘’calculs ponctuels de productible énergétique ou de capacité d’exploitation’’) est paramétré conformément à la dernière sauvegarde intervenue. La sauvegarde des paramètres se fait de façon automatique lorsqu’un calcul est lancé. Elle peut également être faite à tout moment à l’aide de l’action ‘’sauvegarder’’ du menu fichier, ainsi qu’à la fermeture du logiciel par confirmation de la sauvegarde proposée.

Avant de lancer un des trois types de calcul proposés par Simulsen, il est nécessaire de paramétrer l’élément associé, qui se trouve dans la rubrique ‘’simulations’’. Pour lancer le calcul, il suffit ensuite de sélectionner cet élément puis d’actionner le bouton ‘’simuler la sélection’’ représentant un robinet dans la barre d’outils.

Dans le cas où des incohérences sont détectées par le logiciel au niveau des paramètres retenus pour le calcul, celui-ci avorte et la vue signale les incohérences relevées. Sinon, après un déroulement normal du calcul, les résultats de simulation chronologique ou de calcul de niveau extrême d’exploitation s’ajoutent à la liste des résultats déjà enregistrés, alors que ceux du calcul ponctuel de productible ou de capacité d’évacuation remplacent ceux du calcul précédent. Le logiciel sélectionne ensuite automatiquement un élément dépendant des résultats obtenus (‘’description’’ pour les deux premiers types de calcul ou tableau des résultats pour le troisième) et en affiche le contenu dans la vue.

Les trois paragraphes suivants décrivent essentiellement les spécificités de l’interface liées au réglage des paramètres de calcul. D’une façon générale, toute modification de paramètre est effectuée par saisie directe dans la vue, sauf pour certains choix d’options qui doivent être effectués avec l’action ‘’choisir’’ proposée dans les menus contextuels associés ou le menu ‘’outils’’.

 

3.4.1 – Simulation chronologique

3.4.1.1 – Titre, réservoir, réseau de station

Le titre de la simulation peut être modifié directement dans l’arbre après un double clic gauche sur l’élément de calcul.

Le choix des jeux de paramètres de réservoir et de réseau de stations à utiliser doit être effectué avec l’action ‘’choisir’’ des menus contextuels de ces éléments, qui propose la liste des jeux de paramètres existants.

Les conditions aux limites doivent être saisies directement dans la vue, sauf pour ‘’choix de débit lâché min ou max compatible avec les lâchures’’ et ‘’ option de niveau de plan d’eau imposé à date fixe’’ qui sont modifiables avec l’action ‘’choisir’’ de leurs menus contextuels.

 

3.4.1.2 – Consignes

3.4.1.2.1 – Ajout, suppression ou déplacement de consigne

Le signe + placé à gauche de l’élément ‘’consignes’’ permet d’afficher dans l’arbre la liste des consignes prises en compte, par ordre de priorité décroissante. Il est possible d’ajouter une consigne à cette liste avec l’action ‘’ajouter’’ proposée dans le menu contextuel de ‘’consignes’’ ou dans le menu ‘’outils’’. L’utilisateur doit alors choisir la consigne à ajouter dans la liste qui lui est proposée.

La suppression d’une consigne de la liste s’effectue avec l’action ‘’supprimer’’ proposée dans son menu contextuel ou dans le menu ‘’outils’’.

Pour modifier la place d’une consigne dans la liste, et donc son rang de priorité, il suffit d’utiliser l’action ‘’déplacer’’ proposée dans son menu contextuel.

 

3.4.1.2.1 – Modification des paramètres des consignes

Les paramètres de consigne qui appellent une valeur numérique peuvent être modifiés sans difficulté par saisie directe dans la vue et on n’en dira donc pas plus à leur sujet.

Les paramètres qui appellent un choix  parmi une liste peuvent selon leur nature être modifiés soit par saisie de ‘’oui’’ ou ‘’non’’ ou d’un rang dans la vue, soit par l’action ‘’choisir’’ de leurs menus contextuels, soit par ces deux moyens. Ils sont détaillés ci-dessous pour les différentes consignes concernées.

  • ‘’Niveau de retenue inférieur à une cote maximale fixe’’ : le choix de la cote maximale fixe doit être fait à l’aide de l’action ‘’choisir’’ du menu contextuel de cet élément, entre ‘’cote maximale de sécurité du barrage’’ et ‘’autre cote maximale’’.

  • ‘’Débit supérieur à une valeur minimale fixe (débit sanitaire)’’ : le choix de l’option de ‘’débit réservé à une station située à l’aval du barrage’’ doit être fait avec l’action ‘’choisir’’ du menu contextuel de cet élément. En cas de choix positif, la station où est défini l’objectif peut être précisée dans la vue (saisie du rang parmi les stations situées à l’aval du barrage) ou dans le menu contextuel de cet élément avec l’action ‘’choisir’’. L’option de ‘’réduction du débit réservé à l’aval en cas de stock faible’’ doit être précisée à l’aide de l’action ‘’choisir’’ de son menu contextuel. Par contre l’option ‘’occultation des consignes de priorité inférieure’’, sans élément dépendant, doit être précisée par saisie de ‘’oui’’ ou ‘’non’’ dans la vue.

  • ‘’Débit inférieur à Qmax (laminage)’’ : la ‘’station où l’objectif de débit est défini’’ peut être précisée dans la vue (saisie du rang parmi les stations situées à l’aval du barrage) ou dans le menu contextuel de cet élément avec l’action ‘’choisir’’. Noter que le rang nul correspond à l’aval immédiat du barrage.

  • ‘’Niveau de retenue inférieur (resp. supérieur) à une valeur maximale (resp. minimale) variable’’ : le ‘’choix du limnigramme de niveau maximal (resp. minimal)’’ peut être effectué dans la vue (saisie du rang parmi la liste des limnigrammes limites proposés) ou dans le menu contextuel de cet élément avec l’action ‘’choisir’’.

  • ‘’Débit supérieur à un objectif minimal variable (besoins sommables)’’ : pour chaque catégorie de besoin considéré, le ‘’scénario’’ peut être précisé dans la vue (par saisie du rang parmi la liste des scénarios existants) ou dans le menu contextuel de cet élément avec l’action ‘’choisir’’. Pour ne pas prendre en compte une catégorie de besoin sommable (ce qui équivaut à choisir un scénario de débit nul pour cette catégorie), il suffit d’utiliser l’action ‘’détacher’’ proposée dans son menu contextuel. La ‘’station où l’objectif de débit est défini’’ peut être précisée dans la vue (saisie du rang parmi les stations situées à l’aval du barrage) ou dans le menu contextuel de cet élément avec l’action ‘’choisir’’. La saisie d’un rang nul revient à situer cette station à l’aval immédiat du barrage.

  • ‘’Débit supérieur à un objectif minimal variable (besoins non sommables)’’ : mêmes commentaires que pour la consigne précédente. En plus, l’option ‘’possibilité d’occulter la consigne’’ doit être précisée’’ à l’aide de l’action ‘’choisir’’ de son menu contextuel. En cas de choix positif, l’élément ‘’procédure suivie en cas d’occultation’’ doit lui aussi être précisé de la même façon.

  • ‘’Puissance supérieure à une valeur minimale Pmin (hydroélectricité’’ : Les éléments suivants ne peuvent être précisés qu’à l’aide de l’action ‘’choisir’’ proposée dans leurs menus contextuels respectifs : ‘’option de restriction de période pour demande du maximum productible’’ ; ‘’type d’objectif Pmin prédéfini’’ ; ‘’option quand l’objectif Pmin ne peut être atteint’’ ; ‘’option sur limite Qmax de débit lâché’’ ; ‘’choix de limite Qmax supplémentaire pour l’étiage’’. Si l’option de ‘’restriction de période pour la demande du maximum productible’’ a été retenue, alors, il faut préciser l’option de ‘’turbinage maximal systématique en cas de déversement’’ par saisie directe de ‘’oui’’ ou ‘’non’’ dans la vue. Si un objectif de Pmin prédéfini variable a été retenu, alors il faut préciser le ‘’scénario de puissance Pmin’’ soit par saisie directe de son rang dans la vue, soit à l’aide de l’action ‘’choisir’’ proposée dans son menu contextuel.

 

3.4.2 - Calcul de niveau extrême d’exploitation

Les modifications du titre du calcul et des choix de jeux de paramètres de réservoir et de réseau de stations s’effectuent de la même façon que pour les simulations chronologiques.

Le ‘’choix de l’objectif envisagé’’ s’effectue avec l’action ‘’choisir’’ du menu contextuel de cet élément. Si l’objectif inclut un objectif de puissance à produire, alors le calcul porte obligatoirement sur des niveaux minimaux d’exploitation compatibles avec cet objectif global. Sinon, l’utilisateur doit choisir entre ‘’cote limite minimum’’ et ‘’cote limite maximum’’ à l’aide de l’action ‘’choisir’’ du menu contextuel de l’élément ‘’calcul de cote envisagé’’.

Pour chaque nature d’objectif XXXX (niveau de retenue, débit lâché, puissance produite) faisant partie de l’objectif envisagé, l’arbre affiche un élément ‘’type d’objectif de XXXX’’ pour lequel on doit choisir entre ‘’constant’’ et ‘’variable’’ à l’aide de l’action ‘’choisir’’ de son menu contextuel.. Pour un objectif variable de niveau (resp. puissance), l’arbre affiche en outre un élément ‘’choix du limnigramme de niveau minimal (ou maximal)’’, (resp. ‘’scénario de puissance Pmin’’). Cet élément doit être précisé soit par saisie directe du rang de limnigramme ou de scénario dans la vue, soit avec l’action ‘’choisir’’ de son menu contextuel.

Lorsque le ‘’calcul de cote envisagé’’ est du type ‘’cote limite minimum’’ (resp. ‘’cote limite maximum’’), l’élément ‘’limite maximale de cote’’ (resp. ‘’limite minimale de cote’’), indépendant de l’objectif de niveau à respecter, correspond à une contrainte de niveau extrême admissible. L’élément ‘’limite minimale de cote’’ (resp. ‘’limite maximale de cote’’) correspond alors à l’objectif de niveau à respecter si celui-ci est constant, et reste inactivé dans le cas d’un objectif de niveau variable.

 

L’option de ‘’recalage annuel du niveau de plan d’eau au niveau initial’’ doit être précisée par saisie directe de ‘’oui’’ ou ‘’non’’ dans la vue.

Le ‘’choix des fréquences analysées doit enfin être fait à partir du menu contextuel de cet élément’’.

3.4.3 - Calculs ponctuels de productible énergétique ou de capacité de lâchure

Il n’y a pas lieu d’affecter un titre aux calculs de ce type, dont les résultats remplacent systématiquement ceux du calcul précédent. Par contre, le choix du jeu de paramètres de réservoir s’effectue comme pour les autres types de calcul.

Les éléments suivants doivent être précisés à l’aide de l’action ‘’choisir’’ de leurs menus contextuels : ‘’mode de traitement’’, ‘’choix des valeurs à tester’’ et, dans le cas d’un calcul de productible, ‘’choix des paramètres connus’’

   


3.5.1 – Réservoirs

Cet élément peut contenir un nombre quelconque de jeux de paramètres dont chacun, assorti d’un titre modifiable après double clic gauche, décrit une configuration de barrage.

A l’aide des actions proposées dans son menu contextuel, chaque jeu de paramètres peut être déplacé, supprimé ou dupliqué dans la liste présente sous l’élément ‘’réservoir’’.

Chaque configuration de barrage est caractérisée par un ensemble figé de paramètres numériques organisés en valeurs simples et en tableaux à simple ou double entrée. Toute modification d’un jeu de paramètres s’effectue donc par saisie directe dans la vue.

Dans un tableau à simple entrée, la dimension de celui-ci peut être diminuée en supprimant un couple de valeurs à l’aide de l’action ‘’supprimer des lignes de données’’ proposée dans le menu contextuel des cases correspondantes. Cette dimension peut être augmentée à l’aide des actions d’insertion proposées dans ces mêmes menus contextuels.

Pour diminuer les dimensions d’un tableau à double entrée comme celui des coefficients de rendement en fonction du débit turbiné et de la chute nette, il suffit d’utiliser les actions ‘’supprimer des lignes de données’’ ou ‘’supprimer des colonnes de données’’ proposées dans le menu contextuel des cases correspondantes. Ces dimensions peuvent être augmentées à l’aide des actions d’insertion proposées dans ces mêmes menus contextuels.

Les actions permettant de modifier les dimensions d’un tableau à simple ou double entrée ne sont accessibles qu’à partir du format d’affichage ‘’données en colonnes’’.

 

3.5.2 – Scénarios

Chaque élément placé dans l’arbre sous scénario représente une catégorie d’objectifs de gestion concernant des débits ou des puissances à atteindre. Pour ajouter une nouvelle catégorie d’objectifs, il suffit d’utiliser l’action ‘’ajouter’’ proposée dans le menu contextuel de ‘’scénarios’’. On a alors le choix entre les quatre types suivants : irrigation ; demandes en eau (besoins non sommables) ; demandes en eau cumulables ; demande d’énergie. Une catégorie d’objectifs peut être supprimée à l’aide de l’action ‘’supprimer’’ de son menu contextuel. Enfin, un double clic gauche sur le titre d’une catégorie permet de modifier celui-ci.

Le développement de l’arbre à l’aide du signe + placé à gauche d’une catégorie d’objectif permet d’afficher la liste des scénarios qui la concernent. Chaque catégorie peut contenir un nombre quelconque de scénarios. L’ajout d’un scénario s’effectue avec l’action ‘’ajouter’’ du menu contextuel de la catégorie. Un scénario peut être supprimé à l’aide de l’action ‘’supprimer’’ de son menu contextuel. Enfin, un double clic gauche sur le titre d’un scénario permet de modifier celui-ci.

A l’aide des actions proposées dans son menu contextuel, chaque scénario d’objectif peut être déplacé, supprimé ou dupliqué dans la liste des scénarios de sa catégorie Il est même possible d’utiliser l’action ‘’copier’’ pour créer ensuite un nouveau scénario identique dans une autre catégorie, à l’aide de l’action coller du menu contextuel de celle-ci.

 

3.5.2.1 – Modification d’un scénario de type ‘’irrigation’’

Dans une catégorie de type ‘’irrigation’’, chaque scénario est décrit par un certain nombre de paramètres agronomiques concernant les superficies emblavées et les besoins en eau des différentes cultures.

Contrairement à la version Dos, la version Windows ne permet pas pour l’instant de modifier le nombre de zones prises en compte, qui reste figé à la valeur 5. Les cinq zones figurant dans l’arbre sous l’élément ‘’zones’’, dont les noms sont modifiables après double clic gauche, contiennent les fractions de superficie totale correspondantes. Pour prendre en compte un nombre de zones inférieur à cinq, il suffit d’annuler la fraction de superficie totale de certaines d’entre elles.

L’élément ‘’cultures’’ peut contenir entre un et huit types de cultures. L’ajout d’un type de culture se fait grâce à l’action ‘’ajouter’’ du menu contextuel de ‘’cultures’’. La suppression d’un type de culture se fait grâce à l’action supprimer de son menu contextuel. Le nom d’un type de culture peut enfin être modifié après double clic gauche.

 

3.5.2.2 – Modification d’un scénario d’une catégorie de type autre que ‘’irrigation’’

Pour les catégories de types autres que ‘’irrigation’’, chaque scénario est décrit par une variation annuelle de valeurs de débit ou de puissance. Cette variation est représentée par un certain nombre de points pivots saisis par l’utilisateur, qui sont caractérisés par une date et une valeur. Le nombre de points pivots peut être diminué ou augmenté à l’aide des actions proposées dans le menu contextuel des cases de la vue, affichée en format ‘’données en colonnes’’.

Un tri automatique effectué par le logiciel permet d’assurer que les points pivots de tout scénario sont stockés dans l’ordre chronologique dans le fichier concerné. Ce tri précède la sauvegarde des modifications qui est faite à la demande de l’utilisateur ou de façon automatique au début d’un calcul ou d’une recherche d’incohérences. Il précède également l’action ‘’interpolation’’ proposée dans le menu contextuel du scénario dans l’arbre. Cette interpolation permet de faire un calcul automatique des valeurs entre les points pivots par diverses méthodes, afin de compléter le tableau annuel des 365 valeurs caractérisant le scénario. Elle est facultative, du fait que les procédures de calcul utilisant des scénarios d’objectifs complètent elles-mêmes ces derniers si nécessaire, par interpolation linéaire.

3.5.3 – Réseaux

 

Cet élément peut contenir un nombre quelconque de jeux de paramètres dont chacun, assorti d’un titre modifiable après double clic gauche, décrit une configuration de réseau de stations.

A l’aide des actions proposées dans son menu contextuel, chaque réseau de stations peut être déplacé, supprimé ou dupliqué dans la liste présente dans l’arbre sous l’élément ‘’réseaux’’.

Pour ajouter une station dans un réseau, il suffit d’utiliser l’action ‘’ajouter’’ du menu contextuel de celui-ci. A l’inverse, une station peut être supprimée d’un réseau à l’aide de l’action supprimer’’ proposée dans son menu contextuel.

Pour pouvoir être utilisé dans les calculs, un réseau de stations doit contenir des stations classées par ordre de numéros décroissants. Les paramètres de ces stations doivent en outre respecter les règles énoncées dans la notice de la version DOS (voir & 2.2.3)

Le menu contextuel de l’élément ‘’modèle de propagation’’ propose toujours le choix entre un modèle à un ou deux prévisieurs. Lorsque l’une de ces deux options est retenue, il propose également l’action ‘’détacher’’ qui revient à ne sélectionner aucun modèle de propagation pour la station.

 

3.5.4 – Consignes de niveaux limites à respecter dans la retenue

L’élément ‘’consignes de niveau minimal (resp. maximal)’’ peut contenir un nombre quelconque de limnigrammes annuels de niveau minimal (resp. maximal), dont les noms peuvent être modifiés après double clic gauche. Chacun de ces limnigrammes annuels peut être supprimé, déplacé ou dupliqué dans la liste à l’aide des actions proposées dans son menu contextuel.

Pour pouvoir être utilisé en tant que consigne dans une simulation chronologique, un limnigramme annuel de niveau minimal (resp. maximal) doit comporter 365 points sans lacune, classés par ordre chronologique sur les 365 jours de l’année. Lors de la sauvegarde des paramètres (à la fermeture du logiciel ou avec l’action ‘’sauvegarder’’ du menu ‘’fichiers’’) et lors de la recherche des incohérences (à l’aide du bouton correspondant ou de façon automatique au lancement d’un calcul), tout limnigramme non conforme est mis automatiquement en conformité par le logiciel, par mise en ordre chronologique de ses points et reconstitution des points lacunaires par interpolation linéaire. Cette mise en conformité peut également être déclenchée à partir de l’action ‘’interpolation’’ proposée dans le menu contextuel du limnigramme.

L’ajout d’un nouveau limnigramme annuel de niveau minimal (resp. maximal) s’effectue à l’aide des actions ‘’ajouter’’ ou ‘’ajouter depuis’’ proposées dans le menu contextuel de ‘’consignes de niveau minimal (resp. maximal)’’ :

  • L’action ‘’ajouter’’ permet d’ajouter dans la liste un limnigramme élémentaire composé de deux points pivots. L’utilisateur peut ensuite en modifier le titre et faire dans la vue les saisies ou modifications nécessaires sur les ponts pivots affichés, dont le nombre peut être modifié à l’aide des actions proposées dans le menu contextuel de la vue (format ‘’données en colonnes’’).

  • L’action ‘’ajouter depuis’’ permet d’ajouter dans la liste un limnigramme de 365 valeurs établi à partir de résultats de calcul de niveau extrême d’exploitation. Dans la boîte de dialogue qui s’ouvre alors, il faut commencer par sélectionner par double clic gauche, parmi les résultats de calcul de niveau extrême d’exploitation stockés, ceux que l’on désire utiliser. Après quoi, il faut de nouveau double cliquer sur ‘’statistiques’’ pour faire apparaître la liste des temps de retour pour lesquels des limnigrammes annuels d’iso-fréquence sont disponibles pour les résultats retenus. Il suffit enfin de sélectionner par double clic le temps de retour désiré.

 
 

Simulsen - Objectifs - Interface graphique

But du logiciel et principes de la gestion simulée

Le logiciel SIMULSEN est principalement destiné à simuler la gestion opérationnelle d'un barrage à objectifs multiples sur une longue période, par un calcul effectué au pas de temps journalier. Il permet d'évaluer la satisfaction de ces objectifs, en fonction des apports en eau et des consignes de gestion envisagées. Accessoirement, il permet de définir certaines consignes de maintien de stock ou de revanche dans la retenue.

Ce logiciel a été développé spécialement pour le cas du barrage de Manantali, qui est implanté au Mali sur la rivière Bafing, affluent du fleuve Sénégal. Il peut néanmoins être utilisé pour tout barrage dont les objectifs sont parmi les suivants :

  • Production d'énergie électrique.

  • Soutien des étiages ou des faibles crues à la sortie du barrage ou au niveau d'une station située à l'aval, pour différents usages : irrigation, alimentation en eau potable, cultures de décrue, navigation…

  • Laminage des fortes crues, à la sortie de l'ouvrage ou à une station située à l'aval.

  • Niveaux extrêmes à atteindre ou ne pas dépasser par le plan d'eau dans le réservoir.

Les simulations effectuées par SIMULSEN consistent à calculer chaque jour le débit lâché du barrage, en tenant compte des éléments suivants :

  • contraintes de gestion imposées par les caractéristiques physiques de l'ouvrage ;

  • consignes de sécurité visant à protéger l'ouvrage ;

  • consignes de gestion associées aux objectifs de l'ouvrage.

En fonction de la situation hydrologique, ces contraintes et consignes imposent chacune une limite minimale ou maximale sur le débit total pouvant être lâché du barrage. Prises en compte par ordre de priorité décroissante, ces limites sont alors combinées pour en déduire le débit total à lâcher du barrage.

Les types de contraintes et de consignes pouvant être simulées par le logiciel sont détaillés ci-dessous, avec référence au cas du barrage de Manantali. Le principe de calcul du débit à lâcher est également résumé.

 


Débit lâché conforme aux capacités extrêmes d'évacuation de l'ouvrage

Les caractéristiques physiques de l'ouvrage permettent de déterminer le débit lâché d'un barrage lorsque ses organes d'évacuation sont ouverts au maximum. Ceci constitue pour le débit total lâché, une limite maximale croissante en fonction de la cote du plan d'eau amont.

Quand le niveau de plan d'eau dans la retenue dépasse le seuil de déversement du barrage (208,05 m à Manantali), ces mêmes caractéristiques imposent un certain déversement par les vannes de surface. Ceci constitue pour le débit total lâché, une limite minimale croissante en fonction de la cote du plan d'eau amont.

Quels que soient le mode de gestion envisagé ou la situation hydrologique, le débit effectivement lâché du barrage est à tout moment compris entre ces limites minimales et maximales croissantes en fonction du niveau de plan d'eau. Ces limites constituent des contraintes physiques de gestion.

 


Précaution contre la submersion des digues du barrage

Cette consigne impose de maintenir le débit lâché au dessus d'une limite minimale, pour éviter que le niveau du lac ne dépasse la cote maximale de sécurité (210,50 m à Manantali). Cette limite minimale de débit lâché, déterminée par bilan de volume, dépend de la cote du plan d'eau amont et du débit entrant dans la retenue.

D'une façon générale, le bilan de volume sur 24 heures s'exprime de la façon suivante :
V24 = V0 + (Qe - Qs -Qp) * T
avec :
V24 = volume retenu à 24 h (m3)
V0 = volume retenu à 0 h (m3)
Qe = débit moyen journalier des apports au droit du barrage (m3/s)
Qs = débit moyen journalier lâché du barrage (m3/s)
Qp = débit moyen évaporé, dépendant de date et superficie de plan d'eau (m3/s)
T = temps (86400 s)

Submersion permanente de la partie basse du parement amont de l'ouvrage

La conception de l'ouvrage peut nécessiter le maintien du plan d'eau amont au dessus d'une certaine cote (seuil de réserve utile : 187 m à Manantali), afin d'éviter que la houle n'endommage la partie basse de son parement. Cette consigne impose de maintenir le débit lâché en dessous d'une limite maximale déterminée par bilan de volume en fonction de la cote du plan d'eau amont et du débit entrant dans la retenue.

 


Le logiciel permet de simuler des consignes associées à des objectifs de gestion qui peuvent être variables dans l'année, mais doivent être identiques d'une année sur l'autre. Pour analyser l'effet d'une évolution interannuelle des objectifs de gestion, il est nécessaire d'effectuer plusieurs simulations envisageant ces différents objectifs.

Parmi les objectifs de gestion, certains consistent à maintenir à une station située à l'aval du barrage, un débit supérieur à une limite prédéfinie. Selon qu'ils correspondent à des volumes consommés (irrigation, pertes, alimentation en eau potable) ou non (soutien de crue, navigation), ces besoins en eau doivent être sommés ou non pour définir l'objectif de débit à atteindre. Il est donc question dans ce manuel d'objectifs ''sommables'' ou ''non sommables''.

Les consignes de gestion pouvant être simulées sont présentées ci-dessous dans un ordre arbitraire.

1.3.1 - Consignes définissant une limite minimale pour le débit lâché

1.3.1.1 Production d'énergie électrique

Dans un but de rentabilité, il est souhaitable qu'une énergie donnée soit produite en turbinant le moins d'eau possible, tout en évitant les débordements. Dans cette optique, la consigne envisage les trois cas suivants :

  • Quand la cote du lac est supérieure à un seuil S2, on vise à produire la puissance maximale qu'il est possible de produire avec cette cote : Pmax.

  • Quand la cote du lac est comprise entre S1 (

  • Quand la cote du lac est inférieure à S1, la consigne de production d'énergie n'est pas prise en compte.

Dans les deux premiers cas, la consigne permet d'évaluer par bilan d'énergie en fonction de la cote du plan d'eau amont, le débit minimal lâché qui permet de produire la puissance visée.

D'une façon générale, le bilan d'énergie s'exprime ainsi :
P = ?*g*Q*(Hm-Hv-dH)*R
avec :
P = puissance produite (w)
? = masse volumique de l'eau (kg/m3)
g = accélération de la pesanteur (m/s2)
Q = débit turbiné (m3/s)
Hm = niveau de plan d'eau amont (m)
Hv = niveau de plan d'eau aval (m), dépendant du débit total lâché
dH = pertes de charge en conduite d'amenée (m), dépendant de Q
R = rendement, dépendant de Q et de la chute nette Hm-Hv-dH

1.3.1.2 Lâcher de débit sanitaire réservé

Trivial.

1.3.1.3 Débit supérieur à un objectif de besoins non sommables (soutien de crue, navigation)

Il s'agit de lâcher du barrage un débit suffisant pour obtenir, soit immédiatement à la sortie, soit dans les jours suivants à une station située à l'aval, un débit supérieur ou égal à un hydrogramme objectif prédéfini. Dans le cas de Manantali, l'hydrogramme objectif est défini à Bakel comme le maximum entre les besoins lés à la navigabilité du fleuve, et les besoins liés à l'inondation souhaitée pour le lit majeur dans la vallée (soutien de crue) La décision de soutien de crue est prise une fois par an à une date prédéfinie Tc (20 août à Manantali):

  • Si la cote du lac à la date Tc est supérieure à un seuil Hs prédéfini, et si un hydrogramme de crue jugé suffisant n'a pas encore été observé dans l'année à Bakel, le soutien de crue est déclenché. La consigne est alors prise en compte pendant toute la durée nécessaire à la réalisation de l'hydrogramme objectif à Bakel.

  • Dans le cas contraire, la consigne de soutien de crue n'est plus prise en compte jusqu'à l'année suivante. Autrement dit, l'eau qui aurait dû être lâchée cette année là aux seules fins du soutien de crue est stockée dans la retenue.

Le débit minimal à lâcher pour le soutien de crue à une station située à l'aval du barrage est calculé par modèle de propagation en fonction des débits observés sur les affluents intermédiaires (Bakoye et Falémé dans le cas de Bakel).

Dans un but de recherche, la version DOS de Simulsen a été adaptée pour tester une nouvelle méthode de soutien de crue. Celle-ci consisterait à définir l'hydrogramme objectif de l'année en fonction du stock disponible dans le réservoir au début du soutien, et éventuellement en fonction de prévisions saisonnières d'hydraulicité.

1.3.1.4 Débit supérieur à un objectif de débits sommables (soutien de basses eaux)

Il s'agit de lâcher du barrage un débit suffisant pour obtenir, soit immédiatement à la sortie, soit dans les jours suivants à une station située à l'aval, un débit supérieur ou égal à un hydrogramme objectif d'étiage prédéfini. Dans le cas de Manantali, cet objectif est défini à Bakel par la somme des besoins à satisfaire (irrigation, alimentation en eau potable) et des pertes accompagnant le transit des débits jusqu'au lieu de la consommation

Le débit minimal à lâcher pour le soutien d'étiage à une station située à l'aval du barrage est calculé suivant le même principe que pour le soutien de crue.

1.3.1.5 Conservation d'une revanche suffisante pour le laminage futur des crues

Il s'agit de lâcher un volume suffisant du barrage pour conserver une revanche (volume libre dans la retenue) permettant de laminer les crues futures au seuil de débit souhaité avec un taux de réussite probable prédéfini. Cette revanche nécessaire, qui correspond à une cote limite maximale du niveau dans le lac, est variable dans l'année.

La valeur minimale de débit lâché permettant de conserver la revanche souhaitée, est calculée par bilan de volume en fonction de la cote du lac et du débit entrant dans la retenue

1.3.2 - Consignes définissant une limite maximale pour le débit lâché

1.3.2.1 Laminage immédiat des crues

Deux types de laminage immédiat des crues peuvent être envisagés :

- Le laminage immédiat des crues à la sortie du barrage consiste à lâcher un débit total inférieur ou égal à un certain débit limite prédéfini.

- Le laminage des crues au niveau d'une station située à l'aval du barrage (Bakel dans le cas de Manantali) consiste à lâcher un débit suffisamment faible pour que le débit des jours suivants à cette station ne dépasse pas une limite prédéfinie. Dans ce cas, le débit maximal à lâcher est calculé par modèle de propagation en fonction des débits observés sur les affluents intermédiaires (Bakoye et Falémé dans le cas de Bakel).

1.3.2.2 Conservation d'un stock d'eau suffisant pour le soutien d'étiage futur

Il s'agit de limiter le débit total lâché du barrage afin de conserver le stock nécessaire (dans la tranche utile des cotes supérieures à la cote minimale de sécurité) pour pouvoir satisfaire le soutien d'étiage futur avec un taux de réussite probable prédéfini. Ce stock nécessaire, qui correspond à une cote limite minimale du niveau dans le lac, est variable dans l'année.

La valeur maximale de débit lâché permettant de conserver le stock souhaité, est calculée par bilan de volume en fonction de la cote du lac et du débit entrant dans la retenue

 


Le calcul est fait dans l'optique de lâcher le débit minimal permettant de respecter le plus grand nombre possible des consignes qui auront été préalablement définies et classées par ordre de priorité.

Tout d'abord, la fourchette de débit qu'il est physiquement possible d'évacuer de l'ouvrage est déterminée à partir des contraintes de gestion. Elle se resserre ensuite en fonction des limites minimales ou maximales de débit à lâcher, imposées par les consignes de sécurité puis par celles de gestion. Le processus s'arrête lorsque toutes les consignes envisagées ont été prises en compte par ordre de priorité décroissante, ou lorsque l'une d'entre elles s'avère incompatible avec les consignes de priorité supérieure. Dans ce dernier cas, la fourchette de débit à lâcher est réduite à une valeur unique, à la fois compatible avec les consignes de priorité supérieure, et la plus proche possible du débit demandé par la consigne incompatible. C'est finalement la borne inférieure de la fourchette résultante qui détermine le débit total à lâcher du barrage.

La répartition de ce dernier entre les différents organes d'évacuation (turbines, vannes de surface et vannes de demi fond) est faite de façon à produire le maximum de puissance pouvant être absorbée sur le réseau, et à respecter l'ouverture minimale des vannes de surface imposée par les contraintes de gestion.


Le logiciel est organisé en trois grandes parties : gestion des paramètres et données ; calculs ; exploitation des résultats et éditions.

1.5.1 - Gestion de paramètres et données

Les deux versions du logiciel permettent de gérer un certain nombre de paramètres et données qui doivent être stockés sur l'ordinateur pour pouvoir être utilisés dans les calculs de simulation :

- Paramètres décrivant sur l'année des scénarios de besoins concernant les différents usages:

. Débits exprimés au niveau d'une station située à l'aval du barrage.

. Puissance électrique demandée.

- Paramètres décrivant le barrage (turbines, vannes, etc.) et le réservoir.

- Paramètres décrivant la propagation des débits entre les différentes stations utilisées pour la simulation. Ce réseau de stations, ainsi que la façon d'utiliser ces dernières dans les calculs, sont laissées au choix de l'utilisateur.

- Limnigrammes limites à respecter dans le lac, permettant de limiter les risques de défaillance pour un objectif de fourniture de débit (maintien de stock), ou pour le laminage des crues (maintien de revanche).

- Données de base représentatives des apports en eau (chroniques de débit).

1.5.2 - Calculs et simulations

Les deux versions du logiciel permettent de réaliser les calculs suivants :

1.5.2.1 - Simulation chronologique

Ce type de calcul consiste à simuler sur une longue période une gestion opérationnelle définie par un jeu de consignes assorties de rangs de priorité. Il permet de tester des stratégies de gestion à court ou moyen terme, en évaluant leurs conséquences sur la satisfaction des objectifs envisagés.

Les données utilisées en entrée de chaque calcul sont les suivantes :

- Les paramètres caractérisant la retenue et le barrage.

- Les paramètres caractérisant la propagation des débits entre les différentes stations du réseau adopté.

- Les chroniques de débits moyens journaliers concernant certaines stations non influencées par le barrage.

- Des consignes de gestion choisies par l'utilisateur parmi une liste proposée par le logiciel, et associées éventuellement à certains des scénarios de besoins ou certains limnigrammes limites évoqués ci-dessus.

A chaque pas de temps, l'application d'une règle de gestion se traduit par le calcul d'une limite minimale ou d'une limite maximale, ou des deux, qui est imposée au débit total pouvant être lâché par le barrage (vidangé + déversé + turbiné). L'application de plusieurs règles de gestion a pour effet de resserrer la fourchette de valeurs limites autorisées pour ce débit total.

En sortie du calcul, le logiciel produit des fichiers de valeurs journalières pour les variables suivantes :

- Niveau de la retenue.

- Puissance électrique produite.

- Débits turbiné, vidangé, déversé (vannes de déversoir ouvertes au minimum évitant leur submersion)

- Part de débit lâché dans le seul but de satisfaire les besoins ''non sommables'' (voir plus loin), et inutile pour la satisfaction d'autres besoins.

- Débit à certaines stations, en particulier celles qui se situent à l'aval de la retenue

- Le cas échéant, déficit de production électrique ou de fourniture de débit, par rapport aux objectifs envisagés

1.5.2.2 - Traitement des niveaux extrêmes d'exploitation

Ce type de calcul consiste à calculer l'évolution des valeurs minimales (resp. maximales) du niveau de plan d'eau dans la retenue, compatibles avec la totale satisfaction future d'un objectif de soutien de débit, de production de puissance ou de niveau à dépasser dans le réservoir (resp.. de laminage de crue ou de niveau à ne pas dépasser dans le réservoir). L'analyse statistique des valeurs obtenues permet de définir sur l'année des limnigrammes limites minimaux (resp. maxmaux) qu'il est nécessaire de respecter dans la retenue pour être en mesure d'atteindre l'objectif désiré avec un taux de réussite donné.

Les limnigrammes annuels définis par ces calculs peuvent être retenus en tant que consignes de niveaux limites à respecter dans le réservoir. Celles-ci peuvent elles-mêmes être intégrées dans des jeux de consignes testés par simulation chronologique avec le logiciel.

1.5.2.3 - Calculs ponctuels de productible énergétique ou de capacité d'évacuation

A partir des caractéristiques du barrage, ce type de calcul permet d'évaluer les solutions optimales de turbinage pour tout jeu de valeurs concernant le nombre de turbines disponibles, le niveau de retenue, le débit total lâché ou la puissance désirée.

1.5.3 - Exploitation des résultats

Les deux versions du logiciel permettent l'édition des chroniques de résultats sous forme de tableaux de chiffres ou de graphiques, ainsi que leur interprétation statistique par diverses procédures de calcul.

HyD2002 - Objectifs - Interface graphique - Les objets du modèle - Fichiers d'entrée-sorties - Tutoriel

Cette partie détaille les différents types de fichiers utilisés. On distingue des :

  • fichiers texte : ils peuvent être confectionnés ou exploités sous des traitements de texte ou des tableurs, leur structure est généralement très simple ;

  • fichiers objet : ils servent à la sauvegarde et au chargement rapide d'objets spécifiques : totalité d'un aménagement, ensemble des caractéristiques de simulation... Leur structure est propre au langage objet Java.

Remarque Les noms de fichiers peuvent comporter plus de huit caractères avec une extension n'excédant pas trois caractères. Tous les caractères peuvent être utilisés, à l'exception des espaces et des caractères suivants : * ? , ; [ ] + - = \ / : | < >. Le point est employé exclusivement pour séparer le nom du fichier de l'extension.

L'emploi des extensions de noms de fichiers permet de distinguer les divers types de fichiers.


Définition d'hydro-aménagement

Un fichier de ce type donne une description en clair d'un hydro-aménagement. Ces fichiers permettent de sauver ou charger des aménagements définis ou modifiés sous un traitement de texte.

nom conventionnel

L'extension adoptée est .txt.

exemple : Amenagements_A2.txt

structure des fichiers

Les caractéristiques sont séparées par des tabulations ou des retours à la ligne. L'espace n'est pas considéré comme un séparateur. Les dièses # servent à marquer le début de définition d'un composant.

exemple

# Systeme
nom  Amenagements_A2
description  amenagements "1995" - Bras de Sable - AEP 50%
simulation  2
mode  2.decade 
periodes  1962  1  1  348
ecoulement  C:\ActiveHyd\exemples\data-62-90\hm3\
lame ecoulee  C:\ActiveHyd\exemples\data-62-90\m\
sorties  global  an  mois  decade  jour
# Reservoir
nom  Letaye
index noeud  1
localisation  55.30  43.40
hauteurs  9
hauteur  18  19  20  21  22  23  24  25  26
surface  0  1.44  3.53  5.99  8.7  11.63  14.74  18.01  21.43
stockage  0  0.006  0.031  0.078  0.151  0.253  0.385  0.548  0.745
apport naturel  LETAYE  1
L evaporation  0.123  0.131  0.162  0.167  0.169  0.17  0.175  0.166  0.142  0.126  0.107  0.109
pluie directe  RETENUE1  1
C perte  0.04  0.04  0.04  0.04  0.04  0.04  0.04  0.04  0.04  0.04  0.04  0.04
infiltration  0
stockage objectif  0.55  0.55  0.55  0.55  0.55  0.55  0.55  0.55  0.55  0.55  0.55  0.55
zones  2
volume 0  0  0  0  0  0  0  0  0  0  0  0  0
volume 1  0.05  0.05  0.05  0.05  0.05  0.05  0.05  0.05  0.05  0.05  0.05  0.05
volume 2  0.745  0.745  0.745  0.745  0.745  0.745  0.745  0.745  0.745  0.745  0.745  0.745
penalites positives 1  0  0  0  0  0  0  0  0  0  0  0  0
penalites negatives 1  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000
penalites positives 2  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000
penalites negatives 2  2.95  2.95  2.95  2.95  2.95  2.95  2.95  2.95  2.95  2.95  2.95  2.95
stockage initial  0.5
sorties  global  an  mois
...
# Jonction
nom  vernou
index noeud  3
localisation  17.60  27.21
apport naturel  TRAVERSE  0.64
C perte  0  0  0  0  0  0  0  0  0  0  0  0
infiltration  0
sorties  global  an  mois
...
# Jonction
nom  bsable
index noeud  25
localisation  15.06  35.49
apport naturel  BSABLE  1
C perte  0  0  0  0  0  0  0  0  0  0  0  0
infiltration  0
sorties  global  an  mois
# Consommation en eau
nom  deshaut
index noeud  26
localisation  43.80  37.00
demande  0.62  0.7  0.775  0.75  0.62  0.6  0.62  0.62  0.6  0.62  0.6  0.62
source  -  1
retour  0  0
aquifere  0
niveaux  2
taux 1  0.1  0.1  0.1  0.1  0.1  0.1  0.1  0.1  0.1  0.1  0.1  0.1
taux 2  0.9  0.9  0.9  0.9  0.9  0.9  0.9  0.9  0.9  0.9  0.9  0.9
penalites 1  4  4  4  4  4  4  4  4  4  4  4  4
penalites 2  5  5  5  5  5  5  5  5  5  5  5  5
restriction  0  0  -
sorties  global  an  mois
...
# Arc
nom  letayejd
noeuds  1  32
flux max  999  999  999  999  999  999  999  999  999  999  999  999
sorties  global  an  mois
# Arc
nom  gachetjd
noeuds  2  33
flux max  999  999  999  999  999  999  999  999  999  999  999  999
sorties  global  an  mois
...
# Arc
nom  bsable
noeuds  25  19
flux max  0  0.847  0.937  0.907  0.937  0  0  0  0  0  0  0
sorties  global  an  mois
# Arc naturel
nom  letayout
noeuds  1  20
flux max  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000
flux min  0  0  0  0  0  0  0  0  0  0  0  0
penalites  1  1  1  1  1  1  1  1  1  1  1  1
sorties  global  an  mois
# Arc naturel
nom  gacheout
noeuds  2  21
flux max  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000  1000
flux min  0  0  0  0  0  0  0  0  0  0  0  0
penalites  1  1  1  1  1  1  1  1  1  1  1  1
sorties  global  an  mois
...

 

 


On distingue le stockage des coordonnées des stations hydro-météorologiques et les fichiers correspondants aux chroniques de données sur ces stations. La localisation des stations est nécessaire pour la gestion des lacunes : si pour un pas de temps, la donnée d'une station est indisponible, il est alors fait référence à la première valeur valide de la station la plus proche.

nom conventionnel

La construction du nom est la suivante :

  • coordonnées stations : <Répertoire>\<type>.txy
  • chroniques données : <Répertoire>\<type>.t<pas de temps>
    où mo:mois ; 10:décade ; da:jour

 

Le type est soit :

  • ecoulement pour les données d'apports naturels exprimées en hm3.
  • lame ecoulee pour les données de pluviométrie exprimées en m.

 

exemples :

  • C:\ActiveHyd\exemples\data-62-90\hm3\ecoulement.txy coordonnées des stations d'écoulement
  • C:\ActiveHyd\exemples\data-62-90\m\lame ecoulee.tmo chroniques de pluies mensuelles

 

structure des fichiers

Fichier localisation

Le fichier comporte une ligne par station. Chaque ligne est constituée par le label, l'abscisse, l'ordonnée d'une station. Les stations sont rangées suivant l'ordre d'entrée des fichiers chroniques.

exemple

DUCLOS    18.855    31.852
TRAVERSE    19.026    30.861
PRISDEAU    19.390    32.164
DAVID130    17.153    30.772
BSABLE    17.635    34.357
LEZARDE    20.011    29.280

Fichier chronique

Le fichier comporte :

  • une ligne d'en-tête obligatoire avec les labels des stations ;
  • une ligne facultative qui précise les unités ;
  • une ligne par pas de temps avec la valeur de la date puis une valeur réelle par station.

 

exemple

date    DUCLOS    TRAVERSE    PRISDEAU    DAVID130    BSABLE    LEZARDE
    hm3    hm3    hm3    hm3    hm3    hm3
1962-01    14.581    6.040    20.830    13.997    3.155    3.592
1962-02    6.167    2.555    8.811    5.920    1.188    1.776
1962-03    3.203    1.328    4.575    3.075    0.595    1.104
1962-04    8.530    3.533    12.185    8.188    2.387    2.501
1962-05    8.089    3.351    11.555    7.765    2.017    2.424
1962-06    13.859    5.741    19.800    13.305    2.893    3.217
1962-07    14.581    6.040    20.830    13.997    3.594    3.466
1962-08    11.814    4.893    16.877    11.340    3.410    3.233
1962-09    11.130    4.611    15.902    10.687    3.245    3.116
1962-10    7.277    3.016    10.392    6.985    1.894    2.103
1962-11    5.625    2.330    8.035    5.399    1.379    1.804
1962-12    4.060    1.682    5.801    3.897    0.932    1.382
1963-01    4.034    1.671    5.761    3.870    0.967    1.441
1963-02    4.974    2.061    7.108    4.776    1.137    1.577
1963-03    4.462    1.848    6.375    4.283    0.940    1.347
1963-04    8.035    3.328    11.480    7.714    1.957    2.343
1963-05    10.813    4.481    15.446    10.381    2.475    2.820
1963-06    10.132    4.199    14.476    9.728    2.167    2.558
1963-07    9.174    3.801    13.103    8.804    2.499    2.362
1963-08    9.096    3.769    12.996    8.732    2.285    2.386
1963-09    7.965    3.300    11.376    7.644    1.718    2.473
1963-10    5.842    2.421    8.346    5.609    2.103    2.360
1963-11    6.804    2.820    9.720    6.532    1.962    2.716
1963-12    6.037    2.502    8.624    5.796    1.245    1.768

 


Données graphiques .xmd

Ces fichiers ont été développés pour l'outil ActiveMap qui permet de :

  • visualiser et analyser des données dans l'espace et dans le temps, sous forme de cartes / plans / animations ;
  • transmettre des synthèses dynamiques de ces informations à des collaborateurs, des clients / fournisseurs, au grand public.

 

Cet outil est intégré dans la présente version d'HyDrAm pour la visualisation des systèmes d'eau ou peut être utilisé de manière indépendante pour présenter des synthèses de résultats.

nom conventionnel

L'extension adoptée est .xmd.

exemple : Guadeloupe.xmd

structure des fichiers

Les fichiers utilisent le formalisme XML (eXtensible Meta Language) basé sur la création de balises pour définir des structures d'information de manière générique.

Ainsi la balise <map> définit un Document ActiveMap . Cette structure est composée d’objets Couche repérés par la balise <series>. Un document peut contenir une ou plusieurs couches.

Chaque couche correspond à une agrégation d’objets permettant une représentation en 2 dimensions et possédant des informations associées. Ces objets, que nous dénommons Série, repérés par la balise <serie>, sont donc décrits par une série de valeurs x et de valeurs y et les types de valeurs correspondants et par une liste d’informations associées.

Les informations, de type générique Info, sont :

  • soit de type simple : Entier, Réel, Texte (dans le sens de chaîne de caractères), URI (Unified Resource Information : adresse de ressource universelle), etc, - balise <spi> -
  • soit de type temporel : Variation annuelle - balise <yvi> - ; Chronique - balise <chi> -.

 

dstrucinfo.gif
Figure E4.1. Structure de l’information

Le typage de l'information est décrit, à l'intérieur des balises <info>, par des objets Type Simple, repérés par les balises <type>. En pratique, toute information simple fait référence à un objet Type Simple qui définit un label, un format d’affichage sous forme de chaîne de caractères, une unité, une valeur minimale, une valeur maximale, une précision. Les dernières propriétés n’ont de sens que pour des informations numériques. Ces propriétés permettent de restreindre l’ensemble des valeurs légales d’un type de base, elles renseignent sur la plage de validité de l’information.

Il existe d’autres types d’Info Simple que les classes représentées sur le diagramme E4.1. : Booléen, Année, Mois, Décade, Jour. Ces derniers objets définissent des périodes de temps. Ils sont utilisés par les Info Temporelles (Chroniques, variations annuelles) : toute valeur d’une information temporelle fait référence explicitement ou implicitement à une période de temps.

La structure repérée par la balise <classes> regroupent les objets classifications correspondant à différentes légendes, donc autant de vues possibles du document. Une classification définit des classes qui permettent une partition de l'information à des fins d’analyse.

exemple

<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<am:ami xmlns:am="http://2ie-technologies.com/active/2001/02/mapXsd" lang="FR" version="0.5">

<map fill="color:lightblue">
<label>Guadeloupe</label>
<desc>Fond de carte de la Guadeloupe</desc>
<series id="physiq" range="0" xRef="guad_lon" yRef="guad_lat" classification="regions;altiC;plmoy_m_y" type="PLOT">
<label>Physique</label>
<desc>L'archipel Guadeloupe</desc>
<serie id="fajou">
<xValues>25.86 25.64 26.47 26.73 27.14 27.34 27.53 27.37 25.86 25.86</xValues>
<yValues>47.78 48.10 49.27 48.85 48.89 48.76 48.39 48.09 47.78 47.78</yValues>
<label>ilet à Fajou</label>
<spi iRef="region_st">Guadeloupe</spi>
<spi iRef="alti_rl">5</spi>
<spi iRef="www_uri">http://www.guadeloupe-fr.com</spi>
</serie>
<serie id="pt">
<xValues>77.22 75.76 75.52 75.83 76.08 77.58 77.95 77.22 77.22</xValues>
<yValues>28.43 28.63 29.00 29.24 29.08 29.00 28.76 28.43 28.43</yValues>
<label>Petite Terre</label>
<spi iRef="region_st">Guadeloupe</spi>
<spi iRef="alti_rl">5</spi>
<spi iRef="www_uri">http://www.guadeloupe-fr.com</spi>
</serie>
...
</series>
<series id="riv" range="1" xRef="guad_lon" yRef="guad_lat" classification="riv" type="PLOT" visible="false">
<label>Cours d'eau</label>
<desc>Principales rivières</desc>
<serie id="laram">
<xValues>8.574 9.229 9.713 10.099 10.364 10.853 11.511 12.175 12.672 13.028 13.426</xValues>
<yValues>41.642 42.260 43.113 44.939 45.288 45.452 45.329 45.435 45.854 46.711 47.209</yValues>
<label>La Ramée</label>
<spi iRef="riv_st">La Ramée</spi>
<spi iRef="region_st">Basse-Terre</spi>
</serie>
...
</series>
<series id="stations" range="2" xRef="guad_lon" yRef="guad_lat" classification="stationType;flow_hm3_mo;etp_mm_m_yv;anDeb;alti;bv" type="PLOT" visible="false">
<label>stations</label>
<desc>stations hydro-météorologiques</desc>
<serie id="Duclos"><xValues>18.855</xValues><yValues>31.852</yValues><label>Duclos</label><spi iRef="type_st">hydro</spi><spi iRef="desc_st">Bras David</spi><spi iRef="alti_rl">110</spi><spi iRef="deb_yr">1973</spi><spi iRef="fin_yr">1987</spi><spi iRef="ans_it">8</spi><spi iRef="zone_st">Basse-Terre</spi><spi iRef="bv_rl">37.5</spi>
</serie>
...
</series>
<series id="sites" range="3" xRef="guad_lon" yRef="guad_lat" classification="siteType;pop;devTourism;dom" type="PLOT" visible="false">
<label>Villes, industries...</label>
<desc>Lieux d'activités</desc>
<serie id="Saint-Louis"><xValues>57.12</xValues><yValues>4.31</yValues><label>Saint-Louis</label><spi iRef="type_st">commune</spi><spi iRef="region_st">Marie-Galante</spi><spi iRef="pop_rl">2500</spi><spi iRef="tourism_st">1</spi><spi iRef="dom_rl">750</spi></serie>
<serie id="Capesterre"><xValues>65.38</xValues><yValues>-1.95</yValues><label>Capesterre</label><spi iRef="type_st">commune</spi><spi iRef="region_st">Marie Galante</spi><spi iRef="pop_rl">5000</spi><spi iRef="tourism_st">2</spi><spi iRef="dom_rl">1500</spi></serie>
...
</series>
<series id="irri" range="4" xRef="guad_lon" yRef="guad_lat" classification="irri2000_ha;irri2010_ha" type="POLYGON" visible="false">
<label>Irrigation</label>
<desc>Périmètres irriguées 2000</desc>
<serie id="P0"><xValues>54 58 58 54</xValues><yValues>44.75 44.75 42 42</yValues>
<label>P0</label><spi iRef="region_st">Est Grande-Terre</spi>
<spi iRef="irri2000_ha">70</spi><spi iRef="irri2010_ha">70</spi>
<spi iRef="mar_ha">35</spi><spi iRef="fou_ha">25</spi><spi iRef="can_ha">10</spi>
</serie>
...
</series>
</map>

<info>
<type id="guad_lon" label="longitude" base="longitude" minValue="0.0" maxValue="90.0" precision="0.01" unit="km;m;dms;deg." reference="Projection;lon:-61.83333;lat:15.91667" format="0.00"/>
<type id="guad_lat" label="latitude" base="latitude" minValue="-10.0" maxValue="70.0" precision="0.01" unit="km;m;dms;deg." reference="Projection;lon:-61.83333;lat:15.91667" format="0.00"/>
<type id="type_st" label="type" base="string"/>
<type id="sstype_st" label="sous-type" base="string"/>
<type id="desc_st" label="description" base="string"/>
<type id="alti_rl" label="altitude" base="real" minValue="0.0" maxValue="1500.0" precision="0.1" unit="m" format="0.#"/>
<type id="pop_rl" label="population" base="real" minValue="0.0" maxValue="500000.0" precision="10" unit="hab" format="0"/>
<type id="tourism_st" label="développement touristique (1-3)" base="string"/>
...
</info>

<classes>
<classification id="regions" iRef="label" font="size:12;family:Dialog;type:bold;color:brown">
<label>Région</label>
<class id="regions1" content="Basse-Terre" fill="color:170,235,170" >Basse-Terre</class>
<class id="regions2" content="Grande-Terre" fill="color:palegreen">Grande-Terre</class>
<class id="regions3" content="La Désirade;Les Saintes;Petite Terre;Marie-Galante;Terre de Haut;Terre de Bas;ilet à Fajou;Grand Ilet" fill="color:220,254,220">îles proches</class>
</classification>
<classification id="altiC" iRef="alti_rl">
<label>Courbes de niveau</label>
<class id="altic_1" minValue="0" maxValue="300"
stroke="width:1;color:black" fill="color:limegreen">inférieure à 300m NGG</class>
<class id="altic_2" minValue="300" maxValue="600"
stroke="width:1;color:black" fill="color:darkgreen">entre 300m et 600m NGG</class>
<class id="altic_3" minValue="600" maxValue="900"
stroke="width:1;color:black" fill="color:sandybrown">entre 600m et 900m NGG</class>
<class id="altic_4" minValue="900" maxValue="1200"
stroke="width:1;color:black" fill="color:brown">entre 900m et 1200m NGG</class>
<class id="altic_5" minValue="1200" maxValue="1500"
stroke="width:1;color:black" fill="color:saddlebrown">supérieure à 1200m NGG</class>
</classification>
<classification id="siteType" iRef="type_st">
<label>Sites</label>
<class id="siteType1" content="commune"
marker="shape:rc;image:ville.gif" font="size:10;family:Dialog;color:131,131,131;x-position:left;y-position:top">Ville</class>
<class id="siteType2" content="Industries-Commerces"
marker="shape:rc;image:industri.gif" font="size:10;family:Dialog;color:black;x-position:left;y-position:top">Industries-Commerces</class>
</classification>
...
</classes>

</am:ami>

 


 

Sortie Out.log

Ce fichier stocke le texte correspondant à la sortie standard du modèle. Il conserve une trace des actions réalisées.

nom conventionnel

Le nom consacré est Out.log. Le fichier est créé dans le sous-répertoire /temp du répertoire d'installation du modèle.

exemple : C:\ActiveHyd\temp\Out.log

structure des fichiers

Chaque nouvelle exécution est repérée par sa date suivie de la séquence des actions conservées.

exemple

====== Tue Sep 25 12:35:06 CEST 2001 ======
ActiveHyd - initSystem() - url: file:C:/ActiveHyd/guadelou/Amenagements_A2.hyd
Xe1ProjectionBox.addProjections()
Ressource property tool.item5 not found in com.iie.active.map.resources.map.properties
Canvas.clearMemory(), free memory : 2537656
Canvas.clearMemory(), total memory : 5455872
Loading MapDocument
MapDocument loaded
"C:\ActiveHyd\lib\ActiveHyd.jar"

====== Tue Sep 25 12:55:04 CEST 2001 ======
ActiveHyd - initSystem() - url: file:C:/ActiveHyd/guadelou/Amenagements_A2.hyd
Xe1ProjectionBox.addProjections()
Ressource property tool.item5 not found in com.iie.active.map.resources.map.properties
Canvas.clearMemory(), free memory : 2556592
Canvas.clearMemory(), total memory : 5505024
Loading MapDocument
MapDocument loaded
run() WaterSystem:Amenagements_A2

Erreurs Error.log

Ce fichier stocke le texte correspondant à des erreurs d'exécution du modèle. Il conserve une trace des événements anormaux et constitue donc une aide précieuse pour repérer une source d'erreur.

nom conventionnel

Le nom consacré est Error.log. Le fichier est créé dans le sous-répertoire /temp du répertoire d'installation du modèle.

exemple : C:\ActiveHyd\temp\Error.log

structure des fichiers

Chaque nouvelle exécution est repérée par sa date suivie de la séquence des événements anormaux éventuellement survenus.

exemple

====== Wed Sep 26 17:00:54 CEST 2001 ======
Labels - setLocale - _locale.getLanguage():fr
-1- LOCALE.getLanguage():fr
-2- LOCALE.getLanguage():fr
ActiveMap.getCustomCursor(String), Cursor loading error for Loading default cursor...
Xs1LayersBox, static
java.lang.NullPointerException
at javax.swing.ImageIcon.(Unknown Source)
at com.iie.active.map.Xs1LayersBox.(Xs1LayersBox.java:199)
at com.iie.active.map.Xp1TabbedBar.createLayersBoxInstance(Xp1TabbedBar.java:129)
at com.iie.active.map.Xs1TabbedBar.addLayersBox(Xs1TabbedBar.java:162)
at com.iie.active.map.Xs5TabbedBar.addLayersBox(Xs5TabbedBar.java:147)
at com.iie.active.map.Xs1TabbedBar.addControlPanel(Xs1TabbedBar.java:319)
at com.iie.active.map.Xs1TabbedBar.(Xs1TabbedBar.java:35)
at com.iie.active.map.Xs4TabbedBar.(Xs4TabbedBar.java:36)
at com.iie.active.map.Xs5TabbedBar.(Xs5TabbedBar.java:96)
at com.iie.active.map.Xp1TabbedBar.(Xp1TabbedBar.java:20)
at com.iie.active.map.Xe1TabbedBar.(Xe1TabbedBar.java:37)
at com.iie.active.map.Xe1ActiveMap.createTabbedBarInstance(Xe1ActiveMap.java:114)
at com.iie.active.map.ActiveMap.addTabbedBar(ActiveMap.java:1347)
at com.iie.active.map.ActiveMap.setComponents(ActiveMap.java:743)
at com.iie.active.map.ActiveMap.setDocument(ActiveMap.java:708)
at com.iie.active.map.ActiveMap.(ActiveMap.java:496)
at com.iie.active.map.Xs1ActiveMap.(Xs1ActiveMap.java:25)
at com.iie.active.hydGui.ActiveHyd.definitionToView(ActiveHyd.java:275)
at com.iie.active.hydGui.ActiveHyd.setViewMode(ActiveHyd.java:185)
at com.iie.active.hydGui.ActiveHyd.init(ActiveHyd.java:472)
at com.iie.active.hydGui.ActiveHyd.(ActiveHyd.java:435)
at com.iie.active.hydGui.ActiveHyd.main(ActiveHyd.java:638)
Ressource property opacity.item11 not found in com.iie.active.map.resources.param.properties
Ressource property tool_class.item5 not found in com.iie.active.map.resources.param.properties
Ressource property zoom.item6 not found in com.iie.active.map.resources.param.properties
MapSeries.setClassification(MapClassification) : empty classifications for 2ie-technologies
Xs7Canvas.ResizeListener.componentResized(ComponentEvent)
TabbedBar.setReference(), no url for the current document !

 


Les fichiers Objets

Ces fichiers peuvent être créés, puis gérés, par :

  • l'utilisateur, pour sauver et charger des hydro-aménagements ou des simulations ;
  • un traitement interne au logiciel : fichiers de demandes et références hydro-météorologiques.

 

Ces fichiers possèdent une structure et un format particuliers, propre au langage de programmation objet employé (Java).


Hydro-aménagement

Un fichier de ce type stocke un hydro-aménagement. L'ensemble des caractéristiques du système d'eau et de ses composants est sauvé, y compris les chroniques annuelles et les cumuls mensuels des résultats de simulation.

nom conventionnel

L'extension adoptée est .hyd.

exemple : Amenagements_A1.hyd


Simulation

Un fichier de ce type stocke l'ensemble des caractéristiques propres à la simulation d'un hydro-aménagement, y compris les chroniques annuelles et les cumuls mensuels des résultats de la desserte en eau.

nom conventionnel

La construction du nom est la suivante : <nom de l'hydro-aménagement>.s<numéro de simulation>

exemple : Amenagements_B2.s2


Chroniques de résultats

Un fichier de ce type stocke les chroniques de résultats de simulation pour des pas de temps inférieurs à l'année. Ces fichiers sont créés de manière optionnnelle après la simulation.

nom conventionnel

La construction du nom est la suivante : <nom de l'hydro-aménagement>_<numéro de simulation>\<type du composant>\<nom du composant>.s<pas de temps>

exemple : Amenagements_B2_2/Reservoir/Letaye.smo fichier de résultats mensuels du réservoir de Letaye pour la simulation 2 de l'hydro-aménagement Amenagements_B2


Chroniques de demandes

Un fichier de ce type stocke les chroniques de demande en eau d'une zone irriguée. Il s'agit de besoins théoriques calculés par un bilan hydrique de type RU / RFU.

nom conventionnel

La construction du nom est la suivante : <Répertoire de l'écoulement>\<nom du composant>.d<pas de temps>

exemple : C:\ActiveHyd\exemples\data-62-90\hm3\ban_Pcov.d10 ; fichier de demandes décadaires de la zone irriguée ban_Pcov.


Données hydro-météorologiques objet

On distingue le stockage des coordonnées des stations hydro-météorologiques et les fichiers correspondants aux chroniques de données sur ces stations. Ces fichiers sont créés automatiquement à partir des fichiers texte de données hydro-météo et sont reconstitués en cas de modification de ces fichiers.

nom conventionnel

La construction du nom est la suivante :

  • coordonnées stations : <Répertoire>\<type>.sxy
  • chroniques données : <Répertoire>\<type>.s<pas de temps>

 

Le type est soit :

  • ecoulement pour les données d'apports naturels exprimées en hm3.
  • lame ecoulee pour les données de pluviométrie exprimées en m.

 

exemples :

    • C:\ActiveHyd\exemples\data-62-90\hm3\ecoulement.sxy coordonnées des stations d'écoulement
    • C:\ActiveHyd\exemples\data-62-90\m\lame ecoulee.smo chroniques de pluies mensuelles

 

Page 42 of 44
FaLang translation system by Faboba
APT Logo fra      logo brgm web frlogo inraeLogo Institut Agro Mpl petit

 

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer