1 : C REEREF SOURCE CHAT 05/01/13 02:47:56 5004 2 : SUBROUTINE REEREF(NDIM,ITY1,NOEL1,IZSH,XREEL,XREF) 3 : ******************************************************************* 4 : *** SP 'REEREF' : permet passage entre coord reelles d'un pt de 5 : *** l'elemt reel et coord reference de ce pt dans l'elemt reference 6 : *** 7 : *** APPELES 1 = 'TRJ302', 'TRJ402', 'TRJ803', 'TRJ603', 'TRJ403' 8 : *** APPELES 2 = aucun 9 : *** 10 : *** E = 'NDIM' dimension de l'espace 11 : *** 'ITY1' entier caracterisant le type de l'element 12 : *** 'NOEL1' nombre de noeuds de l'element considere 13 : *** 'IZSH' segment contenant les fctions de forme, base ainsi 14 : *** que coord reelles des noeuds de l'element considere 15 : *** 'XREEL' coordonnees reelles du pt considere 16 : *** 17 : *** S = 'XREF' coordonnees de reference du pt considere 18 : *** 19 : *** RQ : les sp appeles se basent sur des methodes iteratives avec 20 : *** un critere de convergence d'ou une erreur de precision possible. 21 : ********************************************************************* 22 : IMPLICIT INTEGER(I-N) 23 : IMPLICIT REAL*8 (A-H,O-Z) 24 : SEGMENT IZSH 25 : REAL*8 SHP(6,MNO9),SHY(12,MNO9),XYZL(3,MNO9) 26 : ENDSEGMENT 27 : DIMENSION XREEL(3),XREF(3) 28 : DIMENSION XNOE23(2,3),XNOE24(2,4) 29 : DIMENSION XNOE34(3,4),XNOE36(3,6),XNOE38(3,8) 30 : *** cas TRI3 (triangles) 31 : IF (ITY1.EQ.4) THEN 32 : DO 1 I=1,NDIM 33 : DO 2 K=1,NOEL1 34 : *** 'XNOE23' = format imposé par le sp 'TRJ302' 35 : XNOE23(I,K)=XYZL(I,K) 36 : 2 CONTINUE 37 : 1 CONTINUE 38 : *** sp 'TRJ302' calcule le 'XREF' associé au 'XREEL' 38 : CALL TRJ302(XNOE23,XREEL,XREF) 39 : ENDIF 40 : *** cas QUA4 (quadrangles) 41 : IF (ITY1.EQ.8) THEN 42 : DO 3 I=1,NDIM 43 : DO 4 K=1,NOEL1 44 : XNOE24(I,K)=XYZL(I,K) 45 : 4 CONTINUE 46 : 3 CONTINUE 46 : CALL TRJ402(XNOE24,XREEL,XREF,IER) 47 : ENDIF 48 : *** cas CUB8 (cubes) 49 : IF (ITY1.EQ.14) THEN 50 : DO 5 I=1,NDIM 51 : DO 6 K=1,NOEL1 52 : XNOE38(I,K)=XYZL(I,K) 53 : 6 CONTINUE 54 : 5 CONTINUE 54 : CALL TRJ803(XNOE38,XREEL,XREF,IER) 55 : ENDIF 56 : *** cas PRI6 (prismes) 57 : IF (ITY1.EQ.16) THEN 58 : DO 7 I=1,NDIM 59 : DO 8 K=1,NOEL1 60 : XNOE36(I,K)=XYZL(I,K) 61 : 8 CONTINUE 62 : 7 CONTINUE 62 : CALL TRJ603(XNOE36,XREEL,XREF,IER) 63 : ENDIF 64 : *** cas TET4 (tetraedres) 65 : IF (ITY1.EQ.23) THEN 66 : DO 9 I=1,NDIM 67 : DO 10 K=1,NOEL1 68 : XNOE34(I,K)=XYZL(I,K) 69 : 10 CONTINUE 70 : 9 CONTINUE 70 : CALL TRJ403(XNOE34,XREEL,XREF) 71 : ENDIF 72 : RETURN 73 : END 74 : 75 : 76 : 77 : 78 : 79 : 80 : 81 : 82 : 83 : 84 : 85 :
© Cast3M 2003 - All rights reserved.
Disclaimer