top of page

ALGORITHME 3

Analyse

Le but du programme est d’estimer le lien entre l’arrivée de pluies importantes et une baisse significative de la pression atmosphérique les précédant.

Comme base d’information sur laquelle s’appuyer, nous avons un quadrillage de la zone étudiée qui nous fournit pour chaque case du quadrillage, un relevé horaire des précipitations et de la pression atmosphérique.

Considérant qu’une constante de référence définissant une forte pluie nous a été fournie, nous commençons par recenser l’ensemble des cases avec l’heure associée où le relevé de précipitations dépassera la constante de référence désignée sous le nom de "seuil d’averse".

Le recensement des cases se fera dans un tableau d'entités "averse" qui contiendra toutes les informations caractérisant chacune d'elles. Ce tableau les rangera de manière chronologique.

Après quoi, en parcourant le tableau chronologique, on peut identifier les cases contiguës qui ont reçu une averse avec un "écart de temps" spécifié. La contiguïté est vérifiée par le max des écarts entre les deux abscisses et les deux ordonnées qui ne doit pas dépasser 1, mais doit aussi valoir 1 pour éliminer la superposition des cases.

Ce décalage nous assure une relation de causalité entre la première case arrosée et la seconde. Il faut alors associer les deux averses. Nous obtenons alors une liste chronologique des relations de causalités possibles. On pourra établir d'autres listes de relations de causalité en faisant varier l'écart de temps vers 2 ou 3 heures.

Dans un premier temps, on va étudier la case sensée contenir Bordeaux pour identifier les relations de causalité qu'elle peuple.

Structures de Données :

  • Deux tableaux 3 dimensions :

    • V(x,y,h) : volume de précipitations dans la case (x,y) à l’heure h

    • P(x,y,h) : pression atmosphérique dans la case (x,y) à l’heure h

  • Tableau 1 dimension d’objets structurés Averse

    • Averse comprend les champs :

      • X appartient aux entiers positifs

      • Y appartient aux entiers positifs

      • H appartient aux réels positifs

      • V appartient aux réels positifs

  • Tableau 1 dimension d’objets structurés Relation Causalité

    • Relation Causalité comprend les objets :

      • Averse 1

      • Averse 2

      • Pression

  • Des constantes :

    • Seuil d’Averse appartient aux réels positifs

    • Seuil de Pression appartient aux réels positifs

    • Ecart de temps appartient aux réels positifs

Procédures proposées

·Recherche des Averses

  • Compteur_averse = 0

  • Pour H allant de 0 à 23

    • Pour X allant de 1 à 5:

      • Pour Y allant de 1 à 5:

//On teste pour chaques cases s’il y a eu une averse, si oui on incremente le compteur de 1 et on met les coordonées et l’heure de l’averse dans Averse

  • Si V(x,y,h) >= Seuil d’Averse alors

    • Compteur_averse = Compteur_averse +1

    • Averse (compteur_averse) reçoit x,y,h,V(x,y,h)

  • Fin si

  • Fin pour

  • Fin pour

  • Fin pour

  • Afficher Averse(1) ; Averse(2) ;… ;Averse(Compteur_averse)

·Recherche des Causalités

  • Compteur_causalité = 0

  • Ecart_de_Temps = 1 (heure)

//Si il y a causalité entre une averse dans une zone qui se deplace dans une zone proche, on increment le compteur et on rentre les coordonnées du deplacement et la pression dans relation Causalité

  • Pour i allant de 0 à Compteur_averse – 1:

    • Pour j allant de i +1 à Compteur_averse :

      • Si  averse(j).h = averse(i).h + ecart_de_temps et           
        maximum ( val_abs ( averse(j).x - averse(i).x) , val_abs (averse(j).y – averse(i).y ) ) = 1  alors : //

      • Relation_Causalité ( Compteur_Causalité ).averse_1 = averse(i) ,

      • Relation_Causalité ( Compteur_Causalité ).averse_2 = averse(j) ,

      • Relation_Causalité ( Compteur_Causalité ).pression
        = P(averse(j).x,averse(j).y,averse(j).h – ecart_de_temps) ,

      • Compteur_Causalité =  Compteur_Causalité + 1;

      • Fin si

    • Fin pour

  • Fin de boucle i

 

· Etude à Bordeaux

  • X_Bordeaux = 1,

  • Y_Bordeaux = 3;

  • //Si il y a causalité a Bordeaux, on en imprime les parametres de pression et d’averse

  • Boucle de i=0 jusqu’à Compteur_causalité – 1

    • Si Relation_Causalité(i).averse_1.x = X_Bordeaux et
      Relation_Causalité(i).averse_1.y = Y_Bordeaux alors

      • Impression des valeurs des averses et de pression de la relation de causalité x,y,

    •  

    • Fin si

  • Fin de boucle i

 

Pistes possibles :

  • Faire varier l’écart de temps

  • Comptabiliser les couples i,j et étudier la valeur de la pression , puis faire une analyse statistique des pressions obtenues

  • Faire varier les seuils d’averse et de pression pour identifier les causalités statistiquement établies

bottom of page