shmacr
C SHMACR SOURCE MAGN 05/02/18 21:16:22 5031 C======================================================================= C C FONCTIONS DE FORME ET LEUR DERIVEES CENTREP1 C C======================================================================= IMPLICIT REAL*8(A-H,O-Z) PARAMETER(UNDEMI=.5D0,DEUX=2.D0) PARAMETER(TROIS=3.D0,QUATRE=4.D0) DIMENSION SHP(6,*) C======================================================================= C QSI ETA DZE COORDONNEES REDUITES DU POINT DE GAUSS C C SHP FONCTIONS DE FORME SHP(1,INO) FONCTIONS DE FORME DU ND INO C SHP(2,INO) DERIVEES PR RPPRT A QSI C SHP(3,INO) DERIVEES PR RPPRT A ETA C SHP(4,INO) DERIVEES PR RPPRT A DZE C SHP(5,INO) DERIVEES PR RPPRT A 4 C COORDONNEES BARYCENTRIQUES C CAS DE DIMENSION 2 C 3 NOEUDS TRIANGLE C======================================================================= IRET=1 C CAS MACRO pour un element geometrique de type TRI6 IF(MELE.EQ.224.OR.MELE.EQ.231) THEN SHP(1,1)=0.D0 SHP(1,2)=0.D0 SHP(1,3)=0.D0 SHP(1,4)=0.D0 SHP(1,5)=0.D0 SHP(1,6)=0.D0 SHP(2,1)=0.D0 SHP(2,2)=0.D0 SHP(2,3)=0.D0 SHP(2,4)=0.D0 SHP(2,5)=0.D0 SHP(2,6)=0.D0 SHP(3,1)=0.D0 SHP(3,2)=0.D0 SHP(3,3)=0.D0 SHP(3,4)=0.D0 SHP(3,5)=0.D0 SHP(3,6)=0.D0 IF (QSI.GE.0.D0.AND.QSI.LE.0.5D0) THEN IF (ETA.LE.(0.5D0-QSI)) THEN * Omega1 SHP(1,1)=2.D0*(0.5D0-QSI-ETA) SHP(1,2)=2.D0*QSI SHP(1,6)=2.D0*ETA SHP(2,1)=-2.D0 SHP(2,2)=2.D0 SHP(2,6)=0.D0 SHP(3,1)=-2.D0 SHP(3,2)=0.D0 SHP(3,6)=2.D0 ELSEIF (ETA.GE.0.5D0.AND.ETA.LE.(1.D0-QSI)) THEN * Omega3 SHP(1,4)=2.D0*QSI SHP(1,5)=2.D0*(ETA-0.5D0) SHP(1,6)=2.D0*(1.0D0-QSI-ETA) SHP(2,4)=2.D0 SHP(2,5)=0.D0 SHP(2,6)=-2.D0 SHP(3,4)=0.D0 SHP(3,5)=2.D0 SHP(3,6)=-2.D0 ELSEIF (ETA.LE.0.5D0.AND.ETA.GE.(0.5D0-QSI)) THEN * Omega4 SHP(1,2)=1.D0-2.D0*ETA SHP(1,4)=2.D0*(QSI+ETA-0.5D0) SHP(1,6)=1.D0-2.D0*QSI SHP(2,2)=0.D0 SHP(2,4)=2.D0 SHP(2,6)=-2.D0 SHP(3,2)=-2.D0 SHP(3,4)=2.D0 SHP(3,6)=0.D0 ENDIF ELSEIF (QSI.GE.0.5D0.AND.QSI.LE.1.D0) THEN IF (ETA.LE.(1.D0-QSI)) THEN * Omega2 SHP(1,2)=2.D0*(1.D0-QSI-ETA) SHP(1,3)=2.D0*(QSI-0.5D0) SHP(1,4)=2.D0*ETA SHP(2,2)=-2.D0 SHP(2,3)=2.D0 SHP(2,4)=0.D0 SHP(3,2)=-2.D0 SHP(3,3)=0.D0 SHP(3,4)=2.D0 ENDIF ENDIF C CAS MACRO pour un element geometrique de type QUA9 ELSEIF(MELE.EQ.225.OR.MELE.EQ.232) THEN SHP(1,1)=0.D0 SHP(1,2)=0.D0 SHP(1,3)=0.D0 SHP(1,4)=0.D0 SHP(1,5)=0.D0 SHP(1,6)=0.D0 SHP(1,7)=0.D0 SHP(1,8)=0.D0 SHP(1,9)=0.D0 SHP(2,1)=0.D0 SHP(2,2)=0.D0 SHP(2,3)=0.D0 SHP(2,4)=0.D0 SHP(2,5)=0.D0 SHP(2,6)=0.D0 SHP(2,7)=0.D0 SHP(2,8)=0.D0 SHP(2,9)=0.D0 SHP(3,1)=0.D0 SHP(3,2)=0.D0 SHP(3,3)=0.D0 SHP(3,4)=0.D0 SHP(3,5)=0.D0 SHP(3,6)=0.D0 SHP(3,7)=0.D0 SHP(3,8)=0.D0 SHP(3,9)=0.D0 IF (QSI.GE.-1.D0.AND.QSI.LE.0.D0) THEN IF (ETA.GE.-1.D0.AND.ETA.LE.0.D0) THEN * Omega1 SHP(1,1)=QSI*ETA SHP(1,2)=-ETA*(1.D0+QSI) SHP(1,8)=-QSI*(1.D0+ETA) SHP(1,9)=(1.D0+QSI)*(1.D0+ETA) SHP(2,1)=ETA SHP(3,1)=QSI SHP(2,2)=-ETA SHP(3,2)=-(1.D0+QSI) SHP(2,8)=-(1.D0+ETA) SHP(3,8)=-QSI SHP(2,9)=1.D0+ETA SHP(3,9)=1.D0+QSI ELSEIF (ETA.GE.0.D0.AND.ETA.LE.1.D0) THEN * Omega4 SHP(1,6)=ETA*(1.D0+QSI) SHP(1,7)=-QSI*ETA SHP(1,8)=-QSI*(1.D0-ETA) SHP(1,9)=(1.D0+QSI)*(1.D0-ETA) SHP(2,6)=ETA SHP(3,6)=1.D0+QSI SHP(2,7)=-ETA SHP(3,7)=-QSI SHP(2,8)=-(1.D0-ETA) SHP(3,8)=QSI SHP(2,9)=1.D0-ETA SHP(3,9)=-(1.D0+QSI) ENDIF ELSEIF (QSI.GE.0.D0.AND.QSI.LE.1.D0) THEN IF (ETA.GE.-1.D0.AND.ETA.LE.0.D0) THEN * Omega2 SHP(1,2)=-ETA*(1.D0-QSI) SHP(1,3)=-QSI*ETA SHP(1,4)=QSI*(1.D0+ETA) SHP(1,9)=(1.D0-QSI)*(1.D0+ETA) SHP(2,2)=ETA SHP(3,2)=-(1.D0-QSI) SHP(2,3)=-ETA SHP(3,3)=-QSI SHP(2,4)=1.D0+ETA SHP(3,4)=QSI SHP(2,9)=-(1.D0+ETA) SHP(3,9)=1.D0-QSI ELSEIF (ETA.GE.0.D0.AND.ETA.LE.1.D0) THEN * Omega3 SHP(1,4)=QSI*(1.D0-ETA) SHP(1,5)=QSI*ETA SHP(1,6)=ETA*(1.D0-QSI) SHP(1,9)=(1.D0-QSI)*(1.D0-ETA) SHP(2,4)=1.D0-ETA SHP(3,4)=-QSI SHP(2,5)=ETA SHP(3,5)=QSI SHP(2,6)=-ETA SHP(3,6)=1.D0-QSI SHP(2,9)=-(1.D0-ETA) SHP(3,9)=-(1.D0-QSI) ENDIF ENDIF * WRITE(6,*)'SHP:',SHP(1,1),SHP(1,2),SHP(1,3),SHP(1,4) * WRITE(6,*) SHP(1,5),SHP(1,6),SHP(1,7),SHP(1,8),SHP(1,9) ENDIF RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales