Download elpder.eso

Back to the list

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

© Cast3M 2003 - All rights reserved.
Disclaimer