friction_read.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\telemac2d\friction_read.f
00002 !
00064                      SUBROUTINE FRICTION_READ
00065 !                    ************************
00066 !
00067      &(NCOF,NZONMX,ITURB,LISRUG,LINDNER,NOMCOF,NZONES,FRTAB)
00068 !
00069 !***********************************************************************
00070 ! TELEMAC2D   V6P1                                   21/08/2010
00071 !***********************************************************************
00072 !
00073 !
00074 !
00075 !
00076 !
00077 !
00078 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00079 !| FRTAB          |-->| FRICTION_OBJ STRUCTURE WITH DATA ON FRICTION
00080 !| ITURB          |-->| TURBULENCE MODEL
00081 !| LINDNER        |-->| IF YES, THERE IS NON-SUBMERGED VEGETATION FRICTION
00082 !| LISRUG         |-->| TURBULENCE REGIME (1: SMOOTH 2: ROUGH)
00083 !| NCOF           |-->| LOGICAL UNIT OF FRICTION FILE
00084 !| NOMCOF         |-->| NAME OF FRICTION FILE
00085 !| NZONES         |-->| NUMBER OF FRICTION ZONES
00086 !| NZONMX         |-->| MAXIMUM NUMBER OF FRICTION ZONES
00087 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00088 !
00089       USE FRICTION_DEF
00090       USE INTERFACE_TELEMAC2D, EX_FRICTION_READ => FRICTION_READ
00091 !
00092       IMPLICIT NONE
00093       INTEGER LNG,LU
00094       COMMON/INFO/LNG,LU
00095 !
00096 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00097 !
00098       INTEGER,            INTENT(IN)    :: NCOF, NZONMX
00099       INTEGER,            INTENT(IN)    :: ITURB, LISRUG
00100       LOGICAL,            INTENT(IN)    :: LINDNER
00101       CHARACTER(LEN=144), INTENT(IN)    :: NOMCOF
00102       INTEGER,            INTENT(OUT)   :: NZONES
00103       TYPE(FRICTION_OBJ), INTENT(INOUT) :: FRTAB
00104 !
00105 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00106 !
00107       INTEGER          :: I, J, LOOP, NLOOP, N, IZ1, IZ2
00108       INTEGER          :: IZONE, TYP, LINE
00109       DOUBLE PRECISION :: R1, R2
00110       CHARACTER*4      :: LAW
00111       CHARACTER*20     :: CHAINE(10)
00112 !
00113 !=======================================================================!
00114 !=======================================================================!
00115 !                               PROGRAMME                               !
00116 !=======================================================================!
00117 !=======================================================================!
00118 !
00119       ! CHECK THAT THERE IS A FRICTION FILE
00120       ! -----------------------------------
00121       IF (NOMCOF(1:1) == ' ') THEN
00122         IF (LNG == 1) WRITE(LU,1)
00123         IF (LNG == 2) WRITE(LU,2)
00124         CALL PLANTE(1)
00125         STOP
00126       ENDIF
00127 !
00128       REWIND NCOF
00129 !
00130       DO I=1,NZONMX
00131         DO J = 1, 2
00132           FRTAB%ADR(I)%P%GNUMB(J) = 0
00133           FRTAB%ADR(I)%P%RTYPE(J) = 0
00134           FRTAB%ADR(I)%P%RCOEF(J) = 0.D0
00135           FRTAB%ADR(I)%P%NDEF (J) = 0.D0
00136         ENDDO
00137         FRTAB%ADR(I)%P%DP          = 0.D0
00138         FRTAB%ADR(I)%P%SP          = 0.D0
00139       ENDDO
00140 !
00141       ! K-EPSILON : READ PARAMETERS FOR 2 LAWS (BOTTOM AND BOUNDARY CONDITIONS)
00142       ! ELSE      : READ PARAMETERS FOR 1 LAW  (BOTTOM)
00143       ! ----------------------------------------------------------------------
00144       IF(ITURB.EQ.3.AND.LISRUG.EQ.2) THEN
00145         NLOOP=2
00146       ELSE
00147         NLOOP=1
00148       ENDIF
00149 !
00150       ! LISTING
00151       ! -------
00152       WRITE(LU,3)
00153       WRITE(LU,4)
00154 !
00155       ! READ DATA FOR EACH ZONE
00156       ! ------------------------
00157       IZONE = 0
00158       LINE = 0
00159       DO I = 1, NZONMX
00160 !
00161         ! FIND THE NEXT ZONE INDEX AND LAW
00162         ! --------------------------------
00163         CALL FRICTION_SCAN(NCOF,NOMCOF,TYP,LINE)
00164 !
00165         ! END OF FILE => EXIT
00166         ! -------------------
00167         IF (TYP == 3) THEN
00168           NZONES = IZONE
00169           EXIT
00170         ENDIF
00171 !
00172         ! INCREMENT NUMBER OF ZONES
00173         ! -------------------------
00174         IZONE = IZONE + 1
00175 !
00176         ! NOT ENOUGH ZONES ALLOCATED
00177         ! --------------------------
00178         IF (IZONE > NZONMX) THEN
00179           IF (LNG == 1) WRITE(LU,5)
00180           IF (LNG == 2) WRITE(LU,6)
00181           CALL PLANTE(1)
00182           STOP
00183         ENDIF
00184 !
00185         ! READ AND SAVE PARAMETERS OF THE ZONE
00186         ! ------------------------------------
00187         IF (TYP == 1) N = 1
00188         IF (TYP == 2) N = 4
00189 !
00190         DO LOOP = 1, NLOOP
00191 !
00192           IF (LOOP == 2) BACKSPACE(NCOF)
00193           ! READ THE NAME OF THE LAW AND NUMBERING OF THE ZONE
00194           ! --------------------------------------------------
00195           CHAINE(1) = ' '
00196           IF (TYP == 1) THEN
00197             READ(NCOF,*,END=999,ERR=998) IZ1,(CHAINE(J),J=2,N),LAW
00198             IZ2 = IZ1
00199           ELSE IF (TYP == 2) THEN
00200             READ(NCOF,*,END=999,ERR=998) CHAINE(1),IZ1,CHAINE(3),IZ2,
00201      &                                   (CHAINE(J),J=5,N),LAW
00202           ENDIF
00203 !
00204           ! LOCAL-GLOBAL NUMBER OF THE ZONE
00205           ! -------------------------------
00206           IF (LOOP == 1) FRTAB%ADR(I)%P%GNUMB(1) = IZ1
00207           IF (LOOP == 1) FRTAB%ADR(I)%P%GNUMB(2) = IZ2
00208 !
00209           BACKSPACE(NCOF)
00210           CALL MAJUS(LAW)
00211 !
00212           ! FIND THE LAW AND THE NUMBER OF PARAMETERS TO READ
00213           ! -------------------------------------------------
00214           SELECT CASE (LAW)
00215 !
00216           CASE('NOFR')
00217             READ(NCOF,*,END=999,ERR=900) (CHAINE(J),J=1,N),LAW
00218             FRTAB%ADR(I)%P%RTYPE(LOOP) = 0
00219             FRTAB%ADR(I)%P%RCOEF(LOOP) = 0.D0
00220             FRTAB%ADR(I)%P%NDEF (LOOP) = 0.D0
00221             N = N + 1
00222           CASE('HAAL')
00223             READ(NCOF,*,END=999,ERR=901) (CHAINE(J),J=1,N),LAW,R1
00224             FRTAB%ADR(I)%P%RTYPE(LOOP) = 1
00225             FRTAB%ADR(I)%P%RCOEF(LOOP) = R1
00226             FRTAB%ADR(I)%P%NDEF (LOOP) = 0.D0
00227 !
00228             ! THE BOUNDARY COEFFICIENT COEF MUST BE THE SAME AS THE BOTTOM
00229             ! -----------------------------------------------------------
00230             IF ( ( ((N>1).AND.(TYP==1)).OR.((N>4).AND.(TYP==2)) )
00231      &          .AND.
00232      &           (FRTAB%ADR(I)%P%RCOEF(1)/=FRTAB%ADR(I)%P%RCOEF(2))
00233      &         ) THEN
00234               IF (LNG==1) WRITE(LU,15) NOMCOF,I,
00235      &                                 FRTAB%ADR(I)%P%RCOEF(1)
00236               IF (LNG==2) WRITE(LU,16) NOMCOF,I,
00237      &                                 FRTAB%ADR(I)%P%RCOEF(1)
00238               CALL PLANTE(1)
00239               STOP
00240             ENDIF
00241             N = N + 2
00242           CASE('CHEZ')
00243             READ(NCOF,*,END=999,ERR=901) (CHAINE(J),J=1,N),LAW,R1
00244             FRTAB%ADR(I)%P%RTYPE(LOOP) = 2
00245             FRTAB%ADR(I)%P%RCOEF(LOOP) = R1
00246             FRTAB%ADR(I)%P%NDEF (LOOP) = 0.D0
00247             N = N + 2
00248           CASE('STRI')
00249             READ(NCOF,*,END=999,ERR=901) (CHAINE(J),J=1,N),LAW,R1
00250             FRTAB%ADR(I)%P%RTYPE(LOOP) = 3
00251             FRTAB%ADR(I)%P%RCOEF(LOOP) = R1
00252             FRTAB%ADR(I)%P%NDEF (LOOP) = 0.D0
00253             N = N + 2
00254           CASE('MANN')
00255             READ(NCOF,*,END=999,ERR=901) (CHAINE(J),J=1,N),LAW,R1
00256             FRTAB%ADR(I)%P%RTYPE(LOOP) = 4
00257             FRTAB%ADR(I)%P%RCOEF(LOOP) = R1
00258             FRTAB%ADR(I)%P%NDEF (LOOP) = 0.D0
00259             N = N + 2
00260           CASE('NIKU')
00261             READ(NCOF,*,END=999,ERR=901) (CHAINE(J),J=1,N),LAW,R1
00262             FRTAB%ADR(I)%P%RTYPE(LOOP) = 5
00263             FRTAB%ADR(I)%P%RCOEF(LOOP) = R1
00264             FRTAB%ADR(I)%P%NDEF (LOOP) = 0.D0
00265             N = N + 2
00266           CASE('LOGW')
00267             IF (((N == 1).AND.(TYP == 1))  .OR.
00268      &          ((N == 4).AND.(TYP == 2))) THEN
00269               IF (LNG == 1) WRITE(LU,7) NOMCOF, I
00270               IF (LNG == 2) WRITE(LU,8) NOMCOF, I
00271               CALL PLANTE(1)
00272               STOP
00273             ENDIF
00274             READ(NCOF,*,END=999,ERR=901) (CHAINE(J),J=1,N),LAW,R1
00275             FRTAB%ADR(I)%P%RTYPE(LOOP) = 6
00276             FRTAB%ADR(I)%P%RCOEF(LOOP) = R1
00277             FRTAB%ADR(I)%P%NDEF (LOOP) = 0.D0
00278             N = N + 2
00279           CASE('COWH')
00280             READ(NCOF,*,END=999,ERR=907) (CHAINE(J),J=1,N),LAW,R1,R2
00281             FRTAB%ADR(I)%P%RTYPE(LOOP) = 7
00282             FRTAB%ADR(I)%P%RCOEF(LOOP) = R1
00283             FRTAB%ADR(I)%P%NDEF (LOOP) = R2
00284             N = N + 3
00285           CASE DEFAULT
00286             IF (LNG==1) WRITE(LU, 9) LINE, IZ1, IZ2, LAW
00287             IF (LNG==2) WRITE(LU,10) LINE, IZ1, IZ2, LAW
00288             CALL PLANTE(0)
00289             STOP
00290           END SELECT
00291         ENDDO
00292 !
00293         ! READ NON-SUBMERGED COEFFICIENT IF NEEDED
00294         ! ----------------------------------------
00295         IF (LINDNER) THEN
00296           BACKSPACE(NCOF)
00297           READ(NCOF,*,END=999,ERR=888) (CHAINE(J),J=1,N),R1,R2
00298           FRTAB%ADR(I)%P%DP = R1
00299           FRTAB%ADR(I)%P%SP = R2
00300         ELSE
00301           FRTAB%ADR(I)%P%DP = 0.D0
00302           FRTAB%ADR(I)%P%SP = 0.D0
00303         ENDIF
00304         WRITE(LU,11) FRTAB%ADR(I)%P%GNUMB(1),
00305      &               FRTAB%ADR(I)%P%GNUMB(2),
00306      &               FRTAB%ADR(I)%P%RTYPE(1),
00307      &               FRTAB%ADR(I)%P%RCOEF(1),
00308      &               FRTAB%ADR(I)%P%NDEF (1),
00309      &               FRTAB%ADR(I)%P%RTYPE(2),
00310      &               FRTAB%ADR(I)%P%RCOEF(2),
00311      &               FRTAB%ADR(I)%P%NDEF (2),
00312      &               FRTAB%ADR(I)%P%DP,
00313      &               FRTAB%ADR(I)%P%SP
00314       ENDDO
00315 !
00316 !
00317       ! END
00318       ! ---
00319       WRITE(LU,3)
00320 !
00321       IF (LNG == 1) WRITE(LU,13) NZONES
00322       IF (LNG == 2) WRITE(LU,14) NZONES
00323 !
00324       GOTO 997
00325 !
00326       ! ============ !
00327       ! ERROR FORMAT !
00328       ! ============ !
00329 !
00330 1     FORMAT('PAS DE FICHIER DE DONNEES POUR LE FROTTEMENT')
00331 2     FORMAT('NO FRICTION DATA FILE')
00332 3     FORMAT('-------------------------------------------------------'
00333      &     , '------------------------------------------------------')
00334 4     FORMAT('                      BOTTOM                         '
00335      &     , 'BOUNDARY CONDITION              NON-SUBMERGED VEGETATION'
00336      &     ,/'NO                    LAW   RCOEF        NDEF        '
00337      &     , 'LAW   RCOEF        NDEF         DP           SP')
00338 5     FORMAT('NOMBRE DE ZONES DE FROTTEMENT DEFINI TROP NOMBREUSES'
00339      &     ,/'AUGMENTER LE NOMBRE DE ZONES MAXIMALES AVEC LE MOT-CLE :'
00340      &     ,/'NOMBRE MAXIMALE DE ZONES POUR LE FROTTEMENT')
00341 6     FORMAT('TOO MANY NUMBER OF FRICTION ZONES DEFINED'
00342      &     ,/'INCREASED THE NUMBER OF MAXIMAL ZONES WITH THE KEYWORD :'
00343      &     ,/'MAXIMUM NUMBER OF ZONES FOR THE FRICTION')
00344 7     FORMAT('FICHIER DE DONNEES POUR LE FROTTEMENT : ',A144
00345      &      ,/'ZONE : ',I9
00346      &      ,/'LA LOI LOG NE PEUT ETRE UTILISEE SUR LE FOND')
00347 8     FORMAT('FRICTION DATA FILE : ',A144
00348      &      ,/'ZONE : ',I9
00349      &      ,/'LOG LAW CAN''T BE USED FOR THE BOTTOM')
00350 9     FORMAT('FICHIER DE DONNEES POUR LE FROTTEMENT'
00351      &     ,/'ERREUR DE LECTURE LIGNE : ',I10
00352      &     ,/'ZONE DE ',I10,' A ',I10
00353      &     ,/'LOI ',A4)
00354 10    FORMAT('FRICTION DATA FILE'
00355      &     ,/'READ ERROR LINE',I10
00356      &     ,/'ZONE FROM ',I10,' TO ',I10
00357      &     ,/'LAW ',A4)
00358 11    FORMAT(2(1X,I9),1X,I4,2(1X,E12.4),1X,I4,4(1X,E12.4))
00359 !
00360 13    FORMAT(I5,' TYPES DE ZONES DEFINIES')
00361 14    FORMAT(I5,' ZONES TYPE SPECIFICATIONS')
00362 15    FORMAT('FICHIER DE DONNEES POUR LE FROTTEMENT : ',A144
00363      &      ,/'ZONE : ',I9
00364      &      ,/'LE COEFFICIENT DE FROTTEMENT DE LA LOI DE HAALAND POUR'
00365      &      ,/'LES CONDITIONS LIMITES DOIT ETER EGALE A CELUI DU FOND :'
00366      &      , E12.4)
00367 16    FORMAT('FRICTION DATA FILE : ',A144
00368      &      ,/'ZONE : ',I9
00369      &      ,/'FRICTION COEFFICIENT OF HAALAND LAW FOR'
00370      &      ,/'BOUNDARY CONDITION MUST BE THE SAME AS THE BOTTOM :'
00371      &      , E12.4)
00372 !
00373       ! END OF FILE
00374       ! -----------
00375 999   CONTINUE
00376       IF (LNG.EQ.1) THEN
00377         WRITE(LU,*) 'FICHIER DE DONNEES POUR LE FROTTEMENT : ',NOMCOF
00378         WRITE(LU,*) 'FIN DE FICHIER ANORMALE'
00379         WRITE(LU,*) 'VERIFIER QUE TOUTES LES VALEURS SONT ENTREES'
00380       ENDIF
00381       IF (LNG.EQ.2) THEN
00382         WRITE(LU,*) 'FRICTION DATA FILE : ',NOMCOF
00383         WRITE(LU,*) 'ABNORMAL END OF FILE'
00384         WRITE(LU,*) 'CHECK ALL VALUE HAVE BEEN WRITTEN'
00385       ENDIF
00386       CALL PLANTE(1)
00387       STOP
00388 !
00389       ! INDEX AND FIRST LAW OF THE ZONE
00390       ! -------------------------------
00391 998   CONTINUE
00392       IF (LNG.EQ.1) THEN
00393         WRITE(LU,*)'FICHIER DE DONNEES POUR LE FROTTEMENT : ',NOMCOF
00394         WRITE(LU,*)'ERREUR DE LECTURE ZONE : ',CHAINE(1)
00395       ENDIF
00396       IF (LNG.EQ.2) THEN
00397         WRITE(LU,*) 'FRICTION DATA FILE : ',NOMCOF
00398         WRITE(LU,*) 'READ ERROR ZONE : ',CHAINE(1)
00399       ENDIF
00400       CALL PLANTE(0)
00401       STOP
00402       ! NON-SUBMERGED VEGETATION PARAMETER
00403       ! ----------------------------------
00404 888   CONTINUE
00405       IF (LNG.EQ.1) THEN
00406         WRITE(LU,*) 'FICHIER DE DONNEES POUR LE FROTTEMENT'
00407         WRITE(LU,*)'ERREUR DE LECTURE POUR DP ET SP, ZONE : ',CHAINE(1)
00408       ENDIF
00409       IF (LNG.EQ.2) THEN
00410         WRITE(LU,*) 'FRICTION DATA FILE'
00411         WRITE(LU,*) 'READ ERROR FOR DP AND SP, ZONE : ',CHAINE(1)
00412       ENDIF
00413       CALL PLANTE(0)
00414       STOP
00415 !
00416       ! NO FRICTION LAW
00417       ! ---------------
00418 900   CONTINUE
00419       IF (LNG.EQ.1) THEN
00420         WRITE(LU,*)'FICHIER DE DONNEES POUR LE FROTTEMENT'
00421         WRITE(LU,*) 'ERREUR DE LECTURE ZONE  : ',CHAINE(1)
00422         IF ((ITURB==3).AND.(LISRUG==2)) THEN
00423           IF (LOOP==1) WRITE(LU,*) 'POUR LA 1ERE LOI DEFINIR '//
00424      &                             'SEULEMENT LE NOM DE LA LOI : NOFR'
00425           IF (LOOP==2) WRITE(LU,*) 'POUR LA 2NDE LOI DEFINIR'//
00426      &                             'SEULEMENT LE NOM DE LA LOI : NOFR'
00427         ELSE
00428           WRITE(LU,*) 'DEFINIR SEULEMENT LE NOM DE LA LOI'
00429         ENDIF
00430       ENDIF
00431       IF (LNG.EQ.2) THEN
00432         WRITE(LU,*) 'FRICTION DATA FILE'
00433         WRITE(LU,*) 'READ ERROR ZONE : ',CHAINE(1)
00434         IF ((ITURB==3).AND.(LISRUG==2)) THEN
00435           IF (LOOP==1) WRITE(LU,*) 'FOR THE 1ST LAW DEFINE '//
00436      &                             'ONLY THE NAME OF THE LAW : NOFR'
00437           IF (LOOP==2) WRITE(LU,*) 'FOR THE 2ND LAW DEFINE '//
00438      &                             'ONLY THE NAME OF THE LAW : NOFR'
00439         ELSE
00440            WRITE(LU,*) 'DEFINE ONLY THE NAME OF THE LAW : NOFR'
00441         ENDIF
00442       ENDIF
00443       CALL PLANTE(1)
00444       STOP
00445 !
00446       ! HAALAND-CHEZY-STRICKLER-MANNING-NIKURADSE-LOG WALL LAWS
00447       ! -------------------------------------------------------
00448 901   CONTINUE
00449       IF (LNG.EQ.1) THEN
00450         WRITE(LU,*)'FICHIER DE DONNEES POUR LE FROTTEMENT : ',NOMCOF
00451         WRITE(LU,*) 'ERREUR DE LECTURE ZONE: ',CHAINE(1)
00452         IF ((ITURB==3).AND.(LISRUG==2)) THEN
00453           IF (LOOP==1) WRITE(LU,*) 'POUR LA 1ERE LOI DEFINIR ' //
00454      &                             'LE NOM DE LA LOI : ',LAW,' ET'//
00455      &                             ' LE COEFFICIENT DE FROTTEMENT'
00456           IF (LOOP==1) WRITE(LU,*) 'POUR LA 2NDE LOI DEFINIR ' //
00457      &                             'LE NOM DE LA LOI : ',LAW,' ET'//
00458      &                             ' LE COEFFICIENT DE FROTTEMENT'
00459         ELSE
00460           WRITE(LU,*) 'DEFINIR LE NOM DE LA LOI : ',LAW,' ET'//
00461      &                ' LE COEFFICIENT DE FROTTEMENT'
00462         ENDIF
00463       ENDIF
00464 !
00465       IF (LNG.EQ.2) THEN
00466         WRITE(LU,*) 'FRICTION DATA FILE : ',NOMCOF
00467         WRITE(LU,*) 'READ ERROR ZONE : ',CHAINE(1)
00468         IF ((ITURB==3).AND.(LISRUG==2)) THEN
00469           IF (LOOP==1) WRITE(LU,*) 'FOR THE 1ST LAW DEFINE '//
00470      &                             'THE NAME OF THE LAW : ',LAW//
00471      &                             ' AND THE FRICTION COEFFICIENT'
00472           IF (LOOP==2) WRITE(LU,*) 'FOR THE 2ND LAW DEFINE '//
00473      &                             'THE NAME OF THE LAW : ',LAW//
00474      &                             ' AND THE FRICTION COEFFICIENT'
00475         ELSE
00476           WRITE(LU,*) 'DEFINE THE NAME OF THE LAW : ',LAW//
00477      &                ' AND THE FRICTION COEFFICIENT'
00478         ENDIF
00479       ENDIF
00480       CALL PLANTE(1)
00481       STOP
00482 !
00483       ! COLEBROOK WHITE LAW
00484       ! -------------------
00485 907   CONTINUE
00486       IF (LNG.EQ.1) THEN
00487         WRITE(LU,*)'FICHIER DE DONNEES POUR LE FROTTEMENT : ',NOMCOF
00488         WRITE(LU,*) 'ERREUR DE LECTURE ZONE : ',CHAINE(1)
00489         IF ((ITURB==3).AND.(LISRUG==2)) THEN
00490           IF (LOOP==1) WRITE(LU,*) 'POUR LA 1ERE LOI DEFINIR ' //
00491      &                             'LE NOM DE LA LOI : ',LAW,' ET'//
00492      &                             ' LE COEFFICIENT DE FROTTEMENT'//
00493      &                             ' ET LE MANNING'
00494           IF (LOOP==1) WRITE(LU,*) 'POUR LA 2NDE LOI DEFINIR ' //
00495      &                             'LE NOM DE LA LOI : ',LAW,' ET'//
00496      &                             ' LE COEFFICIENT DE FROTTEMENT'//
00497      &                             ' ET LE MANNING'
00498         ELSE
00499           WRITE(LU,*) 'DEFINIR LE NOM DE LA LOI : ',LAW,' ET'//
00500      &                ' LE COEFFICIENT DE FROTTEMENT ET LE MANNING'
00501         ENDIF
00502       ENDIF
00503       IF (LNG.EQ.2) THEN
00504         WRITE(LU,*) 'FRICTION DATA FILE : ',NOMCOF
00505         WRITE(LU,*) 'READ ERROR ZONE : ',CHAINE(1)
00506         IF ((ITURB==3).AND.(LISRUG==2)) THEN
00507           IF (LOOP==1) WRITE(LU,*) 'FOR THE 1ST LAW DEFINE '//
00508      &                             'THE NAME OF THE LAW : ',LAW//
00509      &                             ' AND THE FRICTION COEFFICIENT'//
00510      &                             ' AND DEFAULT MANNING'
00511           IF (LOOP==2) WRITE(LU,*) 'FOR THE 2ND LAW DEFINE '//
00512      &                             'THE NAME OF THE LAW : ',LAW//
00513      &                             ' AND THE FRICTION COEFFICIENT'//
00514      &                             ' AND DEFAULT MANNING'
00515         ELSE
00516           WRITE(LU,*) 'DEFINE THE NAME OF THE LAW : ',LAW//
00517      &                ' AND THE FRICTION COEFFICIENT'//
00518      &                ' AND DEFAULT MANNING'
00519         ENDIF
00520       ENDIF
00521       CALL PLANTE(1)
00522       STOP
00523 !
00524 997   CONTINUE
00525 !
00526 !=======================================================================!
00527 !=======================================================================!
00528 !
00529       RETURN
00530       END

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