Download dfour1.eso

Back to the list

   1 : C DFOUR1    SOURCE    AM        08/02/14    21:20:21     6050           
   2 :       SUBROUTINE DFOUR1(ICHPO,ANGL,IRET)                                        
   3 : C====================================================================           
   4 : C                                                                               
   5 : C   ENTREES                                                                     
   6 : C    ICHPO  = CHPOINT DE TYPE FORCES OU DEPLACEMENTS                            
   7 : C    ANGL   = ANGLE                                                             
   8 : C  SORTIES                                                                      
   9 : C    IRET   = SI SUCCES , CHPT CONTENANT LES VALEURS POUR L ANGLE DONNE         
  10 : C             0 SINON                                                           
  11 : C                                                                               
  12 : C     J BROCHARD MARS 87                                                        
  13 : C=====================================================================          
  14 :       IMPLICIT INTEGER(I-N)
  15 :       IMPLICIT REAL*8(A-H,O-Z)                                                  
  16 : -INC CCOPTIO                                                                    
  17 : -INC CCREEL                                                                     
  18 : -INC CCHAMP                                                                     
  19 : -INC SMCHPOI                                                                    
  20 :       CHARACTER*4 CPV                                                           
  21 : C                                                                               
  22 :       ANGL=(ANGL*XPI)/180.D0                                                    
  23 : C                                                                               
  24 : C-------ON VERIFIE QUE IFOPOI EST BIEN EGAL A 1                                 
  25 : C                                                                               
  26 :       MCHPO1=ICHPO                                                              
  27 :       SEGACT MCHPO1                                                             
  28 :       IF (MCHPO1.IFOPOI.NE.1) THEN                                              
  29 :       MOTERR(1:8)='FOURIER'                                                     
  29 :       CALL ERREUR(333)                                                          
  30 :       IRET=0                                                                    
  31 :       GOTO 999                                                                  
  32 :       ENDIF                                                                     
  33 : C                                                                               
  34 : C-------BOUCLE SUR LES COMPOSANTES                                              
  35 : C  ON MULTIPLIE LES VALEURS PAR COSNT POUR LES COMPOSANTES SUIVANTES            
  36 : C  UR,UZ,RT,P,PI,FR,FZ,MT,FP,FPI ET PAR SINNT LES COMPOSANTES SUIVANTES         
  37 : C  UT,RZ,FT,MZ.LES VALEURS SUR LES COMPOSANTES LX ET FLX SONT INCHANGEES        
  38 : C                                                                               
  39 :       NSOUPO=MCHPO1.IPCHP(/1) 
  40 :       NAT=MCHPO1.JATTRI(/1)                                                  
  41 :       SEGINI MCHPOI                                                             
  42 :       IRET=MCHPOI                                                               
  43 :       MTYPOI=MCHPO1.MTYPOI                                                      
  44 :       MOCHDE=MCHPO1.MOCHDE                                                      
  45 :       IFOPOI=1                                                                  
  46 :       DO 100 IA=1,NSOUPO                                                        
  47 :       MSOUP1=MCHPO1.IPCHP(IA)                                                   
  48 :       SEGACT MSOUP1                                                             
  49 :       NC=MSOUP1.NOCOMP(/2)                                                      
  50 :       SEGINI MSOUPO                                                             
  51 :       IPCHP(IA)=MSOUPO                                                          
  52 :       IGEOC=MSOUP1.IGEOC                                                        
  53 :       MPOVA1=MSOUP1.IPOVAL                                                      
  54 :       SEGACT MPOVA1                                                             
  55 :       N=MPOVA1.VPOCHA(/1)                                                       
  56 :       SEGINI MPOVAL                                                             
  57 :       IPOVAL=MPOVAL                                                             
  58 :       DO 120 IC=1,NC                                                            
  59 :       NOCOMP(IC)=MSOUP1.NOCOMP(IC)                                              
  60 :       NOHARM(IC)=MSOUP1.NOHARM(IC)                                              
  61 :       COSNT=COS(NOHARM(IC)*ANGL)                                                
  62 :       SINNT=SIN(NOHARM(IC)*ANGL)                                                
  63 :       IF(NOHARM(IC).LT.0) THEN                                                  
  64 :       CNT=SINNT                                                                 
  65 :       SINNT=COSNT                                                               
  66 :       COSNT=CNT                                                                 
  67 :       ENDIF                                                                     
  68 : *                                                                               
  69 : *   ON METS NOHARM A ZERO POUR POUVOIR ADDITIONNER DES CHPOINTS DE              
  70 : *   SERIE DE FOURRIER DIFFERENTES.(CHARRAS)                                     
  71 : *                                                                               
  72 :       NOHARM(IC)=0                                                              
  73 :       CPV=NOCOMP(IC)                                                            
  74 :       IF(CPV.EQ.NOMDD(7).OR.CPV.EQ.NOMDD(3).OR.                                 
  75 :      S   CPV.EQ.NOMDD(9).OR.CPV.EQ.NOMDD(14).OR.                                
  76 :      S   CPV.EQ.NOMDD(15).OR.CPV.EQ.NOMDU(7).OR.                                
  77 :      S   CPV.EQ.NOMDU(3).OR.CPV.EQ.NOMDU(9).OR.                                 
  78 :      S   CPV.EQ.NOMDU(14).OR.CPV.EQ.NOMDU(15)) THEN                             
  79 :       DO 130 IE=1,N                                                             
  80 :       VPOCHA(IE,IC)=MPOVA1.VPOCHA(IE,IC)*COSNT                                  
  81 : 130   CONTINUE                                                                  
  82 :       ELSE IF(CPV.EQ.NOMDD(8).OR.CPV.EQ.NOMDU(8).OR.                            
  83 :      S   CPV.EQ.NOMDD(6).OR.CPV.EQ.NOMDU(6)) THEN                               
  84 :       DO 131 IE=1,N                                                             
  85 :       VPOCHA(IE,IC)=MPOVA1.VPOCHA(IE,IC)*SINNT                                  
  86 : 131   CONTINUE                                                                  
  87 :       ELSE IF(CPV.EQ.NOMDD(10).OR.CPV.EQ.NOMDU(10)) THEN                        
  88 :       DO 132 IE=1,N                                                             
  89 :       VPOCHA(IE,IC)=MPOVA1.VPOCHA(IE,IC)                                        
  90 : 132   CONTINUE                                                                  
  91 :       ELSE                                                                      
  92 :       MOTERR(1:8)='FOURIER'                                                     
  92 :       CALL ERREUR(335)                                                          
  93 :       IRET=0                                                                    
  94 :       SEGSUP MPOVAL,MSOUPO,MCHPOI                                               
  95 :       SEGDES MPOVA1,MSOUP1                                                      
  96 :       GOTO 999                                                                  
  97 :       ENDIF                                                                     
  98 : 120   CONTINUE                                                                  
  99 : 666   CONTINUE                                                                  
 100 :       SEGDES MPOVA1,MPOVAL                                                      
 101 :       SEGDES MSOUP1,MSOUPO                                                      
 102 : 100   CONTINUE                                                                  
 103 :       SEGDES MCHPOI                                                             
 104 : 999   CONTINUE                                                                  
 105 :       SEGDES MCHPO1                                                             
 106 :       RETURN                                                                    
 107 :       END                                                                       
 108 :  
 109 :  
 110 :  
 111 :  
 112 :  

© Cast3M 2003 - All rights reserved.
Disclaimer