Télécharger broydi.eso

Retour à la liste

Numérotation des lignes :

  1. C BROYDI SOURCE CHAT 05/01/12 21:42:43 5004
  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 10 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. C
  30. DO 20 I=1,2
  31. AC(I)=XK(I)-AB(I)
  32. 20 CONTINUE
  33. C
  34. CALL ZERO(AD,2,2)
  35. DO 30 I=1,2
  36. DO 30 J=1,2
  37. AD(I,J)=AC(I)*XK(J)
  38. 30 CONTINUE
  39. C
  40. CALL ZERO(AD1,2,2)
  41. DO 35 I=1,2
  42. DO 35 J=1,2
  43. AD1(I,J)=0.D0
  44. DO 35 K=1,2
  45. AD1(I,J)=AD1(I,J)+AD(I,K)*H(K,J)
  46. 35 CONTINUE
  47. C
  48. SCAL=0.D0
  49. DO 40 I=1,2
  50. SCAL=SCAL+XK(I)*AB(I)
  51. 40 CONTINUE
  52. C
  53. SCAL1=0.D0
  54. DO 42 I=1,2
  55. SCAL1=SCAL1+XK(I)*XK(I)
  56. 42 CONTINUE
  57. C
  58. DO 50 I=1,2
  59. DO 50 J=1,2
  60. AE(I,J)=SCAL1*AD1(I,J)/SCAL
  61. 50 CONTINUE
  62. C
  63. CALL ZERO(H1,2,2)
  64. DO 60 I=1,2
  65. DO 60 J=1,2
  66. H1(I,J)=H(I,J)+AE(I,J)
  67. 60 CONTINUE
  68. C
  69. CALL ZERO(H,2,2)
  70. DO 70 I=1,2
  71. DO 70 J=1,2
  72. H(I,J)=H1(I,J)
  73. 70 CONTINUE
  74. C-------------------------------------------------------------------
  75. RETURN
  76. END
  77.  
  78.  
  79.  
  80.  

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