Télécharger bfilci.eso

Retour à la liste

Numérotation des lignes :

bfilci
  1. C BFILCI SOURCE CB215821 17/11/30 21:15:15 9639
  2. SUBROUTINE BFILCI(SANGLE,COUR,R,TMIN,TMAX,X,Z,BX,BY,BZ)
  3. IMPLICIT INTEGER(I-N)
  4. IMPLICIT REAL*8(A-H,O-Z)
  5. C
  6. -INC CCREEL
  7. C
  8. C*******************************************************************
  9. C Calcul du champ induit par un arc de cercle de courant COUR,
  10. C d'axe Oz, de section filaire :
  11. C - rayon R
  12. C - extension angulaire TMIN a TMAX par rapport au plan meridien
  13. C xOz contenant le point de coordonnees (X,0,Z)
  14. C ou on calcule le champ (BX,BY,BZ)
  15. C*******************************************************************
  16. C
  17. SEGMENT SANGLE
  18. REAL*8 TETM(NT4)
  19. REAL*8 TETI(NT4)
  20. REAL*8 DTE(NT4)
  21. ENDSEGMENT
  22. C
  23. C champ magnetique selon Ox, Oy, Or et Oz cree par l'element d'arc de
  24. C longueur DTE situe en TETA, et grandeurs dependant de TETA pour
  25. C l'integration
  26. C
  27. NT4=TETM(/1)
  28. C
  29. C
  30. C calcul des grandeurs geometriques independantes de TETA
  31. C
  32. AMU=4.E-7*XPI
  33. COEF=COUR*AMU*R/(4.*XPI)
  34. C
  35. BX=0.
  36. BY=0.
  37. BZ=0.
  38. C
  39. C cas de l'axe
  40. C
  41. IF(X.EQ.0.) THEN
  42. DIST=SQRT(R**2+Z**2)
  43. DIST3=DIST**3
  44. BX=COEF*Z/DIST3*(SIN(TMAX)-SIN(TMIN))
  45. BY=-COEF*Z/DIST3*(COS(TMAX)-COS(TMIN))
  46. BZ=COEF*R/DIST3*(TMAX-TMIN)
  47. RETURN
  48. ENDIF
  49. C
  50. C recherche des bornes d'integration
  51. C
  52. IDEB=0
  53. IFIN=0
  54. TTAI=-1.
  55. TTAF=-1.
  56. C
  57. DO 1 I=1,NT4
  58. DMIN=TMIN-TETI(I)
  59. DMAX=TMAX-TETI(I)
  60. TTBI=SIGN(1.D0,DMIN)
  61. TTBF=SIGN(1.D0,DMAX)
  62. TESTI=0.5*(1.-TTAI*TTBI)
  63. TESTF=0.5*(1.-TTAF*TTBF)
  64. IDEB=IDEB+I*INT(TESTI)
  65. IFIN=IFIN+I*INT(TESTF)
  66. TTAI=TTBI
  67. TTAF=TTBF
  68. 1 CONTINUE
  69. C
  70. DTINI=DTE(IDEB)
  71. DTFIN=DTE(IFIN)
  72. TETINI=TETM(IDEB)
  73. TETFIN=TETM(IFIN)
  74. DTE(IDEB)=TETI(IDEB+1)-TMIN
  75. DTE(IFIN)=TMAX-TETI(IFIN)
  76. TETM(IDEB)=0.5*(TETI(IDEB+1)+TMIN)
  77. TETM(IFIN)=0.5*(TETI(IFIN)+TMAX)
  78. C
  79. DO 21 I=IDEB,IFIN
  80. COST=COS(TETM(I))
  81. SINT=SIN(TETM(I))
  82. DIST=SQRT(R**2+X**2+Z**2-2.*X*R*COST)
  83. DIST3=DIST**3
  84. HX=Z*COST/DIST3
  85. HZ=(R-X*COST)/DIST**3
  86. BX=BX+HX*DTE(I)
  87. BZ=BZ+HZ*DTE(I)
  88. 21 CONTINUE
  89. C CALCUL ANALYTIQUE DE BY
  90. DIST1=SQRT(R**2+X**2+Z**2-2.*X*R*COS(TMIN))
  91. DIST2=SQRT(R**2+X**2+Z**2-2.*X*R*COS(TMAX))
  92. BY=Z/(X*R)*(1./DIST2-1./DIST1)
  93. BX=BX*COEF
  94. BY=BY*COEF
  95. BZ=BZ*COEF
  96. C
  97. DTE(IDEB)=DTINI
  98. DTE(IFIN)=DTFIN
  99. TETM(IDEB)=TETINI
  100. TETM(IFIN)=TETFIN
  101. C
  102. RETURN
  103. END
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  

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