DataMuseum.dk

Presents historical artifacts from the history of:

RC4000/8000/9000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RC4000/8000/9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦f26387424⟧ TextFile

    Length: 9984 (0x2700)
    Types: TextFile
    Names: »cpc2«

Derivation

└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ.  Detaljer om "HC8000" projekt.
    └─⟦0364f57e3⟧ 
        └─⟦this⟧ »cpc2« 

TextFile

c
c    cpc2
c
c    abwahydrogenic interaction integral. a program to calkulate
c    the radial parts of the interaktion matrix elements between
c    two hydrogen matrix elements between two hydrogenic wave 
c    functions as power series. jamieson, m.j.
c     ref. in comp. phys. commun. 1 (1970) 437.
C
      program hydr
C THIS PROGRAM TESTS SUBROUTINE HYD FOR HYDROGENIC WAVE FUNCTION
C INTEGRAL.
C
C THE PURPOSE OF SUBROUTINE HYD IS EXPLAINED AT THE BEGINNING OF IT'S
C LISTING.
C
C READS NA,LA,ZA,NB,LB,ZB,LAMBDA,IPRINT IN FORMAT(2I5,F5.1,2I5,F5.1,2I5)
C
C THE POWERS AND COEFFICIENTS IN THE HYDROGENIC WAVE FUNCTIONS AND IN
C THE INTEGRAL ARE PRINTED IF AND ONLY IF IPRINT = 1.
C
C THE PROGRAM HYDR CALLS SUBROUTINE HYD.
C THE SUBROUTINE HYD CALLS THE SUBROUTINE HYDRO.
C
C ATOMIC UNITS ARE USED THROUGHOUT.
C
C iread, iwrite ARE INPUT AND OUTPUT CHANNEL NUMBERS RESPECTIVELY
C
      DIMENSION F(100),IPOWER(100)
      COMMON/INPOUT/iread,iwrite
      common/inf/writef
C
C SET INPUT, OUTPUT CHANNEL NUMBERS
C
      zone readf(128,1,stderror)
      zone writef(128,1,stderror)
      call zassign(readf,1)
      call zassign(writef,7)
      call open(readf,4,'inf',0)
      call open(writef,4,'outf',0)
      iread=1
      iwrite=7
      WRITE(iwrite,98)
      READ(iread,99) NA,LA,ZA,NB,LB,ZB,LAMBDA,IPRINT
      CALL HYD(NA,LA,ZA,NB,LB,ZB,LAMBDA,IPRINT,FNOUT,LAM1,GAMMA,F,IPOWER
     1)
   98 FORMAT(1H1,116(1H*))
   99 FORMAT(2I5,F5.1,2I5,F5.1,2I5)
      CALL EXIT
      END
c
c------------------------------------------------------------------
c                        e x i t
c------------------------------------------------------------------
c
      subroutine exit
      common/inf/writef
      zone writef(128,1,stderror)
4     format(/a3)
      j=25.shift.16+25.shift.8+25
      write(writef,4) j
      call close(writef,.true.)
      stop
      return
      end
c
c------------------------------------------------------------------
c                              h y d
c------------------------------------------------------------------
c
      SUBROUTINE HYD(NA,LA,ZA,NB,LB,ZB,LAMBDA,IPRINT,FNOUT,LAM1,GAMMA,F,
     1POWER)
