C MODEL1    SOURCE    MB234859  25/08/26    21:15:10     12343          
C=======================================================================
C=  Objet MODELE  -  Cas de la formulation 'THERMIQUE'                 =
C=                                                                     =
C=   Definition des noms de modeles de MATERIAU                        =
C=           et des noms de types d'ELEMENTS FINIS                     =
C=======================================================================
C
      SUBROUTINE MODEL1 (LESPRO,NBPRO,LESTEF,NBTEF,N1MAX,N2MAX)
C
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8 (A-H,O-Z)
C
-INC PPARAM
-INC CCOPTIO
C
      CHARACTER*16 MOMODL(200)
      CHARACTER*16 LESPRO(*)
      CHARACTER*4  LESTEF(*)
C
C  1 - Noms de MODELES
C ---------------------
      CALL MODTHE(MOMODL,NMOD)
      DO i=1,NMOD
        LESPRO(i)=MOMODL(i)
      ENDDO
      NBPRO=NMOD
      IF (NBPRO.GT.N1MAX) GOTO 99
C
C  2 - Noms des comportements THERMIQUE
C -------------------------------------
      CALL MOCOTH(MOMODL,NMOD)
      DO i=NBPRO+1,NBPRO+NMOD
        LESPRO(i)=MOMODL(i-NBPRO)
      ENDDO
      NBPRO=NBPRO+NMOD
      IF (NBPRO.GT.N1MAX) GOTO 99
C
C  3 - Noms des comportements CONVECTION
C --------------------------------------
      CALL MODCON(MOMODL,NMOD)
      DO i=NBPRO+1,NBPRO+NMOD
        LESPRO(i)=MOMODL(i-NBPRO)
      ENDDO
      NBPRO=NBPRO+NMOD
      IF (NBPRO.GT.N1MAX) GOTO 99
C
C  4 - Noms des comportements RAYONNEMENT
C -------------------------------------
      CALL MODRAY(MOMODL,NMOD)
      DO i=NBPRO+1,NBPRO+NMOD
        LESPRO(i)=MOMODL(i-NBPRO)
      ENDDO
      NBPRO=NBPRO+NMOD
      IF (NBPRO.GT.N1MAX) GOTO 99
C
C  5 - Noms des comportements SOURCE
C -------------------------------------
      CALL MODSRC(MOMODL,NMOD)
      DO i=NBPRO+1,NBPRO+NMOD
        LESPRO(i)=MOMODL(i-NBPRO)
      ENDDO
      NBPRO=NBPRO+NMOD
      IF (NBPRO.GT.N1MAX) GOTO 99

C  6 - Noms de types d'ELEMENTS FINIS
C ------------------------------------
C     -----------
C     Elements 1D
C     -----------
      IF (IFOMOD.GE.3.AND.IFOMOD.LE.5) THEN
        NBTEF=2
        IF (NBTEF.GT.N2MAX) GOTO 99
        LESTEF(1)='T1D2'
        LESTEF(2)='T1D3'
      ELSE
C       -----------------
C       Elements 2D et 3D
C       -----------------
        NBTEF=25
        IF (NBTEF.GT.N2MAX) GOTO 99
        LESTEF( 1)='POI1'
        LESTEF( 2)='SEG2'
        LESTEF( 3)='COQ2'
        LESTEF( 4)='BARR'
        LESTEF( 5)='BAR3'
        LESTEF( 6)='TUY2'
        LESTEF( 7)='JOI1'
        LESTEF( 8)='SEG3'
        LESTEF( 9)='TUY3'
        LESTEF(10)='TRI3'
        LESTEF(11)='COQ3'
        LESTEF(12)='TRI6'
        LESTEF(13)='COQ6'
        LESTEF(14)='QUA4'
        LESTEF(15)='COQ4'
        LESTEF(16)='QUA8'
        LESTEF(17)='COQ8'
        LESTEF(18)='CUB8'
        LESTEF(19)='CU20'
        LESTEF(20)='PRI6'
        LESTEF(21)='PR15'
        LESTEF(22)='TET4'
        LESTEF(23)='TE10'
        LESTEF(24)='PYR5'
        LESTEF(25)='PY13'
        IF (IFOMOD.NE.3) THEN
          NBTEF=26
          IF (NBTEF.GT.N2MAX) GOTO 99
          LESTEF(26)='POLY'
        ENDIF
      ENDIF
      RETURN

C  7 - Traitement des ERREURS
C ----------------------------
 99   CALL ERREUR(5)

      END
 
