E. PROGRAMMATION
Résumé — Le logiciel qui a été réalisé est décrit dans ses grandes lignes. Le listage complet du programme est donné en annexe, ainsi qu'une exemplification de la convivialité du système.
Nous avons écrit un logiciel qui reprend l'essentiel de ce qui a été décrit précédemment. Il pourrait constituer la base d'un programme de réalisation d'une banque de données de facteurs de transmission et de températures de brillance pour un ensemble de profils atmosphériques variés. Mais actuellement, il est plutôt utilisé pour des simulations, des tests de sensibilité et des comparaisons avec d'autres modélisations, et des comparaisons avec des données de l'instrument SSM/I (annexe 2).
C'est le langage FORTRAN standard 77 qui a été employé ; les calculs sont effectués en simple précision. Le programme tourne sur VAX 8600, sur PC-AT ou sur l'IBM du CIRCE (Centre Inter Régional de Calcul Electronique). Nous décrivons ici le logiciel dans sa version de la fin de 1989.
1. STRUCTURE DU PROGRAMME ET DERNIERS DETAILS
Si nécessaire, un premier programme lit les données spectroscopiques utiles de la banque GEISA et rajoute pour les raies concernées les coefficients d'interférence de Liebe [1989]. Il fournit un fichier d'environ 2000 raies : EXGEISA.DAT.
Le programme de transfert radiatif proprement dit est divisé en quatre parties. Pour une présentation par organigramme, voir Prigent-Benoit [1988, pp. 114-115].
Après les déclarations de variables et de données (parmi ces dernières il y a les niveaux de pression et les paramètres de nuages standard), la première partie est une liste de questions posées à l'utilisateur (voir dans la section 3) : type d'atmosphère, fréquences et nombre de points de calcul pour le canal à traiter, paramètres de nuages (on peut simuler plusieurs nuages superposés) et pluie éventuels, nombre d'angles différents pour le calcul de la température diffusée le cas échéant, conditions d'observation (altitude, direction), conditions de réflexion à la surface (sols divers, mer, réflexion spéculaire, ou bien vitesse du vent, nombre de pentes... pour notre modèle), etc. Les questions sur la réflexion à la surface sont posées dans le cas d'une visée vers le bas, ou d'une visée vers le haut avec conditions atmosphériques diffusantes.
Dans la deuxième partie sont calculés les coefficients d'absorption et éventuellement de diffusion pour toutes les couches et toutes les fréquences choisies. On lit d'abord les données des fichiers de conditions atmosphériques (USSTD.DAT, TROPICA.DAT ou SUBARCT.DAT) et du fichier EXGEISA.DAT. On calcule les températures, pressions et altitudes des couches. Dans le cas de conditions nuageuses ou pluvieuses, et pour rendre le calcul plus précis, les couches touchées par les nuages et les précipitations peuvent être subdivisées en sous-couches par interpolation linéaire ; nous considérons que le nuage ou la pluie occupe entièrement chaque couche ou sous-couche concernée : l'épaisseur du nuage et la hauteur de la pluie sont donc d'autant mieux respectées que la subdivision est plus fine. Plus avant dans cette partie, il y a des boucles sur les couches, les fréquences, les constituants (eau, oxygène) et les raies. Le continuum air sec, le continuum vapeur d'eau et les épaisseurs optiques pour les nuages et la pluie sont calculés seulement aux fréquences extrêmes du canal, à cause de la variation lente de ces valeurs avec la fréquence ; pour les autres fréquences on procède à une interpolation linéaire.
La dernière boucle sur les fréquences englobe presque toute la troisième partie.
Dans cette troisième partie est calculée la température de brillance dans les polarisations verticale et horizontale. Dans le cas où l'on néglige la diffusion, on calcule simplement la température apparente issue de chaque couche de proche en proche, pour chaque fréquence. La température finale est obtenue en sommant les contributions de toutes les fréquences du filtre (intégration trapézoïdale). Dans le cas d'une atmosphère diffusante, il faut calculer les températures apparentes dans différentes directions et pour toutes les couches, autant de fois que nécessaire (itération). Cette partie réalise enfin un calcul de fonction de poids (en température et en vapeur d'eau) et assure l'affichage récapitulatif des résultats.
La quatrième partie regroupe les sous-programmes appelés dans les deuxième, troisième et quatrième partie. Dans l'ordre où ils se présentent dans la quatrième partie : calculs des constantes diélectriques (pour les gouttes d'eau et le sol) ; de la température apparente de la surface (émissivité de type ITRA, réflexion spéculaire avec formules de Fresnel, réflexion d'après la loi de Lambert, ou notre modèle complet pour la mer) ; des coefficients d'absorption empiriques, ou d'absorption et de diffusion de Mie, pour la pluie ; des coefficients d'absorption de Rayleigh, ou d'absorption et de diffusion de Mie pour un nuage ; des facteurs d'efficacité de Mie pour une goutte.
L'organisation de toutes les questions est arborescente. Pour un calcul complet, jusqu'à 36 questions peuvent être posées. Pour la plupart des interrogations, il est proposé à l'utilisateur une valeur par défaut qu'il peut utiliser si la question lui paraît absconse. Tout cela, allié au fait qu'un seul programme (associé à des fichiers de données) est à faire fonctionner, rend le logiciel particulièrement convivial et son utilisation très facile. D'autre part, ce logiciel demeure ouvert car aisément adaptable à des conditions qui n'auraient pas été envisagées, ou à des nouveautés, en matière spectroscopique par exemple. En revanche il n'a pas été optimalisé en ce qui concerne le temps de calcul. Ce fut un choix délibéré de notre part que de privilégier la convivialité au détriment de la vitesse d'éxécution. Mais une version plus rapide pourrait être écrite facilement à partir du programme original.
2. LISTAGE
Nous présentons en annexe 1 les codes du programme d'extraction des données de la banque GEISA puis du programme de transfert radiatif.
3. UTILISATION
En annexe 1 est aussi donné un exemple de la façon dont se déroule le dialogue avec le logiciel et de la présentation des résultats finaux.
Sur VAX 8600, le temps d'exécution (C.P.U.) est de l'ordre de 8 secondes pour le calcul des facteurs de transmission en atmosphère claire, pour une seule fréquence. Le calcul de la température de brillance, quel que soit le modèle de réflexion sur la surface (avec un nombre raisonnable de pentes pour notre modèle), ajoute moins d'une seconde. En revanche, un calcul complet avec diffusion peut prendre jusqu'à une centaine de secondes, suivant le degré de précision souhaité (nombre d'étapes pour l'itération, nombre d'angles traités, subdivision des couches).
Sommaire Précédent Suivant Accueil