Télécharger chambo.eso

Retour à la liste

Numérotation des lignes :

  1. C CHAMBO SOURCE CHAT 05/01/12 21:54:56 5004
  2. SUBROUTINE CHAMBO(IUN,IC,NB,O,RI,ALFA,BETA,DENS,ZP,RP,BZP,BRP,BP)
  3. IMPLICIT INTEGER(I-N)
  4. IMPLICIT REAL*8 (A-H,O-Z)
  5. C---------------------------------------------------------------------
  6. CALCUL DU CHAMP DE NB BOBINES RECTANGULAIRES COAXIALES
  7. C IUN INDIQUE LES UNITES CHOISIES:
  8. C IUN=0 OU 1 IUN=2 IUN=3
  9. C CHAMP EN TESLA TESLA GAUSS
  10. C DIMENSIONS EN M MM MM
  11. C DENSITE DE COURANT EN A/M2 A/MM2 A/MM2
  12. C FMUJ=MU*DENS/2*XPI 2E-7*DENS 2E-4*DENS 2*DENS
  13. C
  14. C IC=1 CALCUL DE LA COMPOSANTE BZP SEULE
  15. C IC=2 CALCUL DE LA COMPOSANTE BRP SEULE
  16. C IC#1#2 CALCUL DES 2 COMPOSANTES BZP ET BRP
  17. C---------------------------------------------------------------------
  18. EXTERNAL FONZ,FONR
  19. DIMENSION O(NB),RI(NB),ALFA(NB),BETA(NB),DENS(NB)
  20. -INC CCREEL
  21. -INC CCOPTIO
  22. COMMON/CMCHAM/ D1,D2,R,A,U,DD1,DD2,LSOMD,LD1,LD2
  23. DIMENSION BZ(45),BR(45)
  24. LOGICAL LSOMD,LD1,LD2
  25. LOGICAL LR
  26. PI=XPI
  27. DO 1 I=1,NB
  28. BZ(I)=0.D0
  29. BR(I)=0.D0
  30. 1 CONTINUE
  31. BZP=0
  32. BRP=0
  33. BP=0.D0
  34. PREBZ=0.D0
  35. PREBR=0.D0
  36. IF((IC.EQ.2).AND.(RP.EQ.0.D0)) RETURN
  37. UPSI=0.000001D0
  38. U=1.D0
  39. UU=1.D0
  40. FMU=0.0000002D0
  41. IF(IUN.EQ.2) FMU=0.0002D0
  42. IF(IUN.EQ.3) FMU=2.D0
  43. DO 2 I=1,NB
  44. FMUJ=FMU*DENS(I)
  45. RMUJ=FMUJ*RI(I)
  46. Z=(ZP-O(I))/RI(I)
  47. D1=Z-BETA(I)
  48. D2=Z+BETA(I)
  49. R=RP/RI(I)
  50. A=ALFA(I)
  51. DD1=D1**2
  52. DD2=D2**2
  53. AA=A**2
  54. LR=R.LE.UPSI
  55. LSOMD=ABS(D1+D2).LE.UPSI
  56. LD1=ABS(D1).LE.UPSI
  57. LD2=ABS(D2).LE.UPSI
  58. CALCUL DE LA COMPOSANTE AXIALE BZP
  59. IF(IC.EQ.2) GOTO 222
  60. ACBZ=0.D0
  61. IF(.NOT.LR) GOTO 11
  62. 10 SOMLG2= LOG((A+SQRT(AA+DD2))/(U+SQRT(UU+DD2)))
  63. SOMLG1= LOG((A+SQRT(AA+DD1))/(U+SQRT(UU+DD1)))
  64. SOMBZ=XPI*(D2*SOMLG2-D1*SOMLG1)
  65. GOTO 12
  66. 11 CONTINUE
  67. SOMBZ= GQUAD(FONZ,0.D0,PI,80)
  68. IF(IERR.NE.0) RETURN
  69. 12 CONTINUE
  70. BZ(I)=RMUJ*SOMBZ
  71. PREBZ=PREBZ+ABS(ACBZ*BZ(I))
  72. BZP=BZP+BZ(I)
  73. IF(IC.EQ.1) GOTO 2
  74. 222 CONTINUE
  75. CALCUL DE LA COMPOSANTE RADIALE BRP
  76. IF(LR) GOTO 2
  77. IF(LSOMD) GOTO 2
  78. ACBR=0.D0
  79. SOMBR= GQUAD(FONR,0.D0,PI,80)
  80. IF(IERR.NE.0) RETURN
  81. BR(I)=RMUJ*SOMBR
  82. PREBR=PREBR+ABS(ACBR*BR(I))
  83. BRP=BRP+BR(I)
  84. 2 CONTINUE
  85. IF(BZP.NE.0.D0) PREBZ=PREBZ/ABS(BZP)
  86. IF(BRP.NE.0.D0) PREBR=PREBR/ABS(BRP)
  87. CALCUL DU MODULE DU CHAMP BP
  88. BP=SQRT(BZP**2+BRP**2)
  89. RETURN
  90. END
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  

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