VERIFI(1)							       VERIFI(1)

	  ** **	**	V E R I	F I E  VERSION 7.0  JUIN 91    ** ** **

	  UTILITAIRE SERVANT A LA VERIFICATION DES PREVISIONS
	  METEOROLOGIQUES GARDEES DANS DES FICHIERS STANDARDS RPN.

	       SOURCE -	VOIR AUTEUR  YVON R. BOURASSA (514) 421-4734

   SEQUENCE D'APPEL.
	   verifi -p previsions	 -a analyses  -s scores	 -ai initial
		  -pma residu  -opdat  -m
	   ~e
	     section de	directives

   CLES	DE LA SEQUENCE D'APPEL
	   -p	 Fichier (Entree) des previsions.
	   -a	    "	     "	   "  analyses.
	   -ai	    "	     "	   "	  "    initiales.
	   -pma	    "	 (Sortie)  "  residus/moyennes du mois.
	   -s	    "	     "	   "  scores.
	   -i	    "	 (Entree)  "  directives [$in].
	   -l	    "	 (Sortie)  "  messages/scores/tableaux [$out].
	   -d	 Pour l'utilisation de la date operationelle.
	   -l 0	 Supprime les sortie sur imprimante.
	   -m	 Imprime les diagnostiques dans	L [warnin].

	   ** ** ** ** **    D I R E C T I V E S    ** ** ** **	** **

   MODELA('ETIKET')/[-1]
	  Change l'etiquette du	modele de l'analyse.
   MODELI('ETIKET')/[-1]
	  Change l'etiquette du	modele de l'alyse initiale.
   MODELP(['ETIKET','ETIKET'])/[-1]
	  Change la liste des modeles a	verifier ou resumer.
   MODELR('ETIKET')/[-1]
	  Change l'etiquette des residus (Prog-Anal), ecrits dans PMA.
	  NOTE:	 'ETIKET' = (1 a 8 caracteres).

   TYPANAL('X')/[A]
	  Change le typevar des	analyses.
   TYPINIT('X')/[A]
	  Change le typevar des	analyses initiales.
   TYPPROG('X')/[P]
	  Change le typevar des	previsions a verifier.
	  NOTE:	 X = (1	caractere)

   VOIRA = OUI/[NON]
	  Voir le fichier A   (analyse)	a l'ouverture.
   VOIRI = OUI/[NON]
	  Voir le fichier AI  (auxiliaire) a l'ouverture.
   VOIRP = OUI/[NON]
	  Voir le fichier P   (prevision) a l'ouverture.
   VOIRR = OUI/[NON]
	  Voir le fichier PMA (residu/erreur moyenne) a	la fermeture.
   VOIRS = OUI/[NON]
	  Voir le fichier S   (score) a	la fermeture.

   GRILLE = OUI/[NON]
	  Indique que les caracteristiques GRTYP, IG1, IG2, IG3	et IG4
	  de la	grille s'ajoutent aux clefs de recherche.

   POIDS = NON/[OUI]
	  Controle l'application du facteur de ponderation en fonction
	  de la	projection geographique	dans le	calcul des scores.
	  NOTE:	Doit preceder la directive DIMEN.

   DIMEN(I, J, GTYPE, G1, G2, G3, G4)
	  Precise les dimensions et les	caracteristiques de la grille
	  des champs a verifier.
	  NOTES: A) Recalcule la ponderation si	desiree.
		 B) Oblige la redefinition des erres de	verification.
		 C) G1,	G2, G3,	G4, sont donnes	en reels.
	  IE: DIMEN(I, J, N,  PI,   PJ,	  D60,	DGRW)
	      DIMEN(I, J, S,  PI,   PJ,	  D60,	DGRW)
	      DIMEN(I, J, L,  XLAT, XLON, DLAT,	DLON)
	      DIMEN(I, J, A,  G1,   G2,	  G3,	G4)
	      DIMEN(I, J, B,  G1,   G2,	  G3,	G4)
	      DIMEN(I, J, G,  G1,   G2,	  G3,	G4)
	  NOTES:
	      DIMEN(I)	 = DIMEN(I, 1, X, 0., 0., 0., 0.) Sans ponderation.
	      DIMEN(I,J) = DIMEN(I, J, X, 0., 0., 0., 0.) Sans ponderation.

   AREA(I,J,K,L,'REGION')
	  Description d'une fenetre de la grille a verifier sur	un maximim
	  possible de 12 fenetres.
	  I,J	   = Entiers: Coordonnes du coin inferieur gauche de la
		     fenetre.
	  K,L	   = Entiers: Coordonnes du coin superieur droit.
	  'REGION' = Identificateur 1@8	caracteres.

	  NOTE:	12 regions peuvent etre	ainsi determinees.

   IGL = 2/[1]
	  Indique que le score S1 sera calcule a tous les 2 points de
	  la grille.

   AUTOM = OUI	Le choix de se fait automatiquement selon la variable.
	  VAR =	GZ,P0 et PN produit les	scores BIAS RMS, S1
	   "  =	TT,TD OU ES    "     "	   "   BIAS RMS.
	   "  =	UV	       "     "	   "   TRMS.
	   "  =	PR	       "     "	   "   THREAT.
	  S1POND = OUI/[NON]
	    Controle la	ponderation du score 'S1'.
	  CMC =	OUI/[NOM]
	    Force la ponderation desscores S1 et ajoute	le score EMPV
	    pour la variable UV.

   AUTOM=NON	Le choix de score est laisse au	controle de l'usager.
	  Le choix ou l'annulation de score se fait avec les directives
	  PERS	 = OUI/[NON]
	  BIAS	 = OUI/[NON]
	  RMS	 = OUI/[NON]
	  RMST	 = OUI/[NON]
	  CORC	 = OUI/[NON]
	  S1	 = OUI/[NON]
	  S1P	 = OUI/[NON]
	  BIAS0	 = OUI/[NON]
	  RMS0	 = OUI/[NON]
	  RMST0	 = OUI/[NON]
	  EMPV	 = OUI/[NON]
	  TRMS	 = OUI/[NON]
	  THREAT = OUI/[NON]

   DATE(N, VAR)	 [DATE du premier enregistrement de A]
	  Determine ou change la date initiale.
	  IE: (-1):	  La date ne sert pas de cle de	recherche.
	   "  (	1):	  Prend	la premiere date du fichier #1.
	   "  ('ABC'):	    "	 "    "	      "	  "    "    ABC.
	   "  (2,TT):	    "	 " date	du premier TT du fichier #2.
	   "  (10191000): Permet de passer une date de format CMC.

   HEURE = NH [0]
	  Modifie le calcul de la date courante, qui se	trouve toujours	a
	  NH heures de la date initiale.

   DEFAZE = N/[0]
	  Pour verifier	une prevision contre une avalyse dephasee de N
	  heures de la date valide.
	  N  = Heures de dephasage.

   RESIDU = OUI/[NON]
	  Controle l'ecriture des residus (PROG-ANAL) dans PMA

   EMDM	= OUI/[NON]
	  Controle l'accumulation de la	moyenne	mensuelle des previsions
	  et la	moyenne	des ecarts dans	PMA.
	  NOTES:
	      A) Valide	en mode	AUTOM=NON seulement.
	      B) Impossible de faire d'autre sortes de verifications.
	      C) A chaque changement de	mois, cree automatiquement de
		 nouveaux records accumulateurs.
	      D) Ne reconnais pas la variable 'PR'.

   ARCHIVE = OUI/NON
	  Controle l'archivage des scores de verification dans S.

   DEBUG = OIU/NON
	  Controle la sortie des messages d'interpretation sur L.

   IMPRIME = NON/[OUI]
	  Controle l'impression	des scores de verifi sur L.
	  NOTE:	Durant l'execution de la directive RESUME:
	    OUI: Imprime tous les tableaux
	    NON: Imprime les tableaux des moyennes seulement.

   PERIODE = DUREE,INTERVALLE  [0,6]
	  Definit en heures la duree de	la periode pour	laquelle on veut une
	  verification et l'intervale a	laquelle sont emises les prevision.

   NIVEAUX(F1, F2,   F40)  [500.]
	  Etablit une liste des	1@40 niveaux a verifier.
	  F1@F40 = Reels.

   ETAPES(N1,N2,N3)  [0, 24, 48]
	  Definit les etapes (IP2) d'une prevision.
	  N1 = Entier: Premier	IP2 de la prevision.
	  N2 =	  "    Derniere	 "   "	"     "
	  N3 =	  "    Intervalle en heures entre les IP2.
	  NOTE:	Les etapes ainsi definies sont utilisees quand TOUS
		remplace le IP2	les directives CASVER et RESUME.

   VERIFI(VAR, IP1, IP2, IP3, VARA, IP1A)
	  Verification periodique d'une	prevision.
	    VAR	 = Caracteres: Nomvar de la prevision.
	    IP1	 = Entier:     Niveau de la prevision.
	    IP2	 =   "	       Heure.
	    IP3	 =   "	       IP3
	    VARA = Caracteres: Nomvar de l'analyse.
	    IPIA = Entier:     Niveau  "     "
	    NOTES: VAR est obligatoire.	Ex: VERIFI(TT)
		   Si IP1=TOUS:	la verification	se fara	a tous les
		     niveaux passes par	la directive NIVEAUX(  ,  ,  ).
		   VAR et VARA peuvent etre differents.
		   IP1	" IP1A	  "	 "	"
		   IE: VERIFI(TT, 12000, IP2, IP3, TS, 0)

   IMPREV('DN')	 Change	le fichier P.
   IMANAL('DN')	     "	 "    "	   A
   AMAUXI('DN')	     "	 "    "	   AI
   OMSCOR('DN')	     "	 "    "	   S
   OMRESI('DN')	     "	 "    "	   PMA
	  'DN' = Nom du	fichier, maximum est de	128 caracteres.

   PHEURES = N1,N2,N3,N4 [6]
	  Definit 1@4 ecarts de	persistance en heures.

   PERSIST(VAR,IP1,IP2,IP3)
	  Calcul du score de persistance.
	  VAR  = Caracteres: Nomvar de la prevision a verifier.
	  IP1  = Entier:     Niveau de la prevision "	  "
	  IP2  =   "	     Heure   "	"     "	    "	  "
	  IP3  =   "	     IP3     "	"     "	    "	  "
	  NOTES:  VAR est obligatoire. Ex: PERSIST(TT)
		  IP1 peut etre	remplace par TOUS pour la verification
		  des niveaux decrits par la directive NIVEAUX.

   CASVER([VAR], [IP1],	[IP2], [MODELE])
	  Verification periodique par cas ou par experience.
	  VAR	 = Caracteres: Liste de	nomvars	a verifier. IE:	[GZ,TT].
	  IP1	 = Entiers: Liste de niveaux a verifier. IE: [500,700]
	  IP2	 = Entiers: Liste des heures a verifier. IE: [00,12]
	  IP3	 = Entiers: Liste des IP3 a verifier.
	  MODELE = Caracteres: Liste d'etiket a	verifier IE: ['SPECTRAL']

	  NOTES:  VAR est obligatoire. Ex: CASVER(TT)
		  (-1)	L'argument n'est pas une cle de	recherche.
		  IP1 =	  TOUS prend la	liste de la directive NIVEAUX.
		  IP2 =	    "	 "    "	  "    "  "	"     ETAPES.
		  MODELE =  "	 "    "	  "    "  "	"     MODELES.

   EFFACE(DN, MODELEE, NOMVAR, IP1, IP2, VAR)
	  Permet de liberer de l'espace	sur disque.
	  DN	 = Nom	 du  fichier   a nettoyer, 1 a 128 caracteres.
	  MODELE = Liste des etikettes a effacer. IE: ['XXXX']
	  NOMVAR = Liste des variables a effacer. IE: [GZ,TT]
	  IP1	 = Liste des niveaux   a effacer. IE: [500,700]
	  IP2	 = Liste des etapes    a effacer. IE:[00,12,24,26]
	  VAR	 = Typevar des enregistrements a effacer.

	  NOTES: DN est	obligatoire. Ex: EFFACE('XXXXX')
		 (-1)  L'argument n'est	pas une	cle de recherche.
		 IP1=TOUS    Prend la liste de la directive NIVEAUX.
		 IP2=TOUS      "    "	 "   "	"     "	    ETAPES.
		 MODELE=TOUS   "    "	 "   "	 "    "	    MODELES.

   RANGES(B1,B2....B10)	[-1.0, 0.2, 5.,	10., 25., 50., 100., 200.]
	  Change les ecarts de precipitation utilises dans le calcul
	  du score THREAT.
	  B1 A B10 = 3 a 10 reels en ordre croissant.

	   ** ** **  DIRECTIVES	CONTROLEUR DE RESUME  ** ** ** **

   RESCOR(['TRMSP','S1'])/[Les scores disponibles]
	  Liste	des 1 a	10 scores a inclure au resume.
	  Le descripteur ne doit pas depasser 8	caracteres.

   REGIONS(['REGION1',....,'REGION10'])/[Les regions disponibles]
	  Liste	des 1 a	10 regions de la grille	a inclure au sommaire.
	  Le descripteur ne doit pas depasser 8	caracteres.

   CONTEUR=OUI/[NON]
	  Calcul et imprime dans un tableau la frequence des scores des
	  previsions emises ou valides durant une periode donnee.

   TABLOM=OUI/[NON]
	  Calcul et imprime dans un tableau la moyenne des scores des
	  previsions emises ou valides durant une periode donnee.

   PARCAS=NON/[OUI]
	  OUI: Les scores d'un tableau representent les	scores d'un
	       cas en particulies.
	  NON: Les scores d'un tableau sont tous valides a la meme date.

   PRECZN = I [2]
	  Change le nombre de chifres a	garder apres le	point a	la
	  compaction.
	  I = Entier

   COMPAK = I [1]
	  Change le facteur de compaction des scores a l'archivage

   RESUME(NOMVAR, IP1, IP2, ETIKET)
	  Presemte sous	forme de tableaux les scores de	verifi.
	    1) Un tableau par date de prevision	ou par date de
	       verification
	    2) Un tableau de la	moyenne	pour la	periode.
	    3) Un tableau du nombre de scores utilises pour chaque score
	       moyen.
	  NOMVAR: = Liste. IE: [GZ,TT]
	  IP1:	  = [500,700] Pour resumer les scores niveau 500 et 700.
		  = -1	   Le niveau n'est pas un facteur de recherche.
		  = TOUS   Resume les scores des niveaux fournis par la
			   directive  NIVEAUX.
	  IP2:	  = [00,12]  Pour resumer les scores de	00h et 12h.
		  = -1	   Pouir resumer ceux de la directive ETAPES.
	  ETIKET: = ['MODLA','MODLX'] Etiket du	modele a resumer.
		  = LISTE  ETIQUETTES DES MODELES A VERIFIER.

		  = -1	   L'ETIKET N'EST PAS UN FACTEUR DE RECHERCHE.
		  = TOUS   RESUME LES MODELES PASSES VIA DIRECTIVE.
			   ETIKET  = DESCRIPTEUR  (8 CARACHTERES MAXIMUM).

	   ** ** **  DIRECTIVES	CONTROLEUR DE GRAPHIQUES  ** **	**

   COURBE=OUI/[NON]
	  OUI: Trace des courbes sur V80.

   DESSIN=OUI/[NON]
	  OUI: Trace des tableaux de scores sur	V80.

   CMXL=REAL/[300.]
	  REAL = Nombre	maximim	permis dans CONTOUR.

   CI=REAL/[10.]
	  REAL = Interval de contour.

   ICHF=REAL/[2.]
	  REAL = Frequence des highlight.