Quantum Chemistry Program in Fortran
Manash Protim Borpuzari
Dibrugarh, Assam-786004
Assm
C*****************************************************************
C COMPTON EFFECT 1 *
C*****************************************************************
SUBROUTINE COMPTON1
IMPLICIT DOUBLE PRECISION
A=2.426E-12
PI=3.14159268
WRITE
5 FORMAT
READ*, WAVE
WRITE
10 FORMAT
READ*, THETA
WAVE0=WAVE*1.0E-10
WAVE1=WAVE0+A*(1-COS)
WAVE2=WAVE1/1.0E-10
WRITE WAVE2
15 FORMAT
RETURN
END
C*****************************************************************
C COMPTON EFFECT 2 *
C*****************************************************************
SUBROUTINE COMPTON2
IMPLICIT DOUBLE PRECISION
A=2.426E-12
PI=3.14159268
WRITE
5 FORMAT
READ*, WAVE
WRITE
10 FORMAT
READ*, THETA
WAVE0=WAVE*1.0E-10
WAVE1=WAVE0-A*(1-COS)
WAVE2=WAVE1/1.0E-10
WRITE WAVE2
15 FORMAT
RETURN
END
C*****************************************************************
C DE-BROGLIE HYPOTHESIS 1 *
C*****************************************************************
SUBROUTINE DEBROGLIE1
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
WRITE
5 FORMAT
READ*, W
P=H/W
WRITE P
10 FORMAT
RETURN
END
C*****************************************************************
C DE-BROGLIE HYPOTHESIS 2 *
C*****************************************************************
SUBROUTINE DEBROGLIE2
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
WRITE
5 FORMAT
READ*, P
W=H/P
WRITE W
10 FORMAT
RETURN
END
C*****************************************************************
C DE-BROGLIE HYPOTHESIS 3 *
C*****************************************************************
SUBROUTINE DEBROGLIE3
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
M=9.109E-31
WRITE
5 FORMAT
READ*, U
W=H/(M*U)
WRITE W
10 FORMAT
RETURN
END
C*****************************************************************
C DE-BROGLIE HYPOTHESIS 4 *
C*****************************************************************
SUBROUTINE DEBROGLIE4
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
M=9.109E-31
e=1.602E-19
WRITE
5 FORMAT
READ*, V
W=H/SQRT
WRITE W
10 FORMAT
RETURN
END
C*********************************************************
C HARMONIC OSCILLATOR 1 *
C*********************************************************
SUBROUTINE HARMONIC1
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
WRITE
5 FORMAT
READ*, V
WRITE
10 FORMAT
READ*, FREQ
E=(V+0.5)*H*FREQ
WRITE E
15 FORMAT
RETURN
END
C*********************************************************
C HARMONIC OSCILLATOR 2 *
C*********************************************************
SUBROUTINE HARMONIC2
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
WRITE
10 FORMAT
READ*, FREQ
ZPE=0.5*H*FREQ
WRITE ZPE
15 FORMAT
RETURN
END
C*********************************************************
C HARMONIC OSCILLATOR 3 *
C*********************************************************
SUBROUTINE HARMONIC3
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
WRITE
5 FORMAT
READ*, FREQ
SPEC=H*FREQ
WRITE SPEC
10 FORMAT
RETURN
END
C*********************************************************
C HARMONIC OSCILLATOR 4 *
C*********************************************************
SUBROUTINE HARMONIC4
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
WRITE
10 FORMAT
READ*, FREQ
POT=H*FREQ/4
WRITE POT
15 FORMAT
RETURN
END
C*********************************************************
C HARMONIC OSCILLATOR 5 *
C*********************************************************
SUBROUTINE HARMONIC5
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
WRITE
10 FORMAT
READ*, FREQ
KE=H*FREQ/4
WRITE KE
15 FORMAT
RETURN
END
C*****************************************************************
C HEISENBERG UNCERTAINITY PRINCIPLE 1 *
C*****************************************************************
SUBROUTINE HEISENBERG1
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
PI=3.14159268
M=9.109E-31
WRITE
5 FORMAT
READ*, DELU
DELX=H/(4*PI*M*DELU)
WRITE DELX
10 FORMAT
RETURN
END
C*****************************************************************
C HEISENBERG UNCERTAINITY PRINCIPLE 2 *
C*****************************************************************
SUBROUTINE HEISENBERG2
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
PI=3.14159268
M=9.109E-31
WRITE
5 FORMAT
READ*, DELX
DELU=H/(4*PI*M*DELX)
WRITE DELU
10 FORMAT
RETURN
END
C*********************************************************
C HYDROGEN LIKE ATOM 1 *
C*********************************************************
SUBROUTINE HYDROGEN1
IMPLICIT DOUBLE PRECISION
INTEGER*8 Z
REAL*8 M
H=6.62606931E-34
PI=3.14159268
e=1.602E-19
M=9.109E-31
a=1.113e-10
WRITE
5 FORMAT
READ*, Z
WRITE
10 FORMAT
READ*, N
R=(a*H2*N2)/(4*PI2*M*e2*Z)
R0=R/1.0E-10
WRITE N, Z, R0
15 FORMAT(1X, ‘THE RADIUS OF ORBITAL WITH QUANTUM NUMBER’, 1X, I3,
$ 1X, ‘FOR ATOMIC NUMBER’, 1X, I3, 1X, ‘IS’, 1X, F10.5, 1X,‘A0’)
RETURN
END
C*********************************************************
C HYDROGEN LIKE ATOM 2 *
C*********************************************************
SUBROUTINE HYDROGEN2
IMPLICIT DOUBLE PRECISION
INTEGER*8 Z
REAL*8 M
H=6.62606931E-34
PI=3.14159268
e=1.602E-19
M=9.109E-31
a=1.113e-10
WRITE
5 FORMAT
READ*, Z
WRITE
10 FORMAT
READ*, N
U=2*PI*Z*e2/(a*N*H)
WRITE N, Z, U
15 FORMAT(1X, ‘THE VELOCITY OF THE ELECTRON ‘,1X,
$ I3, 1X, ‘FOR ATOMIC NUMBER’, 1X, I3, 1X, ‘IS’, 1X, E10.5)
RETURN
END
C*********************************************************
C HYDROGEN LIKE ATOM 3 *
C*********************************************************
SUBROUTINE HYDROGEN3
IMPLICIT DOUBLE PRECISION
INTEGER*8 Z
REAL*8 M
H=6.62606931E-34
PI=3.14159268
e=1.602E-19
M=9.109E-31
a=1.113e-10
WRITE
5 FORMAT
READ*, Z
WRITE
10 FORMAT
READ*, N
E=-(1/a)*(2*PI*Z2*M*e4/(N2*H2))
WRITE N, Z, E
15 FORMAT(1X, ‘THE ENERGY OF THE ELECTRON ‘,1X,
$ I3, 1X, ‘FOR ATOMIC NUMBER’, 1X, I3, 1X, ‘IS’, 1X, E40.10)
RETURN
END
C*********************************************************
C HYDROGEN LIKE ATOM 4 *
C*********************************************************
SUBROUTINE HYDROGEN4
IMPLICIT DOUBLE PRECISION
REAL*8 N0, N1
RH=1.09681E7
WRITE
5 FORMAT
READ*, N0
WRITE
10 FORMAT
READ*, N1
VBAR=RH*((1/N12)-(1/N02))
WRITE VBAR
15 FORMAT
RETURN
END
C*********************************************************
C ONE DIMENSIONAL BOX 1 *
C*********************************************************
SUBROUTINE ONEDBOX1
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
M=9.109E-31
WRITE
5 FORMAT
READ*, N
WRITE
10 FORMAT
READ*, A
E=N2*H2/(8*M*A2)
WRITE N, E
15 FORMAT(1X, ‘THE ENERGY OF THE ELECTRON WITH QUANTUM NUMBER’,
$ 1X, I3, 1X, E10.5, ‘J’)
RETURN
END
C*********************************************************
C ONE DIMENSIONAL BOX 2 *
C*********************************************************
SUBROUTINE ONEDBOX2
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
M=9.109E-31
WRITE
5 FORMAT
READ*, N
WRITE
10 FORMAT
READ*, A
X=A/2
WRITE X
15 FORMAT
RETURN
END
C*********************************************************
C ONE DIMENSIONAL BOX 3 *
C*********************************************************
SUBROUTINE ONEDBOX3
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
PI=3.14159268
M=9.109E-31
WRITE
5 FORMAT
READ*, N
WRITE
10 FORMAT
READ*, A
X2=A3/3 – A2/2*PI2*N2
WRITE ×2
15 FORMAT(1X, ‘THE EXPECTATION VALUE OF X2 IS’, 1X,
$ E20.10)
RETURN
END
C*********************************************************
C ONE DIMENSIONAL BOX 4 *
C*********************************************************
SUBROUTINE ONEDBOX4
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
WRITE
5 FORMAT
READ*, N
WRITE
10 FORMAT
READ*, A
PX2=N2*H2/4*A2
WRITE PX2
15 FORMAT(1X, ‘THE EXPECTATION VALUE OF PX2 IS’, 1X,
$ E20.10)
RETURN
END
C*********************************************************
C ONE DIMENSIONAL BOX 5 *
C*********************************************************
SUBROUTINE ONEDBOX5
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
M=9.109E-31
WRITE
10 FORMAT
READ*, A
ZPE=H2/8*M*A2
WRITE ZPE
15 FORMAT
RETURN
END
C*********************************************************
C ONE DIMENSIONAL BOX 6 *
C*********************************************************
SUBROUTINE ONEDBOX6
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
M=9.109E-31
WRITE
10 FORMAT
READ*, A
WRITE
15 FORMAT
READ*, N1, N2
SPEC=(H2/8*M*A2)*(N22-N12)
WRITE SPEC
20 FORMAT
RETURN
END
C*********************************************************
C ONE DIMENSIONAL BOX 7 *
C*********************************************************
SUBROUTINE ONEDBOX7
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
PI=3.14159268
M=9.109E-31
WRITE
10 FORMAT
READ*, A
WRITE
15 FORMAT
READ*, N
WRITE
20 FORMAT
READ*, X
F=SQRT*SIN)
WRITE F
25 FORMAT
RETURN
END
C*********************************************************
C PHOTOELECTRIC EFFECT *
C*********************************************************
SUBROUTINE PHOTOELECTRIC
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
WRITE
5 FORMAT
READ*, F0, F
ENERGY=H*F-H*F0
WRITE ENERGY
10 FORMAT
RETURN
END
C*****************************************************************
C PLANCK’S LAW 1 *
C*****************************************************************
SUBROUTINE PLANCK1
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
C=2.998E08
BOLTZ=1.3806E-23
WRITE
5 FORMAT
READ*, FREQ
WRITE
10 FORMAT
READ*, TEMP
VAL=(2*H*FREQ3/(C2))*(1/(EXP)-1))
WRITE VAL
15 FORMAT
RETURN
END
C*****************************************************************
C PLANCK’S LAW 2 *
C*****************************************************************
SUBROUTINE PLANCK2
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
PI=3.14159268
C=2.998E08
BOLTZ=1.3806E-23
WRITE
5 FORMAT
READ*, FREQ
WRITE
10 FORMAT
READ*, TEMP
VAL=(8*PI*H*FREQ3/C3)*(1/(EXP)-1))
WRITE VAL
15 FORMAT
RETURN
END
C*****************************************************************
C QUANTIZATION OF ENERGY *
C*****************************************************************
SUBROUTINE QUANTIZATION
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
WRITE
5 FORMAT
READ*, N
WRITE
10 FORMAT
READ*, FREQ
E=N*H*FREQ
WRITE E
15 FORMAT
RETURN
END
C*********************************************************
C RIGID ROTOR 1 *
C*********************************************************
SUBROUTINE RIGIDROTOR1
IMPLICIT DOUBLE PRECISION
REAL*8 I
H=6.62606931E-34
PI=3.14159268
WRITE
5 FORMAT
READ*, I
WRITE
10 FORMAT
READ*, J
E=J*(J+1)*H2/8*PI2*I
WRITE E
15 FORMAT
RETURN
END
C*********************************************************
C RIGID ROTOR 2 *
C*********************************************************
SUBROUTINE RIGIDROTOR2
IMPLICIT DOUBLE PRECISION
REAL*8 I
H=6.62606931E-34
PI=3.14159268
WRITE
5 FORMAT
READ*, I
WRITE
10 FORMAT
READ*, J
SPEC=2*J*H2/8*PI2*I
WRITE SPEC
15 FORMAT
RETURN
END
C*********************************************************
C PARTICLE IN A RING 1 *
C*********************************************************
SUBROUTINE RING1
IMPLICIT DOUBLE PRECISION
REAL*8 I
H=6.62606931E-34
PI=3.14159268
WRITE
5 FORMAT
READ*, I
WRITE
10 FORMAT
READ*, M
E=M2*H2/8*PI2*I
WRITE E
15 FORMAT
RETURN
END
C*********************************************************
C PARTICLE IN A RING 2 *
C*********************************************************
SUBROUTINE RING2
IMPLICIT DOUBLE PRECISION
REAL*8 M
PI=3.14159268
WRITE
5 FORMAT
READ*, THETA
WRITE
10 FORMAT
READ*,M
RP=(1/SQRT)*COS
IP=(1/SQRT)*SIN
WRITE RP, IP
15 FORMAT
RETURN
END
C*****************************************************************
C STEFAN-BOLTZMAN LAW 1 *
C*****************************************************************
SUBROUTINE STEFAN_BOLTZMAN1
IMPLICIT DOUBLE PRECISION
SIG=5.67E-08
WRITE
5 FORMAT
READ*, T
R=SIG*T4
WRITE R
10 FORMAT
RETURN
END
C*****************************************************************
C STEFAN-BOLTZMAN LAW 2 *
C*****************************************************************
SUBROUTINE STEFAN_BOLTZMAN2
IMPLICIT DOUBLE PRECISION
SIG=5.67E-08
WRITE
5 FORMAT
READ*, R
T=(SIG/R)¼
WRITE T
10 FORMAT
RETURN
END
C*********************************************************
C PARTICLE IN A SPHERE *
C*********************************************************
SUBROUTINE SPHERE
IMPLICIT DOUBLE PRECISION
REAL*8 I
H=6.62606931E-34
PI=3.14159268
WRITE
5 FORMAT
READ*, I
WRITE
10 FORMAT
READ*, L
E=L*(L+1)*H2/8*PI2*I
WRITE E
15 FORMAT
RETURN
END
C*********************************************************
C THREE DIMENSIONAL BOX 1 *
C*********************************************************
SUBROUTINE THREEDBOX
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
M=9.109E-31
WRITE
5 FORMAT
READ*, X, Y, Z
WRITE
10 FORMAT
READ*, NX, NY, NZ
E=(H2/8*M)*(NX2/X2 + NY2/Y2 +NZ2/Y2)
WRITE E
15 FORMAT
RETURN
END
C*********************************************************
C TWO DIMENSIONAL BOX 1 *
C*********************************************************
SUBROUTINE TWODBOX1
IMPLICIT DOUBLE PRECISION
REAL*8 M
H=6.62606931E-34
M=9.109E-31
WRITE
5 FORMAT
READ*, X, Y
WRITE
10 FORMAT
READ*, NX, NY
E=(H2/8*M)*(NX2/X2 + NY2/Y2 )
WRITE E
15 FORMAT
RETURN
END
C*********************************************************
C 2DHARMONIC OSCILLATOR *
C*********************************************************
SUBROUTINE TWODHARMONIC
IMPLICIT DOUBLE PRECISION
H=6.62606931E-34
WRITE
5 FORMAT
READ*, VX, VY
WRITE
10 FORMAT
READ*, FREQX, FREQY
E=(VX+0.5)*H*FREQX + (VY+0.5)*H*FREQY
WRITE E
15 FORMAT
RETURN
END
C*****************************************************************
C WEIN DISPLACEMENT LAW 1 *
C*****************************************************************
SUBROUTINE WEIN1
IMPLICIT DOUBLE PRECISION (A-H,O-Z)
C=2.88
WRITE
5 FORMAT
READ*, T
W=C/T
WRITE W
10 FORMAT
RETURN
END
C*****************************************************************
C WEIN DISPLACEMENT LAW 2 *
C*****************************************************************
SUBROUTINE WEIN2
IMPLICIT DOUBLE PRECISION (A-H,O-Z)
C=2.88
WRITE
5 FORMAT
READ*, W
T=C/W
WRITE W
10 FORMAT
RETURN
END