Download elpddr.eso

Back to the list

   1 : C ELPDDR    SOURCE    CHAT      05/01/12    23:36:21     5004           
   2 :       SUBROUTINE ELPDDR(CG,R,XR,XA,XB,XC,XDD,IDER,CVA)                           
   3 :       IMPLICIT INTEGER(I-N)
   4 :       IMPLICIT REAL*8(A-B,D-H,O-Z)                                              
   5 :       IMPLICIT COMPLEX*16(C)                                                    
   6 : ************************************************************************        
   7 : *                                                                               
   8 : *    DERIVATION D'UNE FONCTION complexe DANS 1,2,3,4   DIRECTION FIXES
   9 : *                                                                               
  10 : *       CG(1 A  5) CF(R) ET SES 4 PREMIERES DERIVEES                            
  11 : *       XR LA DIRECTION UNITAIRE DE R                                           
  12 : *       XA LA DIRECTION UNITAIRE DE DERIVATION 1                                
  13 : *       XB LA DIRECTION UNITAIRE DE DERIVATION 2                                
  14 : *       XC LA DIRECTION UNITAIRE DE DERIVATION 3                                
  15 : *       XDD LA DIRECTION UNITAIRE DE DERIVATION 4                                
  16 : *                                                                               
  17 : *                                                                               
  18 : *                                                                               
  19 : *    F,AB= A.RO B.RO CF21 + A.B CF22                                            
  20 : *                                                                               
  21 : *                                                                               
  22 : *                                                                               
  23 : *     F,ABC= A.RO B.RO C.R0 CF31 +( A.B C.RO + A.C B.RO + B.C A.RO)CF32         
  24 : *                                                                               
  25 : *         AVEC CF31 = V''' - 3* V'' / R + 3*V' / R**2                           
  26 : *              CF32 =           V'' / R -   V' / R**2                           
  27 : *                                                                               
  28 : *                                                                               
  29 : *        F,ABCD= A.RO B.RO C.R0  DRO CF41                                       
  30 : *              +( AD BRO CRO  +  5 PERMUTATIONS ABCD )CF42                      
  31 : *              +( AC BD       +  2 PERMUTATIONS ABCD )CF43                      
  32 : *                                                                               
  33 : *         AVEC CF41 = V'''' - 6* V''' / R + 15*V''/ R**2-15 V' / R              
  34 : *              CF42 = CF31 / R                                                  
  35 : *              CF43 = CF32 / R                                                  
  36 : *                                                                               
  37 : *               RO VECTEUR  XR                                                  
  38 : ************************************************************************        
  39 :           DIMENSION CG (5)                                                      
  40 :           DIMENSION XR (2)                                                      
  41 :           DIMENSION XA (2)                                                      
  42 :           DIMENSION XB (2)                                                      
  43 :           DIMENSION XC (2)                                                      
  44 :           DIMENSION XDD (2)                                                      
  45 : *                                                                               
  46 :        IF (IDER .EQ. 1 ) THEN                                                   
  47 :          CF1 = CG(2)                                                            
  48 :          AR = XR(1)*XA(1) +XR(2)*XA(2)                                          
  49 :          CVA = AR * CF1                                                         
  50 :        ELSEIF( IDER .EQ. 2 ) THEN                                               
  51 :          CF21= CG(3) - CG(2) / R                                                
  52 :          CF22= CG(2)/R                                                          
  53 :          AR = XR(1)*XA(1) +XR(2)*XA(2)                                          
  54 :          BR = XR(1)*XB(1) +XR(2)*XB(2)                                          
  55 :          AB = XB(1)*XA(1) +XB(2)*XA(2)                                          
  56 :          CVA = AR *BR* CF21+ AB*CF22                                            
  57 :        ELSEIF( IDER .EQ. 3 ) THEN                                               
  58 :          CF31= CG(4) - (3 * CG(3) / R) + (3 * CG(2) / (R*R))                    
  59 :          CF32=              CG(3) / R  - (  CG(2) / (R*R))                      
  60 :          AR = XR(1)*XA(1) +XR(2)*XA(2)                                          
  61 :          BR = XR(1)*XB(1) +XR(2)*XB(2)                                          
  62 :          CR = XR(1)*XC(1) +XR(2)*XC(2)                                          
  63 :          AB = XA(1)*XB(1) +XA(2)*XB(2)                                          
  64 :          AC = XA(1)*XC(1) +XA(2)*XC(2)                                          
  65 :          BC = XB(1)*XC(1) +XB(2)*XC(2)                                          
  66 :          CVA = (AR *BR* CR)            * CF31 +                                 
  67 :      &         (AC*BR + BC*AR + AB*CR) * CF32                                   
  68 :        ELSE                                                                     
  69 :          CF41= CG(5)  - (6 * CG(4) / R) + (15* CG(3) / (R*R))                   
  70 :      &                               - (15* CG(2) / (R*R*R))                    
  71 :          CF31= CG(4)  - (3 * CG(3) / R) + (3 * CG(2) / (R*R))                   
  72 :          CF42 = CF31 / R                                                        
  73 :          CF32=              CG(3) / R  - (  CG(2) / (R*R))                      
  74 :          CF43 = CF32 / R                                                        
  75 :                                                                                 
  76 :          AR = XR(1)*XA(1) +XR(2)*XA(2)                                          
  77 :          BR = XR(1)*XB(1) +XR(2)*XB(2)                                          
  78 :          CR = XR(1)*XC(1) +XR(2)*XC(2)                                          
  79 :          DR = XR(1)*XDD(1) +XR(2)*XDD(2)                                          
  80 :                                                                                 
  81 :          AB = XA(1)*XB(1) +XA(2)*XB(2)                                          
  82 :          AC = XA(1)*XC(1) +XA(2)*XC(2)                                          
  83 :          AD = XA(1)*XDD(1) +XA(2)*XDD(2)                                          
  84 :          BC = XB(1)*XC(1) +XB(2)*XC(2)                                          
  85 :          BD = XB(1)*XDD(1) +XB(2)*XDD(2)                                          
  86 :          CD = XC(1)*XDD(1) +XC(2)*XDD(2)                                          
  87 : *                                                                               
  88 :          CVA = (AR *BR* CR * DR)                 * CF41 +                       
  89 :      &         (AB*CR*DR + AC*BR*DR + AD*BR*CR                                  
  90 :      &        + BC*AR*DR + BD*AR*CR + CD*AR*BR ) * CF42 +                       
  91 :      &         (AC*BD    + BC*AD    + AB*CD    ) * CF43                         
  92 :        ENDIF                                                                    
  93 :                                                                                 
  94 :        RETURN                                                                   
  95 :       END                                                                       
  96 :  

© Cast3M 2003 - All rights reserved.
Disclaimer