1 : C CAPA4 SOURCE FANDEUR 11/07/19 21:15:20 7042 2 : 3 : C======================================================================= 4 : C= C A P A 4 = 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= iGau (E) Numero du point de Gauss considere = 15 : C= NBNN (E) Nombre de NOEUDS de l'element = 16 : C= XE (E) COORDONNEES des noeuds de l'element (repere GLOBAL) = 17 : C= SHPTOT (E) Fonctions de FORME et leurs DERIVEES par rapport aux = 18 : C= coordonnees de REFERENCE (Qsi,Eta,Dzeta) = 19 : C= SHP (S) Fonctions de FORME et leurs DERIVEES par rapport aux = 20 : C= coordonnees REELLES (X,Y,Z) = 21 : C= FORME (S) Fonctions de FORME dans la geometrie REELLE = 22 : C= DJAC (S) JACOBIEN au point de Gauss considere = 23 : C= = 24 : C= Denis ROBERT, le 17 fevrier 1988. = 25 : C======================================================================= 26 : 27 : SUBROUTINE CAPA4 (NEF,iGau,NBNN,XE,SHPTOT,SHP,FORME,DJAC) 28 : 29 : IMPLICIT INTEGER(I-N) 30 : IMPLICIT REAL*8 (A-H,O-Z) 31 : 32 : -INC CCOPTIO 33 : -INC CCREEL 34 : 35 : C= Quelques constantes (2.Pi et 4.Pi) 36 : PARAMETER (X2Pi= 6.283185307179586476925286766559D0) 37 : PARAMETER (X4Pi=12.566370614359172953850573533118D0) 38 : 39 : DIMENSION XE(3,*),FORME(*),SHPTOT(6,NBNN,*),SHP(6,*) 40 : 41 : C ==================== 42 : C 1 - Initialisation 43 : C ==================== 43 : C*OF CALL ZERO(FORME,1,NBNN) 44 : 45 : C ============================================ 46 : C 2 - Cas des elements MASSIFS 2D PLAN ou 3D 47 : C ============================================ 48 : IF (IFOMOD.EQ.-1.OR.IFOMOD.EQ.2) THEN 49 : iFin=IDIM+1 50 : DO j=1,NBNN 51 : FORME(j)=SHPTOT(1,j,iGau) 52 : SHP(1,j)=FORME(j) 53 : DO i=2,iFin 54 : SHP(i,j)=SHPTOT(i,j,iGau) 55 : ENDDO 56 : ENDDO 56 : CALL JACOBI(XE,SHP,IDIM,NBNN,DJAC) 57 : 58 : C ================================================ 59 : C 3 - Cas des elements MASSIFS 2D AXISYMETRIQUES 60 : C ================================================ 61 : ELSE IF (IFOMOD.EQ.0) THEN 62 : DO i=1,NBNN 63 : FORME(i)=SHPTOT(1,i,iGau) 64 : SHP(1,i)=FORME(i) 65 : SHP(2,i)=SHPTOT(2,i,iGau) 66 : SHP(3,i)=SHPTOT(3,i,iGau) 67 : ENDDO 67 : CALL JACOBI(XE,SHP,IDIM,NBNN,DJAC) 67 : CALL DISTRR(XE,SHP,NBNN,RR) 68 : DJAC=X2Pi*DJAC*RR 69 : 70 : C ================================= 71 : C 4 - Cas des elements MASSIFS 1D 72 : C ================================= 73 : ELSE IF (IFOMOD.EQ.3.OR.IFOMOD.EQ.4.OR.IFOMOD.EQ.5) THEN 74 : C ===== 75 : C 4.1 - Cas generique 76 : C ===== 77 : DO i=1,NBNN 78 : FORME(i)=SHPTOT(1,i,iGau) 79 : SHP(1,i)=FORME(i) 80 : SHP(2,i)=SHPTOT(2,i,iGau) 81 : ENDDO 81 : CALL JACOBI(XE,SHP,IDIM,NBNN,DJAC) 82 : C ===== 83 : C 4.2 - Cas particulier des modes axisymetriques et spherique 1D 84 : C ===== 85 : IF (IFOMOD.EQ.4 .OR. IFOMOD.EQ.5) THEN 85 : CALL DISTRR(XE,SHP,NBNN,RR) 86 : IF (IFOMOD.EQ.5) THEN 87 : DJAC=X4Pi*DJAC*RR*RR 88 : ELSE 89 : DJAC=X2Pi*DJAC*RR 90 : ENDIF 91 : ENDIF 92 : 93 : C ============================================== 94 : C 5 - Cas des elements MASSIFS en mode FOURIER -> ERREUR 95 : C ============================================== 96 : ELSE IF (IFOMOD.EQ.1) THEN 96 : CALL ERREUR(251) 97 : ENDIF 98 : 99 : RETURN 100 : END 101 : 102 :
© Cast3M 2003 - All rights reserved.
Disclaimer