1 : C TCONV3 SOURCE AM 08/02/14 21:31:25 6050 2 : 3 : C======================================================================= 4 : C= T C O N V 3 = 5 : C= ----------- = 6 : C= = 7 : C= Fonction : = 8 : C= ---------- = 9 : C= Calcul, au point de Gauss (iGau) considere, du jacobien (DJAC), = 10 : C= des fonctions de forme (FORME) et de leurs derivees (SHP) = 11 : C= = 12 : C= Parametres : (E)=Entree (S)=Sortie = 13 : C= ------------ = 14 : C= NEF (E) Numero de l'ELEMENT FINI dans NOMTP (cf. CCHAMP) = 15 : C= iGau (E) Numero du point de Gauss considere = 16 : C= NBNN (E) Nombre de NOEUDS de l'element = 17 : C= NBN2 (E) Nombre de NOEUDS de l'element / 2 pour FACE A FACE = 18 : C= XE (E) COORDONNEES des noeuds de l'element (repere GLOBAL) = 19 : C= SHPTOT (E) Fonctions de FORME et leurs DERIVEES par rapport aux = 20 : C= coordonnees de REFERENCE (Qsi,Eta,Dzeta) = 21 : C= SHP (S) Fonctions de FORME et leurs DERIVEES par rapport aux = 22 : C= coordonnees REELLES (X,Y,Z) = 23 : C= FORME (S) Fonctions de FORME dans la geometrie REELLE = 24 : C= DJAC (S) JACOBIEN au point de Gauss considere = 25 : C= = 26 : C= Denis ROBERT, le 6 mai 1988. = 27 : C======================================================================= 28 : 29 : SUBROUTINE TCONV3 (NEF,iGau,NBNN,NBN2,XE,SHPTOT,SHP,FORME,DJAC) 30 : 31 : IMPLICIT INTEGER(I-N) 32 : IMPLICIT REAL*8 (A-H,O-Z) 33 : 34 : -INC CCOPTIO 35 : -INC CCREEL 36 : 37 : C= Quelques constantes (2.Pi et 4.Pi) 38 : PARAMETER (X2Pi=6.283185307179586476925286766559D0) 39 : PARAMETER (X4Pi=12.566370614359172953850573533118D0) 40 : 41 : DIMENSION XE(3,*),SHPTOT(6,NBN2,*),SHP(6,*),FORME(*) 42 : 43 : C ==================== 44 : C 1 - Initialisation 45 : C ==================== 45 : C*OF CALL ZERO(FORME,1,NBNN) 46 : 47 : C ============================================ 48 : C 2 - Cas des elements MASSIFS 2D PLAN ou 3D 49 : C ============================================ 50 : IF (IFOMOD.EQ.-1.OR.IFOMOD.EQ.2) THEN 51 : iFin=IDIM+1 52 : DO j=1,NBN2 53 : DO i=1,iFin 54 : SHP(i,j)=SHPTOT(i,j,iGau) 55 : ENDDO 56 : ENDDO 57 : C ===== 58 : C 2.1 - Cas particulier des elements finis SEG2 SEG3 LIA3 LIA4 59 : C ===== 60 : IF (NEF.EQ.2.OR.NEF.EQ.3.OR.NEF.EQ.12.OR.NEF.EQ.13) THEN 60 : CALL TCONV4(XE,SHP,2,NBN2,DJAC) 61 : C ===== 62 : C 2.2 - Autres elements 63 : C ===== 64 : ELSE 64 : CALL TCONV5(XE,SHP,NBN2,DJAC) 65 : ENDIF 66 : 67 : C ================================================ 68 : C 3 - Cas des elements MASSIFS 2D AXISYMETRIQUES 69 : C ================================================ 70 : ELSE IF (IFOMOD.EQ.0) THEN 71 : DO i=1,NBN2 72 : SHP(1,i)=SHPTOT(1,i,iGau) 73 : SHP(2,i)=SHPTOT(2,i,iGau) 74 : SHP(3,i)=SHPTOT(3,i,iGau) 75 : ENDDO 75 : CALL TCONV4(XE,SHP,2,NBN2,DJAC) 75 : CALL DISTRR(XE,SHP,NBN2,RR) 76 : DJAC=X2Pi*DJAC*RR 77 : 78 : C ================================= 79 : C 4 - Cas des elements MASSIFS 1D 80 : C ================================= 81 : ELSE IF (IFOMOD.EQ.3.OR.IFOMOD.EQ.4.OR.IFOMOD.EQ.5) THEN 82 : DO i=1,NBN2 83 : SHP(1,i)=SHPTOT(1,i,iGau) 84 : SHP(2,i)=SHPTOT(2,i,iGau) 85 : ENDDO 86 : C ===== 87 : C 4.1 - Cas particulier du POI1 ou du SEG2 (convection 1D) 88 : C ===== 89 : IF ((NEF.EQ.45).OR.(NEF.EQ.1)) THEN 90 : DJAC=1. 91 : C ===== 92 : C 4.2 - Cas generique 93 : C ===== 94 : ELSE 94 : CALL TCONV4(XE,SHP,2,NBN2,DJAC) 95 : ENDIF 96 : C ===== 97 : C 4.3 - Cas particulier des modes axisymetriques et spherique 1D 98 : C ===== 99 : IF (IFOMOD.EQ.4) THEN 99 : CALL DISTRR(XE,SHP,NBNN,RR) 100 : DJAC=X2Pi*DJAC*RR 101 : ELSE IF (IFOMOD.EQ.5) THEN 101 : CALL DISTRR(XE,SHP,NBNN,RR) 102 : DJAC=X4Pi*DJAC*RR*RR 103 : ENDIF 104 : 105 : C ============================================== 106 : C 5 - Cas des elements MASSIFS en mode FOURIER -> ERREUR 107 : C ============================================== 108 : ELSE IF (IFOMOD.EQ.1) THEN 108 : CALL ERREUR(251) 109 : RETURN 110 : ENDIF 111 : 112 : C =================================================================== 113 : C 6 - Recuperations des fonctions de FORME 114 : C Traitement particulier des elements de CONVECTION FACE A FACE 115 : C =================================================================== 116 : DO i=1,NBN2 117 : FORME(i)=SHP(1,i) 118 : ENDDO 119 : IF (NBNN.NE.NBN2) THEN 120 : IF (NEF.EQ.12.OR.NEF.EQ.13) THEN 121 : j=NBNN+1 122 : DO i=1,NBN2 123 : FORME(j-i)=-SHP(1,i) 124 : ENDDO 125 : ELSE 126 : DO i=1,NBN2 127 : FORME(NBN2+i)=-SHP(1,i) 128 : ENDDO 129 : ENDIF 130 : ENDIF 131 : 132 : RETURN 133 : END 134 : 135 : 136 : 137 : 138 :
© Cast3M 2003 - All rights reserved.
Disclaimer