Download dyne03.eso

Back to the list

   1 : C DYNE03    SOURCE    CHAT      09/10/09    21:17:32     6519           
   2 :       SUBROUTINE DYNE03(IRIGK,IRSCPR,MUCT,ICHOLX)                               
   3 :       IMPLICIT INTEGER(I-N)
   4 :       IMPLICIT REAL*8(A-H,O-Z)                                                  
   5 : ************************************************************************        
   6 : *                                                                               
   7 : *                             D Y N E 0 3                                       
   8 : *                             -----------                                       
   9 : *                                                                               
  10 : * FONCTION:                                                                     
  11 : * ---------                                                                     
  12 : *     UTILITAIRE DE L'OPERATEUR "DYNE"                                          
  13 : *     PREPARATION DU PRODUIT DE TYPE : K * U                                    
  14 : *                                                                               
  15 : * PARAMETRES:   (E)=ENTREE   (S)=SORTIE   (+ = CONTENU DANS UN COMMUN)          
  16 : * -----------                                                                   
  17 : *                                                                               
  18 : *     IRIGK   (E)  POINTEUR SUR L'OBJET RIGIDITE K                              
  19 : *     IRSCPR  (E)  POINTEUR SUR LE SEGMENT ICPR ( ACTIF )                       
  20 : *     MUCT    (S)  POINTEUR SUR LE SEGMENT MUCTRA ( LAISSE ACTIF )              
  21 : *     ICHOLX  (E)  POINTEUR SUR LE SEGMENT MMATRI ( ACTIF )                     
  22 : *                                                                               
  23 : * AUTEUR, DATE DE CREATION:                                                     
  24 : * -------------------------                                                     
  25 : *     DENIS ROBERT, LE 16 NOVEMBRE 1988.                                        
  26 : *                                                                               
  27 : * LANGAGE:                                                                      
  28 : * --------                                                                      
  29 : *     ESOPE + FORTRAN77                                                         
  30 : *                                                                               
  31 : ************************************************************************        
  32 : *                                                                               
  33 : * MODULES UTILISES:                                                             
  34 : *                                                                               
  35 : -INC CCOPTIO                                                                    
  36 : -INC SMRIGID                                                                    
  37 : -INC SMELEME                                                                    
  38 : -INC SMMATRI                                                                    
  39 : -INC SMCOORD                                                                    
  40 : *                                                                               
  41 :       CHARACTER*4 NI                                                            
  42 : *                                                                               
  43 :       SEGMENT MUCTRA                                                            
  44 :          REAL*8  CC(NLIGMA)                                                     
  45 :          INTEGER MUCPO,MUCMIK,MUCDUA,MUIPOS(NLIGMA),MUCPR                       
  46 :       ENDSEGMENT                                                                
  47 :       SEGMENT ICPR(XCOOR(/1)/(IDIM+1))                                          
  48 : *                                                                               
  49 :       MMATRI=ICHOLX                                                             
  50 :       MRIGID=IRIGK                                                              
  51 :       SEGACT,MRIGID                                                             
  52 :       NRIGEL=IRIGEL(/2)                                                         
  53 :       NLIGMA=0                                                                  
  54 : *                                                                               
  55 : *---  ON VERIFIE QUE LES DDL DES RIGIDITES K ET A SONT COMPATIBLES              
  56 : *                                                                               
  57 :       MINCPO=IINCPO                                                             
  58 :       MIMIK=IIMIK                                                               
  59 :       ICPR=IRSCPR                                                               
  60 :       ININC=IMIK(/2)                                                            
  61 : *                                                                               
  62 : *---  BOUCLE SUR LES ZONES ELEMENTAIRES DE LA RIGIDITE                          
  63 : *                                                                               
  64 :       DO 20 IRI=1,NRIGEL                                                        
  65 :          MELEME=IRIGEL(1,IRI)                                                   
  66 :          SEGACT,MELEME                                                          
  67 :          DESCR=IRIGEL(3,IRI)                                                    
  68 :          SEGACT,DESCR                                                           
  69 :          NLIGRE=LISINC(/2)                                                      
  70 :          IF (NLIGRE.GT.NLIGMA) NLIGMA=NLIGRE                                    
  71 : *                                                                               
  72 : *---     BOUCLE SUR LES LIGNES D'UNE MATRICE ELEMENTAIRE                        
  73 : *                                                                               
  74 :          DO 21 IN=1,NLIGRE                                                      
  75 :             NI=LISINC(IN)                                                       
  76 :             DO 22 IJ=1,ININC                                                    
  77 :                IF(NI.EQ.IMIK(IJ))  GO TO 23                                     
  78 :  22            CONTINUE                                                         
  79 : *           END DO                                                              
  80 : *---        UNE COMPOSANTE DE K N'EST PAS UNE COMPOSANTE DE M                   
  81 :             MOTERR(1:4)=' K'                                                    
  82 :             MOTERR(5:8)=NI                                                      
  82 :             CALL ERREUR(304)                                                    
  83 :             RETURN                                                              
  84 :  23         CONTINUE                                                            
  85 :  21         CONTINUE                                                            
  86 : *        END DO                                                                 
  87 : *                                                                               
  88 : *---     BOUCLE SUR TOUS LES ELEMENTS                                           
  89 : *                                                                               
  90 :          N1=NUM(/1)                                                             
  91 :          N2=NUM(/2)                                                             
  92 :          xMATRI=IRIGEL(4,IRI)                                                   
  93 :          SEGACT xMATRI                                                          
  94 :          DO 30 I2=1,N2                                                          
  95 : *                                                                               
  96 : *---        BOUCLE SUR LES POINTS DE L'ELEMENT                                  
  97 : *                                                                               
  98 :             DO 31 I1=1,N1                                                       
  99 :                IF(ICPR(NUM(I1,I2)).EQ.0) THEN                                   
 100 : *---           UN POINT DU SUPPORT DE K N'APPARTIENT PAS AU SUPPORT DE M        
 101 :                INTERR(1)=ICPR(NUM(I1,I2))                                       
 102 :                MOTERR(1:4)=' K'                                                 
 102 :                CALL ERREUR(305)                                                 
 103 :                RETURN                                                           
 104 :                ENDIF                                                            
 105 :  31            CONTINUE                                                         
 106 : *           END DO                                                              
 107 : *            XMATRI=IMATTT(I2)                                                   
 108 : *            SEGACT,XMATRI                                                       
 109 : *                                                                               
 110 :  30         CONTINUE                                                            
 111 : *        END DO                                                                 
 112 : *        SEGDES,DESCR                                                           
 113 : *        SEGDES,MELEME                                                          
 114 :  20      CONTINUE                                                               
 115 : *     END DO                                                                    
 116 : *     SEGDES,MRIGID                                                             
 117 : *                                                                               
 118 : *---  CREATION DU SEGMENT DE TRAVAIL MUCTRA                                     
 119 : *                                                                               
 120 :       SEGINI,MUCTRA                                                             
 121 :       MUCPO=IINCPO                                                              
 122 :       MUCMIK=IIMIK                                                              
 123 :       MUCDUA=IIDUA                                                              
 124 :       MUCPR=IRSCPR                                                              
 125 :       MUCT=MUCTRA                                                               
 126 : *                                                                               
 127 :       END                                                                       
 128 :  
 129 :  
 130 :  
 131 :  
 132 :  
 133 :  
 134 :  
 135 :  
 136 :  

© Cast3M 2003 - All rights reserved.
Disclaimer