ADAS Subroutine stark
SUBROUTINE STARK( AMDEUT , AMSS , & BENER , DV1 , DV2 , DV3 , DENSB , & BMAG , DB1 , DB2 , DB3 , & EMAG , DE1 , DE2 , DE3 , & DO1 , DO2 , DO3 , & POLO , POLP , & DENS , TE , ZEFF , & NU , NL , POPU , & NDCOMP , NCOMP , WVCOMP , EMCOMP & ) C---------------------------------------------------------------------- C C ******************** FORTRAN77 SUBROUTINE: STARK ******************* C C PURPOSE: Code for modelling of emission from neutral hydrogen C in beams. C C CALLING PROGRAM: ADAS305 C C NOTES: Developed from JETSHP.STARK.FORT(EMIS7) C C STEPS: Evaluate Stark/Zeeman shifted hydrogenic energy levels and C evaluate dipole matrix elements. C C Calculate directional positive ion impact born cross-sections C for Stark/Zeeman states. C C Calculate populations of excited states. C C Calculate polar distribution of emitted radiation for selected C lines and its polarisation for the charge exchange spectroscopy C multichord viewing lines. C C Initial basis wave functions - n l s ml ms C C Stark field is from particle motion across the magnetic induction C and a separate pure electric field. C C General geometry specification is by direction cosines C dv1,dv2,dv3 : direction cosines of beam particle velocity C db1,db2,db3 : direction cosines of magnetic induction. C delec1,delec2,delec3 : direction cosines of pure electric filed C do1,do2,do3 : direction cosines of observation viewing line C C Specific geometry C viewing direction defines the -i direction C i-k plane is that of viewing line and beam direction C normal to i-k plane defines the j direction C thetv= angle of beam to i direction (deg) C ebeam=beam speed (kev/amu) C b=magnetic induction (tesla) C C SUBROUTINE: C C INPUT : (I*4) NU = UPPER PRINCIPAL QUANTUM NUMBER LINE C (I*4) NL = LOWER PRINCIPAL QUANTUM NUMBER LINE C (I*4) POPU = RELATIVE POPULATION OF UPPER (NU) LEVEL C C (R*8) AMDEUT = ATOMIC MASS OF HYDROGEN IN BEAM C (R*8) AMSS = ATOMIC MASS OF HYDROGEN IN PLASMA C (R*8) BENERA = ENERGY OF ITH BEAM COMPONENT (EV/AMU) C (R*8) DV1 = D.C. FOR X-CPT OF BEAM VELOCITY C (R*8) DV2 = D.C. FOR Y-CPT OF BEAM VELOCITY C (R*8) DV3 = D.C. FOR Z-CPT OF BEAM VELOCITY C (R*8) DENSB = SPECIFIC NEUTRAL BEAM DENSITY (CM-3) C (R*8) BMAG = SPECIFIC MAGNETIC FIELD INDUCTION (TESLA) C (R*8) DB1 = D.C. FOR X-CPT OF BMAG C (R*8) DB2 = D.C. FOR Y-CPT OF BMAG C (R*8) DB3 = D.C. FOR Z-CPT OF BMAG C (R*8) EMAG = SPECIFIC ELECTRIC FIELD STRENGTH (VOLTS) C (R*8) DE1 = D.C. FOR X-CPT OF EMAG C (R*8) DE2 = D.C. FOR Y-CPT OF EMAG C (R*8) DE3 = D.C. FOR Z-CPT OF EMAG C (R*8) DO1 = D.C. FOR X-CPT OF SPECIFIC VIEWING LINE C (R*8) DO2 = D.C. FOR Y-CPT OF SPECIFIC VIEWING LINE C (R*8) DO3 = D.C. FOR Z-CPT OF SPECIFIC VIEWING LINE C (R*8) POLO = SPECIFIC SIGMA POLARISATION INTENSITY MULTIPLIER C (R*8) POLP = SPECIFIC PI POLARISATION INTENSITY MULTIPLIER C (R*8) DENS = SPECIFIC PLASMA ELECTRON DENSITY (CM-3) C (R*8) TE = SPECIFIC PLASMA ELECTRON TEMPERATURE (EV) C (R*8) ZEFF = SPECIFIC PLASMA EFFECTIVE Z C C (L) LPASS = IF TRUE OUTPUT A LOG FILE C C C C ROUTINES: C ROUTINE SOURCE BRIEF DESCRIPTION C ------------------------------------------------------------ C BORNP1 ADAS Stage 1 Born cross-section calculation C BORNP2 ADAS Stage 2 C DIPOL ADAS H Dipole length radial matrix elements C GAMAF ADAS Stack vector of factorial function C STARK2 ADAS Calc. Stark perturb. matrix elements C UNBUN2 ADAS Extract indiv. set qu. nos. from integer C ZEEMN2 ADAS Calc. Zeeman perturb. matrix elements C C5RLSP ADAS Calc. rel.+s.o. energy matrix elements C HYDEMI ADAS Collisional mixing of H excited levels C ZHPEV LAPACK Compute eigenvectors of complex C Hermitian matrix C C C AUTHOR: H.P.SUMMERS, JET C 14 SEPT 1989 C C---------------------------------------------------------------------- C C C ADAS305 version - originally SPSTRK. C C VERSION : 1.1 C DATE : 24-02-2005 C MODIFIED : Martin O'Mullane C - First version. Restrict to a single track. C C VERSION : 1.2 C DATE : 24-01-2006 C MODIFIED : Hugh Summers C - introduced relativistic +spin-orbit fine structure C - placed beam velocity vector direction cosines in call C parameters and made general C - corrected AMSS to AMDEUT for beam atom energy levels C C VERSION : 1.3 C DATE : 28-09-2006 C MODIFIED : Martin O'Mullane C - Add missing blockdata for WF, XF, ABETA and F C (prefixed variable with bd_ to avoid name clashes). C - INDW3A initialised to zero for all 726 values. C - Some more details sent to pass file. C C VERSION : 1.4 C DATE : 28-09-2006 C MODIFIED : Martin O'Mullane C - Setup infrastructure for matching upper level to adf22 C data but don't make correction yet. C C---------------------------------------------------------------------- INTEGER NCOMP, NDCOMP, NL, NU REAL*8 AMDEUT, AMSS, BENER, BMAG REAL*8 DB1, DB2, DB3, DE1 REAL*8 DE2, DE3, DENS, DENSB REAL*8 DO1, DO2, DO3, DV1 REAL*8 DV2, DV3, EMAG REAL*8 EMCOMP(NDCOMP), POLO, POLP REAL*8 POPU, TE, WVCOMP(NDCOMP) REAL*8 ZEFF