damocle.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\utils\damocles\damocle.f
00002 !
00061                      SUBROUTINE DAMOCLE
00062 !                    ******************
00063 !
00064      &( ADRESS , DIMENS , NMAX   , DOC    , LLNG , LLU ,
00065      &  MOTINT , MOTREA , MOTLOG , MOTCAR ,
00066      &  MOTCLE , TROUVE , NFICMO , NFICDA , GESTD , MOTATT )
00067 !
00068 !***********************************************************************
00069 ! DAMOCLES   V6P0                                   21/08/2010
00070 !***********************************************************************
00071 !
00072 !
00073 !
00074 !
00075 !
00076 !
00077 !
00078 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00079 !| ADRESS         |<--| TABLEAU DES ADRESSES DES MOTS CLES
00080 !| DIMENS         |<--| TABLEAU DES DIMENSIONS DES MOTS CLES
00081 !| DOC            |-->| LOGIQUE DE DOCUMENTATION DE LA SORTIE
00082 !|                |   | = VRAI : IMPRIME L'AIDE (FICHIER RESULTAT)
00083 !|                |   | = FAUX : N'IMPRIME PAS L'AIDE
00084 !| GESTD          |-->| LOGIQUE D'APPEL PAR LE GESTIONNAIRE D'ETUDES
00085 !| LLNG           |-->| NUMERO DE LA LANGUE DE DECODAGE
00086 !| LLU            |-->| NUMERO DE L'UNITE LOGIQUE DES SORTIES
00087 !| MOTATT         |<--| TABLEAU DES SUBMITS
00088 !| MOTCAR         |<--| TABLEAU DES VALEURS CARACTERES
00089 !| MOTCLE         |<--| TABLEAU DES MOTS CLES ACTIFS
00090 !| MOTINT         |<--| TABLEAU DES VALEURS ENTIERES
00091 !| MOTLOG         |<--| TABLEAU DES VALEURS LOGIQUES
00092 !| MOTREA         |<--| TABLEAU DES VALEURS REELLES
00093 !| NFICDA         |-->| NUMERO DE CANAL DU FICHIER DES DONNEES
00094 !| NFICMO         |-->| NUMERO DE CANAL DU FICHIER DES MOTS-CLES
00095 !| NMAX           |-->| TAILLE MAXIMALE AUTORISEE POUR LES TABLEAUX
00096 !| TROUVE         |<--| INDICATEUR D'ETAT DES MOTS CLES
00097 !|                |   | = 0 : AUCUNE VALEUR TROUVEE
00098 !|                |   | = 1 : VALEUR PAR DEFAUT TROUVEE
00099 !|                |   | = 2 : VALEUR TROUVEE (FICHIER DE DONNEES)
00100 !|                |   | = 3 : AUCUNE VALEUR TROUVEE (OPTIONNELLE)
00101 !|                |   | = 5 : TABLEAU DE MOTS A SUBMIT COMPACTE
00102 !|                |   | = 6 : MOT CLE A SUBMIT FORCE NON AFFECTE
00103 !|                |   | = 7 : MOT CLE A SUBMIT FORCE AFFECTE (DICO)
00104 !|                |   | = 8 : MOT CLE A SUBMIT FORCE AFFECTE (CAS)
00105 !|                |   | = 9 : FICHIER DICO : SUBMIT + VALEUR LANCEUR
00106 !|                |   | =10 : FICHIER CAS  : SUBMIT + VALEUR LANCEUR
00107 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00108 !
00109       IMPLICIT NONE
00110 !
00111       INTEGER            ,INTENT(IN)  :: NMAX,LLU,NFICMO,NFICDA
00112       INTEGER            ,INTENT(INOUT)  :: LLNG
00113       INTEGER            ,INTENT(OUT) :: MOTINT(*),ADRESS(4,*)
00114       INTEGER            ,INTENT(OUT) :: DIMENS(4,*),TROUVE(4,*)
00115       LOGICAL            ,INTENT(OUT) :: MOTLOG(*)
00116       LOGICAL            ,INTENT(IN)  :: DOC, GESTD
00117       CHARACTER(LEN=72)  ,INTENT(OUT) :: MOTCLE(4,*)
00118       CHARACTER(LEN=144) ,INTENT(OUT) :: MOTCAR(*)
00119       DOUBLE PRECISION   ,INTENT(OUT) :: MOTREA(*)
00120 !
00121 !     AUTOMATIC ARRAYS
00122 !
00123       INTEGER            :: DEFINT(NMAX),USRINT(NMAX)
00124       INTEGER            :: SIZE(4,NMAX)
00125       INTEGER            :: INDIC(4,NMAX)
00126       LOGICAL            :: DEFLOG(NMAX),USRLOG(NMAX),UTINDX(4,NMAX)
00127       CHARACTER(LEN=144) :: MOTATT(4,NMAX),DEFATT(NMAX),USRATT(NMAX)
00128       CHARACTER(LEN=144) :: DEFCAR(NMAX),USRCAR(NMAX)
00129       DOUBLE PRECISION   :: DEFREA(NMAX),USRREA(NMAX)
00130 !
00131       INTEGER,PARAMETER :: NBLANG = 2
00132       INTEGER :: RETRY,I
00133       RETRY = 0
00134 !
00135 !     CALLS DAMOC
00136 !
00137       CALL DAMOC( ADRESS , DIMENS , NMAX   , DOC    , LLNG   , LLU  ,
00138      &            MOTINT , MOTREA , MOTLOG , MOTCAR , MOTATT ,
00139      &            DEFINT , DEFREA , DEFLOG , DEFCAR , DEFATT ,
00140      &            USRINT , USRREA , USRLOG , USRCAR , USRATT ,
00141      &            MOTCLE , SIZE   , TROUVE , UTINDX , NFICMO , NFICDA ,
00142      &            INDIC  , GESTD  , NBLANG , RETRY )
00143 !
00144       IF(RETRY.EQ.1) THEN
00145         REWIND(NFICMO)
00146         REWIND(NFICDA)
00147         DO I=1,10
00148           WRITE(LLU,*)
00149           WRITE(LLU,*) 'DAMOCLE: TRYING ANOTHER LANGUAGE'
00150         ENDDO
00151         LLNG=3-LLNG
00152         CALL DAMOC( ADRESS, DIMENS, NMAX   , DOC    , LLNG   , LLU,
00153      &              MOTINT, MOTREA, MOTLOG , MOTCAR , MOTATT ,
00154      &              DEFINT, DEFREA, DEFLOG , DEFCAR , DEFATT ,
00155      &              USRINT, USRREA, USRLOG , USRCAR , USRATT ,
00156      &              MOTCLE, SIZE  , TROUVE , UTINDX , NFICMO , NFICDA,
00157      &              INDIC , GESTD , NBLANG , RETRY )
00158       ENDIF
00159 !
00160 !-----------------------------------------------------------------------
00161 !
00162       RETURN
00163       END

Generated on Fri Aug 31 2013 18:12:58 by S.E.Bourban (HRW) using doxygen 1.7.0