C KDOM1 SOURCE CHAT 11/03/16 21:26:07 6902 SUBROUTINE KDOM1(MELEME,MTAB) C C************************************************************************ C C PROJET : CASTEM 2000 C C NOM : KDOM1 C C DESCRIPTION : Lecture du modele EULER C Restitution de la table domaine remplie C C LANGAGE : FORTRAN 77 + ESOPE 2000 (avec estensions CISI) C C AUTEUR : A. BECCANTINI, DRN/DMT/SEMT/LTMF C C************************************************************************ C C E/S : MTAB : domaine table C MELEMQ : QUAF mesh C C************************************************************************ C C Created the 24/02/04 C C C**** Variables de COOPTIO C C INTEGER IPLLB, IERPER, IERMAX, IERR, INTERR C & ,IOTER, IOLEC, IOIMP, IOCAR, IOACQ C & ,IOPER, IOSGB, IOGRA, IOSAU, IORES C & ,IECHO, IIMPI, IOSPI C & ,IDIM, IFICLE, IPREFI C & ,MCOORD C & ,IFOMOD, NIFOUR, IFOUR, NSDPGE, IONIVE C & ,NGMAXY, IZROSF, ISOTYP, IOSCR,LTEXLU C & ,NORINC,NORVAL,NORIND,NORVAD C & ,NUCROU, IPSAUV, IREFOR, ISAFOR CC IMPLICIT INTEGER(I-N) INTEGER MTAB, MELEME, IRET, MELEMQ -INC SMMODEL -INC CCOPTIO C C C**** We create the table C CALL CRTABL(MTAB) CALL ECMM(MTAB,'SOUSTYPE','DOMAINE') CALL ECME(MTAB,'PRECONDI',1) C C**** We create the QUAF (MAILLAGE + CENTRE + FACE) C CALL ECROBJ('MAILLAGE',MELEME) CALL ECRCHA('QUAF') CALL PRCHAN IF(IERR.NE.0)GOTO 9999 CALL LIROBJ('MAILLAGE',MELEMQ,1,IRET) CALL ECMO(MTAB,'QUAF','MAILLAGE',MELEMQ) C C We change the position of the noeud into the QUAF. C Each elements is divided into triangles/tetraedras C The centers of interfaces/elements are computed using these C elementary meshes C C C******** AXIS C IF(IFOMOD .EQ. 0)THEN IF(IDIM.EQ.2)THEN CALL KDOM2A(MTAB,MELEMQ) IF(IERR.NE.0)GOTO 9999 ELSE WRITE(IOIMP,*) 'Axis-symmetrical in 2D only' CALL ERREUR(21) GOTO 9999 ENDIF ELSE CALL KDOM2(MELEMQ) IF(IERR.NE.0)GOTO 9999 C C******* Now we recreate the 'MAILLAGE'. C We also create the 'CENTRE', 'FACE', 'FACEL', 'ELTFA', 'FACEP' C 'XXVOLUM', 'XXSURFAC', 'XXNORMAF', 'XXDIEMIN' C CALL KDOM10(MTAB) ENDIF C 9999 RETURN C END