Download acylci.eso

Back to the list

   1 : C ACYLCI    SOURCE    CHAT      05/01/12    21:16:56     5004           
   2 :       SUBROUTINE ACYLCI(SANGLE,COUR,R,H,TMIN,TMAX,X,Z,AX,AY,AZ)
   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 potentiel vecteur induit par un arc de cylindre circulaire
  10 : C  de courant COUR,d'axe Oz :
  11 : C     - rayon R
  12 : C     - hauteur H
  13 : C     - extension angulaire TMIN a TMAX par rapport au plan meridien
  14 : C       xOz contenant le point de coordonnees (X,0,Z)
  15 : C       ou on calcule le champ (AX,AY,AZ)
  16 : C*******************************************************************
  17 : C
  18 :       SEGMENT SANGLE
  19 :          REAL*8 TETM(NT4)
  20 :          REAL*8 TETI(NT4)
  21 :          REAL*8 DTE(NT4)
  22 :       ENDSEGMENT
  23 : C
  24 : C  champ magnetique selon Ox, Oy, Or et Oz cree par l'element d'arc de
  25 : C  longueur DTE situe en TETA, et grandeurs dependant de TETA pour
  26 : C  l'integration
  27 : C
  28 : C
  29 : C
  30 : C  calcul des grandeurs geometriques independantes de TETA
  31 : C
  32 :       AMU=4.E-7*XPI
  33 :       B=H/2.
  34 :       COEF=COUR*AMU*R/(8.*XPI*B)
  35 :       ZH=B-Z
  36 :       ZB=-B-Z
  37 : C
  38 : C
  39 : C  recherche des bornes d'integration
  40 : C
  41 :       IDEB=0 
  42 :       IFIN=0
  43 :       TTAI=-1.     
  44 :       TTAF=-1.
  45 :       NT4=TETM(/1)
  46 : C
  47 :       DO 1 I=1,NT4
  48 :          DMIN=TMIN-TETI(I)      
  49 :          DMAX=TMAX-TETI(I)
  50 :          TTBI=SIGN(1.D0,DMIN)
  51 :          TTBF=SIGN(1.D0,DMAX)
  52 :          TESTI=0.5*(1.-TTAI*TTBI) 
  53 :          TESTF=0.5*(1.-TTAF*TTBF) 
  54 :          IDEB=IDEB+I*INT(TESTI)
  55 :          IFIN=IFIN+I*INT(TESTF)
  56 :          TTAI=TTBI
  57 :          TTAF=TTBF
  58 :  1    CONTINUE   
  59 : C
  60 :       DTINI=DTE(IDEB)
  61 :       DTFIN=DTE(IFIN)
  62 :       TETINI=TETM(IDEB)
  63 :       TETFIN=TETM(IFIN)
  64 :       DTE(IDEB)=TETI(IDEB+1)-TMIN
  65 :       DTE(IFIN)=TMAX-TETI(IFIN)
  66 :       TETM(IDEB)=0.5*(TETI(IDEB+1)+TMIN)
  67 :       TETM(IFIN)=0.5*(TETI(IFIN)+TMAX)
  68 : C
  69 :       AX=0.
  70 :       AY=0.
  71 :       AZ=0.
  72 :       DO 21 I=IDEB,IFIN
  73 :          COST=COS(TETM(I))
  74 :          SINT=SIN(TETM(I))
  75 :          DR2=R**2+X**2-2.*X*R*COST
  76 :          DMAX=ZH+SQRT(DR2+ZH**2)
  77 :          DMIN=ZB+SQRT(DR2+ZB**2)
  78 :          HR=LOG(DMAX/DMIN)
  79 :          AX=AX-HR*SINT*DTE(I)
  80 :          AY=AY+HR*COST*DTE(I)
  81 :  21   CONTINUE
  82 :       AX=AX*COEF
  83 :       AY=AY*COEF
  84 : C
  85 :       DTE(IDEB)=DTINI
  86 :       DTE(IFIN)=DTFIN
  87 :       TETM(IDEB)=TETINI
  88 :       TETM(IFIN)=TETFIN
  89 : C
  90 :       RETURN
  91 :       END
  92 :  
  93 :  
  94 :  
  95 :  

© Cast3M 2003 - All rights reserved.
Disclaimer