1 : C S3FASO SOURCE CHAT 06/03/29 21:32:51 5360 2 : C 3 : FUNCTION S3FASO(I,N,ISENS,ISOM) 4 : C ************************************************************ 5 : C OBJET : K SOMMETS DE LA FACE (INDICE RELATIF) 6 : C EN ENTREE: 7 : C I : LES INDICES DES FACES DE L'ELEMENT 8 : C N : (4) NOMBRE DE NOEUDS DE L'ELEMENT 9 : C TETRA(4),PYRAM(5),PRISME(6),HEXA(8) 10 : C EN SORTIE: 11 : C ISOM : INDICE DES NOEUDS DE LA FACE (SENS DIRECT) 12 : C CONDITION D'APPLICATION : TETRAEDRE ET HEXAEDRE SEULEMENT 13 : C ************************************************************ 14 : IMPLICIT INTEGER(I-N) 15 : INTEGER S3FASO 16 : INTEGER I,N,ISENS,ISOM(*) 17 : C 18 : COMMON /STRTET/ ITA2F(4,4),IT2FA(4,4),IT3SF(3,4) 19 : INTEGER ITA2F, IT2FA, IT3SF 20 : COMMON /STRHEX/ IQ4SF(4,6),IQ3FS(3,8) 21 : INTEGER IQ4SF,IQ3FS 22 : INTEGER J,iarr 23 : C 24 : GOTO (1,1,1,100,1,1,1,200) N 25 : C ===================== 26 : C --- ELEMENT NON RECONNU --- 27 : C ===================== 28 : 1 S3FASO = 0 29 : iarr = -1 29 : CALL DSERRE(1,iarr,'S3FASO',' TYPE D ELEMENT INCONNU') 30 : GOTO 9999 31 : C ================== 32 : C --- CAS DU TETRAEDRE --- 33 : C ================== 34 : 100 S3FASO = 3 35 : IF( ISENS .EQ. 1 )THEN 36 : DO 110 J=1,S3FASO 37 : ISOM(J) = IT3SF(J,I) 38 : 110 CONTINUE 39 : ELSE 40 : DO 120 J=1,S3FASO 41 : ISOM(J) = IT3SF(S3FASO+1-J,I) 42 : 120 CONTINUE 43 : ENDIF 44 : GOTO 9999 45 : C ================== 46 : C --- CAS DE L'HEXAEDRE --- 47 : C ================== 48 : 200 S3FASO = 4 49 : IF( ISENS .EQ. 1 )THEN 50 : DO 210 J=1,S3FASO 51 : ISOM(J) = IQ4SF(J,I) 52 : 210 CONTINUE 53 : ELSE 54 : DO 220 J=1,S3FASO 55 : ISOM(J) = IQ4SF(S3FASO+1-J,I) 56 : 220 CONTINUE 57 : ENDIF 58 : GOTO 9999 59 : C 60 : 9999 END 61 : 62 : 63 :
© Cast3M 2003 - All rights reserved.
Disclaimer