SUBROUTINE DOPGAM(ITR,ID,T,DOP,AGAM) C ==================================== C C Doppler width and the Voigt damping parameter for the line ITR C C Input: C ITR - index of transition C ID - depth index C T - temperature C Output: C DOP - Doppler width C AGAM - total damping parameter (in units of Doppler widths; C ie. = gam/4pi/DOP, where gam is the "physical" damping C parameter expresed in circular frequencies) C C Damping parameter is calculated only for transitions with C |IPROF(ITR)| = 1 (ie. those for which either Voigt or some non- C standard profile is assumed) C Determination of AGAM: C is controlled by input parameters transmitted by COMMON/VOIPAR: C C GAMAR(IP) - for > 0 - has the meaning of natural damping C parameter (=Einstein coefficient for C spontaneous emission) C = 0 - classical natural damping assumed C < 0 - damping is given by a non-standard, C user supplied procedure GAMSP C STARK1(IP) - = 0 - Stark broadening neglected C < 0 - scaled classical expression C (ie gam = -STARK1 * classical Stark) C > 0 - Stark broadening given by C n(el)*[STARK1*T**STARK2 + STARK3] C STRAK2, STARK3 - see above C VDWH(IP) - .le.0 - Van der Waals broadening neglected C > 0 - scaled classical expression C C the corresponding index IP is given by ITRA(IUP(ITR),ILOW(ITR)) C INCLUDE 'IMPLIC.FOR' INCLUDE 'BASICS.FOR' INCLUDE 'ATOMIC.FOR' INCLUDE 'MODELQ.FOR' PARAMETER (BOL2=2.76108D-16, CIN=UN/2.997925D10) PARAMETER (R02=2.5,R12=45.,OP4=0.4,VW0=4.5E-9) C J=IUP(ITR) IAT=IATM(J) FR=FR0(ITR) IE=IEL(J) AM=BOL2/AMASS(IAT)*T AGAM=0. C C Doppler width C DOP=FR*CIN*SQRT(AM+VTURBS(ID)*VTURBS(ID)) C C ----------------- C damping parameter - only for IPROF = 1 C IF(IABS(IPROF(ITR)).NE.1) RETURN IP=ITRA(J,ILOW(ITR)) ANE=ELEC(ID) C C Natural (radiation) broadening C If(GAMAR(IP).GT.0.) THEN AGAM=GAMAR(IP) ELSE IF (GAMAR(IP).EQ.0.) THEN AGAM=2.47342D-22*FR*FR ELSE C C Non-standard expression - for the total damping parameter, C not only for radiation damping C CALL GAMSP(ITR,T,ANE,AGAM) END IF C C Stark broadening C Z=FLOAT(IZ(IE)) ANFF=Z*Z*EH/ENION(J) IF(STARK1(IP).EQ.0.) THEN AGAM=AGAM+1.D-8*ANFF**2.5*ANE ELSE IF (STARK1(IP).GT.0.) THEN AGAM=AGAM+ANE*(STARK1(IP)*T**STARK2(IP)+STARK3(IP)) END IF C C Van der Waals broadening C IF(IELH.GT.0) THEN AH=POPUL(NFIRST(IELH),ID) ELSE AH=DENS(ID)/WMM(ID)/YTOT(ID) END IF IF(IELHE1.NE.0) THEN AHE=AH*ABUND(IATHE,ID) ELSE AHE=AH*ABNDD(2,ID) END IF VDWC=(T*1.E-4)**0.3*(AH+0.42*AHE) IF(VDWH(IP).GE.0.) THEN IF(IAT.LT.21) THEN R2=R02*(ANFF/Z)**2 ELSE IF(IAT.LT.45) then R2=(R12-FLOAT(IAT))/Z ELSE R2=0.5 END IF GW0=VDWC*VW0*R2**OP4 AGAM=AGAM+GW0 ELSE IF (VDWH(IP).LT.0.) THEN GW0=VDWC*EXP(2.3025851*VDWH(IP)) AGAM=AGAM+GW0 END IF c C Total damping parameter in units of Doppler widths C AGAM=AGAM/DOP/12.566370614 RETURN END