nelec
C NELEC SOURCE FANDEUR 10/12/17 21:18:18 6427 C======================================================================= C= N E L E C = C= --------- = C= Fonction : = C= ---------- = C= Calcul de la matrice N des fonctions de forme de l'element fini = C= en un point donne de l'element, matrice N intervenant lors du = C= calcul des forces nodales equivalentes a une densite de sources = C= volumiques. = C= = C= Parametres : (E)=Entree (S)=Sortie = C= ------------ = C= NBNO (E) Nombre de noeuds de l'element fini = C= XEL (E) Coordonnees des noeuds de l'element fini etudie = C= SHPREF (E) Fonctions de forme et leurs derivees (reference) = C= SHP (S) Fonctions de forme et leurs derivees (reelles) = C= FORME (S) Matrice des fcts de forme (N) au point considere = C= DJAC (S) Jacobien au point considere = C= = C= Remarque : = C= ---------- = C= Lors de l'entree dans le sous-programme, SHPREF(2 a 4,*) contient = C= les DERIVEES des fonctions de forme par rapport aux coordonnees = C= de REFERENCE Qsi,Eta,Dzeta. = C= En sortie du sous-programme, SHP(2 a 4,*) contient les DERIVEES = C= des fonctions de FORME par rapport aux coordonnees REELLES x,y,z. = C======================================================================= IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) -INC PPARAM -INC CCOPTIO -INC CCREEL C= Quelques constantes (2.Pi et 4.Pi) PARAMETER (X2Pi= 6.283185307179586476925286766559D0) PARAMETER (X4Pi=12.566370614359172953850573533118D0) DIMENSION XEL(3,*),SHPREF(6,*), SHP(6,*),FORME(*) C ==================== C 1 - Initialisation C ==================== C* DO j = 1, NBNO C* FORME(j) = XZero C* ENDDO C =================================== C 2.1 - Cas des elements MASSIFS 3D C =================================== IF (IFOMOD.EQ.2) THEN SHP(1,j) = SHPREF(1,j) SHP(2,j) = SHPREF(2,j) SHP(3,j) = SHPREF(3,j) SHP(4,j) = SHPREF(4,j) FORME(j) = SHPREF(1,j) ENDDO C ========================================================= C 2.2 - Cas des elements MASSIFS 2D PLAN ou AXISYMETRIQUE C ========================================================= ELSE IF (IFOMOD.EQ.-1 .OR. IFOMOD.EQ.0) THEN SHP(1,j) = SHPREF(1,j) SHP(2,j) = SHPREF(2,j) SHP(3,j) = SHPREF(3,j) FORME(j) = SHPREF(1,j) ENDDO IF (IFOMOD.EQ.0) THEN DJAC = X2Pi*DJAC*RR ENDIF C =================================== C 2.3 - Cas des elements MASSIFS 1D C =================================== ELSE IF (IFOMOD.EQ.3 .OR. IFOMOD.EQ.4 .OR. IFOMOD.EQ.5) THEN SHP(1,j) = SHPREF(1,j) SHP(2,j) = SHPREF(2,j) FORME(j) = SHPREF(1,j) ENDDO C Cas particulier des modes axisymetriques et spherique 1D IF (IFOMOD.EQ.4.OR.IFOMOD.EQ.5) THEN IF (IFOMOD.EQ.5) THEN DJAC = X4Pi*DJAC*RR*RR ELSE DJAC = X2Pi*DJAC*RR ENDIF ENDIF C =========================================== C 2.4 - Cas des elements MASSIFS 2D FOURIER C =========================================== ELSE IF (IFOMOD.EQ.1) THEN SHP(1,j) = SHPREF(1,j) SHP(2,j) = SHPREF(2,j) SHP(3,j) = SHPREF(3,j) FORME(j) = SHPREF(1,j) ENDDO IF (NIFOUR.EQ.0) THEN DJAC = X2Pi*DJAC*RR ELSE DJAC = XPi*DJAC*RR ENDIF ENDIF RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales