C KDOM0     SOURCE    CB215821  24/04/12    21:16:31     11897          
      SUBROUTINE KDOM0
C
C************************************************************************
C
C PROJET            :  CASTEM 2000
C
C NOM               :  KDOM0
C
C DESCRIPTION       :  Modele EULER
C                      Creation/Lecture et restitution de la table
C                      domaine
C
C LANGAGE           :  FORTRAN 77 + ESOPE 2000 (avec estensions CISI)
C
C AUTEUR            :  A. BECCANTINI, DRN/DMT/SEMT/LTMF
C
C************************************************************************
C
C
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8(A-H,O-Z)

      INTEGER IRET, N1, I1, MTAB
      CHARACTER*8 TYPE
C
-INC SMMODEL

-INC PPARAM
-INC CCOPTIO
-INC SMELEME
C
C**** We create the TABLE DOMAINE or we
C     recover it if it already exists
C
      TYPE='MMODEL'
      CALL LIROBJ(TYPE,MMODEL,1,IRET)
      IF(IERR.NE.0) RETURN
C
      SEGACT MMODEL
      N1=MMODEL.KMODEL(/1)
      DO I1=1,N1,1
         IMODEL=MMODEL.KMODEL(I1)
         SEGACT IMODEL*MOD
C
C********** For the moment no coupling
C
         IF(IMODEL.FORMOD(1).NE.'EULER')THEN
            WRITE(IOIMP,*) 'No coupling in VF'
            CALL ERREUR(21)
            RETURN
         ENDIF
      ENDDO
C
C**** If existing the domain table is hidden into
C     MMODEL.KMODEL(1).INFMOD(2)
C
      IMODEL=MMODEL.KMODEL(N1)
      MTAB=IMODEL.INFMOD(2)
C
      IF(MTAB.EQ.0)THEN
C
C****** We recreate the global mesh
C
         IMODEL=MMODEL.KMODEL(1)
         MELEME=IMODEL.IMAMOD
         SEGACT MELEME
         DO I1=2,N1,1
            IMODEL=MMODEL.KMODEL(I1)
            IPT1=IMODEL.IMAMOD
            SEGACT IPT1
            CALL ECROBJ('MAILLAGE',MELEME)
            CALL ECROBJ('MAILLAGE',IPT1)
            CALL PRFUSE
            CALL LIROBJ('MAILLAGE',IPT2,1,IRET)
            SEGDES MELEME
            SEGDES IPT1
            MELEME=IPT2
         ENDDO
C
C******* Table domaine does not exist
C        We create it
C
         CALL KDOM1(MELEME,MTAB)
         IF(IERR .NE. 0) RETURN
C
         IMODEL=MMODEL.KMODEL(N1)
         IMODEL.INFMOD(2)=MTAB
      ENDIF
C
      DO I1=1,N1,1
         IMODEL=MMODEL.KMODEL(I1)
         SEGDES IMODEL
      ENDDO
C
      SEGDES MMODEL
C
C**** Now the TABLE DOMAINE exists and it is filled
C
      CALL ECROBJ('TABLE',MTAB)
      RETURN
      END









 
