cmaxro
C CMAXRO SOURCE PV 17/12/08 21:15:59 9660 C MAXROT SOURCE PV 99/08/14 12:48:16 3659 * SUBROUTINE MAXROT(WTRAV,MFR,IB,IGAU,NBGMAT,NELMAT,NPINT) C C ROTATION DES TENSEURS POUR MAXWEL C SI MATE UNIDIRECTIONNEL C INSPIRE DE HOOKUN C IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) PARAMETER(UN=1.D0,DEUX=2.D0,UNDEMI=.5D0) C -INC CCHAMP -INC PPARAM -INC CCOPTIO -INC DECHE C C INITIALISATION C *********************** * CAS MASSIF *********************** * IF (MFR.EQ.1.OR.MFR.EQ.33) THEN IF(IGAU.LE.NBGMAT) THEN IF(IDIM.EQ.2)THEN C C DEFINITION DES AXES ORTHO./AXES LOCAUX C XLOC(1,1)=VALMAT(2) XLOC(2,1)=VALMAT(3) XLOC(1,2)=-XLOC(2,1) XLOC(2,2)=XLOC(1,1) ELSEIF(IDIM.EQ.3)THEN XLOC(1,1)=VALMAT(2) XLOC(2,1)=VALMAT(3) XLOC(3,1)=VALMAT(4) XLOC(1,2)=VALMAT(5) XLOC(2,2)=VALMAT(6) XLOC(3,2)=VALMAT(7) C IF(IRR.EQ.0) THEN RETURN ENDIF ENDIF C C DEFINITION DES AXES ORTHO./AXES GLOBAUX C DO 1045 K=1,IDIM DO 1045 J=1,IDIM DO 1045 I=1,IDIM XGLOB(K,J)=TXR(J,I)*XLOC(I,K)+XGLOB(K,J) 1045 CONTINUE ENDIF C C ELSEIF (IGAU.LE.NBGMAT.AND. + (IB.LE.NELMAT.OR.NBGMAT.GT.1)) THEN C C MLR 12/8/99 C POUR LE MOMENT ON BLOQUE LE RESTE C A BRANCHER PLUS TARD ...! C IZOB=0 IF(IZOB.EQ.0) THEN RETURN ENDIF C C Coques minces C IF(MFR.EQ.3) THEN C C CAS DKT INTEGRE C IF (NPINT.NE.0) THEN * CAS NON ENCORE IMPLEMENTE RETURN ELSE C C CAS TRIDIMENSIONNEL ET FOURIER C IF(IFOUR.EQ.2.OR.IFOUR.EQ.1) THEN *PV D3HOO1 n'existe pas !!! * CALL ZERO(D3HOO1,3,3) COSA=VALMAT(2) SINA=VALMAT(3) C COS2 = COSA**2 SIN2 = SINA**2 SINCOS = SINA * COSA C C C C CAS AXISYMETRIQUE ET DEFORMATIONS PLANES C ELSE IF(IFOUR.EQ.0.OR.IFOUR.EQ.-1.OR. & IFOUR.EQ.-3) THEN COSA=VALMAT(2) SINA=VALMAT(3) COS2 = COSA**2 SIN2 = SINA**2 C C C CAS CONTRAINTES PLANES C ELSE IF(IFOUR.EQ.-2) THEN ******** DDHOOK(1,1)=YG1 ******** DDHOOK(3,3)=YG1 C ELSE IRET=0 ENDIF ENDIF C C Coques epaisses C ELSE IF(MFR.EQ.5) THEN C C CAS TRIDIMENSIONNEL C IF(IFOUR.EQ.2) THEN COSA=VALMAT(2) SINA=VALMAT(3) C COS2 = COSA**2 SIN2 = SINA**2 SINCOS = SINA * COSA C C ELSE IRET=0 ENDIF C C Coques minces avec cisaillement transverse C ELSE IF(MFR.EQ.9) THEN C IF(IFOUR.EQ.2) THEN COSA=VALMAT(2) SINA=VALMAT(3) C COS2 = COSA**2 SIN2 = SINA**2 SINCOS = SINA * COSA C C ELSE IRET=0 ENDIF C C Cas des barres C ELSE IF(MFR.EQ.27) THEN C C RIEN A FAIRE C ELSE IRET=0 GOTO 2035 ENDIF ENDIF C 2035 RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales