Search Site | Contact Details | FAQ

ADAS Subroutine escape

       subroutine escape( ndprof, nddens, ndcyl , iz    ,
     &                    tg    , j0    , mm    , x0    , x1    ,
     &                    y0    , sum1  , sum2  , sum3  ,  
     &                    sum4  , alpha   , ics , iden    ,
     &                    sum   , iprofile , zlen, y, x, wid,
     &			  dmult, modprof)
c
c------------------------------------------------------------------------------
c
c  *********&********** fortran77 subroutine: escape **************************
c
c  original name: escape.bas
c                 (developed by K. H. Behringer)
c
c  version:  1.0
c
c  purpose: computes escape factors.
c
c  calling program: adas214
c
c  input:
c          (i*4)  nddens  = parameter = max. number of points over ion profile 
c          (i*4)  ndcyl   = parameter = max. number of intervals for cylinder
c          (i*4)  ndprof  = parameter = max. number of points over line profile
c
c	   (i*4)  ics     = 1 for slab geometry of plasma
c	                  = 2 for cyl. geometry of plasma
c          (i*4)  iden    = 1 for homogenous density distribution
c                         = 2 for linear density 
c                         = 3 for parabolic density 
c          (i*4)  iprofile= 1 for Doppler line profile
c                         = 2 for Lorentzian line profile
c                         = 3 for Holtzmark line profile
c                         = 10 for Double Doppler line profile
c                         = -2 for Voigt line profile
c                         = -3 for Doppler Holtzmark line profile
c          (i*4)  iz      = number of points over line profile
c          (i*4)  j0      = number of density values for integration over 
c                           cylinder/slab 
c          (i*4)  k0      = number of density values - must be enough for 
c                           interpolation
c          (i*4)  z0      = number of intervals for cylinder/slab
c
c          (r*8)  allam   = Spectral absorption coefficient
c          (r*8)  alpha   = neutral density*oscillator strength*length
c          (r*8)  domeg   = delta omega in cylinder/slab
c          (r*8)  l       = Length of plasma (0 to inf. on one side)
c          (r*8)  mm      = atomic mass number
c          (r*8)  omega   = solid angle in cylinder/slab
c          (r*8)  r       = radius of cylinder
c          (r*8)  sum1()  = sum assuming homogeneous density 
c          (r*8)  sum2()  = sum assuming linear density 
c          (r*8)  sum3()  = sum assuming parabolic density 
c          (r*8)  sum4()  = used in sum for escape factor 
c          (r*8)  sum()   = sum1/2/3, depending upon options chosen for density profile
c          (r*8)  tg      = neutral temperature  (eV)
c          (r*8)  w       = Full Doppler width calculated for lambda=100nm
c          (r*8)  x0()    = Absorption coefficient at line centre/10
c          (r*8)  x1()    = Absorption coefficient at line centre
c          (r*8)  y       = Line profile intensity
c          (r*8)  y0      = Line profile intensity (?) at line centre
c          (r*8)  ff      = Used in calculation of escape factor
c          (r*8)  xl      = log of x1, used for interpolation
c          (r*8)  yl      = log of sum, used in interpolation
c          (r*8)  zlen    = variable used to select length along plasma integration to be performed
c
c
c  routines:
c           routine     source     brief description
c           -------------------------------------------------------------------
c           faltung     ADAS       computes line profiles
c
c  author:  K. H. Behringer  (IPF, University of Stuttgart)
c
c  date:    30/01/94
c
c  update:  ????	brought up to date with latest Behringer code
c
c  VERSION: 	1.1					DATE: 18-06-98
c  MODIFIED: STUART LOCH
c		- CONVERTED TO FORTRAN
c             
c  VERSION: 	1.2					DATE: 26-11-98
c  MODIFIED: STUART LOCH
c		- CHECKS IF LINE PROFILE IS INTEGRATED FAR ENOUGH,
c		  IF NOT THE PROFILE IS RE-EVALUATED TO TWICE THE
c		  PREVIOUS WIDTH, USING THE SAME STEP SIZE AS BEFORE.
c  VERSION: 1.3                                         DATE: 19-02-99
c  MODIFIED: STUART lOCH
c               -DIMENSIONS OF X,Y, YT, YL AND MODPROF INCREASED FROM 1000
c                TO 3000, TO ACCOMODATE POSSIBLE INCREASES IN INTEGRATION
c                LIMIT OF LINE PROFILE
c  VERSION: 1.4                                         DATE: 24-09-99
c  MODIFIED: STUART lOCH
c               -REMOVED EMPTY DO LOOP
C            
c------------------------------------------------------------------------------
      INTEGER             ICS,         IDEN,        IPROFILE,    IZ
      INTEGER             J0,          NDCYL,       NDDENS,      NDPROF
      REAL*8              ALPHA,       DMULT,       MM
      REAL*8              MODPROF(K0,3000),         SUM(NDDENS)
      REAL*8              SUM1(NDDENS),             SUM2(NDDENS)
      REAL*8              SUM3(NDDENS),             SUM4(NDDENS)
      REAL*8              TG,          WID,         X(3000)
      REAL*8              X0(NDDENS),  X1(NDDENS),  Y(3000),     Y0
      REAL*8              ZLEN
© Copyright 1995-2024 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk