Télécharger broydi.eso

Retour à la liste

Numérotation des lignes :

broydi
  1. C BROYDI SOURCE CB215821 26/08/24 21:15:18 12622
  2. SUBROUTINE BROYDI(H,XK0,XK1,YK0,YK1)
  3. C
  4. C ==================================================================
  5. C
  6. C MISE A JOUR DU JACOBIEN PAR LA METHODE
  7. C DE BROYDEN
  8. C ==================================================================
  9. C
  10. C
  11. IMPLICIT INTEGER(I-N)
  12. IMPLICIT REAL*8 (A-H,O-Z)
  13. DIMENSION H(2,2),XK0(2),XK1(2),YK0(2),YK1(2),AE(2,2)
  14. DIMENSION AB(2),XK(2),YK(2),AC(2),AD(2,2),H1(2,2),AD1(2,2)
  15. C
  16. DO 1 I=1,2
  17. XK(I)=XK1(I)-XK0(I)
  18. 1 CONTINUE
  19. C
  20. DO 5 I=1,2
  21. YK(I)=YK1(I)-YK0(I)
  22. 5 CONTINUE
  23. C
  24. DO 71 I=1,2
  25. AB(I)=0.D0
  26. DO 10 J=1,2
  27. AB(I)=AB(I)+H(I,J)*YK(I)
  28. 10 CONTINUE
  29. 71 CONTINUE
  30. C
  31. DO 20 I=1,2
  32. AC(I)=XK(I)-AB(I)
  33. 20 CONTINUE
  34. C
  35. CALL ZERO(AD,2,2)
  36. DO 72 I=1,2
  37. DO 30 J=1,2
  38. AD(I,J)=AC(I)*XK(J)
  39. 30 CONTINUE
  40. 72 CONTINUE
  41. C
  42. CALL ZERO(AD1,2,2)
  43. DO 74 I=1,2
  44. DO 73 J=1,2
  45. AD1(I,J)=0.D0
  46. DO 35 K=1,2
  47. AD1(I,J)=AD1(I,J)+AD(I,K)*H(K,J)
  48. 35 CONTINUE
  49. 73 CONTINUE
  50. 74 CONTINUE
  51. C
  52. SCAL=0.D0
  53. DO 40 I=1,2
  54. SCAL=SCAL+XK(I)*AB(I)
  55. 40 CONTINUE
  56. C
  57. SCAL1=0.D0
  58. DO 42 I=1,2
  59. SCAL1=SCAL1+XK(I)*XK(I)
  60. 42 CONTINUE
  61. C
  62. DO 75 I=1,2
  63. DO 50 J=1,2
  64. AE(I,J)=SCAL1*AD1(I,J)/SCAL
  65. 50 CONTINUE
  66. 75 CONTINUE
  67. C
  68. CALL ZERO(H1,2,2)
  69. DO 76 I=1,2
  70. DO 60 J=1,2
  71. H1(I,J)=H(I,J)+AE(I,J)
  72. 60 CONTINUE
  73. 76 CONTINUE
  74. C
  75. CALL ZERO(H,2,2)
  76. DO 77 I=1,2
  77. DO 70 J=1,2
  78. H(I,J)=H1(I,J)
  79. 70 CONTINUE
  80. 77 CONTINUE
  81. C-------------------------------------------------------------------
  82. RETURN
  83. END
  84.  
  85.  
  86.  
  87.  
  88.  

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