Download rglob.eso

Back to the list

   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