1 : C COMROT SOURCE FANDEUR 12/07/18 21:15:32 7435 2 : 3 : SUBROUTINE COMROT(WRK53,IB,IPTR1,MWRKXE,WRK54) 4 : * 5 : ********************************************************** 6 : * ENTREES 7 : ********************************************************** 8 : * 9 : * CMATE : nom du matériau élastique 10 : * MFR : formulation de l'élément 11 : * NBBN : nombre de noeuds de l'élément 12 : * IB : numéro de l'élément 13 : * MELE : numéro élément fini 14 : * IPTR1 : pointeur sur un segment MINTE2 15 : * 16 : ********************************************************** 17 : * SORTIES 18 : ********************************************************** 19 : * TXR : cosinus directeurs des axes locaux de l'élément massif 20 : * (WTRAV) a remplir si IPTR1 n'est pas NUL ! 21 : * 22 : ********************************************************** 23 : * 24 : IMPLICIT INTEGER(I-N) 25 : IMPLICIT REAL*8(A-H,O-Z) 26 : * 27 : -INC CCOPTIO 28 : * 29 : -INC SMINTE 30 : -INC DECHE 31 : * 32 : SEGMENT MWRKXE 33 : REAL*8 XEL(3,NBNN) 34 : ENDSEGMENT 35 : c 36 : c calcul des axes locaux 37 : c 38 : IF (IPTR1.GT.0) THEN 39 : C* IF((CMATE.EQ.'ORTHOTRO'.OR.CMATE.EQ.'ANISOTRO'.OR. 40 : C* & CMATE.EQ.'UNIDIREC').AND.(MFR.EQ.1 41 : C* & .OR.MFR.EQ.31.OR.MFR.EQ.33)) THEN 42 : MINTE2=IPTR1 43 : NBSH=MINTE2.SHPTOT(/2) 44 : NBNN = XEL(/2) 44 : CALL RLOCAL(XEL,MINTE2.SHPTOT,NBSH,NBNN,TXR) 45 : if (nbsh.eq.-1) then 45 : call erreur(525) 46 : return 47 : endif 48 : ENDIF 49 : * 50 : CPPU IF(LUNI1)THEN 51 : CPPU NBNN = XEL(/2) 52 : CPPU NLG=NUMGEO(MELE) 52 : CPPU CALL RESHPT(1,NBNN,NLG,MELE,0,IPTR1,IRT1) 53 : CPPU MINTE2=IPTR1 54 : CPPU SEGACT MINTE2 55 : CPPU NBSH=MINTE2.SHPTOT(/2) 55 : CPPU CALL RLOCAL (XEL,MINTE2.SHPTOT,NBSH,NBNN,TXR) 56 : CPPU ENDIF 57 : * 58 : RETURN 59 : END 60 : 61 : 62 :
© Cast3M 2003 - All rights reserved.
Disclaimer