Télécharger elpddr.eso

Retour à la liste

Numérotation des lignes :

  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.  
  97.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales