cgl.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\sisyphe\cgl.f
00002 !
00070                      DOUBLE PRECISION FUNCTION CGL(I,AT)
00071 !                    ***********************************
00072 !
00073 !
00074 !***********************************************************************
00075 ! TELEMAC2D   V6P2                                   08/11/2011
00076 !***********************************************************************
00077 !
00078 !
00079 !
00080 !
00081 !
00082 !
00083 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00084 !| I              |-->| NUMBER OF LIQUID BOUNDARY
00085 !| N              |-->| GLOBAL NUMBER OF POINT
00086 !|                |   | IN PARALLEL NUMBER IN THE ORIGINAL MESH
00087 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00088 !
00089       USE BIEF
00090       USE DECLARATIONS_SISYPHE
00091 !
00092 !      USE INTERFACE_SISYPHE, EX_CGL => CGL
00093 !
00094       IMPLICIT NONE
00095       INTEGER LNG,LU
00096       COMMON/INFO/LNG,LU
00097 !
00098 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00099 !
00100       INTEGER, INTENT(IN) :: I
00101       DOUBLE PRECISION, INTENT(IN):: AT
00102 !
00103 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00104 !
00105       CHARACTER*9 FCT
00106       INTEGER J
00107       LOGICAL, SAVE :: DEJA=.FALSE.
00108       LOGICAL, DIMENSION(MAXFRO), SAVE :: OK
00109 !
00110 !
00111 !     FIRST CALL, OK INITIALISED TO .TRUE.
00112 !
00113       IF(.NOT.DEJA) THEN
00114         DO J=1,MAXFRO
00115           OK(J)=.TRUE.
00116         ENDDO
00117         DEJA=.TRUE.
00118       ENDIF
00119 !
00120 !-----------------------------------------------------------------------
00121 !
00122 !     IF THE LIQUID BOUNDARY FILE EXISTS, ATTEMPTS TO FIND
00123 !     THE VALUE IN IT. IF YES, OK REMAINS TO .TRUE. FOR NEXT CALLS
00124 !                      IF  NO, OK IS SET  TO .FALSE.
00125 ! je pense que ce test est inutile (cf apel dans conlit.f)
00126 !      IF(OK(I).AND.SIS_FILES(SISLIQ)%NAME(1:1).NE.' ') THEN
00127 !
00128 !     FCT WILL BE CGL(1), CGL(2), ETC, CGL(9), DEPENDING ON I
00129       FCT='CG(      '
00130       IF(I.LT.10) THEN
00131         WRITE(FCT(4:4),FMT='(I1)') I
00132         FCT(5:5)=')'
00133 !      ELSEIF(I.LT.100) THEN
00134 !        WRITE(FCT(4:5),FMT='(I2)') I
00135 !        FCT(6:6)=')'
00136       ELSE
00137         PRINT*,'I=',I
00138         WRITE(LU,*) 'CGL NOT PROGRAMMED FOR MORE THAN 9 BOUNDARIES'
00139         CALL PLANTE(1)
00140         STOP
00141       ENDIF
00142 !
00143       CALL READ_FIC_CONC(CGL,FCT,AT,SIS_FILES(SISLIQ)%LU,ENTET,OK(I))
00144 !
00145       IF(.NOT.OK(I).OR.SIS_FILES(SISLIQ)%NAME(1:1).EQ.' ') THEN
00146 !
00147 
00148 !     PROGRAMMABLE PART
00149 !     SL IS READ FROM THE STEERING FILE, BUT MAY BE CHANGED
00150 !
00151         IF(LNG.EQ.1) WRITE(LU,10 0) I
00152 100     FORMAT(1X,/,1X,'CG : CONC IMPOSEES EN NOMBRE INSUFFISANT'
00153      &           ,/,1X,'     DANS LE FICHIER DES PARAMETRES'
00154      &           ,/,1X,'     IL EN FAUT AU MOINS : ',1I6)
00155         IF(LNG.EQ.2) WRITE(LU,101) I
00156 101     FORMAT(1X,/,1X,'CG: MORE PRESCRIBED ELEVATIONS ARE REQUIRED'
00157      &           ,/,1X,'     IN THE PARAMETER FILE'
00158      &           ,/,1X,'     AT LEAST ',1I6,' MUST BE GIVEN')
00159         CALL PLANTE(1)
00160         STOP
00161       ENDIF
00162 !
00163 !
00164 !-----------------------------------------------------------------------
00165 !
00166       RETURN
00167       END FUNCTION CGL

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