C
C THE INTEGRAL
C
C I = INTEGRAL(DX)*RAD(NA,LA,ZA/X)*((X1**LAMBDA)/(X2**(LAMBDA+1)))*
C RAD(NB,LB,ZB/X)*(X**2)
C
C WHERE X1 AND X2 ARE THE SMALLER AND LARGER OF X AND R, AND
C RAD(N,L,Z/X) DENOTES THE RADIAL PART OF THE HYDROGENIC WAVE FUNCTION
C (NLM) FOR NUCLEAR CHARGE Z, X BEING THE RADIAL COORDINATE, MAY BE
C WRITTEN IN THE FORM
C
C I = SUM(J)(F(J)*(R**(J-LAMBDA-2)*EXP(-R/GAMMA))
C + FNOUT*(R**(-LAMBDA-1))
C
C WHERE THE SUM OVER J RUNS FROM 1 TO (NA+NB+LAMBDA+1). THIS ROUTINE
C CALCULATES THE COEFFICIENTS F, FNOUT AND GAMMA.
C AT THE COMPLETION OF THIS ROUTINE
C  FNOUT      WILL BE IN STORE FNOUT
C  -LAMBDA-1  WILL BE IN STORE LAM1
C  GAMMA      WILL BE IN STORE GAMMA
C  F          WILL BE IN STORE F(J)
C  J-LAMBDA-2 WILL BE IN STORE IPOWER(J)
C
C THE INTEGRAL IS NEEDED IN THE CALCULATION OF THE MATRIX ELEMENT
C
C ((NA,LA,MA,ZA/X)/(1/MOD(X-R))/(NB,LB,MB,ZB/X))
C
C WHERE (N,L,M/R) DENOTES A HYDROGENIC WAVE FUNCTION. 1/MOD(X-R) MAY BE
C EXPANDED IN TERMS OF THE SPHERICAL HARMONICS OF THE VECTORS X AND R
C AND THE RADIAL COORDINATES X AND R.
C
C THE PROGRAM IS SET UP FOR A MAXIMUM VALUE FOR NA+NB+LAMBDA+1 OF 100
C IN IT'S DIMENSION STATEMENTS. FOR LARGER VALUES OF THIS INCREASE THE
C DIMENSIONS OF A, B, C, D, E, F, FAC, GAM AND IPOWER.
C
C THE POWERS AND COEFFICIENTS IN THE HYDROGENIC WAVE FUNCTIONS AND IN
C THE INTEGRAL ARE PRINTED IF AND ONLY IF IPRINT = 1.
C
C THE SUBROUTINE HYD CALLS THE SUBROUTINE HYDRO.
C
C ATOMIC UNITS ARE USED THROUGHOUT.
C
C iread, iwrite ARE INPUT AND OUTPUT CHANNEL NUMBERS RESPECTIVELY
C
      DIMENSION A(100),B(100),C(100),D(100),E(100),F(100),GAM(100),
     1IPOWER(100)
      COMMON/FACT/FAC(100)
      COMMON/INPOUT/iread,iwrite
c     set eps=1.0e-12
      eps=1.0e-12
C
C CALCULATE FACTORIALS.  FAC(N) IS FACTORIAL(N-1)
C
      NN3 = 3*(NA+NB)
      FAC(1) = 1.0
      DO 10 I = 2,NN3
   10 FAC(I) = FAC(I-1)*FLOAT(I-1)
C
C CALCULATE COEFFICIENTS IN HYDROGENIC WAVE FUNCTIONS.
C A AND B ARE COEFFICIENTS IN THE HYDROGENIC WAVE FUNCTIONS.
C
      CALL HYDRO(NA,LA,ZA,ALPHA,A,AA,IPRINT)
      CALL HYDRO(NB,LB,ZB,BETA,B,BB,IPRINT)
C
C CALCULATE MISCELLANEOUS CONSTANTS
C
      LAM = LAMBDA
      NAB = NA+NB
      LAM1 = -LAM-1
      LL1 = LA+LB+1
      LL2 = LA+LB+2
      NLAM1 = NA+NB+LAM+1
      NLAM2 = NA+NB-LAM
      LA1 = LA-1
      I2LAM1 = 2*LAM+1
      I2LAM2 = 2*LAM+2
      GAMMA = ALPHA*BETA/(ALPHA+BETA)
C
C CALCULATE POWERS OF GAMMA
C
      GAM(1) = GAMMA
      DO 9 I = 2,NN3
    9 GAM(I) = GAM(I-1)*GAMMA
C
C CALCULATE C
C C, D, AND E ARE INTERMEDIATE QUANTITIES IN THE CALCULATION.
C
      DO 30 IT = 1,LL1
   30 C(IT) = 0.0
      DO 11 IT = LL2,NAB
      C(IT) = 0.0
      IR1 = MAX0(LA+1,IT-NB)
      IR2 = MIN0(NA,IT-LB-1)
      DO 12 IX = IR1,IR2
   12 C(IT) = C(IT)+A(IX)*B(IT-IX)
   11 CONTINUE
C
C CALCULATE FNOUT
C
      FNOUT = 0.0
      DO 13 IT = LL2,NAB
   13 FNOUT = FNOUT+C(IT)*FAC(IT+LAM+1)*GAM(IT+LAM+1)
      FNOUT = FNOUT*AA*BB
      goto (1,2), (eps-abs(fnout))
    1 FNOUT = 0.0
    2 CONTINUE
C
C CALCULATE D
C
      DO 14 IU = 1,NLAM1
      D(IU) = 0.0
      IU1 = IU-1-LAM
      IUM = MAX0(LL2,IU1)
      DO 15 IT = IUM,NAB
   15 D(IU)=D(IU)-C(IT)*FAC(1+IT+LAM)*GAM(IT+LAM+2)/(FAC(IU)*GAM(IU))
   14 CONTINUE
C
C CALCULATE E
C
      DO 16 IU = 1,NLAM2
      E(IU) = 0.0
      IU1 = IU+LAM
      IUM = MAX0(LL2,IU1)
      DO 17 IT = IUM,NAB
   17 E(IU) = E(IU)+C(IT)*FAC(IT-LAM)*GAM(IT+1)/(FAC(IU)*GAM(IU+LAM))
   16 CONTINUE
C
C CALCULATE F AND SET UP TABLE OF POWERS OF R
C
      DO 18 IV = 1,I2LAM1
      IPOWER(IV) = IV-LAM-2
      F(IV) = D(IV)*AA*BB
      goto (3,4), (eps-abs(f(iv)))
    3 F(IV) = 0.0
    4 CONTINUE
   18 CONTINUE
      DO 19 IV = I2LAM2,NLAM1
      IPOWER(IV) = IV-LAM-2
      F(IV) = (D(IV)+E(IV-2*LAM-1))*AA*BB
      goto (5,6), (eps-abs(f(iv)))
    5 F(IV) = 0.0
    6 CONTINUE
   19 CONTINUE
C
C OUTPUT OF COEFFICIENTS, POWERS AND EXPONENTIAL COEFFICIENT
C
      if(iprint.ne.1) goto 8
      WRITE(iwrite,100) NA,LA,ZA,NB,LB,ZB,LAM,GAMMA,LAM1,FNOUT,(IPOWER
     1(IV),F(IV),IV = 1,NLAM1)
      WRITE(iwrite,101)
    8 RETURN
  100 FORMAT(/84H INTEGRAL(DX)*RAD(NA,LA,ZA/X)*((X1**LAMBDA)/(X2**(LAMBD
     1A+1)))*RAD(NB,LB,ZB/X)*(X**2),//118H WHERE RAD(N,L,Z/X) DENOTES TH
     2E RADIAL PART OF A HYDROGENIC WAVE FUNCTION, AND X1 AND X2 ARE THE
     3 SMALLER AND LARGER OF,/36H X AND R, MAY BE WRITTEN IN THE FORM,//
     470H INTEGRAL = SUM(J)(F(J)*(R**IPOWER(J)))*EXP(-R/GAMMA))+FNOUT*(R
     5**LAM1)//51H WHERE IPOWER(J) = J-LAMBDA-1 AND LAM1 = -LAMBDA-1.//
     652H QUANTUM NUMBERS, NUCLEAR CHARGES AND LAMBDA FOLLOW./24H    QUA
     7NTUM NUMBER NA = ,I2/24H    QUANTUM NUMBER LA = ,I2/24H    NUCLEAR
     8 CHARGE ZA = ,F4.1/24H    QUANTUM NUMBER NB = ,I2/24H    QUANTUM N
     9UMBER LB = ,I2/24H    NUCLEAR CHARGE ZB = ,F4.1/15X,9HLAMBDA = ,I2
     1 //50H EXPONENTIAL FACTOR IS EXP(-R/GAMMA) WITH GAMMA = ,E13.6/47H
     2 POWER OF R (LAM1)   IN NON EXPONENTIAL TERM = , I3/48H COEFFICIEN
     3T (FNOUT) OF NON EXPONENTIAL TERM =  ,E13.6//  61H THE OTHER POWER
     4S (IPOWER(J)) AND COEFFICIENTS (F(J)) FOLLOW./2X,5HPOWER,4X,11HCOE
     5FFICIENT/(2X,I3,5X,E13.6)/)
  101 FORMAT(/1X,116(1H*)/)
      END
