1 : C RGLOB SOURCE CHAT 05/01/13 02:55:55 5004 2 : SUBROUTINE RGLOB(VALVEC,IDIM,TXR,XLOC,XGLOB) 3 : C 4 : C CALCUL DES COS.DIR. DES AXES D'ORTHO./AXES GLOBAUXC ENTREES 5 : C 6 : C ENTREES : 7 : C 8 : C VALCEC = TABLEAU CONTENANT LES COS.DIR. DES AXES D'ORTHO./AXES LOCA 9 : C IDIM = DEFINIT SI ON EST EN 2D OU 3D 10 : C TXR = COS-DIRECTEURS DES AXES LOCAUX /REPERE GLOBAL 11 : C XLOC = TABLEAU DE TRAVAIL 12 : C 13 : C SORITES 14 : C 15 : C XGLOB = TEBLEAU CONTENANT DES COS.DIR. DES AXES D'ORTHO./AXES GLOBAU 16 : C 17 : C======================================================================= 18 : C 19 : IMPLICIT INTEGER(I-N) 20 : IMPLICIT REAL*8(A-H,O-Z) 21 : C 22 : DIMENSION XLOC(IDIM,*),XGLOB(IDIM,*) 23 : DIMENSION TXR(IDIM,*),VALVEC(*) 24 : C 24 : CALL ZERO(XGLOB,IDIM,IDIM) 25 : C 26 : IF(IDIM.EQ.2)THEN 27 : XLOC(1,1)=VALVEC(1) 28 : XLOC(2,1)=VALVEC(2) 29 : XLOC(1,2)=-XLOC(2,1) 30 : XLOC(2,2)=XLOC(1,1) 31 : XN=XLOC(1,1)*XLOC(1,1)+XLOC(2,1)*XLOC(2,1) 32 : IF(XN.EQ.0.D0)THEN 32 : CALL ERREUR(277) 33 : RETURN 34 : ENDIF 35 : ELSEIF(IDIM.EQ.3)THEN 36 : XLOC(1,1)=VALVEC(1) 37 : XLOC(2,1)=VALVEC(2) 38 : XLOC(3,1)=VALVEC(3) 39 : XLOC(1,2)=VALVEC(4) 40 : XLOC(2,2)=VALVEC(5) 41 : XLOC(3,2)=VALVEC(6) 41 : CALL CROSS2(XLOC(1,1),XLOC(1,2),XLOC(1,3),IRR) 42 : IF(IRR.EQ.0)THEN 42 : CALL ERREUR(277) 43 : RETURN 44 : ENDIF 45 : ENDIF 46 : C 47 : C DEFINITION DES AXES ORTHO./AXES GLOBAUX 48 : C 49 : DO 10 K=1,IDIM 50 : DO 10 J=1,IDIM 51 : DO 10 I=1,IDIM 52 : XGLOB(J,K)=TXR(J,I)*XLOC(I,K)+XGLOB(J,K) 53 : 10 CONTINUE 54 : RETURN 55 : END 56 :
© Cast3M 2003 - All rights reserved.
Disclaimer