c
c-----------------------------------------------------------------
c                            h y d r o
c-----------------------------------------------------------------
c
      SUBROUTINE HYDRO(N,L,Z,ALPHA,A,AA,IPRINT)
C
C THIS ROUTINE CACULATES POWERS OF R, THE RADIAL COORDINATE, THEIR
C COEFFICIENTS AND THE COEFFICIENT IN THE EXPONENTIAL TERM FOR THE
C RADIAL PART OF A HYDROGENIC WAVE FUNCTION (NLM) WITH NUCLEAR CHARGE Z.
C
C THE WAVE FUNCTION, RAD(N,L,Z/R) (R(N,L/R) IN EYRING, WALTER AND
C KIMBALL'S NOTATION HAS THE FORM
C
C AA*(SUM(J)(A(J)*(R**J)))*EXP(-R/ALPHA)/R  WHERE AA IS SUCH THAT
C A(N) = 1.0, AND ALPHA = N/Z.
C
C THE A'S ARE PROPORTIONAL TO THE LAGUERRE POLYNOMIAL COEFFICIENTS.
C
C THIS ROUTINE COULD BE USED BY ITSELF IF A LINE TO CALCULATE FAC(N) =
C FACTORIAL(N-1) WERE ADDED.
C
C THE POWERS AND COEFFICIENTS ARE PRINTED IF AND ONLY IF IPRINT = 1.
C
C ATOMIC UNITS ARE USED THROUGHOUT.
C
C iread,iwrite ARE INPUT AND OUTPUT CHANNEL NUMBERS RESPECTIVELY
C
      DIMENSION A(100)
      COMMON/INPOUT/iread,iwrite
      COMMON/FACT/FAC(100)
      A(N) = 1.0
      IF(N-L-1) 1,3,2
    1 WRITE(iwrite,99)
   99 FORMAT(34H ERROR. N WAS LESS THAN L+1. EXIT.)
      CALL EXIT
    2 NL1 = N-L-1
      DO 20 I = 1,NL1
   20 A(N-I) = -A(N-I+1)*FLOAT((L+N+1-I)*(N-L-I)*N)/FLOAT(2*I)
    3 IF(L.EQ.0) goto 6
      DO 21 I = 1,L
   21 A(I) = 0.0
    6 CONTINUE
C
C CALCULATE OUTSIDE FACTOR AA
C
      AA = -SQRT((Z)/((FAC(N+L+1)*FAC(N-L))))*((2.0*Z/FLOAT(N))**N)/FLOA
     1T(N)
      NA = (N-L)/2
      IF(2*NA+L-N) 4,5,4
    4 AA = -AA
    5 CONTINUE
C
C EXPONENTIAL COEFFICIENT
C
      ALPHA = FLOAT(N)/Z
C
C OUTPUT OF COEFFICIENTS, POWERS AND EXPONENTIAL COEFFICIENT
C
      if(iprint.ne.1) goto 9
      WRITE(iwrite,101) Z,N,L,ALPHA,AA,(I,A(I),I = 1,N)
      WRITE(iwrite,102)
  101 FORMAT(/45H HYDROGEN WAVE FUNCTION --- NUCLEAR CHARGE = ,F4.1/
     129H QUANTUM NUMBERS N AND L ARE ,2I3//99H THE INFORMATION GIVEN RE
     2FERS TO R*RADIAL PART OF THE WAVE FUNCTION, R BEING THE RADIAL COO
     3RDINATE.//48H THE EXPONENTIAL FACTOR IS R/ALPHA WITH ALPHA = ,E13.
     46//76H THE OUTSIDE CONSTANT (ARRANGED SO THAT THE COEFFICIENT OF R
     5**N IS UNITY) = , E13.6/78H I.E. ALL COEFFICIENTS SHOULD BE MULTIP
     6LIED BY THIS CONSTANT IN A CALCULATION./90H THE WAVE FUNCTION HAS
     7THE FORM (OUTSIDE FACTOR)*(POWER SERIES IN R)*(EXPONENTIAL FACTOR)
     8.//36H THE POWERS AND COEFFICIENTS FOLLOW./2X,5HPOWER,4X,11HCOEFFI
     9CIENT/(2X,I3,5X,E13.6)/)
  102 FORMAT(/1X,116(1H-))
    9 RETURN
      END
▶EOF◀