CCL Home Page
Up Directory CCL changes
The following changes have to be made to the Public Domain
version of Mopac 7, as available at the Computational Chemistry Archive:
gopher://www.ccl.net:73/11/software/SOURCES/FORTRAN/mopac7_sources
in order to compile it with f2c/gcc combo for MS DOS machine.
In addition to the problems reported by Jiro TOYODA ,
Eberhard Heuser-Hofmann  and
jstewart@fujitsu.com (Dr. James Stewart) (see original messages at
the same URL), several common block and call argument list mismatches, 
variable names misspellings, uninitialized variables etc. were fixed.
Additionally, test data from Mopac6 PD distribution (available at URL
gopher://www.ccl.net:73/11/software/SOURCES/FORTRAN/mopac6_sources)
was added. Although this version seems to reproduce the heats of
formation given in test samples, there is no guarantee it will work
for anything else :-)

Note for COSMO users: Although (after fixing several problems in the 
original mopac code) COSMO heats of formation (reported in JCS Perkin 
Trans II, 1993, pp 799-805) are now reproduced reasonably well (withing 
few tenths of kcal) and geometry optimization now works both with BFGS 
and EF, COSMO implementation in Mopac7 is probably not as solid as it
could have been.

Makefile is configured for cross-compiler running on SGI machine, so
some changes will be necessary in order to use it on other platforms.

In order to apply these changes, you will need patch, available from
the usual places (e.g. ftp://prep.ai.mit.edu/pub/gnu).

Serge Pachkovsky, ps@ocisgi7.unizh.ch

diff -cdN ../src.old//1scf.dat ./1scf.dat
*** ../src.old//1scf.dat
--- ./1scf.dat	Thu Jan 26 14:22:19 1995
***************
*** 0 ****
--- 1,211 ----
+  SYMMETRY 1SCF  GRADIENTS
+  Formaldehyde, for Demonstration Purposes
+                 HEAT OF FORMATION SHOULD BE -32.8819 KCAL
+   O    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.2902
+   C    1.2164870  1      0.000000  0      0.000000  0    1    0    0      0.2921
+   H    1.1061273  1    123.510934  1      0.000000  0    2    1    0     -0.0010
+   H    1.1061273  0    123.510934  0   -179.999994  0    2    1    3     -0.0010
+  
+    3  1    4
+    3  2    4
+  
+   1SCF  T=25M GRADIENTS           PULAY PRECISE
+    DOUBLET RHF ETHYL RADICAL
+     CALCULATED HEAT OF FORMATION SHOULD BE = 12.824
+   C    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.1384
+   C    1.4791477  1      0.000000  0      0.000000  0    1    0    0      0.0558
+   H    1.1093748  1    111.309966  1      0.000000  0    2    1    0     -0.0023
+   H    1.1094442  1    111.719813  1    120.266333  1    2    1    3     -0.0035
+   H    1.1096173  1    110.109742  1   -119.815906  1    2    1    3      0.0005
+   H    1.0819233  1    121.212473  1     38.132703  1    1    2    3      0.0437
+   H    1.0817007  1    121.505329  1   -142.585074  1    1    2    3      0.0443
+  
+  1SCF  PRECISE GRADIENTS     PULAY BIRADICAL SYMMETRY
+     BIRADICAL FORM OF ETHYLENE
+     CALCULATED HEAT OF FORMATION SHOULD BE = 45.146
+   C    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.1003
+   C    1.4411597  1      0.000000  0      0.000000  0    1    0    0     -0.1003
+   H    1.0815188  1    120.939334  1      0.000000  0    2    1    0      0.0501
+   H    1.0815188  0    120.939334  0    180.000000  0    2    1    3      0.0501
+   H    1.0815188  0    120.939334  0     90.000000  0    1    2    3      0.0501
+   H    1.0815188  0    120.939334  0    -90.000000  0    1    2    3      0.0501
+  
+    3  1    4   5   6
+    3  2    4   5   6
+  
+  MECI DEBUG   1SCF    PULAY EXCITED SYMMETRY
+    EXCITED SINGLET STATE OF D2D ETHYLENE
+    CALCULATED HEAT OF FORMATION SHOULD BE = 106.651
+   C    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0931
+   C    1.3297665  1      0.000000  0      0.000000  0    1    0    0     -0.0920
+   H    1.1003051  1    125.388161  1      0.000000  0    2    1    0      0.0462
+   H    1.1003051  0    125.388161  0    180.000000  0    2    1    3      0.0462
+   H    1.1003051  0    125.388161  0     90.000000  0    1    2    3      0.0463
+   H    1.1003051  0    125.388161  0    -90.000000  0    1    2    3      0.0463
+  
+    3  1    4   5   6
+    3  2    4   5   6
+  
+  GRADIENTS  PULAY TRIPLET SYMMETRY   NOANCI SCFCRT=1.D-9 1SCF
+     RHF TRIPLET FORM OF D2D ETHYLENE
+     CALCULATED HEAT OF FORMATION SHOULD BE = 45.136
+   C    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.1003
+   C    1.4414372  1      0.000000  0      0.000000  0    1    0    0     -0.1003
+   H    1.0819773  1    120.961344  1      0.000000  0    2    1    0      0.0501
+   H    1.0819773  0    120.961344  0    180.000000  0    2    1    3      0.0501
+   H    1.0819773  0    120.961344  0     90.000000  0    1    2    3      0.0501
+   H    1.0819773  0    120.961344  0    -90.000000  0    1    2    3      0.0501
+  
+    3  1    4   5   6
+    3  2    4   5   6
+  
+   1SCF  GRADIENTS      PULAY UHF SYMMETRY
+    UHF SINGLET FORM OF D2D ETHYLENE
+     CALCULATED HEAT OF FORMATION SHOULD BE = 39.724
+   C    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0984
+   C    1.4336926  1      0.000000  0      0.000000  0    1    0    0     -0.0984
+   H    1.0845074  1    121.394373  1      0.000000  0    2    1    0      0.0492
+   H    1.0845074  0    121.394373  0    180.000000  0    2    1    3      0.0492
+   H    1.0845074  0    121.394373  0     90.000000  0    1    2    3      0.0492
+   H    1.0845074  0    121.394373  0    -90.000000  0    1    2    3      0.0492
+  
+    3  1    4   5   6
+    3  2    4   5   6
+  
+  1SCF  GRADIENTS     UHF HYPERFINE
+   UHF DOUBLET CALCULATION OF ETHYL RADICAL
+    CALCULATED HEAT OF FORMATION SHOULD BE =  10.546
+   C    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.1337
+   C    1.4757902  1      0.000000  0      0.000000  0    1    0    0      0.0516
+   H    1.1108691  1    111.273246  1      0.000000  0    2    1    0     -0.0017
+   H    1.1095905  1    111.932278  1    120.651973  1    2    1    3     -0.0035
+   H    1.1123214  1    110.544048  1   -119.359340  1    2    1    3     -0.0001
+   H    1.0826801  1    121.170463  1     44.960564  1    1    2    3      0.0432
+   H    1.0822837  1    121.670325  1   -135.692653  1    1    2    3      0.0442
+  
+  1SCF  GRADIENTS   TRIPLET     PULAY UHF SYMMETRY
+   UHF TRIPLET FORM OF D2D ETHYLENE
+     CALCULATED HEAT OF FORMATION SHOULD BE = 41.668
+   C    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.1000
+   C    1.4365573  1      0.000000  0      0.000000  0    1    0    0     -0.1000
+   H    1.0835106  1    121.240393  1      0.000000  0    2    1    0      0.0500
+   H    1.0835106  0    121.240393  0    180.000000  0    2    1    3      0.0500
+   H    1.0835106  0    121.240393  0     90.000000  0    1    2    3      0.0500
+   H    1.0835106  0    121.240393  0    -90.000000  0    1    2    3      0.0500
+  
+    3  1    4   5   6
+    3  2    4   5   6
+  
+     GRADIENTS    MINDO3 PULAY      SYMMETRY 1SCF  PRECISE
+  MINDO/3 CALCULATION OF FORMALDEHYDE
+    CALCULATED HEAT OF FORMATION SHOULD BE = -25.561
+  XX    0.0000000  0      0.000000  0      0.000000  0    0    0    0
+   H    1.0000000  0      0.000000  0      0.000000  0    1    0    0     -0.1091
+   C    1.1230407  1    180.000000  0      0.000000  0    2    1    0      0.6433
+   H    1.1230407  0    106.817852  1    180.000000  0    3    2    1     -0.1091
+   O    1.1813937  1    126.591058  1    180.000000  0    3    2    4     -0.4250
+  XX    0.9800000  1    118.854084  1    180.000000  0    3    2    4
+  
+    3  1    4
+  
+  GRADIENTS    MINDO3         PULAY PRECISE 1SCF
+    MINDO/3 RHF CALCULATION OF ETHYL RADICAL
+     CALCULATED HEAT OF FORMATION SHOULD BE = 21.786
+   C    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0871
+   C    1.4429517  1      0.000000  0      0.000000  0    1    0    0      0.1261
+   H    1.1104804  1    113.153612  1      0.000000  0    2    1    0     -0.0264
+   H    1.1109080  0    113.519501  0    120.856920  1    2    1    3     -0.0270
+   H    1.1123210  0    111.597420  0   -119.423264  0    2    1    3     -0.0264
+   H    1.0964460  0    122.469931  0     41.801964  0    1    2    3      0.0204
+   H    1.0964210  0    122.612868  0   -156.436885  0    1    2    3      0.0204
+  
+   MMOK 1SCF  GRADIENTS
+   Formamide
+              HEAT OF FORMATION SHOULD BE    -39.381 KCAL
+   H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.1889
+   N    0.9944977  1      0.000000  0      0.000000  0    1    0    0     -0.4301
+   H    0.9922729  1    115.682068  1      0.000000  0    2    1    0      0.1797
+   C    1.3889243  1    123.068510  1   -179.949693  1    2    1    3      0.3754
+   O    1.2269743  1    120.917841  1     -0.024668  1    4    2    1     -0.3704
+   H    1.1081569  1    114.505142  1    179.980350  1    4    2    1      0.0565
+  
+   NOMM 1SCF  GRADIENTS PM3
+   Formamide
+              HEAT OF FORMATION SHOULD BE    -41.823857 KCAL
+   H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.0600
+   N    0.9963059  1      0.000000  0      0.000000  0    1    0    0     -0.0312
+   H    0.9941621  1    113.012144  1      0.000000  0    2    1    0      0.0462
+   C    1.4128878  1    116.558032  1    135.656202  1    2    1    3      0.2141
+   O    1.2165264  1    118.501522  1     16.961282  1    4    2    1     -0.3693
+   H    1.1020440  1    117.785337  1   -167.664143  1    4    2    1      0.0803
+  
+  1SCF  GRADIENTS  OPEN(1,1) SYMMETRY ESR DEPVAR=1.0
+  Methyl radical
+                HEAT OF FORMATION SHOULD BE = 25.796 KCAL
+   C    0.0000000  0     28.000000  0      0.000000  0    0    0    0     -0.0901
+  XX    1.0778455  1      0.000000  0      0.000000  0    1    0    0
+  XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+   H    1.0778455  0     90.003666  1    180.000000  0    1    2    3      0.0300
+   H    1.0778455  0     90.003666  0     60.000000  0    1    2    3      0.0300
+   H    1.0778455  0     90.003666  0    -60.000000  0    1    2    3      0.0300
+  
+    2  1    4   5
+    2 18    6
+    4  2    5   6
+  
+  SYMMETRY   C.I.=(4,3) MICROS=16 1SCF  GRADIENTS
+               HEAT OF FORMATION SHOULD BE    -6.830
+  
+   N    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.2288
+  XX    1.0076190  1      0.000000  0      0.000000  0    1    0    0
+  XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+   H    1.0076190  0    113.280330  1    180.000000  0    1    2    3      0.0763
+   H    1.0076190  0    113.280330  0     60.000000  0    1    2    3      0.0763
+   H    1.0076190  0    113.280330  0    -60.000000  0    1    2    3      0.0763
+  
+    2  1    4   5   6
+    4  2    5   6
+  
+    MICROS
+  11101110
+  11101101
+  11101011
+  11100111
+  11011110
+  11011101
+  11011011
+  11010111
+  10111110
+  10111101
+  10111011
+  10110111
+  01111110
+  01111101
+  01111011
+  01110111
+  OPEN(2,2) MECI PRECISE GRADIENTS     ROOT=2 SINGLET SYMMETRY T=25M 1SCF
+     BIRADICAL FORM OF ETHYLENE
+               HEAT OF FORMATION SHOULD BE = 106.651 KCAL
+   C    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0925
+   C    1.3297679  1      0.000000  0      0.000000  0    1    0    0     -0.0925
+   H    1.1003061  1    125.388703  1      0.000000  0    2    1    0      0.0463
+   H    1.1003061  0    125.388703  0   -179.998172  1    2    1    3      0.0463
+   H    1.1003061  0    125.388703  0     89.999422  0    1    2    3      0.0463
+   H    1.1003061  0    125.388703  0    -90.000682  0    1    2    3      0.0463
+  
+    3  1    4   5   6
+    3  2    4   5   6
+  
+  SCFCRT=1.D-9  PRECISE GRADIENTS + OPEN(2,2) TRIPLET
+  SYMMETRY T=25M DEBUG  1SCF  LARGE DEBUG MECI
+     BIRADICAL FORM OF ETHYLENE
+     CALCULATED HEAT OF FORMATION SHOULD BE = 45.1355
+   C    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.1003
+   C    1.4411244  1      0.000000  0      0.000000  0    1    0    0     -0.1003
+   H    1.0814687  1    120.931175  1      0.000000  0    2    1    0      0.0502
+   H    1.0814687  0    120.931175  0    180.000000  0    2    1    3      0.0502
+   H    1.0814687  0    120.931175  0     90.000000  0    1    2    3      0.0502
+   H    1.0814687  0    120.931175  0    -90.000000  0    1    2    3      0.0502
+  
+    3  1    4   5   6
+    3  2    4   5   6
diff -cdN ../src.old//Makefile ./Makefile
*** ../src.old//Makefile	Tue Jan 26 01:11:48 1993
--- ./Makefile	Fri Mar 10 08:54:16 1995
***************
*** 7,29 ****
  #	make		Makes the MOPAC file
  #	make clean	Clean up disk to minimum config
  #
! FFLAGS	        = -O  -c  -static
  HDRS		= SIZES
- SRCS:sh		= ls *.f 
- OBJS		= $(SRCS:.f=.o)
- SIZEDEPSRC:sh	= grep -l -i '      INCLUDE ' *.f; true
- SIZEDEPEND	= $(SIZEDEPSRC:.f=.o)
  
! mopac.exe:     	SIZES $(OBJS) 
! 		@echo -n "Loading mopac.exe ... "
! 		f77 -O $(OBJS) -o mopac.exe
  		@echo "done"
  
  clean:
! 	 	rm -f $(OBJS)
  
  
! $(SIZEDEPEND):	$$< $(HDRS) 
! 		$(FC) $(FFLAGS) $<
  
  ###
--- 7,96 ----
  #	make		Makes the MOPAC file
  #	make clean	Clean up disk to minimum config
  #
! F77             = ./f77pc
! CC		= gcc
! FFLAGS	        = -A -b i386-any-go32 -O2 -finline-functions -ffast-math -m486 
! LD              = gcc -b i386-any-go32 -Wl,-Map,mopac.map
! LIBS            = -lf2c -lm
! #
! #F77		= f77
! #CC		= cc
! #FFLAGS		= -non_shared -static -O2 -g3
! #LD		= $(F77) $(FFLAGS)
! #LIBS		= 
! #
! RM              = rm
  HDRS		= SIZES
  
! FLARGE		= greenf.f esp.f
! DUMMIES		= fdummy.f
! FEXTRA		= $(FLARGE)
! FSRCS		= \
! aababc.f addfck.f addhcr.f addnuc.f analyt.f anavib.f axis.f block.f \
! bonds.f brlzon.f btoc.f calpar.f capcor.f cdiag.f chrge.f cnvg.f \
! compfg.f consts.f cqden.f datin.f dcart.f delmol.f delri.f denrot.f \
! densit.f depvar.f deri0.f deri1.f deri2.f deri21.f deri22.f deri23.f \
! deritr.f deriv.f dernvo.f ders.f dfock2.f dfpsav.f dgemm.f dgemv.f \
! dger.f dgetf2.f dgetrf.f dgetri.f diag.f diat.f diat2.f diegrd.f \
! dielen.f diis.f dijkl1.f dijkl2.f dipind.f dipole.f dlaswp.f dofs.f \
! dot.f drc.f drcout.f dtrmm.f dtrmv.f dtrsm.f dtrti2.f dtrtri.f dvfill.f \
! ef.f enpart.f exchng.f ffhpol.f flepo.f fmat.f fock1.f fock2.f \
! force.f formxy.f forsav.f frame.f freqcy.f geout.f geoutg.f getgeg.f \
! getgeo.f getsym.f gettxt.f gmetry.f gover.f grid.f h1elec.f \
! haddon.f hcore.f helect.f hqrii.f ijkl.f ilaenv.f initsv.f interp.f \
! iter.f jcarin.f linmin.f local.f locmin.f lsame.f makpol.f mamult.f \
! matou1.f matout.f matpak.f meci.f mecid.f mecih.f mecip.f moldat.f \
! molval.f mopac.f mullik.f mult.f nllsq.f nuchar.f parsav.f partxy.f \
! pathk.f paths.f perm.f polar.f powsav.f powsq.f prtdrc.f quadr.f \
! react1.f reada.f readmo.f refer.f repp.f rotat.f rotate.f rsp.f \
! search.f second.f setupg.f solrot.f swap.f sympro.f symtry.f symtrz.f \
! thermo.f timer.f timout.f update.f vecprt.f writmo.f wrtkey.f \
! wrttxt.f xerbla.f xyzint.f $(FEXTRA)
! 
! CSRCS		= f2c_mopac.c
! 
! OBJS		= $(FSRCS:.f=.o) $(CSRCS:.c=.o)
! MOPAC		= mopac
! MOPACSHELL	= mopac.csh
! BINDIR		= /usr/local/bin
! OWNER		= root.bin
! 
! $(MOPAC):     	f77pc SIZES $(OBJS) 
! 		@echo -n "Loading $@ ... "
! 		$(LD) -o $@ $(OBJS) $(LIBS)
  		@echo "done"
  
+ .SUFFIXES: .c .f
+ 
+ f77pc:		f77pc.c
+ 	$(CC) -o f77pc f77pc.c
+ 
+ $(FSRCS:.f=.o):	$($@:.o=.f)
+ 	$(F77) -c $(FFLAGS) $(@:.o=.f)
+ 
+ $(CSRCS:.c=.o): $($@:.o=.c)
+ 	$(F77) -c $(FFLAGS) $(@:.o=.c)
+ 
  clean:
! 	 	$(RM) $(OBJS) $(FSRCS:.f=.c) $(DUMMIES:.f=.c) $(FLARGE:.f=.c) $(DUMMIES:.f=.o) $(FLARGE:.f=.o)
  
+ cleandepend:
+ 		$(RM) $(SIZEDEPEND) *.trace core
  
! cleanall:	clean
! 		$(RM) $(MOPAC)
! 
! deinstall:
! 		$(RM) $(BINDIR)/$(MOPAC) $(BINDIR)/$(MOPACSHELL)
! 
! install:	$(MOPAC) $(MOPACSHELL)
! 		strip $(MOPAC)
! 		chmod 755 $(MOPAC) $(MOPACSHELL)
! 		chown $(OWNER) $(MOPAC) $(MOPACSHELL)
! 		/bin/cp -p $(MOPAC) $(BINDIR)/$(MOPAC)
! 		/bin/cp -p $(MOPACSHELL) $(BINDIR)/$(MOPACSHELL)
! 
! ftnchek:
! 		ftnchek -array=2 -volatile -wordsize=4 -common=2 -pure=no -truncation=no -verbose=no -pretty=no -calltree $(SRCS)
  
  ###
diff -cdN ../src.old//Makefile.big ./Makefile.big
*** ../src.old//Makefile.big
--- ./Makefile.big	Fri Mar 10 08:36:40 1995
***************
*** 0 ****
--- 1,96 ----
+ #
+ #   Makefile for making the executable of program MOPAC
+ #
+ #
+ #    Valid Commands of this makefile
+ #
+ #	make		Makes the MOPAC file
+ #	make clean	Clean up disk to minimum config
+ #
+ F77             = ./f77pc
+ CC		= gcc
+ FFLAGS	        = -A -b i386-any-go32 -O2 -finline-functions -ffast-math -m486 
+ LD              = gcc -b i386-any-go32 -Wl,-Map,mopac.map
+ LIBS            = -lf2c -lm
+ #
+ #F77		= f77
+ #CC		= cc
+ #FFLAGS		= -non_shared -static -O2 -g3
+ #LD		= $(F77) $(FFLAGS)
+ #LIBS		= 
+ #
+ RM              = rm
+ HDRS		= SIZES
+ 
+ FLARGE		= greenf.f esp.f
+ DUMMIES		= fdummy.f
+ FEXTRA		= $(FLARGE)
+ FSRCS		= \
+ aababc.f addfck.f addhcr.f addnuc.f analyt.f anavib.f axis.f block.f \
+ bonds.f brlzon.f btoc.f calpar.f capcor.f cdiag.f chrge.f cnvg.f \
+ compfg.f consts.f cqden.f datin.f dcart.f delmol.f delri.f denrot.f \
+ densit.f depvar.f deri0.f deri1.f deri2.f deri21.f deri22.f deri23.f \
+ deritr.f deriv.f dernvo.f ders.f dfock2.f dfpsav.f dgemm.f dgemv.f \
+ dger.f dgetf2.f dgetrf.f dgetri.f diag.f diat.f diat2.f diegrd.f \
+ dielen.f diis.f dijkl1.f dijkl2.f dipind.f dipole.f dlaswp.f dofs.f \
+ dot.f drc.f drcout.f dtrmm.f dtrmv.f dtrsm.f dtrti2.f dtrtri.f dvfill.f \
+ ef.f enpart.f exchng.f ffhpol.f flepo.f fmat.f fock1.f fock2.f \
+ force.f formxy.f forsav.f frame.f freqcy.f geout.f geoutg.f getgeg.f \
+ getgeo.f getsym.f gettxt.f gmetry.f gover.f grid.f h1elec.f \
+ haddon.f hcore.f helect.f hqrii.f ijkl.f ilaenv.f initsv.f interp.f \
+ iter.f jcarin.f linmin.f local.f locmin.f lsame.f makpol.f mamult.f \
+ matou1.f matout.f matpak.f meci.f mecid.f mecih.f mecip.f moldat.f \
+ molval.f mopac.f mullik.f mult.f nllsq.f nuchar.f parsav.f partxy.f \
+ pathk.f paths.f perm.f polar.f powsav.f powsq.f prtdrc.f quadr.f \
+ react1.f reada.f readmo.f refer.f repp.f rotat.f rotate.f rsp.f \
+ search.f second.f setupg.f solrot.f swap.f sympro.f symtry.f symtrz.f \
+ thermo.f timer.f timout.f update.f vecprt.f writmo.f wrtkey.f \
+ wrttxt.f xerbla.f xyzint.f $(FEXTRA)
+ 
+ CSRCS		= f2c_mopac.c
+ 
+ OBJS		= $(FSRCS:.f=.o) $(CSRCS:.c=.o)
+ MOPAC		= mopac
+ MOPACSHELL	= mopac.csh
+ BINDIR		= /usr/local/bin
+ OWNER		= root.bin
+ 
+ $(MOPAC):     	f77pc SIZES $(OBJS) 
+ 		@echo -n "Loading $@ ... "
+ 		$(LD) -o $@ $(OBJS) $(LIBS)
+ 		@echo "done"
+ 
+ .SUFFIXES: .c .f
+ 
+ f77pc:		f77pc.c
+ 	$(CC) -o f77pc f77pc.c
+ 
+ $(FSRCS:.f=.o):	$($@:.o=.f)
+ 	$(F77) -c $(FFLAGS) $(@:.o=.f)
+ 
+ $(CSRCS:.c=.o): $($@:.o=.c)
+ 	$(F77) -c $(FFLAGS) $(@:.o=.c)
+ 
+ clean:
+ 	 	$(RM) $(OBJS) $(FSRCS:.f=.c) $(DUMMIES:.f=.c) $(FLARGE:.f=.c) $(DUMMIES:.f=.o) $(FLARGE:.f=.o)
+ 
+ cleandepend:
+ 		$(RM) $(SIZEDEPEND) *.trace core
+ 
+ cleanall:	clean
+ 		$(RM) $(MOPAC)
+ 
+ deinstall:
+ 		$(RM) $(BINDIR)/$(MOPAC) $(BINDIR)/$(MOPACSHELL)
+ 
+ install:	$(MOPAC) $(MOPACSHELL)
+ 		strip $(MOPAC)
+ 		chmod 755 $(MOPAC) $(MOPACSHELL)
+ 		chown $(OWNER) $(MOPAC) $(MOPACSHELL)
+ 		/bin/cp -p $(MOPAC) $(BINDIR)/$(MOPAC)
+ 		/bin/cp -p $(MOPACSHELL) $(BINDIR)/$(MOPACSHELL)
+ 
+ ftnchek:
+ 		ftnchek -array=2 -volatile -wordsize=4 -common=2 -pure=no -truncation=no -verbose=no -pretty=no -calltree $(SRCS)
+ 
+ ###
diff -cdN ../src.old//Makefile.sml ./Makefile.sml
*** ../src.old//Makefile.sml
--- ./Makefile.sml	Fri Mar 10 08:54:12 1995
***************
*** 0 ****
--- 1,96 ----
+ #
+ #   Makefile for making the executable of program MOPAC
+ #
+ #
+ #    Valid Commands of this makefile
+ #
+ #	make		Makes the MOPAC file
+ #	make clean	Clean up disk to minimum config
+ #
+ F77             = ./f77pc
+ CC		= gcc
+ FFLAGS	        = -A -b i386-any-go32 -O2 -finline-functions -ffast-math -m486 
+ LD              = gcc -b i386-any-go32 -Wl,-Map,mopac.map
+ LIBS            = -lf2c -lm
+ #
+ #F77		= f77
+ #CC		= cc
+ #FFLAGS		= -non_shared -static -O2 -g3
+ #LD		= $(F77) $(FFLAGS)
+ #LIBS		= 
+ #
+ RM              = rm
+ HDRS		= SIZES
+ 
+ FLARGE		= greenf.f esp.f
+ DUMMIES		= fdummy.f
+ FEXTRA		= $(DUMMIES)
+ FSRCS		= \
+ aababc.f addfck.f addhcr.f addnuc.f analyt.f anavib.f axis.f block.f \
+ bonds.f brlzon.f btoc.f calpar.f capcor.f cdiag.f chrge.f cnvg.f \
+ compfg.f consts.f cqden.f datin.f dcart.f delmol.f delri.f denrot.f \
+ densit.f depvar.f deri0.f deri1.f deri2.f deri21.f deri22.f deri23.f \
+ deritr.f deriv.f dernvo.f ders.f dfock2.f dfpsav.f dgemm.f dgemv.f \
+ dger.f dgetf2.f dgetrf.f dgetri.f diag.f diat.f diat2.f diegrd.f \
+ dielen.f diis.f dijkl1.f dijkl2.f dipind.f dipole.f dlaswp.f dofs.f \
+ dot.f drc.f drcout.f dtrmm.f dtrmv.f dtrsm.f dtrti2.f dtrtri.f dvfill.f \
+ ef.f enpart.f exchng.f ffhpol.f flepo.f fmat.f fock1.f fock2.f \
+ force.f formxy.f forsav.f frame.f freqcy.f geout.f geoutg.f getgeg.f \
+ getgeo.f getsym.f gettxt.f gmetry.f gover.f grid.f h1elec.f \
+ haddon.f hcore.f helect.f hqrii.f ijkl.f ilaenv.f initsv.f interp.f \
+ iter.f jcarin.f linmin.f local.f locmin.f lsame.f makpol.f mamult.f \
+ matou1.f matout.f matpak.f meci.f mecid.f mecih.f mecip.f moldat.f \
+ molval.f mopac.f mullik.f mult.f nllsq.f nuchar.f parsav.f partxy.f \
+ pathk.f paths.f perm.f polar.f powsav.f powsq.f prtdrc.f quadr.f \
+ react1.f reada.f readmo.f refer.f repp.f rotat.f rotate.f rsp.f \
+ search.f second.f setupg.f solrot.f swap.f sympro.f symtry.f symtrz.f \
+ thermo.f timer.f timout.f update.f vecprt.f writmo.f wrtkey.f \
+ wrttxt.f xerbla.f xyzint.f $(FEXTRA)
+ 
+ CSRCS		= f2c_mopac.c
+ 
+ OBJS		= $(FSRCS:.f=.o) $(CSRCS:.c=.o)
+ MOPAC		= mopac
+ MOPACSHELL	= mopac.csh
+ BINDIR		= /usr/local/bin
+ OWNER		= root.bin
+ 
+ $(MOPAC):     	f77pc SIZES $(OBJS) 
+ 		@echo -n "Loading $@ ... "
+ 		$(LD) -o $@ $(OBJS) $(LIBS)
+ 		@echo "done"
+ 
+ .SUFFIXES: .c .f
+ 
+ f77pc:		f77pc.c
+ 	$(CC) -o f77pc f77pc.c
+ 
+ $(FSRCS:.f=.o):	$($@:.o=.f)
+ 	$(F77) -c $(FFLAGS) $(@:.o=.f)
+ 
+ $(CSRCS:.c=.o): $($@:.o=.c)
+ 	$(F77) -c $(FFLAGS) $(@:.o=.c)
+ 
+ clean:
+ 	 	$(RM) $(OBJS) $(FSRCS:.f=.c) $(DUMMIES:.f=.c) $(FLARGE:.f=.c) $(DUMMIES:.f=.o) $(FLARGE:.f=.o)
+ 
+ cleandepend:
+ 		$(RM) $(SIZEDEPEND) *.trace core
+ 
+ cleanall:	clean
+ 		$(RM) $(MOPAC)
+ 
+ deinstall:
+ 		$(RM) $(BINDIR)/$(MOPAC) $(BINDIR)/$(MOPACSHELL)
+ 
+ install:	$(MOPAC) $(MOPACSHELL)
+ 		strip $(MOPAC)
+ 		chmod 755 $(MOPAC) $(MOPACSHELL)
+ 		chown $(OWNER) $(MOPAC) $(MOPACSHELL)
+ 		/bin/cp -p $(MOPAC) $(BINDIR)/$(MOPAC)
+ 		/bin/cp -p $(MOPACSHELL) $(BINDIR)/$(MOPACSHELL)
+ 
+ ftnchek:
+ 		ftnchek -array=2 -volatile -wordsize=4 -common=2 -pure=no -truncation=no -verbose=no -pretty=no -calltree $(SRCS)
+ 
+ ###
diff -cdN ../src.old//SIZES ./SIZES
*** ../src.old//SIZES	Wed Jun 16 05:13:40 1993
--- ./SIZES	Fri Mar 10 08:54:28 1995
***************
*** 10,18 ****
  *     ISYBYL = 1 IF MOPAC IS TO BE USED IN THE SYBYL PACKAGE, =0 OTHERWISE
  *     SEE ALSO NMECI, NPULAY AND MESP AT THE END OF THIS FILE
  *                                                                       
!       PARAMETER (MAXHEV=30, MAXLIT=30)
        PARAMETER (MAXTIM=3600, MAXDMP=3600)
!       PARAMETER (ISYBYL=1)
  *                                                                       
  ************************************************************************
  *                                                                       
--- 10,18 ----
  *     ISYBYL = 1 IF MOPAC IS TO BE USED IN THE SYBYL PACKAGE, =0 OTHERWISE
  *     SEE ALSO NMECI, NPULAY AND MESP AT THE END OF THIS FILE
  *                                                                       
!       PARAMETER (MAXHEV=60, MAXLIT=60)
        PARAMETER (MAXTIM=3600, MAXDMP=3600)
!       PARAMETER (ISYBYL=0)
  *                                                                       
  ************************************************************************
  *                                                                       
***************
*** 43,53 ****
        PARAMETER (MPACK=(MAXORB*(MAXORB+1))/2)
        PARAMETER (MAXPR=6*MAXORB)
        PARAMETER (MAXALL=4*MAXHEV+3*MAXLIT)
!        PARAMETER (NMECI=11,  NPULAY=MPACK, MMCI=60)
        PARAMETER (MESP=50000)
        PARAMETER (LENABC=400)
        PARAMETER (LENAB2=LENABC*(LENABC+5))
        PARAMETER (NPPA = 1082, MAXNSS = 500)
        PARAMETER (MAXDEN=10*MAXHEV+MAXLIT)
  ************************************************************************
  *DECK MOPAC 
--- 43,55 ----
        PARAMETER (MPACK=(MAXORB*(MAXORB+1))/2)
        PARAMETER (MAXPR=6*MAXORB)
        PARAMETER (MAXALL=4*MAXHEV+3*MAXLIT)
!       PARAMETER (NMECI=8, NPULAY=MPACK, MMCI=60)
        PARAMETER (MESP=50000)
        PARAMETER (LENABC=400)
        PARAMETER (LENAB2=LENABC*(LENABC+5))
        PARAMETER (NPPA = 1082, MAXNSS = 500)
        PARAMETER (MAXDEN=10*MAXHEV+MAXLIT)
+ *
+       PARAMETER (IGREEN=600000)
  ************************************************************************
  *DECK MOPAC 
diff -cdN ../src.old//SIZES.BIG ./SIZES.BIG
*** ../src.old//SIZES.BIG
--- ./SIZES.BIG	Mon Jan 30 08:55:30 1995
***************
*** 0 ****
--- 1,55 ----
+ *COMDECK SIZES                                                          
+ ************************************************************************
+ *   THIS FILE CONTAINS ALL THE ARRAY SIZES FOR USE IN MOPAC.            
+ *                                                                       
+ *     THERE ARE ONLY 5 PARAMETERS THAT THE PROGRAMMER NEED SET:          
+ *     MAXHEV = MAXIMUM NUMBER OF HEAVY ATOMS (HEAVY: NON-HYDROGEN ATOMS)
+ *     MAXLIT = MAXIMUM NUMBER OF HYDROGEN ATOMS.                        
+ *     MAXTIM = DEFAULT TIME FOR A JOB. (SECONDS)                        
+ *     MAXDMP = DEFAULT TIME FOR AUTOMATIC RESTART FILE GENERATION (SECS)
+ *     ISYBYL = 1 IF MOPAC IS TO BE USED IN THE SYBYL PACKAGE, =0 OTHERWISE
+ *     SEE ALSO NMECI, NPULAY AND MESP AT THE END OF THIS FILE
+ *                                                                       
+       PARAMETER (MAXHEV=60, MAXLIT=60)
+       PARAMETER (MAXTIM=3600, MAXDMP=3600)
+       PARAMETER (ISYBYL=0)
+ *                                                                       
+ ************************************************************************
+ *                                                                       
+ *   THE FOLLOWING CODE DOES NOT NEED TO BE ALTERED BY THE PROGRAMMER    
+ *                                                                       
+ ************************************************************************
+ *                                                                       
+ *    ALL OTHER PARAMETERS ARE DERIVED FUNCTIONS OF THESE TWO PARAMETERS 
+ *                                                                       
+ *      NAME                   DEFINITION                                
+ *     NUMATM         MAXIMUM NUMBER OF ATOMS ALLOWED.                   
+ *     MAXORB         MAXIMUM NUMBER OF ORBITALS ALLOWED.                
+ *     MAXPAR         MAXIMUM NUMBER OF PARAMETERS FOR OPTIMISATION.     
+ *     N2ELEC         MAXIMUM NUMBER OF TWO ELECTRON INTEGRALS ALLOWED.  
+ *     MPACK          AREA OF LOWER HALF TRIANGLE OF DENSITY MATRIX.     
+ *     MORB2          SQUARE OF THE MAXIMUM NUMBER OF ORBITALS ALLOWED.  
+ *     MAXHES         AREA OF HESSIAN MATRIX                             
+ *     MAXALL         LARGER THAN MAXORB OR MAXPAR.
+ ************************************************************************
+       PARAMETER (VERSON=7.00D0)
+       PARAMETER (NUMATM=MAXHEV+MAXLIT)
+       PARAMETER (MAXORB=4*MAXHEV+MAXLIT)
+       PARAMETER (MAXPAR=3*NUMATM)
+       PARAMETER (MAXBIG=MAXORB*MAXORB*2)
+       PARAMETER (N2ELEC=(50*MAXHEV*(MAXHEV-1)+10*MAXHEV*MAXLIT
+      +                     +(MAXLIT*(MAXLIT-1))/2))
+       PARAMETER (MAXHES=(MAXPAR*(MAXPAR+1))/2,MORB2=MAXORB**2)
+       PARAMETER (MPACK=(MAXORB*(MAXORB+1))/2)
+       PARAMETER (MAXPR=6*MAXORB)
+       PARAMETER (MAXALL=4*MAXHEV+3*MAXLIT)
+       PARAMETER (NMECI=8, NPULAY=MPACK, MMCI=60)
+       PARAMETER (MESP=50000)
+       PARAMETER (LENABC=400)
+       PARAMETER (LENAB2=LENABC*(LENABC+5))
+       PARAMETER (NPPA = 1082, MAXNSS = 500)
+       PARAMETER (MAXDEN=10*MAXHEV+MAXLIT)
+ *
+       PARAMETER (IGREEN=600000)
+ ************************************************************************
+ *DECK MOPAC 
diff -cdN ../src.old//SIZES.SML ./SIZES.SML
*** ../src.old//SIZES.SML
--- ./SIZES.SML	Mon Jan 30 15:47:45 1995
***************
*** 0 ****
--- 1,59 ----
+ *COMDECK SIZES                                                          
+ ************************************************************************
+ *   THIS FILE CONTAINS ALL THE ARRAY SIZES FOR USE IN MOPAC.            
+ *                                                                       
+ *     THERE ARE ONLY 5 PARAMETERS THAT THE PROGRAMMER NEED SET:          
+ *     MAXHEV = MAXIMUM NUMBER OF HEAVY ATOMS (HEAVY: NON-HYDROGEN ATOMS)
+ *     MAXLIT = MAXIMUM NUMBER OF HYDROGEN ATOMS.                        
+ *     MAXTIM = DEFAULT TIME FOR A JOB. (SECONDS)                        
+ *     MAXDMP = DEFAULT TIME FOR AUTOMATIC RESTART FILE GENERATION (SECS)
+ *     ISYBYL = 1 IF MOPAC IS TO BE USED IN THE SYBYL PACKAGE, =0 OTHERWISE
+ *     SEE ALSO NMECI, NPULAY AND MESP AT THE END OF THIS FILE
+ *                                                                       
+ *     For a small version, do not forget to use FDUMMY sources instead
+ *     of FLARGE ones in Makefile!
+ *
+       PARAMETER (MAXHEV=15, MAXLIT=24)
+       PARAMETER (MAXTIM=3600, MAXDMP=3600)
+       PARAMETER (ISYBYL=0)
+ *                                                                       
+ ************************************************************************
+ *                                                                       
+ *   THE FOLLOWING CODE DOES NOT NEED TO BE ALTERED BY THE PROGRAMMER    
+ *                                                                       
+ ************************************************************************
+ *                                                                       
+ *    ALL OTHER PARAMETERS ARE DERIVED FUNCTIONS OF THESE TWO PARAMETERS 
+ *                                                                       
+ *      NAME                   DEFINITION                                
+ *     NUMATM         MAXIMUM NUMBER OF ATOMS ALLOWED.                   
+ *     MAXORB         MAXIMUM NUMBER OF ORBITALS ALLOWED.                
+ *     MAXPAR         MAXIMUM NUMBER OF PARAMETERS FOR OPTIMISATION.     
+ *     N2ELEC         MAXIMUM NUMBER OF TWO ELECTRON INTEGRALS ALLOWED.  
+ *     MPACK          AREA OF LOWER HALF TRIANGLE OF DENSITY MATRIX.     
+ *     MORB2          SQUARE OF THE MAXIMUM NUMBER OF ORBITALS ALLOWED.  
+ *     MAXHES         AREA OF HESSIAN MATRIX                             
+ *     MAXALL         LARGER THAN MAXORB OR MAXPAR.
+ ************************************************************************
+       PARAMETER (VERSON=7.00D0)
+       PARAMETER (NUMATM=MAXHEV+MAXLIT)
+       PARAMETER (MAXORB=4*MAXHEV+MAXLIT)
+       PARAMETER (MAXPAR=3*NUMATM)
+       PARAMETER (MAXBIG=MAXORB*MAXORB*2)
+       PARAMETER (N2ELEC=(50*MAXHEV*(MAXHEV-1)+10*MAXHEV*MAXLIT
+      +                     +(MAXLIT*(MAXLIT-1))/2))
+       PARAMETER (MAXHES=(MAXPAR*(MAXPAR+1))/2,MORB2=MAXORB**2)
+       PARAMETER (MPACK=(MAXORB*(MAXORB+1))/2)
+       PARAMETER (MAXPR=6*MAXORB)
+       PARAMETER (MAXALL=4*MAXHEV+3*MAXLIT)
+       PARAMETER (NMECI=8, NPULAY=MPACK, MMCI=60)
+       PARAMETER (MESP=50000)
+       PARAMETER (LENABC=400)
+       PARAMETER (LENAB2=LENABC*(LENABC+5))
+       PARAMETER (NPPA = 1082, MAXNSS = 500)
+       PARAMETER (MAXDEN=10*MAXHEV+MAXLIT)
+ *    For a small version, disable green functions support, since they need
+ *    a horrible amount of memory
+       PARAMETER (IGREEN=0)
+ ************************************************************************
+ *DECK MOPAC 
diff -cdN ../src.old//addfck.f ./addfck.f
*** ../src.old//addfck.f	Tue Apr 20 03:38:08 1993
--- ./addfck.f	Thu Jan 26 10:30:30 1995
***************
*** 6,12 ****
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC)
        COMMON /DIRVEC/ DIRVEC(3,NPPA), NN(3,NUMATM)
  C      COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
  C     1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
--- 6,12 ----
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC), NNX(2,NUMATM)
        COMMON /DIRVEC/ DIRVEC(3,NPPA), NN(3,NUMATM)
  C      COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
  C     1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
diff -cdN ../src.old//addhcr.f ./addhcr.f
*** ../src.old//addhcr.f	Tue Apr 20 03:38:08 1993
--- ./addhcr.f	Wed Jan 25 15:46:37 1995
***************
*** 5,11 ****
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
--- 5,11 ----
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC), NN(2,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
diff -cdN ../src.old//addnuc.f ./addnuc.f
*** ../src.old//addnuc.f	Tue Apr 20 03:38:08 1993
--- ./addnuc.f	Thu Mar  9 18:14:52 1995
***************
*** 5,15 ****
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
        COMMON /CORE  / CORE(107)
        ENCLR=0.D0
        I0=NPS2+NDEN*NPS
        IDEN=0
--- 5,16 ----
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC), NN(2,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
        COMMON /CORE  / CORE(107)
+ 
        ENCLR=0.D0
        I0=NPS2+NDEN*NPS
        IDEN=0
diff -cdN ../src.old//anavib.f ./anavib.f
*** ../src.old//anavib.f	Tue Apr 20 03:38:08 1993
--- ./anavib.f	Tue Jan 17 14:53:06 1995
***************
*** 57,63 ****
              I1=-2
              DO 70 I=1,J-1
                 I1=I1+3
!                VDW=(VANRAD(NAT(I))+VANRAD(NAT(J)))*1.5
                 L=L+1
                 F(L)=0.D0
                 IF(   RIJ(L)  .LT.  VDW) THEN
--- 57,63 ----
              I1=-2
              DO 70 I=1,J-1
                 I1=I1+3
!                VDW=(VANRAD(NAT(I))+VANRAD(NAT(J)))*1.5D0
                 L=L+1
                 F(L)=0.D0
                 IF(   RIJ(L)  .LT.  VDW) THEN
diff -cdN ../src.old//bonds.f ./bonds.f
*** ../src.old//bonds.f	Tue Apr 20 03:38:08 1993
--- ./bonds.f	Wed Jan 25 17:15:58 1995
***************
*** 26,34 ****
        DIMENSION V(NUMATM),FV(NUMATM),SQ(NUMATM),AQ(NUMATM),TQ(NUMATM),
       1PM(NUMATM),SP(NUMATM),SD(NUMATM),AUX(NUMATM,NUMATM),PSPIN(MPACK)
       2,SPSA(NUMATM),SPSQ(NUMATM)
!       DIMENSION DENW(MAXORB,MAXORB)
        LOGICAL CI,NCI,KCI
!       CHARACTER*80 KEYWRD
  C
        CI=(INDEX(KEYWRD,'C.I.')+INDEX(KEYWRD,'MECI').NE.0)
        KCI=(INDEX(KEYWRD,'MICROS').EQ.0)
--- 26,34 ----
        DIMENSION V(NUMATM),FV(NUMATM),SQ(NUMATM),AQ(NUMATM),TQ(NUMATM),
       1PM(NUMATM),SP(NUMATM),SD(NUMATM),AUX(NUMATM,NUMATM),PSPIN(MPACK)
       2,SPSA(NUMATM),SPSQ(NUMATM)
! C     DIMENSION DENW(MAXORB,MAXORB)
        LOGICAL CI,NCI,KCI
!       CHARACTER*241 KEYWRD
  C
        CI=(INDEX(KEYWRD,'C.I.')+INDEX(KEYWRD,'MECI').NE.0)
        KCI=(INDEX(KEYWRD,'MICROS').EQ.0)
***************
*** 59,71 ****
             K=MU+NORBS*(M-1)
     27      SUM=SUM+C(L)*CBETA(K)
     23   ZKAPPA=ZKAPPA+SUM**2
!         ZKAPPA=1.D0/(ZKAPPA/DFLOAT(NALPHA+NBETA)+0.5D0)
          ELSE
           IF(.NOT.CI.AND.NOPN.EQ.0.AND.NCI.AND.KCI) THEN
!          ZKAPPA=1.0
          ELSE
  C****** ROHF CASE
!         ZKAPPA=1.D0/(1.D0-(DFLOAT(NOPN)/DFLOAT(NELECS))/2.D0)
          WRITE(6,'(10X,''ROHF ZKAPPA='',F10.5,2I5)') ZKAPPA,nopen,nclose
          ENDIF
          ENDIF
--- 59,71 ----
             K=MU+NORBS*(M-1)
     27      SUM=SUM+C(L)*CBETA(K)
     23   ZKAPPA=ZKAPPA+SUM**2
!         ZKAPPA=1.D0/(ZKAPPA/DBLE(NALPHA+NBETA)+0.5D0)
          ELSE
           IF(.NOT.CI.AND.NOPN.EQ.0.AND.NCI.AND.KCI) THEN
!          ZKAPPA=1.0D0
          ELSE
  C****** ROHF CASE
!         ZKAPPA=1.D0/(1.D0-(DBLE(NOPN)/DBLE(NELECS))/2.D0)
          WRITE(6,'(10X,''ROHF ZKAPPA='',F10.5,2I5)') ZKAPPA,nopen,nclose
          ENDIF
          ENDIF
***************
*** 78,84 ****
              IJ=IJ+1
              K=NFIRST(J)
              KK=NLAST(J)
!             X=0.0
              DO 30 IL=L,LL
                 DO 30 IH=K,KK
     30       X=X+B(IL,IH)*B(IL,IH)
--- 78,84 ----
              IJ=IJ+1
              K=NFIRST(J)
              KK=NLAST(J)
!             X=0.0D0
              DO 30 IL=L,LL
                 DO 30 IH=K,KK
     30       X=X+B(IL,IH)*B(IL,IH)
diff -cdN ../src.old//btoc.f ./btoc.f
*** ../src.old//btoc.f	Tue Apr 20 03:38:08 1993
--- ./btoc.f	Wed Jan 25 15:46:06 1995
***************
*** 6,12 ****
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
--- 6,12 ----
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC), NN(2,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
***************
*** 18,30 ****
     10 COSURF(IX,I)=COSURF(IX,I)*RI+COORD(IX,J)
  C FILLING B-MATRIX
        I0=NPS2-NDEN
!       IDEN=0.
        DO 50 I=1,NUMAT
           IA=NFIRST(I)
           IDEL=NLAST(I)-IA
           NATI=NAT(I)
!          DDI=DD(NATI)*2*.529177
!          QQI2=(.529177*QQ(NATI))**2
           DO 20 IX=1,3
              XX(IX)=COORD(IX,I)
     20    CONTINUE
--- 18,30 ----
     10 COSURF(IX,I)=COSURF(IX,I)*RI+COORD(IX,J)
  C FILLING B-MATRIX
        I0=NPS2-NDEN
!       IDEN=0
        DO 50 I=1,NUMAT
           IA=NFIRST(I)
           IDEL=NLAST(I)-IA
           NATI=NAT(I)
!          DDI=DD(NATI)*2*.529177D0
!          QQI2=(.529177D0*QQ(NATI))**2
           DO 20 IX=1,3
              XX(IX)=COORD(IX,I)
     20    CONTINUE
***************
*** 53,59 ****
     50 IDEN=IDEN+1+IDEL**2
        I1=NPS2+NDEN*NPS
  C  FILLING C-MATRIX
!       FACT=-.5*2*13.6058*.5292*FEPSI
        DO 110 I=1,NDEN
           DO 80 K=1,NPS
              BHK=0.D0
--- 53,59 ----
     50 IDEN=IDEN+1+IDEL**2
        I1=NPS2+NDEN*NPS
  C  FILLING C-MATRIX
!       FACT=-.5D0*2*13.6058D0*.5292D0*FEPSI
        DO 110 I=1,NDEN
           DO 80 K=1,NPS
              BHK=0.D0
***************
*** 72,78 ****
              ABCMAT(I1)=FACT*CIJ
    100    CONTINUE
    110 CONTINUE
!       I1=NSP2+NDEN*NSP
        DO 120 I=1,NDEN
    120 I1=I1+I
        DO 130 I=1,NPS
--- 72,78 ----
              ABCMAT(I1)=FACT*CIJ
    100    CONTINUE
    110 CONTINUE
!       I1=NPS2+NDEN*NPS
        DO 120 I=1,NDEN
    120 I1=I1+I
        DO 130 I=1,NPS
diff -cdN ../src.old//calpar.f ./calpar.f
*** ../src.old//calpar.f	Tue Apr 20 03:38:08 1993
--- ./calpar.f	Tue Jan 17 12:13:10 1995
***************
*** 126,160 ****
           QQM(I)=QQ(I)
  C     CALCULATE ADDITIVE TERMS, IN ATOMIC UNITS.
           JMAX=5
!          GDD1= (P2*HSP(I)/(27.21* 4.*DD(I)**2))**(1./3.)
!          GQQ= (P4*HPP/(27.21*48.*QQ(I)**4))**0.2
           D1=GDD1
!          D2=GDD1+0.04
           Q1=GQQ
!          Q2=GQQ+0.04
           DO 10 J=1,JMAX
              DF=D2-D1
!             HSP1= 2.*D1 - 2./SQRT(4.*DD(I)**2+1./D1**2)
!             HSP2= 2.*D2 - 2./SQRT(4.*DD(I)**2+1./D2**2)
              HSP1= HSP1/P2
              HSP2= HSP2/P2
!             D3= D1 + DF*(HSP(I)/27.21-HSP1)/(HSP2-HSP1)
              D1= D2
              D2= D3
     10    CONTINUE
           DO 20 J=1,JMAX
              QF=Q2-Q1
!             HPP1= 4.*Q1 - 8./SQRT(4.*QQ(I)**2+1./Q1**2)
!      1            + 4./SQRT(8.*QQ(I)**2+1./Q1**2)
!             HPP2= 4.*Q2 - 8./SQRT(4.*QQ(I)**2+1./Q2**2)
!      1            + 4./SQRT(8.*QQ(I)**2+1./Q2**2)
              HPP1= HPP1/P4
              HPP2= HPP2/P4
!             Q3= Q1 + QF*(HPP/27.21-HPP1)/(HPP2-HPP1)
              Q1= Q2
              Q2= Q3
     20    CONTINUE
!          AM(I)= GSS(I)/27.21
           AD(I)= D2
           AQ(I)= Q2
           AMM(I)=AM(I)
--- 126,160 ----
           QQM(I)=QQ(I)
  C     CALCULATE ADDITIVE TERMS, IN ATOMIC UNITS.
           JMAX=5
!          GDD1= (P2*HSP(I)/(27.21D0* 4.D0*DD(I)**2))**(1.D0/3.D0)
!          GQQ= (P4*HPP/(27.21D0*48.D0*QQ(I)**4))**0.2D0
           D1=GDD1
!          D2=GDD1+0.04D0
           Q1=GQQ
!          Q2=GQQ+0.04D0
           DO 10 J=1,JMAX
              DF=D2-D1
!             HSP1= 2.D0*D1 - 2.D0/SQRT(4.D0*DD(I)**2+1.D0/D1**2)
!             HSP2= 2.D0*D2 - 2.D0/SQRT(4.D0*DD(I)**2+1.D0/D2**2)
              HSP1= HSP1/P2
              HSP2= HSP2/P2
!             D3= D1 + DF*(HSP(I)/27.21D0-HSP1)/(HSP2-HSP1)
              D1= D2
              D2= D3
     10    CONTINUE
           DO 20 J=1,JMAX
              QF=Q2-Q1
!             HPP1= 4.D0*Q1 - 8.D0/SQRT(4.D0*QQ(I)**2+1.D0/Q1**2)
!      1            + 4.D0/SQRT(8.D0*QQ(I)**2+1.D0/Q1**2)
!             HPP2= 4.D0*Q2 - 8.D0/SQRT(4.D0*QQ(I)**2+1.D0/Q2**2)
!      1            + 4.D0/SQRT(8.D0*QQ(I)**2+1.D0/Q2**2)
              HPP1= HPP1/P4
              HPP2= HPP2/P4
!             Q3= Q1 + QF*(HPP/27.21D0-HPP1)/(HPP2-HPP1)
              Q1= Q2
              Q2= Q3
     20    CONTINUE
!          AM(I)= GSS(I)/27.21D0
           AD(I)= D2
           AQ(I)= Q2
           AMM(I)=AM(I)
diff -cdN ../src.old//compare.csh ./compare.csh
*** ../src.old//compare.csh
--- ./compare.csh	Mon Jan 30 11:19:07 1995
***************
*** 0 ****
--- 1,6 ----
+ #!/usr/bin/tcsh
+ foreach x (*.out)
+     tr "0" " " <$x >/tmp/old.$$
+     tr "0" " " /tmp/new.$$
+     diff -t /tmp/old.$$ /tmp/new.$$ >$x:r.diff
+ end
diff -cdN ../src.old//compfg.f ./compfg.f
*** ../src.old//compfg.f	Tue Apr 20 03:38:10 1993
--- ./compfg.f	Thu Mar  9 18:14:58 1995
***************
*** 2,11 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION XPARAM(MAXPAR),GRAD(MAXPAR)
!       LOGICAL LGRAD, FULSCF
        COMMON /GEOVAR/ NVAR,LOC(2,MAXPAR),IDUMY,DUMY(MAXPAR)
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /ATHEAT/ ATHEAT
        COMMON /WMATRX/ WJ(N2ELEC), WK(N2ELEC)
        COMMON /ENUCLR/ ENUCLR
--- 2,11 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION XPARAM(MAXPAR),GRAD(MAXPAR)
!       LOGICAL LGRAD, FULSCF, LIMSCF
        COMMON /GEOVAR/ NVAR,LOC(2,MAXPAR),IDUMY,DUMY(MAXPAR)
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /ATHEAT/ ATHEAT
        COMMON /WMATRX/ WJ(N2ELEC), WK(N2ELEC)
        COMMON /ENUCLR/ ENUCLR
***************
*** 128,134 ****
        ENDIF
        IF(INT.AND.ANALYT)REWIND 2
  C COSMO change A. Klamt
!       IF (.NOT. USEPS) THEN
  C end of COSMO change
        IF(TIMES)CALL TIMER('BEFORE HCORE')
        IF(INT)CALL HCORE(COORD, H, W, WJ, WK, ENUCLR)
--- 128,135 ----
        ENDIF
        IF(INT.AND.ANALYT)REWIND 2
  C COSMO change A. Klamt
! *     IF (.NOT. USEPS) THEN
!       IF (.NOT. ISEPS) THEN
  C end of COSMO change
        IF(TIMES)CALL TIMER('BEFORE HCORE')
        IF(INT)CALL HCORE(COORD, H, W, WJ, WK, ENUCLR)
***************
*** 152,159 ****
  C COSMO change A. Klamt 18.7.91
        ENDIF
        IF (ISEPS) THEN
  C The following routine constructs the dielectric screening surface
!            CALL CONSTS (COORD,.TRUE.)
  C The following routine constructs dielectric response matrix CCMAT
          CALL BTOC (COORD)
  C A. Klamt 18.7.91
--- 153,162 ----
  C COSMO change A. Klamt 18.7.91
        ENDIF
        IF (ISEPS) THEN
+         INDEPS=INDEX(KEYWRD,'EPS=')
+         CALL INITSV (INDEPS)
  C The following routine constructs the dielectric screening surface
!            CALL CONSTS (COORD)
  C The following routine constructs dielectric response matrix CCMAT
          CALL BTOC (COORD)
  C A. Klamt 18.7.91
***************
*** 171,177 ****
          ELSE
            ELECT=0.D0
          ENDIF
!         ESCF=(ELECT+ENUCLR)*23.060542301389D0+ATHEAT
          IF(ESCF.LT.EMIN.OR.EMIN.EQ.0.D0) EMIN=ESCF
          DO 61 I=1,NNHCO
           CALL DIHED(COORD,NHCO(1,I),NHCO(2,I),NHCO(3,I),NHCO(4,I),ANGLE)
--- 174,180 ----
          ELSE
            ELECT=0.D0
          ENDIF
!         ESCF=(ELECT+ENUCLR)*23.061D0+ATHEAT
          IF(ESCF.LT.EMIN.OR.EMIN.EQ.0.D0) EMIN=ESCF
          DO 61 I=1,NNHCO
           CALL DIHED(COORD,NHCO(1,I),NHCO(2,I),NHCO(3,I),NHCO(4,I),ANGLE)
diff -cdN ../src.old//consts.f ./consts.f
*** ../src.old//consts.f	Tue Apr 20 03:38:10 1993
--- ./consts.f	Thu Mar  9 18:15:05 1995
***************
*** 10,16 ****
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC)
        COMMON /DIRVEC/ DIRVEC(3,NPPA), NN(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
--- 10,17 ----
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC), NNX(2,NUMATM)
!      x       /SOLVPS/ NPSX, NPS2X
        COMMON /DIRVEC/ DIRVEC(3,NPPA), NN(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
***************
*** 20,25 ****
--- 21,30 ----
        COMMON /CHANEL/ IFILES(30)
        EQUIVALENCE(IW,IFILES(6))
        EQUIVALENCE (ABCMAT(LENABC*LENABC+1),XSP)
+ 
+       NPS  = NPSX
+       NPS2 = NPS2X
+ 
        ISUP=(NPS.GT.0)
        N0(1)=NPS2
        N0(2)=-NPS
***************
*** 45,55 ****
        INSET=1
        IATSP(LENABC+1)=0
        NPS = 0
        DO 340 I=1,NUMAT
           DS=SQRT(4.D0/NSPA)
           IF (NAT(I) .EQ. 1) DS=2*DS
           C2DS=COS(2.D0*DS)
-          AREA=0.D0
           R=SRAD(I)
           RI=R-RDS
           DO 20 IX=1,3
--- 50,60 ----
        INSET=1
        IATSP(LENABC+1)=0
        NPS = 0
+       AREA=0.D0
        DO 340 I=1,NUMAT
           DS=SQRT(4.D0/NSPA)
           IF (NAT(I) .EQ. 1) DS=2*DS
           C2DS=COS(2.D0*DS)
           R=SRAD(I)
           RI=R-RDS
           DO 20 IX=1,3
***************
*** 58,64 ****
           IF(ISUP) THEN
              IF (NPS .GE. NPS3) STOP 'NPS .GT. NPS3'
              NPS2=NPS3
!             IF (IATSP(NPS0) .NE. I) GO TO 340
              DO 30 IPS=NPS2,LENABC+1
     30       IF(IATSP(IPS) .NE. I) GO TO 40
     40       NPS3=IPS
--- 63,69 ----
           IF(ISUP) THEN
              IF (NPS .GE. NPS3) STOP 'NPS .GT. NPS3'
              NPS2=NPS3
! *           IF (IATSP(NPS0) .NE. I) GO TO 340
              DO 30 IPS=NPS2,LENABC+1
     30       IF(IATSP(IPS) .NE. I) GO TO 40
     40       NPS3=IPS
***************
*** 122,141 ****
              DIST1=0.D0
              DO 80 IX=1,3
     80       DIST1=DIST1+(XA(IX)-COORD(IX,NN1))**2
!             DIST=1./SQRT(DIST1)
              TM(1,1,I)=(COORD(1,NN1)-XA(1))*DIST
              TM(1,2,I)=(COORD(2,NN1)-XA(2))*DIST
              TM(1,3,I)=(COORD(3,NN1)-XA(3))*DIST
           END IF
     90    IF (NN2 .EQ. 0) THEN
!             TM(2,1,I)=-TM(1,2,I)
!             TM(2,2,I)=TM(1,1,I)
              TM(2,3,I)=0.D0
           ELSE
              DIST2=0.D0
              DO 100 IX=1,3
    100       DIST2=DIST2+(XA(IX)-COORD(IX,NN2))**2
!             DIST=1./SQRT(DIST2)
              XX(1)=(COORD(1,NN2)-XA(1))*DIST
              XX(2)=(COORD(2,NN2)-XA(2))*DIST
              XX(3)=(COORD(3,NN2)-XA(3))*DIST
--- 127,147 ----
              DIST1=0.D0
              DO 80 IX=1,3
     80       DIST1=DIST1+(XA(IX)-COORD(IX,NN1))**2
!             DIST=1.D0/SQRT(DIST1)
              TM(1,1,I)=(COORD(1,NN1)-XA(1))*DIST
              TM(1,2,I)=(COORD(2,NN1)-XA(2))*DIST
              TM(1,3,I)=(COORD(3,NN1)-XA(3))*DIST
           END IF
     90    IF (NN2 .EQ. 0) THEN
!             DIST=SQRT(TM(1,3,I)**2+TM(1,2,I)**2+TM(1,1,I)**2)
!             TM(2,1,I)=-TM(1,2,I)/DIST
!             TM(2,2,I)=TM(1,1,I)/DIST
              TM(2,3,I)=0.D0
           ELSE
              DIST2=0.D0
              DO 100 IX=1,3
    100       DIST2=DIST2+(XA(IX)-COORD(IX,NN2))**2
!             DIST=1.D0/SQRT(DIST2)
              XX(1)=(COORD(1,NN2)-XA(1))*DIST
              XX(2)=(COORD(2,NN2)-XA(2))*DIST
              XX(3)=(COORD(3,NN2)-XA(3))*DIST
***************
*** 163,168 ****
--- 169,195 ----
                 X=XX(1)*TM(1,IX,I)+XX(2)*TM(2,IX,I)+XX(3)*TM(3,IX,I)
                 DIRTM(IX,J)=X
    110    CONTINUE
+ C FIND THE POINTS OF THE BASIC GRID ON THE SAS
+          NAREA=0
+          DO 160 J = 1,NPPA
+             DIN(J)=.FALSE.
+             DO 130 IX=1,3
+                XX(IX) = XA(IX) + DIRTM(IX,J)* R
+   130       CONTINUE
+             DO 150 K = 1, NUMAT
+                IF (K . EQ. I) GO TO 150
+                DIST=0.D0
+                DO 140 IX=1,3
+                   DIST = DIST + (XX(IX) - COORD(IX,K))**2
+   140          CONTINUE
+                DIST=SQRT(DIST)-SRAD(K)
+                IF (DIST .LT. 0) GO TO 160
+   150       CONTINUE
+             NAREA=NAREA+1
+             DIN(J)=.TRUE.
+   160    CONTINUE
+          IF( NAREA.EQ.0 ) GOTO 340
+          AREA=AREA+NAREA*RI*RI
           IF (ISUP) THEN
              DO 120 J=NPS2,NPS3-1
                 NPS=NPS+1
***************
*** 192,217 ****
           COSURF(3,NPS)=XX(1)*TM(1,3,I)+XX(2)*TM(2,3,I)+XX(3)*TM(3,3,I)
    45     CONTINUE
           ENDIF
- C FIND THE POINTS OF THE BASIC GRID ON THE SAS
-          NAREA=0
-          DO 160 J = 1,NPPA
-             DIN(J)=.FALSE.
-             DO 130 IX=1,3
-                XX(IX) = XA(IX) + DIRTM(IX,J)* R
-   130       CONTINUE
-             DO 150 K = 1, NUMAT
-                IF (K . EQ. I) GO TO 150
-                DIST=0.
-                DO 140 IX=1,3
-                   DIST = DIST + (XX(IX) - COORD(IX,K))**2
-   140          CONTINUE
-                DIST=SQRT(DIST)-SRAD(K)
-                IF (DIST .LT. 0) GO TO 160
-   150       CONTINUE
-             NAREA=NAREA+1
-             DIN(J)=.TRUE.
-   160    CONTINUE
-          AREA=AREA+NAREA*RI*RI
    200    SDIS0=SDIS
           DO 210 IPS=NPS0,NPS
              NAR(IPS)=0
--- 219,224 ----
***************
*** 325,331 ****
              NARJ=NAR(JPS)
              NSETFJ=NSETF(JPS)
              J=IATSP(JPS)
!             DIST=0.
              DO 370 IX=1,3
                 XJ(IX)=COORD(IX,J)-XI(IX)
    370       DIST=DIST+(XSP(IX,JPS)-XA(IX))**2
--- 332,338 ----
              NARJ=NAR(JPS)
              NSETFJ=NSETF(JPS)
              J=IATSP(JPS)
!             DIST=0.D0
              DO 370 IX=1,3
                 XJ(IX)=COORD(IX,J)-XI(IX)
    370       DIST=DIST+(XSP(IX,JPS)-XA(IX))**2
***************
*** 360,368 ****
                          J2=NSET(L)
  C                  AA=((DIRVEC(1,J2)*RJ-XX(1))**2+(DIRVEC(2,J2)*RJ
  C     &                   -XX(2))**2+(DIRVEC(3,J2)*RJ-XX(3))**2)
!                         AIJ=AIJ+((DIRVEC(1,J2)*RJ-XX(1))**2+(DIRVEC(2,J2
!      1)*RJ                   -XX(2))**2+(DIRVEC(3,J2)*RJ-XX(3))**2)**-.5
!      2D0
    420                CONTINUE
                    END IF
    430          CONTINUE
--- 367,380 ----
                          J2=NSET(L)
  C                  AA=((DIRVEC(1,J2)*RJ-XX(1))**2+(DIRVEC(2,J2)*RJ
  C     &                   -XX(2))**2+(DIRVEC(3,J2)*RJ-XX(3))**2)
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C                       AIJ=AIJ+((DIRVEC(1,J2)*RJ-XX(1))**2+(DIRVEC(2,J2
! C    1)*RJ                   -XX(2))**2+(DIRVEC(3,J2)*RJ-XX(3))**2)**-.5
! C    2D0
!                         AIJ=AIJ+((DIRVEC(1,J2)*RJ-XX(1))**2
!      1                          +(DIRVEC(2,J2)*RJ-XX(2))**2
!      2                          +(DIRVEC(3,J2)*RJ-XX(3))**2)**(-.5D0)
! C ***************************** at 1994-05-25 *****
    420                CONTINUE
                    END IF
    430          CONTINUE
***************
*** 376,382 ****
--- 388,402 ----
    450 CONTINUE
  C INVERT A-MATRIX
        CALL DGETRF(NPS,NPS,ABCMAT,NPS,IPIV,INFO)
+       IF( INFO.NE.0 ) THEN
+           WRITE(*,*) ' DGETRF FAILED WITH ERROR CODE ', INFO
+           STOP 'CONSTS'
+       ENDIF
        CALL DGETRI(NPS,ABCMAT,NPS,IPIV,XSP, 3*LENABC,INFO)
+       IF( INFO.NE.0 ) THEN
+           WRITE(*,*) ' DGETRI FAILED WITH ERROR CODE ', INFO
+           STOP 'CONSTS'
+       ENDIF
  C  STORE INV. A-MATRIX AS LOWER TRIANGLE
        II=0
        DO 460 I=1,NPS
diff -cdN ../src.old//cqden.f ./cqden.f
*** ../src.old//cqden.f	Tue Apr 20 03:38:10 1993
--- ./cqden.f	Tue Jan 17 15:25:03 1995
***************
*** 8,14 ****
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
!       COMMON /DENSTY/ P(MPACK)
        COMMON /CORE  / CORE(107)
        IDEN=0
        DO 30 I=1,NUMAT
--- 8,14 ----
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
!       COMMON /DENSTY/ P(MPACK), PA(MPACK), PB(MPACK)
        COMMON /CORE  / CORE(107)
        IDEN=0
        DO 30 I=1,NUMAT
diff -cdN ../src.old//dcart.f ./dcart.f
*** ../src.old//dcart.f	Tue Apr 20 03:38:10 1993
--- ./dcart.f	Wed Jan 25 10:28:23 1995
***************
*** 77,83 ****
                 DO 120 JK=K2L,K2U
                    DO 120 KL=K3L,K3U
                       JJJ=JJJ+1
!                      KKK=KKK-1
                       DO 40 L=1,3
     40                CDI(L,1)=COORD(L,JJ)+TVEC(L,1)*IK+TVEC(L,2)*JK+TVEC
       1(L,3)*KL
--- 77,83 ----
                 DO 120 JK=K2L,K2U
                    DO 120 KL=K3L,K3U
                       JJJ=JJJ+1
! *                    KKK=KKK-1
                       DO 40 L=1,3
     40                CDI(L,1)=COORD(L,JJ)+TVEC(L,1)*IK+TVEC(L,2)*JK+TVEC
       1(L,3)*KL
***************
*** 173,178 ****
--- 173,179 ----
  C     DO 170 I=1,6
  C 170 LSTOR1(I)=LSTOR2(I)
        IF (  .NOT. DEBUG) RETURN
+       IW = 6
        WRITE(IW,'(//10X,''CARTESIAN COORDINATE DERIVATIVES'',//3X,
       1''NUMBER  ATOM '',5X,''X'',12X,''Y'',12X,''Z'',/)')
        IF(NCELLS.EQ.1)THEN
***************
*** 186,191 ****
--- 187,193 ----
       1 (I,NAT((I-1)/NCELLS+1),(DXYZ(J,I)+DXYZ(J,I+1)+DXYZ(J,I+2)
       2,J=1,3),I=1,NUMTOT,3)
        ENDIF
+       IROT = 2
        IF (ANADER) REWIND IROT
  C end of COSMO (A. Klamt) changes
        IF (  .NOT. DEBUG) RETURN
diff -cdN ../src.old//denrot.f ./denrot.f
*** ../src.old//denrot.f	Tue Apr 20 03:38:10 1993
--- ./denrot.f	Tue Jan 17 15:33:56 1995
***************
*** 2,8 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        COMMON /DENSTY/ P(MPACK),PA(MPACK),PB(MPACK)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
--- 2,8 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        COMMON /DENSTY/ P(MPACK),PA(MPACK),PB(MPACK)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
diff -cdN ../src.old//deri2.f ./deri2.f
*** ../src.old//deri2.f	Tue Apr 20 03:38:12 1993
--- ./deri2.f	Fri Jan 27 09:43:44 1995
***************
*** 79,85 ****
        COMMON /WORK2 / BAB(MMCI,MMCI),
       +DUMY(NMECI**4+2*NMECI**3+NMECI**2-MMCI*MMCI)
        COMMON /NUMCAL/ NUMCAL
!       DIMENSION LCONV(60)
        LOGICAL FAIL, LCONV, DEBUG, LBAB
        CHARACTER KEYWRD*241
        DATA ICALCN/0/
--- 79,85 ----
        COMMON /WORK2 / BAB(MMCI,MMCI),
       +DUMY(NMECI**4+2*NMECI**3+NMECI**2-MMCI*MMCI)
        COMMON /NUMCAL/ NUMCAL
!       DIMENSION LCONV(MMCI)
        LOGICAL FAIL, LCONV, DEBUG, LBAB
        CHARACTER KEYWRD*241
        DATA ICALCN/0/
***************
*** 90,96 ****
        IF(ICALCN.NE.NUMCAL) THEN
           DEBUG=INDEX(KEYWRD,' DERI2').NE.0
           ICALCN=NUMCAL
!          MAXITE=MIN(60,INT(SQRT(NMECI**3.D0)),MPACK*2/NVAR)
           MAXITE=MIN(MAXITE,MIN(NW2,NW3)/MAX(MINEAR,NINEAR))
           NFIRST=MIN(NVAR,1+MAXITE/4)
        ENDIF
--- 90,96 ----
        IF(ICALCN.NE.NUMCAL) THEN
           DEBUG=INDEX(KEYWRD,' DERI2').NE.0
           ICALCN=NUMCAL
!          MAXITE=MIN(MMCI,INT(SQRT(NMECI**3.D0)),MPACK*2/NVAR)
           MAXITE=MIN(MAXITE,MIN(NW2,NW3)/MAX(MINEAR,NINEAR))
           NFIRST=MIN(NVAR,1+MAXITE/4)
        ENDIF
diff -cdN ../src.old//dernvo.f ./dernvo.f
*** ../src.old//dernvo.f	Tue Apr 20 03:38:12 1993
--- ./dernvo.f	Wed Jan 25 10:47:11 1995
***************
*** 43,48 ****
--- 43,54 ----
  *               IN KCAL/MOL/ANGSTROM (3 * NUMAT OF THESE)
  *
  ***********************************************************************
+ C
+ C    NW2 and NW3 should be set to *something*, probably sizes of WORK2 
+ C    and WORK3 arrays? Since the code works with NW2 and NW3 set to zero
+ C    by implicit initialization, we can as well do it explicitly.... -P.S.
+ C
+       PARAMETER (NW2=0,NW3=0)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM)
       1               ,NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA
       2               ,NCLOSE,NOPEN,NDUMY,FRACT
diff -cdN ../src.old//dfock2.f ./dfock2.f
*** ../src.old//dfock2.f	Tue Apr 20 03:38:12 1993
--- ./dfock2.f	Wed Jan 25 10:47:35 1995
***************
*** 111,117 ****
           IF(II.EQ.JJ) GOTO 260
           JA=NFIRST(JJ)
           JB=NLAST(JJ)
!          JC=NMIDLE(JJ)
              IF(IB-IA.GE.3.AND.JB-JA.GE.3)THEN
  C
  C                         HEAVY-ATOM  - HEAVY-ATOM
--- 111,117 ----
           IF(II.EQ.JJ) GOTO 260
           JA=NFIRST(JJ)
           JB=NLAST(JJ)
! *        JC=NMIDLE(JJ)
              IF(IB-IA.GE.3.AND.JB-JA.GE.3)THEN
  C
  C                         HEAVY-ATOM  - HEAVY-ATOM
diff -cdN ../src.old//dfpsav.f ./dfpsav.f
*** ../src.old//dfpsav.f	Tue Apr 20 03:38:12 1993
--- ./dfpsav.f	Tue Jan 17 15:33:50 1995
***************
*** 23,34 ****
        COMMON /ALPARM/ ALPARM(3,MAXPAR),X0, X1, X2, ILOOP
        COMMON /PPARAM/ CURRT
        COMMON /GPARAM/ CURRT1,CURRT2
!       COMMON /PROFIL/ PROFIL
        COMMON /SURF  / SURF
        COMMON /KLOOP / KLOOP
        COMMON /IJLP  / IJLP, ILP, JLP, JLP1, IONE
        COMMON /REACTN/ STEP, GEOA(3,NUMATM), GEOVEC(3,NUMATM),CALCST
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1                NA(NUMATM),NB(NUMATM),NC(NUMATM)
        COMMON /ELEMTS/ ELEMNT(107)
--- 23,37 ----
        COMMON /ALPARM/ ALPARM(3,MAXPAR),X0, X1, X2, ILOOP
        COMMON /PPARAM/ CURRT
        COMMON /GPARAM/ CURRT1,CURRT2
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C     COMMON /PROFIL/ PROFIL
!       COMMON /PROFIC/ PROFIL
! C ***************************** at 1994-05-25 *****
        COMMON /SURF  / SURF
        COMMON /KLOOP / KLOOP
        COMMON /IJLP  / IJLP, ILP, JLP, JLP1, IONE
        COMMON /REACTN/ STEP, GEOA(3,NUMATM), GEOVEC(3,NUMATM),CALCST
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1                NA(NUMATM),NB(NUMATM),NC(NUMATM)
        COMMON /ELEMTS/ ELEMNT(107)
diff -cdN ../src.old//diegrd.f ./diegrd.f
*** ../src.old//diegrd.f	Tue Apr 20 03:38:12 1993
--- ./diegrd.f	Thu Jan 26 10:32:35 1995
***************
*** 5,11 ****
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                QS(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC)
        COMMON /DIRVEC/ DIRVEC(3,NPPA), NN(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
--- 5,11 ----
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                QS(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC), NNX(2,NUMATM)
        COMMON /DIRVEC/ DIRVEC(3,NPPA), NN(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
***************
*** 22,28 ****
     20 DB(IX,I)=0.D0
        DB(0,1)=1.D0
        CALL CQDEN()
!       FACT=-2*13.6058*.5292*FEPSI*23.061
        DO 30 I=1,NPS
     30 QS(I)=0.D0
        I0=NPS2-NDEN
--- 22,28 ----
     20 DB(IX,I)=0.D0
        DB(0,1)=1.D0
        CALL CQDEN()
!       FACT=-2*13.6058D0*.5292D0*FEPSI*23.061D0
        DO 30 I=1,NPS
     30 QS(I)=0.D0
        I0=NPS2-NDEN
***************
*** 51,57 ****
                 XL(IX)=XXX
                 DIST2=DIST2+XXX*XXX
     90       CONTINUE
!             FF=QSK*QS(L)*FACT*DIST2**-1.5D0
              DO 100 IX=1,3
                 DXYZ(IX,IAK)=DXYZ(IX,IAK)-XL(IX)*FF
                 DXYZ(IX,IAL)=DXYZ(IX,IAL)+XL(IX)*FF
--- 51,60 ----
                 XL(IX)=XXX
                 DIST2=DIST2+XXX*XXX
     90       CONTINUE
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C           FF=QSK*QS(L)*FACT*DIST2**-1.5D0
!             FF=QSK*QS(L)*FACT*DIST2**(-1.5D0)
! C ***************************** at 1994-05-25 *****
              DO 100 IX=1,3
                 DXYZ(IX,IAK)=DXYZ(IX,IAK)-XL(IX)*FF
                 DXYZ(IX,IAL)=DXYZ(IX,IAL)+XL(IX)*FF
***************
*** 74,82 ****
                 XX(IX)=XXX
                 DIST2=DIST2+XXX*XXX
    140       CONTINUE
!             DDI=DD(NATI)*2*.529177
!             QQI2=(.529177*QQ(NATI))**2
!             FF0=-QSK*FACT*DIST2**-1.5D0
              IF(IDEL .EQ. 0) GO TO 150
              RM2=1.D0/DIST2
              RM4=RM2**2
--- 77,88 ----
                 XX(IX)=XXX
                 DIST2=DIST2+XXX*XXX
    140       CONTINUE
!             DDI=DD(NATI)*2*.529177D0
!             QQI2=(.529177D0*QQ(NATI))**2
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C           FF0=-QSK*FACT*DIST2**-1.5D0
!             FF0=-QSK*FACT*DIST2**(-1.5D0)
! C ***************************** at 1994-05-25 *****
              IF(IDEL .EQ. 0) GO TO 150
              RM2=1.D0/DIST2
              RM4=RM2**2
diff -cdN ../src.old//diis.f ./diis.f
*** ../src.old//diis.f	Tue Apr 20 03:38:12 1993
--- ./diis.f	Tue Jan 17 12:18:16 1995
***************
*** 329,335 ****
  C     CONTAINED IN BIGA)
  C
     80    IF (BIGA) 100,90,100
!    90    D=0.0
           RETURN
    100    DO 120 I=1,N
              IF (I-K) 110,120,110
--- 329,335 ----
  C     CONTAINED IN BIGA)
  C
     80    IF (BIGA) 100,90,100
!    90    D=0.0D0
           RETURN
    100    DO 120 I=1,N
              IF (I-K) 110,120,110
***************
*** 365,371 ****
  C
  C     REPLACE PIVOT BY RECIPROCAL
  C
!          A(KK)=1.0/BIGA
    180 CONTINUE
  C
  C     FINAL ROW AND COLUMN INTERCHANGE
--- 365,371 ----
  C
  C     REPLACE PIVOT BY RECIPROCAL
  C
!          A(KK)=1.0D0/BIGA
    180 CONTINUE
  C
  C     FINAL ROW AND COLUMN INTERCHANGE
diff -cdN ../src.old//dipind.f ./dipind.f
*** ../src.old//dipind.f	Tue Apr 20 03:38:14 1993
--- ./dipind.f	Tue Jan 17 15:33:41 1995
***************
*** 8,14 ****
        COMMON /CORE  / CORE(107)
        COMMON /DENSTY/ P(MPACK),PA(MPACK),PB(MPACK)
        COMMON /MOLMEC/ HTYPE(4),NHCO(4,20),NNHCO,ITYPE
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM),NORBS,NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
--- 8,14 ----
        COMMON /CORE  / CORE(107)
        COMMON /DENSTY/ P(MPACK),PA(MPACK),PB(MPACK)
        COMMON /MOLMEC/ HTYPE(4),NHCO(4,20),NNHCO,ITYPE
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM),NORBS,NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
***************
*** 83,89 ****
  C
        IF (ICALCN.NE.NUMCAL) THEN
           DO 20 I=2,107
!    20    HYF(I,1)= 5.0832*DD(I)
           WTMOL=0.D0
           SUM=0.D0
           DO 30 I=1,NUMAT
--- 83,89 ----
  C
        IF (ICALCN.NE.NUMCAL) THEN
           DO 20 I=2,107
!    20    HYF(I,1)= 5.0832D0*DD(I)
           WTMOL=0.D0
           SUM=0.D0
           DO 30 I=1,NUMAT
diff -cdN ../src.old//dipole.f ./dipole.f
*** ../src.old//dipole.f	Tue Apr 20 03:38:14 1993
--- ./dipole.f	Tue Jan 17 12:19:00 1995
***************
*** 68,74 ****
        ICALCN=NUMCAL
        IF (FIRST) THEN
           DO 10 I=2,107
!    10    HYF(I,1)= 5.0832*DD(I)
           WTMOL=0.D0
           SUM=0.D0
           DO 20 I=1,NUMAT
--- 68,74 ----
        ICALCN=NUMCAL
        IF (FIRST) THEN
           DO 10 I=2,107
!    10    HYF(I,1)= 5.0832D0*DD(I)
           WTMOL=0.D0
           SUM=0.D0
           DO 20 I=1,NUMAT
diff -cdN ../src.old//drc.f ./drc.f
*** ../src.old//drc.f	Tue Apr 20 03:38:14 1993
--- ./drc.f	Wed Jan 25 10:48:43 1995
***************
*** 19,25 ****
        COMMON /GRADNT/ GRAD(MAXPAR),GNORM
        COMMON /NUMCAL/ NUMCAL
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /ATMASS/ ATMASS(NUMATM)
        COMMON /GEOVAR/ NVAR, LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
--- 19,25 ----
        COMMON /GRADNT/ GRAD(MAXPAR),GNORM
        COMMON /NUMCAL/ NUMCAL
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /ATMASS/ ATMASS(NUMATM)
        COMMON /GEOVAR/ NVAR, LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
***************
*** 431,437 ****
  C
  C  CONVERT ENERGY INTO KCAL/MOLE
  C
!          EKIN=0.5*EKIN/4.184D10
  C
  C  IF IT IS A DAMPED DRC, MODIFY ETOT TO REFLECT LOSS OF KINETIC ENERGY
  C
--- 431,437 ----
  C
  C  CONVERT ENERGY INTO KCAL/MOLE
  C
!          EKIN=0.5D0*EKIN/4.184D10
  C
  C  IF IT IS A DAMPED DRC, MODIFY ETOT TO REFLECT LOSS OF KINETIC ENERGY
  C
diff -cdN ../src.old//dvfill.f ./dvfill.f
*** ../src.old//dvfill.f	Tue Apr 20 03:38:14 1993
--- ./dvfill.f	Tue Jan 17 12:20:56 1995
***************
*** 16,23 ****
        DIRVEC (2,1) =   0.D0
        DIRVEC (3,1) =   0.D0
        ND=1
!       R=SQRT(.8)
!       H=SQRT(.2)
        DO 10 I= -1,1,2
           DO 10 J= 1,5
              ND=ND+1
--- 16,23 ----
        DIRVEC (2,1) =   0.D0
        DIRVEC (3,1) =   0.D0
        ND=1
!       R=SQRT(.8D0)
!       H=SQRT(.2D0)
        DO 10 I= -1,1,2
           DO 10 J= 1,5
              ND=ND+1
***************
*** 65,71 ****
     90 CONTINUE
        IF (K .EQ. 2*KH) GO TO 140
  C CREATE TO ADDITIONAL SUBGRIDS
!       T=1./3
        DO 110 I=1,20
           NA=FSET(1,I)
           NB=FSET(2,I)
--- 65,71 ----
     90 CONTINUE
        IF (K .EQ. 2*KH) GO TO 140
  C CREATE TO ADDITIONAL SUBGRIDS
!       T=1.D0/3.D0
        DO 110 I=1,20
           NA=FSET(1,I)
           NB=FSET(2,I)
***************
*** 77,83 ****
    100          DIRVEC(IX,ND)=DIRVEC(IX,NA)*(M-J1-J2-2*T)
       1                 +DIRVEC(IX,NB)*(J1+T)+DIRVEC(IX,NC)*(J2+T)
    110 CONTINUE
!       T=2./3
        DO 130 I=1,20
           NA=FSET(1,I)
           NB=FSET(2,I)
--- 77,83 ----
    100          DIRVEC(IX,ND)=DIRVEC(IX,NA)*(M-J1-J2-2*T)
       1                 +DIRVEC(IX,NB)*(J1+T)+DIRVEC(IX,NC)*(J2+T)
    110 CONTINUE
!       T=2.D0/3.D0
        DO 130 I=1,20
           NA=FSET(1,I)
           NB=FSET(2,I)
***************
*** 91,100 ****
    130 CONTINUE
  C NORMALIZE ALL VECTORS
    140 DO 170 I=1,NPPA
!          DIST=0.
           DO 150 IX=1,3
    150    DIST=DIST+DIRVEC(IX,I)**2
!          DIST=1./SQRT(DIST)
           DO 160 IX=1,3
    160    DIRVEC(IX,I)=DIRVEC(IX,I)*DIST
    170 CONTINUE
--- 91,100 ----
    130 CONTINUE
  C NORMALIZE ALL VECTORS
    140 DO 170 I=1,NPPA
!          DIST=0.D0
           DO 150 IX=1,3
    150    DIST=DIST+DIRVEC(IX,I)**2
!          DIST=1.D0/SQRT(DIST)
           DO 160 IX=1,3
    160    DIRVEC(IX,I)=DIRVEC(IX,I)*DIST
    170 CONTINUE
diff -cdN ../src.old//ef.f ./ef.f
*** ../src.old//ef.f	Tue Apr 20 03:38:14 1993
--- ./ef.f	Wed Jan 25 17:49:50 1995
***************
*** 1,6 ****
        SUBROUTINE EF(XPARAM, NVAR, FUNCT)
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
!       REAL*8 LAMDA,LAMDA0
        INCLUDE 'SIZES'
        DIMENSION XPARAM(MAXPAR)
  **********************************************************************
--- 1,6 ----
        SUBROUTINE EF(XPARAM, NVAR, FUNCT)
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
!       DOUBLE PRECISION LAMDA,LAMDA0
        INCLUDE 'SIZES'
        DIMENSION XPARAM(MAXPAR)
  **********************************************************************
***************
*** 27,38 ****
  C
        COMMON /MESAGE/ IFLEPO,ISCF
        COMMON /GEOVAR/ NDUM,LOC(2,MAXPAR), IDUMY, XARAM(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)
        COMMON /ISTOPE/ AMS(107)
        COMMON /LAST  / LAST
        COMMON /KEYWRD/ KEYWRD
!       COMMON /TIME  / TIME0
        COMMON /GRADNT/ GRAD(MAXPAR),GNFINA
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
--- 27,41 ----
  C
        COMMON /MESAGE/ IFLEPO,ISCF
        COMMON /GEOVAR/ NDUM,LOC(2,MAXPAR), IDUMY, XARAM(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)
        COMMON /ISTOPE/ AMS(107)
        COMMON /LAST  / LAST
        COMMON /KEYWRD/ KEYWRD
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C     COMMON /TIME  / TIME0
!       COMMON /TIMEC / TIME0
! C ***************************** at 1994-05-25 *****
        COMMON /GRADNT/ GRAD(MAXPAR),GNFINA
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
***************
*** 43,56 ****
  CONVEX      COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR),BMAT(MAXPAR,MAXPAR),
  CONVEX     1PMAT(MAXPAR*MAXPAR)
        COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR),BMAT(MAXPAR,MAXPAR),
!      1PMAT(MAXHES)
  CONVEX      COMMON /SCRACH/ PVEC
        COMMON /SCFTYP/ EMIN, LIMSCF
        COMMON/OPTEF/OLDF(MAXPAR),D(MAXPAR),VMODE(MAXPAR),
       $U(MAXPAR,MAXPAR),DD,rmin,rmax,omin,xlamd,xlamd0,skal,
       $MODE,NSTEP,NEGREQ,IPRNT
        COMMON/THREADS/NUM_THREADS
!       COMMON/FLUSH/NFLUSH
  
        DIMENSION IPOW(9), EIGVAL(MAXPAR),TVEC(MAXPAR),SVEC(MAXPAR),
       1FX(MAXPAR),HESSC(MAXHES),UC(MAXPAR**2),oldfx(maxpar),
--- 46,62 ----
  CONVEX      COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR),BMAT(MAXPAR,MAXPAR),
  CONVEX     1PMAT(MAXPAR*MAXPAR)
        COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR),BMAT(MAXPAR,MAXPAR),
!      1PMAT(MAXPAR**2)
  CONVEX      COMMON /SCRACH/ PVEC
        COMMON /SCFTYP/ EMIN, LIMSCF
        COMMON/OPTEF/OLDF(MAXPAR),D(MAXPAR),VMODE(MAXPAR),
       $U(MAXPAR,MAXPAR),DD,rmin,rmax,omin,xlamd,xlamd0,skal,
       $MODE,NSTEP,NEGREQ,IPRNT
        COMMON/THREADS/NUM_THREADS
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C     COMMON/FLUSH/NFLUSH
!       COMMON/FLUSHC/NFLUSH
! C ***************************** at 1994-05-25 *****
  
        DIMENSION IPOW(9), EIGVAL(MAXPAR),TVEC(MAXPAR),SVEC(MAXPAR),
       1FX(MAXPAR),HESSC(MAXHES),UC(MAXPAR**2),oldfx(maxpar),
***************
*** 458,464 ****
        COMMON /TITLES/ KOMENT,TITLE
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1                NA(NUMATM),NB(NUMATM),NC(NUMATM)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /LOCVAR/ LOCVAR(2,MAXPAR)
        COMMON /NUMSCF/ NSCF
        COMMON /KEYWRD/ KEYWRD
--- 464,470 ----
        COMMON /TITLES/ KOMENT,TITLE
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1                NA(NUMATM),NB(NUMATM),NC(NUMATM)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /LOCVAR/ LOCVAR(2,MAXPAR)
        COMMON /NUMSCF/ NSCF
        COMMON /KEYWRD/ KEYWRD
***************
*** 556,567 ****
        COMMON /NUMCAL/ NUMCAL                                                    
        COMMON /SCFTYP/ EMIN, LIMSCF
        COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR),BMAT(MAXPAR,MAXPAR),                  
!      *PMAT(MAXPAR)                                                              
        COMMON/OPTEF/OLDF(MAXPAR),D(MAXPAR),VMODE(MAXPAR),
       $U(MAXPAR,MAXPAR),DD,rmin,rmax,omin,xlamd,xlamd0,skal,
       $MODE,NSTEP,NEGREQ,IPRNT
        DIMENSION IPOW(9)               
        LOGICAL RESTRT,SCF1,LDUM,LUPD,log,rrscal,donr,gnmin 
        CHARACTER*241 KEYWRD,LINE                                               
        CHARACTER CHDOT*1,ZERO*1,NINE*1,CH*1
        DATA CHDOT,ZERO,NINE   /'.','0','9'/                     
--- 562,576 ----
        COMMON /NUMCAL/ NUMCAL                                                    
        COMMON /SCFTYP/ EMIN, LIMSCF
        COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR),BMAT(MAXPAR,MAXPAR),                  
!      *PMAT(MAXPAR**2)                                                              
        COMMON/OPTEF/OLDF(MAXPAR),D(MAXPAR),VMODE(MAXPAR),
       $U(MAXPAR,MAXPAR),DD,rmin,rmax,omin,xlamd,xlamd0,skal,
       $MODE,NSTEP,NEGREQ,IPRNT
        DIMENSION IPOW(9)               
        LOGICAL RESTRT,SCF1,LDUM,LUPD,log,rrscal,donr,gnmin 
+ C ***** Added    by Jiro Toyoda at 1994-05-25 *****
+       LOGICAL LIMSCF
+ C ***************************** at 1994-05-25 *****
        CHARACTER*241 KEYWRD,LINE                                               
        CHARACTER CHDOT*1,ZERO*1,NINE*1,CH*1
        DATA CHDOT,ZERO,NINE   /'.','0','9'/                     
***************
*** 712,719 ****
       1osmin,ts,lrjk,lorjk,rrscal,donr)
  C     This version forms geometry step by either pure NR, P-RFO or QA
  C     algorithm, under the condition that the steplength is less than dmax
!       IMPLICIT REAL*8(A-H,O-Z)
!       REAL*8 LAMDA,lamda0
        INCLUDE 'SIZES'                                                           
        logical ts,rscal,frodo1,frodo2,lrjk,lorjk,rrscal,donr
        DIMENSION EIGVAL(MAXPAR),FX(MAXPAR)                                       
--- 721,728 ----
       1osmin,ts,lrjk,lorjk,rrscal,donr)
  C     This version forms geometry step by either pure NR, P-RFO or QA
  C     algorithm, under the condition that the steplength is less than dmax
!       IMPLICIT DOUBLE PRECISION(A-H,O-Z)
!       DOUBLE PRECISION LAMDA,lamda0
        INCLUDE 'SIZES'                                                           
        logical ts,rscal,frodo1,frodo2,lrjk,lorjk,rrscal,donr
        DIMENSION EIGVAL(MAXPAR),FX(MAXPAR)                                       
***************
*** 1009,1015 ****
  C      4 : READ IN FROM FTN009 (DURING RESTART, PARTLY OR WHOLE,                
  C          ALREADY DONE AT THIS POINT)                                          
        COMMON /GEOVAR/ NDUM,LOC(2,MAXPAR), IDUMY, XARAM(MAXPAR)                  
!       COMMON /GEOM  / GEO(3,NUMATM)                                             
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)         
        COMMON /LAST  / LAST                                                      
        COMMON /KEYWRD/ KEYWRD                                                    
--- 1018,1024 ----
  C      4 : READ IN FROM FTN009 (DURING RESTART, PARTLY OR WHOLE,                
  C          ALREADY DONE AT THIS POINT)                                          
        COMMON /GEOVAR/ NDUM,LOC(2,MAXPAR), IDUMY, XARAM(MAXPAR)                  
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)         
        COMMON /LAST  / LAST                                                      
        COMMON /KEYWRD/ KEYWRD                                                    
***************
*** 1021,1028 ****
        COMMON /NUMCAL/ NUMCAL                                                    
        COMMON /SIGMA2/ GNEXT1(MAXPAR), GMIN1(MAXPAR)                             
        COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR),BMAT(MAXPAR,MAXPAR),                  
!      *PMAT(MAXPAR)                                                              
!       COMMON /SCRACH/ PVEC                                                      
        COMMON /TIMDMP/ TLEFT, TDUMP
        COMMON/OPTEF/OLDF(MAXPAR),D(MAXPAR),VMODE(MAXPAR),
       $U(MAXPAR,MAXPAR),DD,rmin,rmax,omin,xlamd,xlamd0,skal,
--- 1030,1037 ----
        COMMON /NUMCAL/ NUMCAL                                                    
        COMMON /SIGMA2/ GNEXT1(MAXPAR), GMIN1(MAXPAR)                             
        COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR),BMAT(MAXPAR,MAXPAR),                  
!      *PMAT(MAXPAR**2)                                                              
!       COMMON /SCRACH/ PVEC(MAXPAR**2)                                           
        COMMON /TIMDMP/ TLEFT, TDUMP
        COMMON/OPTEF/OLDF(MAXPAR),D(MAXPAR),VMODE(MAXPAR),
       $U(MAXPAR,MAXPAR),DD,rmin,rmax,omin,xlamd,xlamd0,skal,
***************
*** 1271,1277 ****
  C
        END
        SUBROUTINE PRJFC(F,xparam,nvar) 
!       IMPLICIT REAL*8(A-H,O-Z)
        INCLUDE 'SIZES'
  C                                                                       
  C  CALCULATES PROJECTED FORCE CONSTANT MATRIX (F).                      
--- 1280,1286 ----
  C
        END
        SUBROUTINE PRJFC(F,xparam,nvar) 
!       IMPLICIT DOUBLE PRECISION(A-H,O-Z)
        INCLUDE 'SIZES'
  C                                                                       
  C  CALCULATES PROJECTED FORCE CONSTANT MATRIX (F).                      
***************
*** 1295,1300 ****
--- 1304,1311 ----
       *          P(MAXPAR,MAXPAR),COF(MAXPAR,MAXPAR)                     
        DIMENSION TENS(3,3,3),ROT(3,3),SCR(3,3),ISCR(6),CMASS(3)          
        dimension coord(3,numatm),dx(maxpar),xparam(maxpar)
+       DIMENSION DETX(2)
+       EQUIVALENCE (DET,DETX(1))
        PARAMETER (ZERO=0.0d+00, ONE=1.0d+00, EPS=1.0d-14,                
       *           CUT5=1.0d-05, CUT8=1.0d-08)                            
  C                                                                       
***************
*** 1439,1445 ****
        CALL DGEFA(ROT,3,3,ISCR,INFO)                                     
        IF(INFO.NE.0) STOP                                                
        DET=ZERO                                                          
!       CALL DGEDI(ROT,3,3,ISCR,DET,SCR,1)                                
  C                                                                       
     22 CONTINUE                                                          
  c     WRITE (6,702)                                                     
--- 1450,1456 ----
        CALL DGEFA(ROT,3,3,ISCR,INFO)                                     
        IF(INFO.NE.0) STOP                                                
        DET=ZERO                                                          
!       CALL DGEDI(ROT,3,3,ISCR,DETX,SCR,1)                                
  C                                                                       
     22 CONTINUE                                                          
  c     WRITE (6,702)                                                     
***************
*** 1523,1529 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)                                       
        INCLUDE 'SIZES'
        COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR),BMAT(MAXPAR,MAXPAR),                  
!      *PMAT(MAXPAR)                                                              
        COMMON/OPTEF/OLDF(MAXPAR),D(MAXPAR),VMODE(MAXPAR),                        
       $U(MAXPAR,MAXPAR),DD,rmin,rmax,omin,xlamd,xlamd0,skal,
       $MODE,NSTEP,NEGREQ,IPRNT
--- 1534,1540 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)                                       
        INCLUDE 'SIZES'
        COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR),BMAT(MAXPAR,MAXPAR),                  
!      *PMAT(MAXPAR**2)                                                              
        COMMON/OPTEF/OLDF(MAXPAR),D(MAXPAR),VMODE(MAXPAR),                        
       $U(MAXPAR,MAXPAR),DD,rmin,rmax,omin,xlamd,xlamd0,skal,
       $MODE,NSTEP,NEGREQ,IPRNT
***************
*** 1570,1576 ****
       $U(MAXPAR,MAXPAR),DD,rmin,rmax,omin,xlamd,xlamd0,skal,
       $MODE,NSTEP,NEGREQ,IPRNT
  CONVEX      COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR*3)
!       COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR)
        COMMON /GRADNT/ GRAD(MAXPAR),GNFINA
  C
        DATA ZERO/0.0D0/
--- 1581,1588 ----
       $U(MAXPAR,MAXPAR),DD,rmin,rmax,omin,xlamd,xlamd0,skal,
       $MODE,NSTEP,NEGREQ,IPRNT
  CONVEX      COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR*3)
!       COMMON /NLLCOM/ HESS(MAXPAR,MAXPAR), BMAT(MAXPAR,MAXPAR),
!      .                PMAT(MAXPAR**2)
        COMMON /GRADNT/ GRAD(MAXPAR),GNFINA
  C
        DATA ZERO/0.0D0/
***************
*** 1760,1766 ****
  C ***********************************************************************
  
        SUBROUTINE DGEDI(A,LDA,N,IPVT,DET,WORK,JOB)                       
!       IMPLICIT REAL*8(A-H,O-Z)
        DIMENSION A(LDA,1),DET(2),WORK(1),IPVT(1)                         
  C                                                                       
  C     DGEDI COMPUTES THE DETERMINANT AND INVERSE OF A MATRIX            
--- 1772,1778 ----
  C ***********************************************************************
  
        SUBROUTINE DGEDI(A,LDA,N,IPVT,DET,WORK,JOB)                       
!       IMPLICIT DOUBLE PRECISION(A-H,O-Z)
        DIMENSION A(LDA,1),DET(2),WORK(1),IPVT(1)                         
  C                                                                       
  C     DGEDI COMPUTES THE DETERMINANT AND INVERSE OF A MATRIX            
***************
*** 1881,1887 ****
        RETURN                                                            
        END                                                               
        SUBROUTINE DGEFA(A,LDA,N,IPVT,INFO)                               
!       IMPLICIT REAL*8(A-H,O-Z)
        DIMENSION A(LDA,1),IPVT(1)                                        
  C                                                                       
  C     DGEFA FACTORS A DOUBLE PRECISION MATRIX BY GAUSSIAN ELIMINATION.  
--- 1893,1899 ----
        RETURN                                                            
        END                                                               
        SUBROUTINE DGEFA(A,LDA,N,IPVT,INFO)                               
!       IMPLICIT DOUBLE PRECISION(A-H,O-Z)
        DIMENSION A(LDA,1),IPVT(1)                                        
  C                                                                       
  C     DGEFA FACTORS A DOUBLE PRECISION MATRIX BY GAUSSIAN ELIMINATION.  
***************
*** 1980,1986 ****
  C*MODULE BLAS1   *DECK DSCAL
        SUBROUTINE  DSCAL(N,DA,DX,INCX)
        IMPLICIT DOUBLE PRECISION(A-H,O-Z)
!       DIMENSION DX(1)
  C
  C     SCALES A VECTOR BY A CONSTANT.
  C           DX(I) = DA * DX(I)
--- 1992,1998 ----
  C*MODULE BLAS1   *DECK DSCAL
        SUBROUTINE  DSCAL(N,DA,DX,INCX)
        IMPLICIT DOUBLE PRECISION(A-H,O-Z)
!       DIMENSION DX(*)
  C
  C     SCALES A VECTOR BY A CONSTANT.
  C           DX(I) = DA * DX(I)
***************
*** 2022,2028 ****
  C*MODULE BLAS1   *DECK DSWAP
        SUBROUTINE  DSWAP (N,DX,INCX,DY,INCY)
        IMPLICIT DOUBLE PRECISION(A-H,O-Z)
!       DIMENSION DX(1),DY(1)
  C
  C     INTERCHANGES TWO VECTORS.
  C           DX(I) <==> DY(I)
--- 2034,2040 ----
  C*MODULE BLAS1   *DECK DSWAP
        SUBROUTINE  DSWAP (N,DX,INCX,DY,INCY)
        IMPLICIT DOUBLE PRECISION(A-H,O-Z)
!       DIMENSION DX(*),DY(*)
  C
  C     INTERCHANGES TWO VECTORS.
  C           DX(I) <==> DY(I)
diff -cdN ../src.old//elements.dat ./elements.dat
*** ../src.old//elements.dat
--- ./elements.dat	Thu Jan 26 14:22:19 1995
***************
*** 0 ****
--- 1,662 ----
+  1SCF   MINDO GRADIENTS   PRECISE SYMMETRY
+     METHANE  HEAT OF FORMATION (MINDO/3) =  -6.278,     I.P.=13.30
+   TAKEN FROM "CORRECT" PROGRAM
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0096
+  C    1.1019593  1      0.000000  0      0.000000  0    1    0    0      0.0386
+  H    1.1019593  0    109.471221  0      0.000000  0    2    1    0     -0.0096
+  H    1.1019593  0    109.471221  0   -120.000000  0    2    1    3     -0.0096
+  H    1.1019593  0    109.471221  0    120.000000  0    2    1    3     -0.0096
+ 
+   2  1    3   4   5
+ 
+  1SCF   GRADIENTS   PRECISE SYMMETRY
+       METHANE  HEAT OF FORMATION (MNDO) =  -11.947,     I.P.=13.87
+      (DEWAR, M.J.S., THIEL, W., J.AM.CHEM.SOC. 99, 4907 1977.)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0176
+  C    1.1042316  1      0.000000  0      0.000000  0    1    0    0      0.0704
+  H    1.1042316  0    109.471221  0      0.000000  0    2    1    0     -0.0176
+  H    1.1042316  0    109.471221  0   -120.000000  0    2    1    3     -0.0176
+  H    1.1042316  0    109.471221  0    120.000000  0    2    1    3     -0.0176
+ 
+   2  1    3   4   5
+ 
+  1SCF   GRADIENTS   AM1   SYMMETRY
+         METHANE  HEAT OF FORMATION (AM1) =  -8.777,  I.P.= 13.31
+       (DEWAR, M.J.S., ET.AL. J.AM.CHEM.SOC., 107 3902 1985)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.0665
+  C    1.1116115  1      0.000000  0      0.000000  0    1    0    0     -0.2659
+  H    1.1116115  0    109.471221  0      0.000000  0    2    1    0      0.0665
+  H    1.1116115  0    109.471221  0   -120.000000  0    2    1    3      0.0665
+  H    1.1116115  0    109.471221  0    120.000000  0    2    1    3      0.0665
+ 
+   2  1    3   4   5
+ 
+   PM3   PRECISE SYMMETRY   1SCF   GRADIENTS
+         METHANE  HEAT OF FORMATION (PM3) = -13.015,  I.P.=13.64
+      (TAKEN FROM "CORRECT" PROGRAM [MOPAC 4.20])
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.0276
+  C    1.0870010  1      0.000000  0      0.000000  0    1    0    0     -0.1104
+  H    1.0870010  0    109.471221  0      0.000000  0    2    1    0      0.0276
+  H    1.0870010  0    109.471221  0   -120.000000  0    2    1    3      0.0276
+  H    1.0870010  0    109.471221  0    120.000000  0    2    1    3      0.0276
+ 
+   2  1    3   4   5
+ 
+  GRADIENTS  PRECISE 1SCF   
+   Lithium Hydride HEAT OF FORMATION (MNDO)= 23.206 Kcal/mol
+ 
+ Li    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.4382
+  H    1.3761355  1      0.000000  0      0.000000  0    1    0    0     -0.4382
+ 
+  1SCF   GRADIENTS     PRECISE
+              BEO  HEAT OF FORMATION (MNDO)= 38.582,  I.P.=11.23
+       (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+ Be    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.4463
+  O    1.3354373  1      0.000000  0      0.000000  0    1    0    0     -0.4463
+ 
+  1SCF   GRADIENTS     PRECISE  PM3
+               BEO  HEAT OF FORMATION (PM3)= 53.045,  I.P.=10.17
+       (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+ Be    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.6261
+  O    1.3039522  1      0.000000  0      0.000000  0    1    0    0     -0.6261
+ 
+  1SCF   GRADIENTS    PRECISE SYMMETRY   MINDO/3
+        BF3  HEAT OF FORMATION (MINDO/3) = -270.161,     I.P.=12.35
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  B    0.0000000  0      0.000000  0      0.000000  0    0    0    0      1.3345
+ XX    1.3023343  1      0.000000  0      0.000000  0    1    0    0
+ XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+  F    1.3023343  0     90.000000  0    180.000000  0    1    2    3     -0.4448
+  F    1.3023343  0     90.000000  0     60.000000  0    1    2    3     -0.4448
+  F    1.3023343  0     90.000000  0    -60.000000  0    1    2    3     -0.4448
+ 
+   2  1    4   5   6
+ 
+  1SCF   GRADIENTS    PRECISE SYMMETRY
+           BF3  HEAT OF FORMATION (MNDO) = -260.976,     I.P.=16.22
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  B    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.5270
+ XX    1.3160242  1      0.000000  0      0.000000  0    1    0    0
+ XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+  F    1.3160242  0     90.000000  0    180.000000  0    1    2    3     -0.1757
+  F    1.3160242  0     90.000000  0     60.000000  0    1    2    3     -0.1757
+  F    1.3160242  0     90.000000  0    -60.000000  0    1    2    3     -0.1757
+ 
+   2  1    4   5   6
+ 
+  AM1 1SCF   GRADIENTS    PRECISE SYMMETRY
+           BF3  HEAT OF FORMATION (AM1)  = -272.147,     I.P.=14.94
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  B    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.4411
+ XX    1.3063979  1      0.000000  0      0.000000  0    1    0    0
+ XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+  F    1.3063979  0     90.000000  0    180.000000  0    1    2    3     -0.1470
+  F    1.3063979  0     90.000000  0     60.000000  0    1    2    3     -0.1470
+  F    1.3063979  0     90.000000  0    -60.000000  0    1    2    3     -0.1470
+ 
+   2  1    4   5   6
+ 
+  1SCF   MINDO GRADIENTS   PRECISE SYMMETRY
+     METHANE  HEAT OF FORMATION (MINDO/3) =  -6.278,     I.P.=13.30
+   TAKEN FROM "CORRECT" PROGRAM
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0096
+  C    1.1019593  1      0.000000  0      0.000000  0    1    0    0      0.0386
+  H    1.1019593  0    109.471221  0      0.000000  0    2    1    0     -0.0096
+  H    1.1019593  0    109.471221  0   -120.000000  0    2    1    3     -0.0096
+  H    1.1019593  0    109.471221  0    120.000000  0    2    1    3     -0.0096
+ 
+   2  1    3   4   5
+ 
+  1SCF   GRADIENTS   PRECISE SYMMETRY
+       METHANE  HEAT OF FORMATION (MNDO) =  -11.947,     I.P.=13.87
+      (DEWAR, M.J.S., THIEL, W., J.AM.CHEM.SOC. 99, 4907 1977.)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0176
+  C    1.1042316  1      0.000000  0      0.000000  0    1    0    0      0.0704
+  H    1.1042316  0    109.471221  0      0.000000  0    2    1    0     -0.0176
+  H    1.1042316  0    109.471221  0   -120.000000  0    2    1    3     -0.0176
+  H    1.1042316  0    109.471221  0    120.000000  0    2    1    3     -0.0176
+ 
+   2  1    3   4   5
+ 
+  1SCF   GRADIENTS   AM1   SYMMETRY
+         METHANE  HEAT OF FORMATION (AM1) =  -8.777,  I.P.= 13.31
+       (DEWAR, M.J.S., ET.AL. J.AM.CHEM.SOC., 107 3902 1985)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.0665
+  C    1.1116115  1      0.000000  0      0.000000  0    1    0    0     -0.2659
+  H    1.1116115  0    109.471221  0      0.000000  0    2    1    0      0.0665
+  H    1.1116115  0    109.471221  0   -120.000000  0    2    1    3      0.0665
+  H    1.1116115  0    109.471221  0    120.000000  0    2    1    3      0.0665
+ 
+   2  1    3   4   5
+ 
+   PM3   PRECISE SYMMETRY   1SCF   GRADIENTS
+         METHANE  HEAT OF FORMATION (PM3) = -13.015,  I.P.=13.64
+      (TAKEN FROM "CORRECT" PROGRAM [MOPAC 4.20])
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.0276
+  C    1.0870010  1      0.000000  0      0.000000  0    1    0    0     -0.1104
+  H    1.0870010  0    109.471221  0      0.000000  0    2    1    0      0.0276
+  H    1.0870010  0    109.471221  0   -120.000000  0    2    1    3      0.0276
+  H    1.0870010  0    109.471221  0    120.000000  0    2    1    3      0.0276
+ 
+   2  1    3   4   5
+ 
+  1SCF   GRADIENTS  SYMMETRY   PRECISE  MINDO/3
+     AMMONIA  HEAT OF FORMATION (MINDO/3) =  -9.135,   I.P.=10.07
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  N    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.1669
+ XX    1.0312340  1      0.000000  0      0.000000  0    1    0    0
+ XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+  H    1.0312340  0    114.343228  1    180.000000  0    1    2    3      0.0556
+  H    1.0312340  0    114.343228  0     60.000000  0    1    2    3      0.0556
+  H    1.0312340  0    114.343228  0    -60.000000  0    1    2    3      0.0556
+ 
+   2  1    4   5   6
+   4  2    5   6
+ 
+  1SCF   GRADIENTS  SYMMETRY   PRECISE
+        AMMONIA  HEAT OF FORMATION (MNDO) =  -6.371,   I.P.=11.19
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  N    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.2268
+ XX    1.0073111  1      0.000000  0      0.000000  0    1    0    0
+ XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+  H    1.0073111  0    113.414743  1    180.000000  0    1    2    3      0.0756
+  H    1.0073111  0    113.414743  0     60.000000  0    1    2    3      0.0756
+  H    1.0073111  0    113.414743  0    -60.000000  0    1    2    3      0.0756
+ 
+   2  1    4   5   6
+   4  2    5   6
+ 
+  1SCF   GRADIENTS AM1  SYMMETRY   PRECISE
+         AMMONIA  HEAT OF FORMATION (AM1) =  -7.283,   I.P.=10.42
+         (DEWAR, M.J.S., ET.AL. J.AM.CHEM.SOC., 107 3902 1985)
+  N    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.3957
+ XX    0.9978448  1      0.000000  0      0.000000  0    1    0    0
+ XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+  H    0.9978448  0    109.855124  1    180.000000  0    1    2    3      0.1319
+  H    0.9978448  0    109.855124  0     60.000000  0    1    2    3      0.1319
+  H    0.9978448  0    109.855124  0    -60.000000  0    1    2    3      0.1319
+ 
+   2  1    4   5   6
+   4  2    5   6
+ 
+  1SCF   GRADIENTS PM3  SYMMETRY   PRECISE
+          AMMONIA  HEAT OF FORMATION (PM3) = -3.066,   I.P.=9.6956
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 4.20])
+  N    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.0065
+ XX    0.9994640  1      0.000000  0      0.000000  0    1    0    0
+ XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+  H    0.9994640  0    110.865210  1    180.000000  0    1    2    3     -0.0022
+  H    0.9994640  0    110.865210  0     60.000000  0    1    2    3     -0.0022
+  H    0.9994640  0    110.865210  0    -60.000000  0    1    2    3     -0.0022
+ 
+   2  1    4   5   6
+   4  2    5   6
+ 
+  GRADIENTS   SYMMETRY PRECISE  1SCF   MINDO3
+          CO2 HEAT OF FORMATION (MINDO/3) = -95.733,   I.P.=12.74
+     TAKEN FROM "CORRECT" PROGRAM
+  O    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.4758
+  C    1.1798152  1      0.000000  0      0.000000  0    1    0    0      0.9517
+  O    1.1798152  0    180.000000  0    180.000000  0    2    1    0     -0.4758
+ 
+   2  1    3
+ 
+  1SCF   GRADIENTS   SYMMETRY PRECISE
+   CARBON DIOXIDE HEAT OF FORMATION (MNDO)= -75.079,   I.P.=12.79
+     (DEWAR, M.J.S., THIEL, W., J.AM.CHEM.SOC. 99, 4907 1977.)
+  O    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.2240
+  C    1.1862049  1      0.000000  0      0.000000  0    1    0    0      0.4480
+  O    1.1862049  0    180.000000  0      0.000000  0    2    1    0     -0.2240
+ 
+   2  1    3
+ 
+  1SCF   GRADIENTS AM1    SYMMETRY PRECISE
+  CARBON DIOXIDE HEAT OF FORMATION (AM1) =  -79.829,   I.P.=13.21
+          (DEWAR, M.J.S., ET.AL. J.AM.CHEM.SOC., 107 3902 1985)
+  O    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.2057
+  C    1.1893594  1      0.000000  0      0.000000  0    1    0    0      0.4114
+  O    1.1893594  0    180.000000  0      0.000000  0    2    1    0     -0.2057
+ 
+   2  1    3
+ 
+  1SCF   GRADIENTS PM3   SYMMETRY PRECISE
+   CARBON DIOXIDE HEAT OF FORMATION (PM3) = -85.039,   I.P.=12.735
+     TAKEN FROM 'CORRECT' PROGRAM [MOPAC 4.20])
+  O    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.2588
+  C    1.1806109  1      0.000000  0      0.000000  0    1    0    0      0.5177
+  O    1.1806109  0    180.000000  0    180.000000  0    2    1    0     -0.2588
+ 
+   2  1    3
+ 
+  GRADIENTS  SYMMETRY  MINDO/3 1SCF   
+        CF4  HEAT OF FORMATION (MINDO/3) = -223.856, I.P.=13.49
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  F    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.4330
+  C    1.3032006  1      0.000000  0      0.000000  0    1    0    0      1.7320
+  F    1.3032006  0    109.471000  0      0.000000  0    2    1    0     -0.4330
+  F    1.3032006  0    109.471000  0   -120.000000  0    2    1    3     -0.4330
+  F    1.3032006  0    109.471000  0    120.000000  0    2    1    3     -0.4330
+ 
+   2  1    3   4   5
+ 
+  1SCF   GRADIENTS  SYMMETRY
+           CF4  HEAT OF FORMATION (MNDO) = -214.177, I.P.=16.81
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  F    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.2039
+  C    1.3469465  1      0.000000  0      0.000000  0    1    0    0      0.8157
+  F    1.3469465  0    109.471000  0      0.000000  0    2    1    0     -0.2039
+  F    1.3469465  0    109.471000  0   -120.000000  0    2    1    3     -0.2039
+  F    1.3469465  0    109.471000  0    120.000000  0    2    1    3     -0.2039
+ 
+   2  1    3   4   5
+ 
+  1SCF   GRADIENTS   SYMMETRY   AM1
+     CF4  HEAT OF FORMATION (AM1) =        -225.709,  I.P. = 15.32
+       (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  F    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.1442
+  C    1.3575716  1      0.000000  0      0.000000  0    1    0    0      0.5767
+  F    1.3575716  0    109.471000  0      0.000000  0    2    1    0     -0.1442
+  F    1.3575716  0    109.471000  0   -120.000000  0    2    1    3     -0.1442
+  F    1.3575716  0    109.471000  0    120.000000  0    2    1    3     -0.1442
+ 
+   2  1    3   4   5
+ 
+  1SCF   GRADIENTS  PM3 SYMMETRY
+            CF4  HEAT OF FORMATION (PM3) = -225.091, I.P.=16.79
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  F    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.1148
+  C    1.3367553  1      0.000000  0      0.000000  0    1    0    0      0.4592
+  F    1.3367553  0    109.471000  0      0.000000  0    2    1    0     -0.1148
+  F    1.3367553  0    109.471000  0   -120.000000  0    2    1    3     -0.1148
+  F    1.3367553  0    109.471000  0    120.000000  0    2    1    3     -0.1148
+ 
+   2  1    3   4   5
+ 
+   1SCF   GRADIENTS  PM3       SYMMETRY
+          MgF2   HEAT OF FORMATION (PM3) = -160.680      I.P.=13.889
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.0])
+  F    0.0000000  0     23.000000  0      0.000000  0    0    0    0     -0.3525
+ Mg    1.7623532  1      0.000000  0      0.000000  0    1    0    0      0.7051
+  F    1.7623532  0    110.177698  1    180.000000  0    2    1    0     -0.3525
+ 
+   2  1    3
+ 
+  1SCF   GRADIENTS   PRECISE
+   ALUMINUM FLUORIDE HEAT OF FORM'N (MNDO)= -83.560,     I.P.=8.62
+      (DAVIS, ET.AL. J. COMP. CHEM. 4 443, 1981.)
+ Al    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.4020
+  F    1.5602339  1      0.000000  0      0.000000  0    1    0    0     -0.4020
+ 
+  1SCF   GRADIENTS   PRECISE   AM1
+   ALUMINUM FLUORIDE HEAT OF FORM'N (AM1) = -77.868  I.P.=8.90
+      DEWAR AND HOLDER, ORGANOMETALLICS, 9, 508-511 (1990)
+ Al    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.3295
+  F    1.5580834  1      0.000000  0      0.000000  0    1    0    0     -0.3295
+ 
+  1SCF   GRADIENTS  PM3   PRECISE
+   ALUMINUM FLUORIDE HEAT OF FORM'N (PM3) = -50.129  I.P.=9.29
+    (TAKEN FROM MOPAC 4.20)
+ Al    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.2164
+  F    1.6521053  1      0.000000  0      0.000000  0    1    0    0     -0.2164
+ 
+  GRADIENTS  PRECISE    MINDO/3 1SCF   
+           SIH  HEAT OF FORMATION (MINDO/3)= 82.879,   I.P.=7.44
+    FROM "CORRECT" PROGRAM
+ Si    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.1421
+  H    1.5053410  1      0.000000  0      0.000000  0    1    0    0     -0.1421
+ 
+  1SCF   GRADIENTS  PRECISE
+              SIH  HEAT OF FORMATION (MNDO)= 90.219,   I.P.=5.97
+    ORGANOMETALLICS 5 375 (1986)
+ Si    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.4169
+  H    1.3743513  1      0.000000  0      0.000000  0    1    0    0     -0.4169
+ 
+  AM1   PRECISE 1SCF   GRADIENTS
+        SiH HEAT OF FORMATION SHOULD BE      89.818 KCAL
+        (TAKEN FROM "CORRECT" PROGRAM)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.2794
+ Si    1.4536433  1      0.000000  0      0.000000  0    1    0    0     -0.7206
+ 
+  1SCF   GRADIENTS PM3 PRECISE
+              SIH  HEAT OF FORMATION (PM3) = 94.571, I.P.=7.07
+    (TAKEN FROM "CORRECT" PROGRAM [MOPAC 4.20])
+ Si    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.2514
+  H    1.5050665  1      0.000000  0      0.000000  0    1    0    0     -0.2514
+ 
+  GRADIENTS     PRECISE SYMMETRY MINDO/3 1SCF   
+           PF3  HEAT OF FORMATION (MINDO/3) = 2.522,   I.P.=9.843
+       (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  P    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0964
+ XX    1.4175870  1      0.000000  0      0.000000  0    1    0    0
+ XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+  H    1.4175870  0     62.357890  1    180.000000  0    1    2    3      0.0321
+  H    1.4175870  0     62.357890  0     60.000000  0    1    2    3      0.0321
+  H    1.4175870  0     62.357890  0    -60.000000  0    1    2    3      0.0321
+ 
+   2  1    4   5   6
+   4  2    5   6
+ 
+  GRADIENTS     PRECISE SYMMETRY  1SCF   
+           PH3  HEAT OF FORMATION (MNDO) =   +3.936   I.P.=11.34
+       (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  P    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.2680
+ XX    1.3397630  1      0.000000  0      0.000000  0    1    0    0
+ XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+  H    1.3397630  0     59.171866  1    180.000000  0    1    2    3     -0.0893
+  H    1.3397630  0     59.171866  0     60.000000  0    1    2    3     -0.0893
+  H    1.3397630  0     59.171866  0    -60.000000  0    1    2    3     -0.0893
+ 
+   2  1    4   5   6
+   4  2    5   6
+ 
+  AM1 GRADIENTS     PRECISE SYMMETRY 1SCF   
+           AM1  HEAT OF FORMATION (AM1) =   +10.196   I.P.=10.42
+       (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  P    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0396
+ XX    1.3632745  1      0.000000  0      0.000000  0    1    0    0
+ XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+  H    1.3632745  0     59.450121  1    180.000000  0    1    2    3      0.0132
+  H    1.3632745  0     59.450121  0     60.000000  0    1    2    3      0.0132
+  H    1.3632745  0     59.450121  0    -60.000000  0    1    2    3      0.0132
+ 
+   2  1    4   5   6
+   4  2    5   6
+ 
+  GRADIENTS PM3 PRECISE SYMMETRY 1SCF   
+            PH3  HEAT OF FORMATION (PM3) =   +0.223   I.P.=8.674
+       (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 4.20])
+  P    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.4898
+ XX    1.3238810  1      0.000000  0      0.000000  0    1    0    0
+ XX    1.0000000  0    120.000000  0      0.000000  0    2    1    0
+  H    1.3238810  0     59.922627  1    180.000000  0    1    2    3     -0.1633
+  H    1.3238810  0     59.922627  0     60.000000  0    1    2    3     -0.1633
+  H    1.3238810  0     59.922627  0    -60.000000  0    1    2    3     -0.1633
+ 
+   2  1    4   5   6
+   4  2    5   6
+ 
+  GRADIENTS   1SCF   MINDO SYMMETRY
+          H2S  HEAT OF FORMATION (MINDO/3) = -2.584
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.1383
+  S    1.3369590  1      0.000000  0      0.000000  0    1    0    0     -0.2767
+  H    1.3369590  0     99.619050  1      0.000000  0    2    1    0      0.1383
+ 
+   2  1    3
+ 
+  GRADIENTS   SYMMETRY 1SCF   
+              H2S  HEAT OF FORMATION (MNDO) = 3.831
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0338
+  S    1.2992680  1      0.000000  0      0.000000  0    1    0    0      0.0676
+  H    1.2992680  0     98.034913  1      0.000000  0    2    1    0     -0.0338
+ 
+   2  1    3
+ 
+  1SCF   GRADIENTS   SYMMETRY AM1
+              H2S  HEAT OF FORMATION (AM1) =  1.206
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.0483
+  S    1.3225899  1      0.000000  0      0.000000  0    1    0    0     -0.0967
+  H    1.3225899  0     95.503378  1      0.000000  0    2    1    0      0.0483
+ 
+   2  1    3
+ 
+  1SCF   GRADIENTS PM3   SYMMETRY
+              H2S  HEAT OF FORMATION (PM3) = -0.913   I.P.=9.628
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 4.20])
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0     -0.0161
+  S    1.2903390  1      0.000000  0      0.000000  0    1    0    0      0.0323
+  H    1.2903390  0     93.513427  1      0.000000  0    2    1    0     -0.0161
+ 
+   2  1    3
+ 
+  1SCF   MINDO/3 GRADIENTS    PRECISE
+           HCl  HEAT OF FORMATION (MINDO/3)=-21.057,  I.P.=12.11
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.2248
+ Cl    1.2298671  1      0.000000  0      0.000000  0    1    0    0     -0.2248
+ 
+  1SCF   GRADIENTS    PRECISE
+              HCl  HEAT OF FORMATION (MNDO)=-15.259,  I.P.=13.00
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.1829
+ Cl    1.3481939  1      0.000000  0      0.000000  0    1    0    0     -0.1829
+ 
+  1SCF   GRADIENTS   AM1     PRECISE
+              HCl  HEAT OF FORMATION (AM1)= -24.608,  I.P.= 12.33
+       (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.1681
+ Cl    1.2835617  1      0.000000  0      0.000000  0    1    0    0     -0.1681
+ 
+  1SCF   GRADIENTS PM3    PRECISE
+             HCl  HEAT OF FORMATION (PM3) = -20.465,   I.P.=11.06
+      (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 4.20])
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.0970
+ Cl    1.2675466  1      0.000000  0      0.000000  0    1    0    0     -0.0970
+ 
+    1SCF   MNDO GRADIENTS PRECISE
+  Dimethylzinc  HEAT OF FORMATION (MNDO) =   19.876,     I.P.=10.542
+ 
+ Zn    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.3698
+  C    1.8839020  1      0.000000  0      0.000000  0    1    0    0     -0.1531
+  C    1.8839020  1    180.000000  1      0.000000  0    1    2    0     -0.1531
+  H    1.1105540  1    111.319038  1      0.000000  1    2    1    3     -0.0106
+  H    1.1105540  1    111.319038  1    120.000000  1    3    1    4     -0.0106
+  H    1.1105540  1    111.319038  1    120.000000  1    2    1    4     -0.0106
+  H    1.1105540  1    111.319038  1   -120.000000  1    2    1    4     -0.0106
+  H    1.1105540  1    111.319038  1   -120.000000  1    3    1    4     -0.0106
+  H    1.1105540  1    111.319038  1      0.000000  1    3    1    4     -0.0106
+ 
+   SYMMETRY   1SCF   AM1 GRADIENTS PRECISE
+  Dimethylzinc  HEAT OF FORMATION (AM1) =    19.842,     I.P.=9.738
+ 
+ Zn    0.0000000  0     12.000000  0      0.000000  0    0    0    0      0.5041
+  C    1.8991284  1      0.000000  0      0.000000  0    1    0    0     -0.5090
+  C    1.8991284  0    180.000000  0      0.000000  0    1    2    0     -0.5090
+  H    1.1144983  1    109.222291  1      0.000000  0    2    1    3      0.0857
+  H    1.1144983  0    109.222291  0    120.000000  0    3    1    4      0.0857
+  H    1.1144983  0    109.222291  0    120.000000  0    2    1    4      0.0857
+  H    1.1144983  0    109.222291  0   -120.000000  0    2    1    4      0.0857
+  H    1.1144983  0    109.222291  0   -120.000000  0    3    1    4      0.0857
+  H    1.1144983  0    109.222291  0    120.000000  0    3    1    8      0.0857
+ 
+   2  1    3
+   4  1    5   6   7   8   9
+   4  2    5   6   7   8   9
+ 
+    PM3 1SCF   GRADIENTS SYMMETRY
+           Zn(Me)2  HEAT OF FORMATION (PM3) = 8.208  I.P.=10.282
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.0])
+  Zn    0.0000000  0     12.000000  0      0.000000  0    0    0    0      0.2462
+   C    1.9374110  1      0.000000  0      0.000000  0    1    0    0     -0.3101
+   C    1.9374110  0    180.000000  0    180.000000  0    1    2    0     -0.3101
+   H    1.0952406  1    109.381903  1   -169.819541  1    2    1    3      0.0623
+   H    1.0952371  1    109.382653  1    -69.910708  1    3    1    4      0.0623
+   H    1.0952339  1    109.382574  1    120.001583  1    2    1    4      0.0623
+   H    1.0952386  1    109.378431  1   -119.997715  1    2    1    4      0.0623
+   H    1.0952380  1    109.379670  1    170.090429  1    3    1    4      0.0623
+   H    1.0952414  1    109.380883  1   -119.997445  1    3    1    8      0.0623
+ 
+    2  1    3
+ 
+   1SCF   GRADIENTS  PM3       SYMMETRY
+          GaCl3   HEAT OF FORMATION (PM3) = -79.665 I.P.=11.918
+           (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.0])
+ Cl    0.0000000  0     27.000000  0      0.000000  0    0    0    0     -0.3498
+ Ga    1.8938618  1      0.000000  0      0.000000  0    1    0    0      1.0494
+ Cl    1.8938618  0    119.999625  1      0.000000  0    2    1    0     -0.3498
+ Cl    1.8938618  0    119.999625  0   -179.999724  1    2    1    3     -0.3498
+ 
+   2  1    3   4
+   3  2    4
+ 
+  1SCF   GRADIENTS PRECISE
+   GERMANIUM FLUORIDE HEAT OF FORM'N (MNDO)=-16.389, I.P.=6.00
+ 
+ Ge    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.5274
+  F    1.7038791  1      0.000000  0      0.000000  0    1    0    0     -0.5274
+ 
+  1SCF   AM1 GRADIENTS PRECISE
+   GERMANIUM FLUORIDE HEAT OF FORM'N (AM1)= -19.735, I.P.=7.196
+ 
+ Ge    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.4169
+  F    1.6567951  1      0.000000  0      0.000000  0    1    0    0     -0.4169
+ 
+  1SCF   PM3 GRADIENTS PRECISE
+  GERMANIUM FLUORIDE HEAT OF FORM'N (PM3)=   -3.332, I.P.=10.856
+ 
+ Ge    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.2057
+  F    1.7110624  1      0.000000  0      0.000000  0    1    0    0     -0.2057
+ 
+  1SCF   GRADIENTS PM3   SYMMETRY
+              AsH3 HEAT OF FORMATION (PM3) = 12.682   I.P.=9.909
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.00])
+  H    0.0000000  0     12.000000  0      0.000000  0    0    0    0     -0.1230
+ As    1.5202769  1      0.000000  0      0.000000  0    1    0    0      0.3691
+  H    1.5202769  0     94.228408  1      0.000000  0    2    1    0     -0.1230
+  H    1.5202769  0     94.228408  0     94.565278  1    2    1    3     -0.1230
+ 
+   2  1    3   4
+   3  2    4
+ 
+  1SCF   GRADIENTS PM3   SYMMETRY
+            SeCl2 HEAT OF FORMATION (PM3) = -38.011   I.P.=9.548
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.00])
+ Cl    0.0000000  0     12.000000  0      0.000000  0    0    0    0     -0.0491
+ Se    2.1637888  1      0.000000  0      0.000000  0    1    0    0      0.0982
+ Cl    2.1637888  0     99.674382  1      0.000000  0    2    1    0     -0.0491
+ 
+   2  1    3
+ 
+  1SCF   GRADIENTS     PRECISE
+                HBr  HEAT OF FORMATION (MNDO)=3.642,     I.P. = 12.10
+       (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.1082
+ Br    1.4396202  1      0.000000  0      0.000000  0    1    0    0     -0.1082
+ 
+  1SCF   GRADIENTS   AM1     PRECISE
+              HBr  HEAT OF FORMATION (AM1)= -10.502,  I.P.=11.46
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.0871
+ Br    1.4210939  1      0.000000  0      0.000000  0    1    0    0     -0.0871
+ 
+  1SCF   GRADIENTS PM3      PRECISE
+               HBr  HEAT OF FORMATION (PM3) = 5.312 I.P.=12.13
+       (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 4.20])
+  H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.1235
+ Br    1.4707126  1      0.000000  0      0.000000  0    1    0    0     -0.1235
+ 
+  1SCF   GRADIENTS PM3   SYMMETRY
+             CdCl2 HEAT OF FORMATION (PM3) =-48.586   I.P.=11.297
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.00])
+ Cl    0.0000000  0     12.000000  0      0.000000  0    0    0    0     -0.6788
+ Cd    2.2252540  1      0.000000  0      0.000000  0    1    0    0      1.3576
+ Cl    2.2252540  0    179.999507  1      0.000000  0    2    1    0     -0.6788
+ 
+   2  1    3
+ 
+  1SCF   GRADIENTS PM3   SYMMETRY
+            InCl3 HEAT OF FORMATION (PM3) = -72.782   I.P.=10.836
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.00])
+ Cl    0.0000000  0     27.000000  0      0.000000  0    0    0    0     -0.0100
+ In    2.2812226  1      0.000000  0      0.000000  0    1    0    0      0.0301
+ Cl    2.2812226  0    120.000568  1      0.000000  0    2    1    0     -0.0100
+ Cl    2.2812226  0    120.000568  0    179.999620  1    2    1    3     -0.0100
+ 
+   2  1    3   4
+   3  2    4
+ 
+   1SCF   GRADIENTS PRECISE
+             SNF  HEAT OF FORMATION (MNDO)= -20.423,  I.P.= 7.06
+         (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+ Sn    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.4676
+  F    1.8630613  1      0.000000  0      0.000000  0    1    0    0     -0.4676
+ 
+   1SCF   PM3 GRADIENTS PRECISE
+             SNF  HEAT OF FORMATION (PM3)=  -17.474,  I.P.= 7.28
+         (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+ Sn    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.3758
+  F    1.9277109  1      0.000000  0      0.000000  0    1    0    0     -0.3758
+ 
+  1SCF   GRADIENTS PM3   SYMMETRY
+            SbCl3 HEAT OF FORMATION (PM3) = -72.438   I.P.=11.006
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.00])
+ Cl    0.0000000  0     27.000000  0      0.000000  0    0    0    0     -0.2999
+ Sb    2.3202383  1      0.000000  0      0.000000  0    1    0    0      0.8998
+ Cl    2.3202383  0     97.025723  1      0.000000  0    2    1    0     -0.2999
+ Cl    2.3202383  0     97.025723  0    -98.004356  1    2    1    3     -0.2999
+ 
+   2  1    3   4
+   3  2    4
+ 
+  1SCF   GRADIENTS PM3   SYMMETRY
+              TeH2 HEAT OF FORMATION (PM3) = 23.766   I.P.=8.804
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.00])
+  H    0.0000000  0     15.000000  0      0.000000  0    0    0    0     -0.0634
+ Te    1.6752840  1      0.000000  0      0.000000  0    1    0    0      0.1268
+  H    1.6752840  0     88.308549  1    180.000000  0    2    1    0     -0.0634
+ 
+   2  1    3
+ 
+ 1SCF   GRADIENTS      PRECISE
+              ICL  HEAT OF FORMATION (MNDO)= -6.700, I.P.=11.58
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+  I    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.2147
+ Cl    2.2623801  1      0.000000  0      0.000000  0    1    0    0     -0.2147
+ 
+    AM1 PRECISE    GRADIENTS 1SCF   
+              ICL  HEAT OF FORMATION (AM1) = -4.600,   I.P.=11.08
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.00])
+  I    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.1738
+ Cl    2.2184513  1      0.000000  0      0.000000  0    1    0    0     -0.1738
+ 
+  PM3      PRECISE    1SCF   GRADIENTS
+              ICL  HEAT OF FORMATION (PM3) = 10.779,   I.P.=9.74
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 5.00])
+  I    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.0116
+ Cl    2.1916378  1      0.000000  0      0.000000  0    1    0    0     -0.0116
+ 
+  1SCF   GRADIENTS
+            HgCl2 HEAT OF FORMATION (MND0)= -36.932   I.P.=12.599
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.00])
+ Cl    0.0000000  0     12.000000  0      0.000000  0    0    0    0     -0.3154
+ Hg    2.2674477  1      0.000000  0      0.000000  0    1    0    0      0.6307
+ Cl    2.2674477  1    179.998898  1    180.000000  0    2    1    0     -0.3154
+ 
+  1SCF   GRADIENTS AM1
+            HgCl2 HEAT OF FORMATION (AM1)=  -44.833   I.P.=11.929
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.00])
+ Cl    0.0000000  0     12.000000  0      0.000000  0    0    0    0     -0.3226
+ Hg    2.2388527  1      0.000000  0      0.000000  0    1    0    0      0.6452
+ Cl    2.2388527  1    179.997918  1    180.000000  0    2    1    0     -0.3226
+ 
+  1SCF   GRADIENTS PM3
+            HgCl2 HEAT OF FORMATION (PM3) = -32.655   I.P.=10.775
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.00])
+ Cl    0.0000000  0     12.000000  0      0.000000  0    0    0    0     -0.3439
+ Hg    2.2446750  1      0.000000  0      0.000000  0    1    0    0      0.6878
+ Cl    2.2446761  1    179.990824  1      0.000000  0    2    1    0     -0.3439
+ 
+  PRECISE   1SCF   GRADIENTS
+             PBF  HEAT OF FORMATION (MNDO)= -22.575, I.P.= 7.45
+         (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+ Pb    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.4818
+  F    1.9952996  1      0.000000  0      0.000000  0    1    0    0     -0.4818
+ 
+  PRECISE   PM3 1SCF   GRADIENTS
+             PBF  HEAT OF FORMATION (PM3)=  -20.958, I.P.= 7.36
+         (H.O.F. TAKEN FROM "CORRECT" PROGRAM)
+ Pb    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.3959
+  F    2.0276037  1      0.000000  0      0.000000  0    1    0    0     -0.3959
+ 
+  1SCF   GRADIENTS PM3   SYMMETRY
+             BiCl3 HEAT OF FORMATION (PM3) =-42.615   I.P.=10.551
+        (H.O.F. TAKEN FROM "CORRECT" PROGRAM [MOPAC 6.00])
+ Cl    0.0000000  0     12.000000  0      0.000000  0    0    0    0     -0.3177
+ Bi    2.4194239  1      0.000000  0      0.000000  0    1    0    0      0.9530
+ Cl    2.4194239  0     99.935484  1      0.000000  0    2    1    0     -0.3177
+ Cl    2.4194239  0     99.935484  0   -102.035208  1    2    1    3     -0.3177
+ 
+   2  1    3   4
+   3  2    4
diff -cdN ../src.old//esp.f.orig ./esp.f.orig
*** ../src.old//esp.f.orig	Tue Jan 26 01:11:52 1993
--- ./esp.f.orig
***************
*** 1,1912 ****
-       SUBROUTINE ESP
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-       INCLUDE 'SIZES'
- C***********************************************************************
- C
- C     THIS IS A DRIVER ROUTINE FOR ELECTROSTATIC POTENTIAL GENERATION
- C     WRITTEN BY K.M.MERZ FEB. 1989 AT UCSF
- C
- C***********************************************************************
-       COMMON /KEYWRD/ KEYWRD
-       CHARACTER*241 KEYWRD
- C
- C     SET STANDARD PARAMETERS FOR THE SURFACE GENERATION
- C
-       IF(INDEX(KEYWRD,'SCALE=') .NE. 0)THEN
-          SCALE = READA(KEYWRD,INDEX(KEYWRD,'SCALE='))
-       ELSE
-          SCALE = 1.4D0
-       ENDIF
- C
-       IF(INDEX(KEYWRD,'DEN=') .NE. 0)THEN
-          DEN = READA(KEYWRD,INDEX(KEYWRD,'DEN='))
-       ELSE
-          DEN = 1.0D0
-       ENDIF
- C
-       IF(INDEX(KEYWRD,'SCINCR=') .NE. 0)THEN
-          SCINCR = READA(KEYWRD,INDEX(KEYWRD,'SCINCR='))
-       ELSE
-          SCINCR = 0.20D0
-       ENDIF
- C
-       IF(INDEX(KEYWRD,'NSURF=') .NE. 0)THEN
-          N = READA(KEYWRD,INDEX(KEYWRD,'NSURF='))
-       ELSE
-          N = 4
-       ENDIF
- C
-       TIME1=SECOND()
- C
- C     NOW CALCULATE THE SURFACE POINTS
- C
-       IF(INDEX(KEYWRD,'WILLIAMS') .NE. 0) THEN
-          CALL PDGRID
-       ELSE
-          DO 10 I = 1,N
-             CALL SURFAC(SCALE,DEN,I)
-             SCALE = SCALE + SCINCR
-    10    CONTINUE
-       ENDIF
- C
- C     NEXT CALCULATE THE ESP AT THE POINTS CALCULATED BY SURFAC
- C
-       CALL POTCAL
- C
- C     END OF CALCULATION
- C
-       TIME1=SECOND()-TIME1
-       WRITE(6,20) 'TIME TO CALCULATE ESP:',TIME1,' SECONDS'
-    20 FORMAT(/9X,A,F8.2,A)
-       RETURN
-       END
-       SUBROUTINE PDGRID
- C
- C     ROUTINE TO CALCULATE WILLIAMS SURFACE
- C
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-       INCLUDE 'SIZES'
-       DIMENSION IZ(100),XYZ(3,100),VDERW(53),DIST(100)
-       DIMENSION XMIN(3),XMAX(3),COORD(3,NUMATM)
-       COMMON /GEOM/   GEO(3,NUMATM)
-       COMMON /GEOKST/ NATOMS,LABELS(NUMATM), NABC(3*NUMATM)
- C
-       COMMON /ABC/    CO(3,NUMATM),IAN(NUMATM),NATOM
-       COMMON /WORK1/    POTPT(3,MESP), WORK1D(4*MESP)
-       COMMON /POTESP/ XC,YC,ZC,ESPNUC,ESPELE,NESP
- C
-       DATA VDERW/53*0.0D0/
-       VDERW(1)=2.4D0
-       VDERW(5)=3.0D0
-       VDERW(6)=2.9D0
-       VDERW(7)=2.7D0
-       VDERW(8)=2.6D0
-       VDERW(9)=2.55D0
-       VDERW(15)=3.1D0
-       VDERW(16)=3.05D0
-       VDERW(17)=3.0D0
-       VDERW(35)=3.15D0
-       VDERW(53)=3.35D0
-       SHELL=1.2D0
-       NESP=0
-       GRID=0.8D0
-       CLOSER=0.D0
- C     CHECK IF VDERW IS DEFINED FOR ALL ATOMS
- C
- C     CONVERT INTERNAL TO CARTESIAN COORDINATES
- C
-       CALL GMETRY(GEO,COORD)
- C
- C     STRIP COORDINATES AND ATOM LABEL FOR DUMMIES (I.E. 99)
- C
-       ICNTR = 0
-       DO 20 I=1,NATOMS
-          DO 10 J=1,3
-    10    CO(J,I) = COORD(J,I)
-          IF(LABELS(I) .EQ. 99) GOTO 20
-          ICNTR = ICNTR + 1
-          IAN(ICNTR) = LABELS(I)
-    20 CONTINUE
-       NATOM=ICNTR
- C
-       DO 30 I=1,NATOM
-          J=IAN(I)
-          IF (VDERW(J).EQ.0.0D0) GO TO 40
-    30 CONTINUE
-       GO TO 50
-    40 CONTINUE
-       WRITE(6,*) 'VAN DER WAALS'' RADIUS NOT DEFINED FOR ATOM',I
-       WRITE(6,*) 'IN WILLIAMS SURFACE ROUTINE PDGRID!'
-       STOP
- C     NOW CREATE LIMITS FOR A BOX
-    50 DO 100 IX = 1,3
-          XMIN(IX)= 100000.0D0
-          XMAX(IX)=-100000.0D0
-          DO 90 IA = 1,NATOM
-             IF (CO(IX,IA)-XMIN(IX))60,70,70
-    60       XMIN(IX)=CO(IX,IA)
-    70       IF (CO(IX,IA)-XMAX(IX))90,90,80
-    80       XMAX(IX)=CO(IX,IA)
-    90    CONTINUE
-   100 CONTINUE
- C     ADD (OR SUBTRACT) THE MAXIMUM VDERW PLUS SHELL
-       VDMAX=0.0D0
-       DO 110 I=1,53
-          IF (VDERW(I).GT.VDMAX) VDMAX=VDERW(I)
-   110 CONTINUE
-       DO 120 I=1,3
-          XMIN(I)=XMIN(I)-VDMAX-SHELL
-   120 XMAX(I)=XMAX(I)+VDMAX+SHELL
- C STEP GRID BACK FROM ZERO TO FIND STARTING POINTS
-       XSTART=0.0D0
-   130 XSTART=XSTART-GRID
-       IF (XSTART.GT.XMIN(1)) GO TO 130
-       YSTART=0.0D0
-   140 YSTART=YSTART-GRID
-       IF (YSTART.GT.XMIN(2)) GO TO 140
-       ZSTART=0.0D0
-   150 ZSTART=ZSTART-GRID
-       IF (ZSTART.GT.XMIN(3)) GO TO 150
-       NPNT=0
-       ZGRID=ZSTART
-   160 YGRID=YSTART
-   170 XGRID=XSTART
-   180 DO 190 L=1,NATOM
-          JZ=IAN(L)
-          DIST(L)=SQRT((CO(1,L)-XGRID)**2+(CO(2,L)-YGRID)**2+
-      1 (CO(3,L)-ZGRID)**2)
- C     REJECT GRID POINT IF ANY ATOM IS TOO CLOSE
-          IF(DIST(L).LT.(VDERW(JZ)-CLOSER)) GO TO 220
-   190 CONTINUE
- C BUT AT LEAST ONE ATOM MUST BE CLOSE ENOUGH
-       DO 200 L=1,NATOM
-          JZ=IAN(L)
-          IF(DIST(L).GT.(VDERW(JZ)+SHELL)) GO TO 200
-          GO TO 210
-   200 CONTINUE
-       GO TO 220
-   210 NPNT=NPNT+1
-       NESP=NESP+1
-       POTPT(1,NESP)=XGRID
-       POTPT(2,NESP)=YGRID
-       POTPT(3,NESP)=ZGRID
-   220 XGRID=XGRID+GRID
-       IF (XGRID.LE.XMAX(1)) GO TO 180
-       YGRID=YGRID+GRID
-       IF (YGRID.LE.XMAX(2)) GO TO 170
-       ZGRID=ZGRID+GRID
-       IF (ZGRID.LE.XMAX(3)) GO TO 160
-       RETURN
-       END
- C***********************************************************************
-       SUBROUTINE SURFAC(SCALE,DENS,IPT)
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-       INCLUDE 'SIZES'
- C***********************************************************************
- C
- C      THIS SUBROUTINE CALCULATES THE MOLECULAR SURFACE OF A MOLECULE
- C      GIVEN THE COORDINATES OF ITS ATOMS.  VAN DER WAALS' RADII FOR
- C      THE ATOMS AND THE PROBE RADIUS MUST ALSO BE SPECIFIED.
- C
- C      ON INPUT    SCALE = INITIAL VAN DER WAALS' SCALE FACTOR
- C                  DENS  = DENSITY OF POINTS PER UNIT AREA
- C
- C      THIS SUBROUTINE WAS LIFTED FROM MICHAEL CONNOLLY'S SURFACE
- C      PROGRAM FOR UCSF GRAPHICS SYSTEM BY U.CHANDRA SINGH AND
- C      P.A.KOLLMAN AND MODIFIED FOR USE IN QUEST. K.M.MERZ
- C      ADAPTED AND CLEANED UP THIS PROGRAM FOR USE IN AMPAC/MOPAC
- C      IN FEB. 1989 AT UCSF.
- C
- C***********************************************************************
-       COMMON /GEOM/   GEO(3,NUMATM)
-       COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
-      1                NA(NUMATM),NB(NUMATM),NC(NUMATM)
-       COMMON /KEYWRD/ KEYWRD
- C
-       COMMON /ABC/    CO(3,NUMATM),IAN(NUMATM),NATOM
-       COMMON /WORK1/    POTPT(3,MESP), PAD1(2*MESP), RAD(MESP),
-      1IAS(MESP)
-       COMMON /POTESP/ XC,YC,ZC,ESPNUC,ESPELE,NESP
- C
-       CHARACTER*241 KEYWRD
- C
- C     CARTESIAN COORDINATE AND ATOM LABELS
- C
-       DIMENSION COORD(3,NUMATM),VANDER(100)
-       DIMENSION CON(3,1000),ROT(3,3)
- C
- C     NEIGHBOR ARRAYS
- C
- C     THIS SAME DIMENSION FOR THE MAXIMUM NUMBER OF NEIGHBORS
- C     IS USED TO DIMENSION ARRAYS IN THE LOGICAL FUNCTION COLLID
- C
-       DIMENSION INBR(200),CNBR(3,200),RNBR(200)
-       LOGICAL SNBR(200),MNBR(200)
- C
- C     ARRAYS FOR ALL ATOMS
- C
- C     IATOM, JATOM AND KATOM COORDINATES
- C
-       DIMENSION CI(3), IELDAT(56), TEMP0(3)
- C
- C     GEOMETRIC CONSTRUCTION VECTORS
- C
-       DIMENSION CW(3,2)
- C
- C     LOGICAL VARIABLES
- C
-       LOGICAL SI
- C
- C     LOGICAL FUNCTIONS
- C
-       LOGICAL COLLID
- C
- C     DATA FOR VANDER VALL RADII
- C
-       CHARACTER MARKER*3, MARKSS*3, MYNAM*3, IELDAT*4, NAMATM*4
-       DATA VANDER/1.20D0,1.20D0,1.37D0,1.45D0,1.45D0,1.50D0,1.50D0,
-      1            1.40D0,1.35D0,1.30D0,1.57D0,1.36D0,1.24D0,1.17D0,
-      2            1.80D0,1.75D0,1.70D0,17*0.0D0,2.3D0,65*0.0D0/
-       DATA MARKER/'A  '/,MARKSS/'SS0'/,MYNAM/'UC '/
- C
-       DATA IELDAT/'  BQ','  H ','  HE','  LI','  BE','  B ',
-      1            '  C ','  N ','  O ','  F ','  NE','  NA',
-      2            '  MG','  AL','  SI','  P ','  S ','  CL',
-      3            '  AR','  K ','  CA','  SC','  TI','  V ',
-      4            '  CR','  MN','  FE','  CO','  NI','  CU',
-      5            '  ZN','  GA','  GE','  AS','  SE','  BR',
-      6            '  KR','  RB','  SR','   Y','  ZR','  NB',
-      7            '  MO','  TC','  RU','  RH','  PD','  AG',
-      8            '  CD','  IN','  SN','  SB','  TE','   I',
-      9            '   X','  CS'/
-       PI=4.D0*ATAN(1.D0)
- C     INSERT VAN DER WAAL RADII FOR ZINC
-       VANDER(30)=1.00D0
- C
- C     CONVERT INTERNAL TO CARTESIAN COORDINATES
- C
-       CALL GMETRY(GEO,COORD)
- C
- C     STRIP COORDINATES AND ATOM LABEL FOR DUMMIES (I.E. 99)
- C
-       ICNTR = 0
-       DO 20 I=1,NATOMS
-          DO 10 J=1,3
-    10    CO(J,I) = COORD(J,I)
-          IF(LABELS(I) .EQ. 99) GOTO 20
-          ICNTR = ICNTR + 1
-          IAN(ICNTR) = LABELS(I)
-    20 CONTINUE
- C
- C     ONLY VAN DER WAALS' TYPE SURFACE IS GENERATED
- C
-       IOP = 1
-       RW =0.0D0
-       NATOM = ICNTR
-       DEN = DENS
-       DO 30 I=1,NATOM
-          IPOINT = IAN(I)
-          RAD(I) = VANDER(IPOINT)*SCALE
-          IF (RAD(I) .LT. 0.01D0) THEN
-             WRITE(6,'(T2,''VAN DER WAALS'''' RADIUS FOR ATOM '',I3,
-      1         '' IS ZERO, SUPPLY A VALUE IN SUBROUTINE SURFAC)''
-      2         )')
-          ENDIF
-          IAS(I) = 2
-    30 CONTINUE
- C
- C     BIG LOOP FOR EACH ATOM
- C
-       DO 110 IATOM = 1, NATOM
-          IF (IAS(IATOM) .EQ. 0) GO TO 110
- C
- C     TRANSFER VALUES FROM LARGE ARRAYS TO IATOM VARIABLES
- C
-          NAMATM =IELDAT(IAN(IATOM)+1)
-          RI = RAD(IATOM)
-          SI = IAS(IATOM) .EQ. 2
-          DO 40 K = 1,3
-             CI(K) = CO(K,IATOM)
-    40    CONTINUE
- C
- C     GATHER THE NEIGHBORING ATOMS OF IATOM
- C
-          NNBR = 0
-          DO 60 JATOM = 1, NATOM
-             IF (IATOM .EQ. JATOM .OR. IAS(JATOM) .EQ. 0) GO TO 60
-             D2 = DIST2(CI,CO(1,JATOM))
-             IF (D2 .GE. (2*RW+RI+RAD(JATOM)) ** 2) GO TO 60
- C
- C     WE HAVE A NEW NEIGHBOR
- C     TRANSFER ATOM COORDINATES, RADIUS AND SURFACE REQUEST NUMBER
- C
-             NNBR = NNBR + 1
-             IF (NNBR .GT. 200)THEN
-                WRITE (6,'(''ERROR'',2X,''TOO MANY NEIGHBORS:'',I5)')NNBR
-                STOP
-             ENDIF
-             INBR(NNBR) = JATOM
-             DO 50 K = 1,3
-                CNBR(K,NNBR) = CO(K,JATOM)
-    50       CONTINUE
-             RNBR(NNBR) = RAD(JATOM)
-             SNBR(NNBR) = IAS(JATOM) .EQ. 2
-    60    CONTINUE
- C
- C     CONTACT SURFACE
- C
-          IF (.NOT. SI) GO TO 110
-          NCON = (4 * PI * RI ** 2) * DEN
-          IF (NCON .GT. 1000) NCON = 1000
- C
- C     THIS CALL MAY DECREASE NCON SOMEWHAT
- C
-          IF ( NCON .EQ. 0) THEN
-             WRITE(6,'(T2,''VECTOR LENGTH OF ZERO IN SURFAC'')')
-             STOP
-          ENDIF
-          CALL GENUN(CON,NCON)
-          AREA = (4 * PI * RI ** 2) / NCON
- C
- C     CONTACT PROBE PLACEMENT LOOP
- C
-          DO 100 I = 1,NCON
-             DO 70 K = 1,3
-                CW(K,1) = CI(K) + (RI + RW) * CON(K,I)
-    70       CONTINUE
- C
- C     CHECK FOR COLLISION WITH NEIGHBORING ATOMS
- C
-             IF (COLLID(CW(1,1),RW,CNBR,RNBR,MNBR,NNBR,1,
-      1      JNBR,KNBR)) GO TO 100
-             DO 80 KK=1,3
-                TEMP0(KK) =CI(KK)+RI*CON(KK,I)
-    80       CONTINUE
- C
- C     STORE POINT IN POTPT AND INCREMENT NESP
- C
-             NESP = NESP + 1
-             IF (NESP .GT. MESP) THEN
-                WRITE(6,90)
-    90          FORMAT(/'ERROR - TO MANY POINTS GENERATED IN SURFAC')
-                WRITE(6,'(''    REDUCE NSURF, SCALE, DEN, OR SCINCR'')')
-                STOP
-             ENDIF
-             POTPT(1,NESP) = TEMP0(1)
-             POTPT(2,NESP) = TEMP0(2)
-             POTPT(3,NESP) = TEMP0(3)
-   100    CONTINUE
-   110 CONTINUE
-       RETURN
-       END
- C****************************************************************
-       FUNCTION DIST2(A,B)
- C
- C     DETERMINE DISTANCES BETWEEN NEIGHBORING ATOMS
- C
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-       DIMENSION A(3)
-       DIMENSION B(3)
-       DIST2 = (A(1)-B(1))**2 + (A(2)-B(2))**2 + (A(3)-B(3))**2
-       RETURN
-       END
- C****************************************************************
-       LOGICAL FUNCTION COLLID(CW,RW,CNBR,RNBR,MNBR,NNBR,ISHAPE,
-      1JNBR,KNBR)
- C****************************************************************
- C
- C     COLLISION CHECK OF PROBE WITH NEIGHBORING ATOMS
- C     USED BY SURFAC ONLY.
- C
- C****************************************************************
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-       DIMENSION CW(3)
-       DIMENSION CNBR(3,200)
-       DIMENSION RNBR(200)
-       LOGICAL MNBR(200)
-       IF (NNBR .LE. 0) GO TO 20
- C
- C     CHECK WHETHER PROBE IS TOO CLOSE TO ANY NEIGHBOR
- C
-       DO 10 I = 1, NNBR
-          IF (ISHAPE .GT. 1 .AND. I .EQ. JNBR) GO TO 10
-          IF (ISHAPE .EQ. 3 .AND. (I .EQ. KNBR .OR. .NOT. MNBR(I)))
-      1   GO TO 10
-          SUMRAD = RW + RNBR(I)
-          VECT1 = DABS(CW(1) - CNBR(1,I))
-          IF (VECT1 .GE. SUMRAD) GO TO 10
-          VECT2 = DABS(CW(2) - CNBR(2,I))
-          IF (VECT2 .GE. SUMRAD) GO TO 10
-          VECT3 = DABS(CW(3) - CNBR(3,I))
-          IF (VECT3 .GE. SUMRAD) GO TO 10
-          SR2 = SUMRAD ** 2
-          DD2 = VECT1 ** 2 + VECT2 ** 2 + VECT3 ** 2
-          IF (DD2 .LT. SR2) GO TO 30
-    10 CONTINUE
-    20 CONTINUE
-       COLLID = .FALSE.
-       GO TO 40
-    30 CONTINUE
-       COLLID = .TRUE.
-    40 CONTINUE
-       RETURN
-       END
- C****************************************************************
-       SUBROUTINE GENUN(U,N)
- C****************************************************************
- C
- C     GENERATE UNIT VECTORS OVER SPHERE. USED BY SURFAC ONLY.
- C
- C****************************************************************
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-       DIMENSION U(3,N)
-       PI=4.D0*ATAN(1.D0)
-       NEQUAT = SQRT(N * PI)
-       NVERT = NEQUAT/2
-       NU = 0
-       DO 20 I = 1,NVERT+1
-          FI = (PI * (I-1)) / NVERT
-          Z = COS(FI)
-          XY = SIN(FI)
-          NHOR = NEQUAT * XY
-          IF (NHOR .LT. 1) NHOR = 1
-          DO 10 J = 1,NHOR
-             FJ = (2.D0 * PI * (J-1)) / NHOR
-             X = DCOS(FJ) * XY
-             Y = DSIN(FJ) * XY
-             IF (NU .GE. N) GO TO 30
-             NU = NU + 1
-             U(1,NU) = X
-             U(2,NU) = Y
-             U(3,NU) = Z
-    10    CONTINUE
-    20 CONTINUE
-    30 CONTINUE
-       N = NU
-       RETURN
-       END
- C***********************************************************************
-       SUBROUTINE POTCAL
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-       INCLUDE 'SIZES'
- C***********************************************************************
- C
- C     THIS SUBROUTINE CALCULATES THE TOTAL ELECTROSTATIC POTENTIAL
- C     THE NUCLEAR CONTRIBUTION IS EVALUATED BY NUCPOT
- C     THE ELECTRONIC CONTRIBUTION IS EVALUATED BY ELESP
- C     ESPFIT FITS THE QUANTUM POTENTIAL TO A CLASSICAL POINT CHARGE
- C     MODEL.
- C     THIS SUBROUTINE WAS WRITTEN BY B.H.BESLER AND K.M.MERZ IN FEB.
- C     1989 AT UCSF
- C
- C***********************************************************************
-       COMMON /KEYWRD/ KEYWRD
-       COMMON /CORE/ TORE(107)
-       COMMON /ELEMTS/ ELEMNT(107)
-       COMMON /DENSTY/ P(MPACK),PA(MPACK),PB(MPACK)
-       COMMON /POTESP/ XC,YC,ZC,ESPNUC,ESPELE,NESP
-       COMMON /WORK1/  POTPT(3,MESP), ES(MESP), ESP(MESP), WORK1D(2*MESP)
-       COMMON /ABC/    CO(3,NUMATM),IAN(NUMATM),NATOM
-       COMMON /DIPSTO/ UX,UY,UZ,CH(NUMATM)
-       COMMON /ESPF/  AL((NUMATM+4)**2),A(NUMATM,NUMATM),B(NUMATM),
-      1Q(NUMATM+4),QSC(NUMATM+4),CF, ESPFD(MAXORB**2-NUMATM-5)
-       CHARACTER*241 KEYWRD
-       CHARACTER *2  ELEMNT
-       LOGICAL DEBUG,WRTESP,CEQUIV(NUMATM,NUMATM)
- C
- C     DEBUG PRINTING - RESULTS IN COPIOUS OUTPUT
- C
-       DEBUG = (INDEX(KEYWRD,'DEBUG') .NE. 0)
- C
- C
-       CALL ELESP
-       BOHR = 0.529167D00
- C
- C     NOW FIT THE ELECTROSTATIC POTENTIAL
- C
-       WRITE(6,'(//12X,''ELECTROSTATIC POTENTIAL CHARGES'',/)')
-       IZ=0
-       IF(INDEX(KEYWRD,'CHARGE=') .NE. 0) IZ=READA(KEYWRD,INDEX(KEYWRD,
-      1'CHARGE='))
- C
- C     DIPOLAR CONSTRAINTS IF DESIRED
- C
-       IF(INDEX(KEYWRD,'DIPOLE') .NE. 0) THEN
-          IDIP = 1
-          IF(IZ .NE. 0)THEN
-             IDIP = 0
-             WRITE(6,'(/12X,''  DIPOLE CONSTRAINTS NOT USED'')')
-             WRITE(6,'(12X,''        CHARGED MOLECULE'',/)')
-          ENDIF
-       ELSE
-          IDIP = 0
-       ENDIF
-       IF (IDIP .EQ. 1) THEN
-          WRITE(6,'(/12X,''DIPOLE CONSTRAINTS WILL BE USED'',/)')
-       ENDIF
- C
- C     GET X,Y,Z DIPOLE COMPONENTS IF DESIRED
- C
-       IF(INDEX(KEYWRD,'DIPX=') .NE. 0) THEN
-          DX = READA(KEYWRD,INDEX(KEYWRD,'DIPX='))
-       ELSE
-          DX = UX
-       ENDIF
-       IF(INDEX(KEYWRD,'DIPY=') .NE. 0) THEN
-          DY = READA(KEYWRD,INDEX(KEYWRD,'DIPY='))
-       ELSE
-          DY = UY
-       ENDIF
-       IF(INDEX(KEYWRD,'DIPZ=') .NE. 0) THEN
-          DZ = READA(KEYWRD,INDEX(KEYWRD,'DIPZ='))
-       ELSE
-          DZ = UZ
-       ENDIF
-       CALL ESPFIT(IDIP,NATOM,NESP,IZ,ESP,POTPT,CO,DX,DY,DZ,RMS,RRMS)
- C
- C     WRITE OUT OUR RESULTS TO CHANNEL 6
- C     THE CHARGES ARE SCALED TO REPRODUCE 6-31G* CHARGES FOR MNDO ONLY
- C     AM1 AND MINDO/3 CHARGES ARE NOT SCALED DUE TO THE LOW COORELATION
- C     COEFFICIENT. SEE BESLER,MERZ,KOLLMAN IN J. COMPUT. CHEM.
- C     (IN PRESS)
- C
-       IF((INDEX(KEYWRD,'AM1') .NE. 0) .OR.
-      1(INDEX(KEYWRD,'MINDO') .NE. 0) .OR.
-      2(INDEX(KEYWRD,'PM3') .NE. 0))THEN
-          WRITE(6,'(15X,''ATOM NO.    TYPE    CHARGE'')')
-          DO 10 I=1,NATOM
-             WRITE(6,'(17X,I2,9X,A2,1X,F10.4)')I,ELEMNT(IAN(I)),Q(I)
-    10    CONTINUE
-       ELSE
- C
- C     MNDO CALCULATION-SCALE THE CHARGES. TEST FOR SLOPE KEYWORD
- C
-          IF(INDEX(KEYWRD,'SLOPE=') .NE. 0) THEN
-             SLOPE = READA(KEYWRD,INDEX(KEYWRD,'SLOPE='))
-          ELSE
-             SLOPE = 1.422D0
-          ENDIF
-          DO 20 I=1,NATOM
-             QSC(I) = SLOPE*Q(I)
-    20    CONTINUE
-          WRITE(6,'(7X,''ATOM NO.    TYPE    CHARGE   SCALED CHARGE'')')
-          DO 30 I=1,NATOM
-             WRITE(6,'(9X,I2,9X,A2,1X,F10.4,2X,F10.4)')I,ELEMNT(IAN(I
-      1)),   Q(I),QSC(I)
-    30    CONTINUE
-       ENDIF
-       WRITE(6,'(/12X,A,4X,I6)') 'THE NUMBER OF POINTS IS:',NESP
-       WRITE(6,'(12X,A,4X,F9.4)') 'THE RMS DEVIATION IS:',RMS
-       WRITE(6,'(12X,A,3X,F9.4)') 'THE RRMS DEVIATION IS:',RRMS
- C
- C     CALCULATE DIPOLE MOMENT IF NEUTRAL MOLECULE
- C
-       IF (IZ .NE. 0) THEN
-          GO TO 60
-       ELSE
-          WRITE(6,40)
-    40    FORMAT (//5X,'DIPOLE MOMENT EVALUATED FROM '
-      1,'THE POINT CHARGES',/)
-          DO 50 I=1,NATOM
-             DIPX=DIPX+CO(1,I)*Q(I)/BOHR
-             DIPY=DIPY+CO(2,I)*Q(I)/BOHR
-             DIPZ=DIPZ+CO(3,I)*Q(I)/BOHR
-    50    CONTINUE
-          DIP=SQRT(DIPX**2+DIPY**2+DIPZ**2)
-          WRITE(6,'(12X,'' X        Y        Z       TOTAL'')')
-          WRITE(6,'(8X,4F9.4)')DIPX*CF,DIPY*CF,DIPZ*CF,DIP*CF
-       ENDIF
-    60 CONTINUE
- C     DETERMINE WHICH CHARGES SHOULD BE EQUIVALENT BY SYMMETRY AND
- C     AVERAGE THEM IF DESIRED
-       IF(INDEX(KEYWRD,'SYMAVG') .NE. 0) THEN
-          DO 70 I=1,NATOM
-             DO 70 J=1,NATOM
-                CEQUIV(I,J)=.FALSE.
-                IF(ABS(ABS(CH(I))-ABS(CH(J))) .LT. 1.D-5)  CEQUIV(I,J)=.T
-      1RUE.
-    70    CONTINUE
-          DO 90 I=1,NATOM
-             IEQ=0
-             QSC(I)=0.D0
-             DO 80 J=1,NATOM
-                IF(CEQUIV(I,J)) THEN
-                   QSC(I)=QSC(I)+ABS(Q(J))
-                   IEQ=IEQ+1
-                ENDIF
-    80       CONTINUE
-             CH(I)=Q(I)/ABS(Q(I))*QSC(I)/IEQ
-    90    CONTINUE
-          WRITE(6,*) ' '
-          WRITE(6,*)'   ELECTROSTATIC POTENTIAL CHARGES AVERAGED FOR'
-          WRITE(6,*)'   SYMMETRY EQUIVALENT ATOMS'
-          WRITE(6,*) ' '
-          IF((INDEX(KEYWRD,'AM1') .NE. 0) .OR.
-      1(INDEX(KEYWRD,'MINDO') .NE. 0) .OR.
-      2(INDEX(KEYWRD,'PM3') .NE. 0))THEN
-             WRITE(6,'(7X,''ATOM NO.    TYPE    CHARGE'')')
-             DO 100 I=1,NATOM
-                WRITE(6,'(9X,I2,9X,A2,1X,F10.4)')I,ELEMNT(IAN(I)),
-      1   CH(I)
-   100       CONTINUE
-          ELSE
-             WRITE(6,'(7X,''ATOM NO.    TYPE    CHARGE   SCALED CHARGE'')
-      1')
-             DO 110 I=1,NATOM
-                WRITE(6,'(9X,I2,9X,A2,1X,F10.4,2X,F10.4)')I,ELEMNT(IA
-      1N(I)),   CH(I),CH(I)*SLOPE
-   110       CONTINUE
-          ENDIF
-       ENDIF
-       RETURN
-       END
-       SUBROUTINE ELESP
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
- C***********************************************************************
- C     ELESP LOADS THE STO-6G BASIS SET ONTO THE ATOMS, PERFOMS THE
- C     DEORTHOGONALIZATION OF THE COEFFICIENTS AND EVALUATES THE
- C     ELECTRONIC CONTRIBUTION TO THE ESP. IT WAS WRITTEN BY B.H.BESLER
- C     AND K.M.MERZ IN FEB. 1989 AT UCSF.
- C
- C***********************************************************************
-       CHARACTER*241 KEYWRD
-       DOUBLE PRECISION NORM,OVL
-       LOGICAL CALLED,POTWRT,RST,STO3G
-       INCLUDE 'SIZES'
-       COMMON/ESPF/ AL((NUMATM+4)**2),A(NUMATM,NUMATM),B(NUMATM),
-      1Q(NUMATM+4),CESPM(MAXORB,MAXORB)
-       COMMON /DENSTY/ P(MPACK),PA(MPACK),PB(MPACK)
-       COMMON /POTESP/ XC,YC,ZC,ESPNUC,ESPELE,NESP
-       COMMON /ABC/    CO(3,NUMATM),IAN(NUMATM),NATOM
-       COMMON /WORK1/  POTPT(3,MESP), ES(MESP), ESP(MESP), WORK1D(2*MESP)
-       COMMON /STO6G/  ALLC(6,5,2),ALLZ(6,5,2)
-       COMMON /VECTOR/ C(MORB2*2+MAXORB*2)
-       COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
-      1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
-      2                NCLOSE,NOPEN,NDUMY,FRACT
-       COMMON /KEYWRD/ KEYWRD
-       COMMON /ESPC/  CC(MAXPR),CEN(MAXPR,3),IAM(MAXPR,2),IND(MAXPR),
-      1                EX(MAXPR),ESPI(MAXORB,MAXORB),
-      2                FV(0:8,821),FAC(0:7),
-      3                DEX(-1:96),TF(0:2),TEMP(MAXPR),ITEMP(MAXPR),
-      4                OVL(MAXORB,MAXORB),FC(MAXPR*6)
-      6       /CORE  / TORE(107)
-      7       /EXPONT/ ZS(107),ZP(107),ZD(107)
- *
- *  END OF MINDO/3 COMMON BLOCKS
- *
-       COMMON /INDX/   INDC(MAXORB)
-       DIMENSION CESPM2(MAXORB,MAXORB),SLA(10)
-       DIMENSION CESPML(MAXORB*MAXORB),CESP(MAXORB*MAXORB)
-       DATA BOHR/0.529167D0/
-       PI=4.D0*ATAN(1.D0)
- C
- C     PUT STO-6G BASIS SET ON ATOM CENTERS
- C
-       DO 10 I=-1,10
-          DEX(I)=DEX2(I)
-    10 CONTINUE
-       DO 20   I=0,7
-          FAC(I)=1.D0/FAC(I)
-    20 CONTINUE
-       DO 30 M=0,8
-          K=1
-          FV(M,1)=1.D0/(2.D0*M+1.D0)
-          DO 30 T=0.05D0,41.D0,0.05D0
-             K=K+1
-             CALL FSUB(M,T,FVAL)
-             FV(M,K)=FVAL
-    30 CONTINUE
- C
- C     LOAD BASIS FUNCTIONS INTO ARRAYS
- C
-       STO3G=(INDEX(KEYWRD,'STO3G') .NE. 0)
-       IF(STO3G) THEN
-          ICD=3
-          CALL SETUP3
-       ELSE
-          ICD=6
-          CALL SETUPG
-       ENDIF
-       NC=0
-       NPR=0
-       DO 80 I=1,NATOM
-          IF (IAN(I) .LE. 2) THEN
-             DO 40 J=1,ICD
-                CC(NPR+J)=ALLC(J,1,1)
-                EX(NPR+J)=ALLZ(J,1,1)*ZS(1)**2
-                CEN(NPR+J,1)=CO(1,I)/BOHR
-                CEN(NPR+J,2)=CO(2,I)/BOHR
-                CEN(NPR+J,3)=CO(3,I)/BOHR
-                IAM(NPR+J,1)=0
-                IAM(NPR+J,2)=0
-                FC(NPR+J)=I
-    40       CONTINUE
-             NC=NC+1
-             NPR=NPR+ICD
-          ELSE
- C        DETERMINE PRINCIPAL QUANTUM NUMBER(NQN)
- C        OF ORBITALS TO BE USED
- C
-             NQN=2
-             IF(IAN(I) .GT. 10 .AND. IAN(I) .LE. 18) NQN=3
-             IF(IAN(I) .GT. 18 .AND. IAN(I) .LE. 36) NQN=4
-             IF(IAN(I) .GT. 36 .AND. IAN(I) .LE. 54) NQN=5
- C
-             DO 50 J=1,ICD
-                CC(NPR+J)=ALLC(J,NQN,1)
-                EX(NPR+J)=ALLZ(J,NQN,1)*ZS(IAN(I))**2
-                CEN(NPR+J,1)=CO(1,I)/BOHR
-                CEN(NPR+J,2)=CO(2,I)/BOHR
-                CEN(NPR+J,3)=CO(3,I)/BOHR
-                IAM(NPR+J,1)=0
-                IAM(NPR+J,2)=0
-    50       CONTINUE
-             NC=NC+1
-             NPR=NPR+ICD
-             DO 70 K=1,3
-                DO 60  J=1,ICD
-                   CC(NPR+J)=ALLC(J,NQN,2)
-                   EX(NPR+J)=ALLZ(J,NQN,2)*ZP(IAN(I))**2
-                   CEN(NPR+J,1)=CO(1,I)/BOHR
-                   CEN(NPR+J,2)=CO(2,I)/BOHR
-                   CEN(NPR+J,3)=CO(3,I)/BOHR
-                   IAM(NPR+J,1)=1
-                   IAM(NPR+J,2)=K
-    60          CONTINUE
-                NC=NC+1
-                NPR=NPR+ICD
-    70       CONTINUE
-          ENDIF
-    80 CONTINUE
- C
- C     CALCULATE NORMALIZATION CONSTANTS AND INCLUDE
- C     THEM IN THE CONTRACTION COEFFICIENTS
- C
-       DO 90 I=1,NPR
-          NORM=(2.D0*EX(I)/PI)**0.75D0*(4.D0*EX(I))**(IAM(I,1)/2.D0)/
-      1   SQRT(DEX(2*IAM(I,1)-1))
-          CC(I)=CC(I)*NORM
-    90 CONTINUE
-       IPR=0
- C
- C     PERFORM SORT OF PRIMITIVES BY ANGULAR MOMENTUM
- C
-       IS=0
-       IP=0
-       IPC=0
-       ISC=0
-       J=0
-       DO 100 I=1,NPR
-          IF (IAM(I,1) .EQ. 0) THEN
-             IS=IS+1
-             IND(IS)=I
-          ENDIF
-   100 CONTINUE
-       IP=IS
-       DO 110 I=1,NPR
-          IF (IAM(I,1) .EQ. 1 .AND. IAM(I,2) .EQ. 1) THEN
-             IP=IP+1
-             IND(IP)=I
-          ENDIF
-   110 CONTINUE
-       DO 120 I=1,NPR
-          IF (IAM(I,1) .EQ. 1 .AND. IAM(I,2) .EQ. 2) THEN
-             IP=IP+1
-             IND(IP)=I
-          ENDIF
-   120 CONTINUE
-       DO 130 I=1,NPR
-          IF (IAM(I,1) .EQ. 1 .AND. IAM(I,2) .EQ. 3) THEN
-             IP=IP+1
-             IND(IP)=I
-          ENDIF
-   130 CONTINUE
-       DO 140 I=1,NC
-          IN=I*ICD-ICD+1
-          IF (IAM(IN,1) .EQ. 0) THEN
-             ISC=ISC+1
-             INDC(ISC)=I
-          ENDIF
-   140 CONTINUE
-       IPC=ISC
-       DO 150 I=1,NC
-          IN=I*ICD-ICD+1
-          IF (IAM(IN,1) .EQ. 1 .AND. IAM(IN,2) .EQ. 1) THEN
-             IPC=IPC+1
-             INDC(IPC)=I
-          ENDIF
-   150 CONTINUE
-       DO 160 I=1,NC
-          IN=I*ICD-ICD+1
-          IF (IAM(IN,1) .EQ. 1 .AND. IAM(IN,2) .EQ. 2) THEN
-             IPC=IPC+1
-             INDC(IPC)=I
-          ENDIF
-   160 CONTINUE
-       DO 170 I=1,NC
-          IN=I*ICD-ICD+1
-          IF (IAM(IN,1) .EQ. 1 .AND. IAM(IN,2) .EQ. 3) THEN
-             IPC=IPC+1
-             INDC(IPC)=I
-          ENDIF
-   170 CONTINUE
-       DO 180 I=1,NPR
-          TEMP(I)=CC(IND(I))
-   180 CONTINUE
-       DO 190 I=1,NPR
-          CC(I)=TEMP(I)
-   190 CONTINUE
-       DO 200 I=1,NPR
-          TEMP(I)=EX(IND(I))
-   200 CONTINUE
-       DO 210 I=1,NPR
-          EX(I)=TEMP(I)
-   210 CONTINUE
-       DO 220 I=1,NPR
-          TEMP(I)=CEN(IND(I),1)
-   220 CONTINUE
-       DO 230 I=1,NPR
-          CEN(I,1)=TEMP(I)
-   230 CONTINUE
-       DO 240 I=1,NPR
-          TEMP(I)=CEN(IND(I),2)
-   240 CONTINUE
-       DO 250 I=1,NPR
-          CEN(I,2)=TEMP(I)
-   250 CONTINUE
-       DO 260 I=1,NPR
-          TEMP(I)=CEN(IND(I),3)
-   260 CONTINUE
-       DO 270 I=1,NPR
-          CEN(I,3)=TEMP(I)
-   270 CONTINUE
-       DO 280 I=1,NPR
-          ITEMP(I)=IAM(IND(I),1)
-   280 CONTINUE
-       DO 290 I=1,NPR
-          IAM(I,1)=ITEMP(I)
-   290 CONTINUE
-       DO 300 I=1,NPR
-          ITEMP(I)=IAM(IND(I),2)
-   300 CONTINUE
-       DO 310 I=1,NPR
-          IAM(I,2)=ITEMP(I)
-   310 CONTINUE
- C     CALCULATE OVERLAP MATRIX OF STO-6G FUNCTIONS
- C
-       DO 320 J=1,NC
-          CALL OVLP(J,1,IS,IP,NPR,NC,ICD)
-   320 CONTINUE
- C
-       DO 330 J=1,NC
-          DO 330 K=1,NC
-             CESPM2(INDC(J),INDC(K))=OVL(J,K)
-   330 CONTINUE
-       DO 340 J=1,NC
-          DO 340 K=1,NC
-             OVL(J,K)=CESPM2(J,K)
-   340 CONTINUE
-       L=0
-       DO 350 I=1,NC
-          DO 350 J=1,I
-             L=L+1
-             CESP(L)=OVL(I,J)
-   350 CONTINUE
- C
- C     DEORTHOGONALIZE THE COEFFICIENTS AND REFORM THE DENSITY MATRIX
- C
-       CALL RSP(CESP,NC,1,TEMP,CESPML)
-       DO 360 I=1,NC
-          DO 360 J=1,I
-             SUM=0.D0
-             DO 360 K=1,NC
-                SUM=SUM+CESPML(I+(K-1)*NC)/SQRT(TEMP(K))*CESPML(J+(K-1)*N
-      1C)
-                CESP(I+(J-1)*NC)=SUM
-                CESP(J+(I-1)*NC)=SUM
-   360 CONTINUE
-       CALL MULT(C,CESP,CESPML,NC)
-       CALL DENSIT(CESPML,NC,NC,NCLOSE,NOPEN,FRACT,CESP,2)
- C
- C     NOW CALCULATE THE ELECTRONIC CONTRIBUTION TO THE ELECTROSTATIC POT
- C
-       L=0
-       DO 370 I=1,NC
-          DO 370 J=1,I
-             L=L+1
-             CESPM(I,J)=CESP(L)
-             CESPM(J,I)=CESP(L)
-   370 CONTINUE
-       IPX=(NPR-IS)/3
-       IPE=IS+IPX
-       DO 380 I=1,NESP
-          ES(I)=0.D0
-   380 CONTINUE
-       CALL NAICAS(ISC,IS,IP,NPR,NC,IPE,IPX,ICD)
-       CALL NAICAP(ISC,IS,IP,NPR,NC,IPE,IPX,ICD)
- C     CALCULATE TOTAL ESP AND FORM ARRAYS FOR ESPFIT
-       DO 400 I=1,NESP
-          ESP(I)=0.D0
-          DO 390 J=1,NATOM
-             RA=SQRT((CO(1,J)-POTPT(1,I))**2+(CO(2,J)-POTPT(2,I))**2+(CO(
-      13,J)-POTPT(3,I))**2)
-             ESP(I)=ESP(I)+TORE(IAN(J))/(RA/BOHR)
-   390    CONTINUE
-          ESP(I)=ESP(I)-ES(I)
-          DO 400  J=1,NATOM
-             RIJ=SQRT((CO(1,J)-POTPT(1,I))**2+(CO(2,J)-POTPT(2,I))**2
-      1+(CO(3,J)-POTPT(3,I))**2)/BOHR
-             B(J)=B(J)+ESP(I)*1.D0/RIJ
-   400 CONTINUE
- C
- C     IF REQUESTED WRITE OUT ELECTRIC POTENTIAL DATA TO
- C     UNIT 21
- C
-       POTWRT=(INDEX(KEYWRD,'POTWRT') .NE. 0)
-       IF(POTWRT) THEN
-          OPEN(21,STATUS='NEW')
-          WRITE(21,'(I5)') NESP
-          DO 410 I=1,NESP
-   410    WRITE(21,420) ESP(I),POTPT(1,I)/BOHR,POTPT(2,I)/BOHR,
-      1POTPT(3,I)
-       ENDIF
-   420 FORMAT(1X,4E16.7)
-       RETURN
-       END
-       DOUBLE PRECISION FUNCTION DEX2(M)
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-       IF(M .LT. 2) THEN
-          DEX2=1
-       ELSE
-          DEX2=1
-          DO 10 I=1,M,2
-    10    DEX2=DEX2*I
-       ENDIF
-       RETURN
-       END
-       BLOCK DATA ESPBLO
-       IMPLICIT DOUBLE PRECISION (A-H, O-Z)
-       INCLUDE 'SIZES'
-       COMMON /ESPC/  CC(MAXPR),CEN(MAXPR,3),IAM(MAXPR,2),IND(MAXPR),
-      1                EX(MAXPR),ESPI(MAXORB,MAXORB),
-      2                FV(0:8,821),FAC(0:7),
-      3                DEX(-1:96),TF(0:2),TEMP(MAXPR),ITEMP(MAXPR),
-      4                OVL(MAXORB,MAXORB),FC(MAXPR*6)
-       DATA TF/33.D0,37.D0,41.D0/
-       DATA FAC/1.D0,1.D0,2.D0,6.D0,24.D0,120.D0,720.D0,5040.D0/
-       END
- C***********************************************************************
-       SUBROUTINE ESPFIT(IDIP,NATOM,NESP,IZ,ESP,POTPT,CO,
-      1DX,DY,DZ,RMS,RRMS)
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-       INCLUDE 'SIZES'
- C***********************************************************************
- C
- C     THIS ROUTINE FITS THE ELECTROSTATIC POTENTIAL TO A MONOPOLE
- C     EXPANSION. FITTING TO THE DIPOLE MONENT CAN ALSO BE DONE.
- C     THIS ROUTINE WAS WRITTEN BY B.H.BESLER AND K.M.MERZ
- C     IN FEB. 1989 AT UCSF.
- C
- C     ON INPUT:  IDIP = FLAG TO INDICATE IF THE DIPOLE IS FIT
- C                NATOM = NUMBER OF ATOMS
- C                NESP = NUMBER OF ESP POINTS
- C                IZ = MOLECULAR CHARGE
- C                ESP = TOTAL ESP AT THE POINTS
- C                POTPT = ESP POINTS
- C                CO = COORDINATES
- C                DX = X COMPONENT OF THE DIPOLE
- C                DY = Y COMPONENT OF THE DIPOLE
- C                DZ = Z COMPONENT OF THE DIPOLE
- C
- C     ON OUTPUT: Q = ESP CHARGES
- C                RMS = ROOT MEAN SQUARE FIT
- C                RRMS = RELATIVE ROOT MEAN SQUARE FIT
- C
- C     FOR MORE DETAILS SEE: BESLER,MERZ,KOLLMAN J. COMPUT. CHEM.
- C     (IN PRESS)
- C***********************************************************************
-       COMMON/ESPF/ AL((NUMATM+4)**2),A(NUMATM,NUMATM),B(NUMATM),
-      1Q(NUMATM+4),QSC(NUMATM+4),CF, ESPFD(MAXORB**2-NUMATM-5)
-       DIMENSION CO(3,*),ESP(*),POTPT(3,*)
-       BOHR = 0.529167D00
- C     CONVERSION FACTOR FOR DEBYE TO ATOMIC UNITS
-       CF=5.2917715D-11*1.601917D-19/3.33564D-30
- C
- C     THE FOLLOWING SETS UP THE LINEAR EQUATION A*Q=B
- C     SET UP THE A(J,K) ARRAY
- C
-       DO 20  K=1,NATOM
-          DO 10  J=1,NATOM
-             DO 10  I=1,NESP
-                RIK=SQRT((CO(1,K)-POTPT(1,I))**2+(CO(2,K)-POTPT(2,I))**2
-      1      +(CO(3,K)-POTPT(3,I))**2)/BOHR
-                RIJ=SQRT((CO(1,J)-POTPT(1,I))**2+(CO(2,J)-POTPT(2,I))**2
-      1      +(CO(3,J)-POTPT(3,I))**2)/BOHR
-                A(J,K)=A(J,K)+1.D0/RIK*1.D0/RIJ
-    10    CONTINUE
-          A(NATOM+1,K)=1.D0
-          A(K,NATOM+1)=1.D0
-          A(NATOM+1,NATOM+1)=0.D0
-          IF(IDIP .EQ. 1) THEN
-             A(NATOM+2,K)=CO(1,K)/BOHR
-             A(K,NATOM+2)=CO(1,K)/BOHR
-             A(NATOM+2,NATOM+2)=0.D0
-             A(NATOM+3,K)=CO(2,K)/BOHR
-             A(K,NATOM+3)=CO(2,K)/BOHR
-             A(NATOM+3,NATOM+3)=0.D0
-             A(NATOM+4,K)=CO(3,K)/BOHR
-             A(K,NATOM+4)=CO(3,K)/BOHR
-             A(NATOM+4,NATOM+4)=0.D0
-          ENDIF
-    20 CONTINUE
-       B(NATOM+1)=FLOAT(IZ)
-       B(NATOM+2)=DX/CF
-       B(NATOM+3)=DY/CF
-       B(NATOM+4)=DZ/CF
- C
- C     INSERT CHARGE AND DIPOLAR (IF DESIRED) CONSTRAINTS
- C
-       IF(IDIP .EQ. 1) THEN
-          L=0
-          DO 30 I=1,NATOM+4
-             DO 30 J=1,NATOM+4
-                L=L+1
-    30    AL(L)=A(I,J)
-       ELSE
-          L=0
-          DO 40 I=1,NATOM+1
-             DO 40 J=1,NATOM+1
-                L=L+1
-    40    AL(L)=A(I,J)
-       ENDIF
-       IF (IDIP .EQ. 1) THEN
-          CALL OSINV(AL,NATOM+4,DET)
-       ELSE
-          CALL OSINV(AL,NATOM+1,DET)
-       ENDIF
-       IF(IDIP .EQ. 1) THEN
-          L=0
-          DO 50 I=1,NATOM+4
-             DO 50 J=1,NATOM+4
-                L=L+1
-    50    A(I,J)=AL(L)
-       ELSE
-          L=0
-          DO 60 I=1,NATOM+1
-             DO 60 J=1,NATOM+1
-                L=L+1
-    60    A(I,J)=AL(L)
-       ENDIF
- C
- C     SOLVE FOR THE CHARGES
- C
-       IF(IDIP .EQ. 1) THEN
-          DO 70 I=1,NATOM+4
-             DO 70 J=1,NATOM+4
-                Q(I)=Q(I)+A(I,J)*B(J)
-    70    CONTINUE
-       ELSE
-          DO 80 I=1,NATOM+1
-             DO 80 J=1,NATOM+1
-                Q(I)=Q(I)+A(I,J)*B(J)
-    80    CONTINUE
-       ENDIF
- C
- C     CALCULATE ROOT MEAN SQUARE FITS AND RELATIVE ROOT MEAN SQUARE FITS
- C
-       CTOT=0.0
-       DO 100 I=1,NESP
-          ESPC=0.D0
-          DO 90 J=1,NATOM
-             RIJ=SQRT((CO(1,J)-POTPT(1,I))**2+(CO(2,J)-POTPT(2,I))**2
-      1      +(CO(3,J)-POTPT(3,I))**2)/BOHR
-    90    ESPC=ESPC+Q(J)/RIJ
-          RMS=RMS+(ESPC-ESP(I))**2
-   100 RRMS=RRMS+ESP(I)**2
-       RMS=SQRT(RMS/NESP)
-       RRMS=RMS/SQRT(RRMS/NESP)
-       RMS=RMS*627.51D0
-       RETURN
-       END
- C***********************************************************************
-       SUBROUTINE FSUB(N,X,FVAL)
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
- C***********************************************************************
- C
- C     CALCULATE THE FM(T). KINDLY SUPPLIED BY RUS PITZER AND CLEANED UP
- C     BY K.M.MERZ IN FEB. 1989 AT UCSF.
- C
- C     ON INPUT:  N = INDEX
- C                X = EXPONENT
- C     ON OUTPUT: FVAL = VALUE OF THE FUNCTION
- C
- C     FOR MORE DETAILS SEE: OBARA AND SAIKA J. CHEM. PHYS. 1986,84,3963
- C***********************************************************************
-       DIMENSION FF(21),TERM(200),A(10),RT(10)
-       DATA A0, A1S2, PIE4, A1
-      1   /0.0D0,0.5D0,0.7853981633974483096156608D0,1.0D0/
-       DATA XSW /24.0D0/
-       E=A1S2*EXP(-X)
-       FAC0=N
-       FAC0=FAC0+A1S2
-       IF(X.GT.XSW) GO TO 50
- C
- C     USE POWER SERIES
- C
-    10 FAC=FAC0
-       TERM0=E/FAC
-       SUM=TERM0
-       KU=(X-FAC0)
-       IF(KU.LT.1) GO TO 30
- C
- C     SUM INCREASING TERMS FORWARDS
- C
-       DO 20 K=1,KU
-          FAC=FAC+A1
-          TERM0=TERM0*X/FAC
-          SUM=SUM+TERM0
-    20 CONTINUE
-    30 I=1
-       FAC=FAC+A1
-       TERM(1)=TERM0*X/FAC
-       SUMA=SUM+TERM(1)
-       IF(SUM.EQ.SUMA) GO TO 90
-    40 I=I+1
-       FAC=FAC+A1
-       TERM(I)=TERM(I-1)*X/FAC
-       SUM1=SUMA
-       SUMA=SUMA+TERM(I)
-       IF(SUM1-SUMA) 40,90,40
- C
- C     USE ASYMPTOTIC SERIES
- C
-    50 SUM=SQRT(PIE4/X)
-       IF(N.EQ.0) GO TO 70
-       FAC=-A1S2
-       DO 60 K=1,N
-          FAC=FAC+A1
-          SUM=SUM*FAC/X
-    60 CONTINUE
-    70 I=1
-       TERM(1)=-E/X
-       SUMA=SUM+TERM(1)
-       IF(SUM.EQ.SUMA) GO TO 90
-       FAC=FAC0
-       KU=(X+FAC0-A1)
-       DO 80 I=2,KU
-          FAC=FAC-A1
-          TERM(I)=TERM(I-1)*FAC/X
-          SUM1=SUMA
-          SUMA=SUMA+TERM(I)
-          IF(SUM1.EQ.SUMA) GO TO 90
-    80 CONTINUE
- C
- C     XSW SET TOO LOW. USE POWER SERIES.
- C
-       GO TO 10
- C
- C     SUM DECREASING TERMS BACKWARDS
- C
-    90 SUM1=A0
-       DO 100 K=1,I
-          SUM1=SUM1+TERM(I+1-K)
-   100 CONTINUE
-       FF(N+1)=SUM+SUM1
- C
- C     USE RECURRENCE RELATION
- C
-       IF(N.EQ.0) GOTO 120
-       DO 110 K=1,N
-          FAC0=FAC0-A1
-          FF(N+1-K)=(E+X*FF(N+2-K))/FAC0
-   110 CONTINUE
-   120 FVAL=FF(N+1)
-       RETURN
-       END
-       SUBROUTINE SETUP3
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-       INCLUDE 'SIZES'
-       COMMON /NATYPE/ NZTYPE(107),MTYPE(30),LTYPE
-       COMMON /STO6G/ ALLC(6,5,2),ALLZ(6,5,2)
- C     SET-UP THE STEWART'S STO-3G EXPANSIONS
- C     FROM J. CHEM. PHYS. 52 431.
- C                                            1S
-       ALLZ(1,1,1) =2.227660584D00
-       ALLZ(2,1,1) =4.057711562D-01
-       ALLZ(3,1,1) =1.098175104D-01
- C
-       ALLC(1,1,1) =1.543289673D-01
-       ALLC(2,1,1) =5.353281423D-01
-       ALLC(3,1,1) =4.446345422D-01
- C                                      2S
-       ALLZ(1,2,1) =2.581578398D00
-       ALLZ(2,2,1) =1.567622104D-01
-       ALLZ(3,2,1) =6.018332272D-02
- C
-       ALLC(1,2,1) =-5.994474934D-02
-       ALLC(2,2,1) =5.960385398D-01
-       ALLC(3,2,1) =4.581786291D-01
- C                                     2P
-       ALLZ(1,2,2) =9.192379002D-01
-       ALLZ(2,2,2) =2.359194503D-01
-       ALLZ(3,2,2) =8.009805746D-02
- C
-       ALLC(1,2,2) =1.623948553D-01
-       ALLC(2,2,2) =5.661708862D-01
-       ALLC(3,2,2) =4.223071752D-01
- C                                      3S
-       ALLZ(1,3,1) =5.641487709D-01
-       ALLZ(2,3,1) =6.924421391D-02
-       ALLZ(3,3,1) =3.269529097D-02
- C
-       ALLC(1,3,1) =-1.782577972D-01
-       ALLC(2,3,1) =8.612761663D-01
-       ALLC(3,3,1) =2.261841969D-01
- C                                     3P
-       ALLZ(1,3,2) =2.692880368D00
-       ALLZ(2,3,2) =1.489359592D-01
-       ALLZ(3,3,2) =5.739585040D-02
- C
-       ALLC(1,3,2) =-1.061945788D-02
-       ALLC(2,3,2) =5.218564264D-01
-       ALLC(3,3,2) =5.450015143D-01
- C                                      4S
-       ALLZ(1,4,1) =2.267938753D-01
-       ALLZ(2,4,1) =4.448178019D-02
-       ALLZ(3,4,1) =2.195294664D-02
- C
-       ALLC(1,4,1) =-3.349048323D-01
-       ALLC(2,4,1) =1.056744667D00
-       ALLC(3,4,1) =1.256661680D-01
- C                                     4P
-       ALLZ(1,4,2) =4.859692220D-01
-       ALLZ(2,4,2) =7.430216918D-02
-       ALLZ(3,4,2) =3.653340923D-02
- C
-       ALLC(1,4,2) =-6.147823411D-02
-       ALLC(2,4,2) =6.604172234D-01
-       ALLC(3,4,2) =3.932639495D-01
- C                                      5S
-       ALLZ(1,5,1) =1.080198458D-01
-       ALLZ(2,5,1) =4.408119382D-02
-       ALLZ(3,5,1) =2.610811810D-02
- C
-       ALLC(1,5,1) =-6.617401158D-01
-       ALLC(2,5,1) =7.467595004D-01
-       ALLC(3,5,1) =7.146490945D-01
- C                                     5P
-       ALLZ(1,5,2) =2.127482317D-01
-       ALLZ(2,5,2) =4.729648620D-02
-       ALLZ(3,5,2) =2.604865324D-02
- C
-       ALLC(1,5,2) =-1.389529695D-01
-       ALLC(2,5,2) =8.076691064D-01
-       ALLC(3,5,2) =2.726029342D-01
- C
-       RETURN
-       END
-       SUBROUTINE OVLP(IC,IESP,IS,IP,NPR,NC,ICD)
-       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
- C***********************************************************************
- C
- C     OVLP CALCULATES THE OVERLAP INTEGRALS FOR A STO-6G BASIS SET.
- C     THE RESULTING INTEGRALS ARE USED IN THE DEORTHOGONALIZATION
- C     PROCESS.
- C     THE CODE WAS WRITTEN BY B.H.BESLER AND K.M.MERZ IN FEB. 1989
- C     AT UCSF.
- C
- C     ON INPUT:  IC = LOOP INDEX
- C                IESP = LOOP INDEX
- C                IS = NUMBER OF S ORBITALS
- C                IP = NUMBER OF P ORBITALS
- C                NPR = NUMBER OF PRIMITIVES
- C                NC = NUMBER OF CONTRACTED FUNCTIONS
- C
- C     ON OUTPUT: OVL IS FILLED WITH THE OVERLAP INTEGRAL VALUE
- C
- C     FOR FURTHER INFO SEE: OBARA & SAIKA J.CHEM.PHYS. 1986,84,3963
- C***********************************************************************
-       LOGICAL CALLED
-       DOUBLE PRECISION NAI,NAI1,NAI2
-       INCLUDE 'SIZES'
-       COMMON /DENSTY/ P(MPACK),PA(MPACK),PB(MPACK)
-       COMMON /POTESP/ XC,YC,ZC,ESPNUC,ESPELE,NESP
-       COMMON /ABC/    CO(3,NUMATM),IAN(NUMATM),NATOM
-       COMMON /WORK1/  POTPT(3,MESP), ES(MESP), ESP(MESP), WORK1D(2*MESP)
-       COMMON /EXPONT/ ZS(107),ZP(107),ZD(107)
-       COMMON /STO6G/  ALLC(6,5,2),ALLZ(6,5,2)
-       COMMON /ESPC/ CC(MAXPR),CEN(MAXPR,3),IAM(MAXPR,2),IND(MAXPR),
-      1EX(MAXPR),ESPI(MAXORB,MAXORB),FV(0:8,821),
-      2FAC(0:7),DEX(-1:96),TF(0:2),
-      3TEMP(MAXPR),ITEMP(MAXPR),OVL(MAXORB,MAXORB),XDMY(MAXPR*6)
-       COMMON/X/ DX(MAXPR),DY(MAXPR),DZ(MAXPR),F1(MAXPR,6),F2(MAXPR,6),
-      1TD(MAXPR),CE(MAXPR,6),U(MAXPR,6),EXS(MAXPR,6),EXPN(MAXPR,6),
-      2NAI(MAXPR,6),EWCX(MAXPR,6),EWCY(MAXPR,6),EWCZ(MAXPR,6),F0(MAXPR,6)
-      3,NAI1(MAXPR,6),NAI2(MAXPR,6)
-       DATA BOHR/0.529167D0/
- C
- C     CALCULATE DISTANCE ARRAYS
- C
-       PI=4.D0*ATAN(1.D0)
-       IPR=IC*ICD-ICD+1
-       ISTART=IPR
-       DO 10 I=ISTART,NPR
-          DX(I)=CEN(IPR,1)-CEN(I,1)
-          DY(I)=CEN(IPR,2)-CEN(I,2)
-          DZ(I)=CEN(IPR,3)-CEN(I,3)
-          TD(I)=DX(I)**2+DY(I)**2+DZ(I)**2
-    10 CONTINUE
- C
- C     CALCULATE EXPONENT SUM
- C
-       DO 20 I=ISTART,NPR
-          DO 20 J=1,ICD
-             EXS(I,J)=1.D0/(EX(IPR+J-1)+EX(I))
-             CE(I,J)=EX(IPR+J-1)*EX(I)*EXS(I,J)
-    20 CONTINUE
- C
- C     CALCULATE EXPONENT WEIGHTED CENTERS
- C
-       DO 30 I=ISTART,NPR
-          DO 30 J=1,ICD
-             EWCX(I,J)=(EX(I)*CEN(I,1)+EX(IPR+J-1)
-      1*CEN(IPR+J-1,1))*EXS(I,J)
-             EWCY(I,J)=(EX(I)*CEN(I,2)+EX(IPR+J-1)
-      1*CEN(IPR+J-1,2))*EXS(I,J)
-             EWCZ(I,J)=(EX(I)*CEN(I,3)+EX(IPR+J-1)
-      1*CEN(IPR+J-1,3))*EXS(I,J)
-    30 CONTINUE
-       DO 40 I=1,NPR
-          DO 40 J=1,ICD
-             EXPN(I,J)=EXP(-CE(I,J)*TD(I))
-             NAI(I,J)=(PI*EXS(I,J))**1.5D0*EXPN(I,J)
-             EXPN(I,J)=NAI(I,J)
-    40 CONTINUE
- C
- C     CALCULATE (S||P) ESP INTEGRALS
- C
-       IF((IAM(IPR,1) .EQ. 0) .AND. (IS .NE. IP)) THEN
-          NP=IS+1
-          DO 80 I=NP,NPR
-             DO 80 J=1,ICD
-                GO TO (50,60,70),IAM(I,2)
-    50          NAI(I,J)=(EWCX(I,J)-CEN(I,1))*EXPN(I,J)
-                go TO 80
-    60          NAI(I,J)=(EWCY(I,J)-CEN(I,2))*EXPN(I,J)
-                GO TO 80
-    70          NAI(I,J)=(EWCZ(I,J)-CEN(I,3))*EXPN(I,J)
-    80    CONTINUE
-       ENDIF
- C
- C     CALCULATE (P||S) ESP INTEGRALS
- C
-       IF((IAM(IPR,1) .EQ. 1) .AND. (IS .NE. IP)) THEN
-          NP=IS+1
-          DO 120 I=	ISTART,NPR
-             DO 120 J=1,ICD
-                GO TO (90,100,110),IAM(IPR+J-1,2)
-    90          NAI(I,J)=(EWCX(I,J)-CEN(IPR+J-1,1))*EXPN(I,J)
-                GO TO 120
-   100          NAI(I,J)=(EWCY(I,J)-CEN(IPR+J-1,2))*EXPN(I,J)
-                GO TO 120
-   110          NAI(I,J)=(EWCZ(I,J)-CEN(IPR+J-1,3))*EXPN(I,J)
-   120    CONTINUE
-       ENDIF
- C
- C     CALCULATE (P||P) ESP INTEGRALS
- C
-       IF((IAM(IPR,1) .EQ. 1) .AND. (IS .NE. IP)) THEN
-          DO 160 I=ISTART,NPR
-             DO 160 J=1,ICD
-                GO TO (130,140,150),IAM(I,2)
-   130          NAI(I,J)=(EWCX(I,J)-CEN(I,1))*NAI(I,J)
-                IF(IAM(IPR+J-1,2) .EQ. IAM(I,2))
-      1NAI(I,J)=NAI(I,J)+EXS(I,J)*0.5D0
-      2      *EXPN(I,J)
-                GO TO 160
-   140          NAI(I,J)=(EWCY(I,J)-CEN(I,2))*NAI(I,J)
-                IF(IAM(IPR+J-1,2) .EQ. IAM(I,2))
-      1NAI(I,J)=NAI(I,J)+EXS(I,J)*0.5D0
-      2      *EXPN(I,J)
-                GO TO 160
-   150          NAI(I,J)=(EWCZ(I,J)-CEN(I,3))*NAI(I,J)
-                IF(IAM(IPR+J-1,2) .EQ. IAM(I,2))
-      1NAI(I,J)=NAI(I,J)+EXS(I,J)*0.5D0
-      2      *EXPN(I,J)
-   160    CONTINUE
-       ENDIF
-       IPS=IC*ICD-ICD+1
-       DO 180 I=IC,NC
-          JPS=I*ICD-ICD+1
-          OVL(IC,I)=0.D0
-          DO 170 J=JPS,JPS+ICD-1
-             DO 170 K=IPS,IPS+ICD-1
-                OVL(IC,I)=OVL(IC,I)+CC(J)*CC(K)*NAI(J,K-IPS+1)
-   170    CONTINUE
-          OVL(I,IC)=OVL(IC,I)
-   180 CONTINUE
-       RETURN
-       END
-       SUBROUTINE NAICAS(ISC,IS,IP,NPR,NC,IPE,IPX,ICD)
-       IMPLICIT DOUBLE PRECISION(A-H,O-Z)
- C***********************************************************************
- C
- C     THIS SUBROUTINE EVALUATES (S|S) , (S|P) TYPE NUCLEAR ATTRACTION
- C     INTEGRALS FOR A STO-NG BASIS SET
- C     WRITTEN BY B.H. BESLER AT FORD SCIENTIFIC RESEARCH LABS IN
- C     DECEMBER 1989.
- C
- C     ON INPUT:  IC = LOOP INDEX OF THE GAUSSIAN
- C                IESP = LOOP INDEX OF THE ESP POINT
- C                IPE = INDEX OF LAST Px PRIMITIVE
- C                IPX = NUMBER OF Px PRIMITIVES
- C                IS = NUMBER OS S ORBITALS
- C                ISC = NUMBER OF CONTRACTED S ORBITALS
- C                IP = NUMBER OF P ORBITALS
- C                NPR = NUMBER OF PRIMITIVES
- C                NC = NUMBER OF CONTRACTED FUNCTIONS
- C
- C
- C     FOR MORE INFO SEE: OBARA&SAIKA J.CHEM.PHYS. 1986,84,3963.
- C***********************************************************************
-       INCLUDE 'SIZES'
-       DOUBLE PRECISION NAI,NAI1,NAI2
-       CHARACTER*241 KEYWRD
-       COMMON/KEYWRD/ KEYWRD
-       COMMON/ESPF/ AL((NUMATM+4)**2),A(NUMATM,NUMATM),B(NUMATM),
-      1Q(NUMATM+4),CESPM(MAXORB,MAXORB)
-       COMMON /INDX/ INDC(MAXORB)
-       COMMON /DENSTY/ P(MPACK),PA(MPACK),PB(MPACK)
-       COMMON /POTESP/ XC,YC,ZC,ESPNUC,ESPELE,NESP
-       COMMON /ABC/    CO(3,NUMATM),IAN(NUMATM),NATOM
-       COMMON /WORK1/  POTPT(3,MESP), ES(MESP), ESP(MESP), WORK1D(2*MESP)
-       COMMON /EXPONT/ ZS(107),ZP(107),ZD(107)
-       COMMON /STO6G/  ALLC(6,5,2),ALLZ(6,5,2)
-       COMMON /ESPC/ CC(MAXPR),CEN(MAXPR,3),IAM(MAXPR,2),IND(MAXPR),
-      1EX(MAXPR),ESPI(MAXORB,MAXORB),FV(0:8,821),
-      2FAC(0:7),DEX(-1:96),TF(0:2),
-      3TEMP(MAXPR),ITEMP(MAXPR),OVL(MAXORB,MAXORB),EXSR(MAXPR,6)
-       COMMON/X/ DX(MAXPR),DY(MAXPR),DZ(MAXPR),F1(MAXPR,6),F2(MAXPR,6),
-      1TD(MAXPR),CE(MAXPR,6),U(MAXPR,6),EXS(MAXPR,6),EXPN(MAXPR,6),
-      2NAI(MAXPR,6),EWCX(MAXPR,6),EWCY(MAXPR,6),EWCZ(MAXPR,6),F0(MAXPR,6)
-      3,NAI1(MAXPR,6),NAI2(MAXPR,6)
-       DATA BOHR/0.529167D0/
- C
- C     CALCULATE DISTANCE ARRAYS
- C
-       WRITE(6,*)
-       PI=4.D0*ATAN(1.D0)
-       IPX2=2*IPX
- C     IF THIS IS A RESTART RUN, READ IN RESTART INFO
-       IF(INDEX(KEYWRD,'ESPRST') .NE. 0) THEN
-          OPEN(UNIT=15,FILE='ESP.DUMP',STATUS='OLD',FORM='UNFORMATTED')
-          READ(15) JSTART,IESPS
-          IF(JSTART .EQ. ISC*2) THEN
-             CLOSE(15)
-             RETURN
-          ENDIF
-          DO 10 I=1,NESP
-             READ(15) ES(I)
-    10    CONTINUE
-          CLOSE(15)
- C
-          JSTART=JSTART+1
-       ELSE
-          JSTART=1
-       ENDIF
-       NP=IS+1
-       DO 200 IC=JSTART,ISC
-          IPR=IC*ICD-ICD+1
-          ISTART=IPR
-          DO 20 I=ISTART,IPE
-             DX(I)=CEN(IPR,1)-CEN(I,1)
-             DY(I)=CEN(IPR,2)-CEN(I,2)
-             DZ(I)=CEN(IPR,3)-CEN(I,3)
-             TD(I)=DX(I)**2+DY(I)**2+DZ(I)**2
-    20    CONTINUE
- C
- C     CALCULATE EXPONENT SUM
- C
-          DO 30 I=ISTART,IPE
-             DO 30 J=1,ICD
-                EXSR(I,J)=EX(IPR+J-1)+EX(I)
-                EXS(I,J)=1.D0/EXSR(I,J)
-                CE(I,J)=EX(IPR+J-1)*EX(I)*EXS(I,J)
-                EXPN(I,J)=EXP(-CE(I,J)*TD(I))
-    30    CONTINUE
- C
- C     CALCULATE EXPONENT WEIGHTED CENTERS
- C
-          DO 40 I=ISTART,IPE
-             DO 40 J=1,ICD
-                EWCX(I,J)=(EX(I)*CEN(I,1)+EX(IPR+J-1)
-      1*CEN(IPR+J-1,1))*EXS(I,J)
-                EWCY(I,J)=(EX(I)*CEN(I,2)+EX(IPR+J-1)
-      1*CEN(IPR+J-1,2))*EXS(I,J)
-                EWCZ(I,J)=(EX(I)*CEN(I,3)+EX(IPR+J-1)
-      1*CEN(IPR+J-1,3))*EXS(I,J)
-    40    CONTINUE
- C
- C     BEGIN LOOP OVER ESP POINTS
- C
-          DO 180 IESP=1,NESP
-             POTP1=POTPT(1,IESP)/BOHR
-             POTP2=POTPT(2,IESP)/BOHR
-             POTP3=POTPT(3,IESP)/BOHR
- C
- C     BEGIN LOOP OVER COMPONENTS OF CONTRACTED FUNCTION IC
- C
-             DO 150 J=1,ICD
- C
- C     CALCULATE DISTANCE BETWEEN EXPONENT WEIGHTED AND PROBE POINT
- C
-                DO 50 I=ISTART,IPE
-                   U(I,J)=((EWCX(I,J)-POTP1)**2+(EWCY(I,J)-POTP2)**2+
-      1      (EWCZ(I,J)-POTP3)**2)*EXSR(I,J)
-                   NAI(I,J)=SQRT(PI/U(I,J))
-    50          CONTINUE
- C
- C     CALCULATE ESP INTEGRALS
- C
-                DO 70 I=ISTART,IPE
-                   IF(U(I,J) .LE. TF(0)) THEN
-                      IREF=DNINT(U(I,J)*20.D0)
-                      REF=0.05D0*IREF
-                      RES=U(I,J)-REF
-                      TERM=1.D0
-                      F0(I,J)=0.D0
-                      DO 60 K=0,6
-                         F=FV(K,IREF+1)
-                         TS=F*TERM*FAC(K)
-                         TERM=-TERM*RES
-                         F0(I,J)=F0(I,J)+TS
-    60                CONTINUE
-                   ELSE
-                      F0(I,J)=NAI(I,J)*0.5D0
-                   ENDIF
-    70          CONTINUE
-                DO 90 I=NP,IPE
-                   IF(U(I,J) .LE. TF(1)) THEN
-                      IREF=DNINT(U(I,J)*20.D0)
-                      REF=0.05D0*IREF
-                      RES=U(I,J)-REF
-                      TERM1=1.D0
-                      F1(I,J)=0.D0
-                      DO 80 K=0,6
-                         FI=FV(K+1,IREF+1)
-                         TS1=FI*TERM1*FAC(K)
-                         TERM1=-TERM1*RES
-                         F1(I,J)=F1(I,J)+TS1
-    80                CONTINUE
-                   ELSE
-                      F1(I,J)=NAI(I,J)*0.25D0/U(I,J)
-                   ENDIF
-    90          CONTINUE
-                DO 100 I=ISTART,IS
-   100          U(I,J)=2.D0*PI*EXS(I,J)*EXPN(I,J)*F0(I,J)
-                NP=IS+1
-                DO 110 I=NP,IPE
-                   NAI(I,J)=2.D0*PI*EXS(I,J)*EXPN(I,J)*F0(I,J)
-                   NAI1(I,J)=2.D0*PI*EXS(I,J)*EXPN(I,J)*F1(I,J)
-   110          CONTINUE
- C
- C     CALCULATE (S||P) ESP INTEGRALS
- C
-                IF((IAM(IPR,1) .EQ. 0) .AND. (IS .NE. IP)) THEN
-                   DO 120 I=NP,IPE
-   120             U(I,J)=(EWCX(I,J)-CEN(I,1))*NAI(I,J)
-      1-(EWCX(I,J)-POTP1)*NAI1(I,J)
-                   DO 130 I=IPE+1,IPE+1+IPX
-   130             U(I,J)=(EWCY(I-IPX,J)-CEN(I-IPX,2))*NAI(I-IPX,J)
-      1-(EWCY(I-IPX,J)-POTP2)*NAI1(I-IPX,J)
-                   DO 140 I=IPE+1+IPX,NPR
-   140             U(I,J)=(EWCZ(I-IPX2,J)-CEN(I-IPX2,3))*NAI(I-IPX2,J)
-      1-(EWCZ(I-IPX2,J)-POTP3)*NAI1(I-IPX2,J)
-                ENDIF
-   150       CONTINUE
-             IPS=IC*ICD-ICD+1
-             DO 170 I=IC,NC
-                JPS=I*ICD-ICD+1
-                ESPI(I,IC)=0.D0
-                DO 160 J=JPS,JPS+ICD-1
-                   DO 160 K=IPS,IPS+ICD-1
-                      ESPI(I,IC)=ESPI(I,IC)+CC(J)*CC(K)*U(J,K-IPS+1)
-   160          CONTINUE
-                ES(IESP)=ES(IESP)+2.D0*CESPM(INDC(I),INDC(IC))*ESPI(I,IC)
-   170       CONTINUE
-             ES(IESP)=ES(IESP)-CESPM(INDC(IC),INDC(IC))*ESPI(IC,IC)
-   180    CONTINUE
- C     WRITE OUT RESTART INFORMATION
-          OPEN(UNIT=15,FILE='ESP.DUMP',STATUS='UNKNOWN',FORM='UNFORMATTED
-      1')
-          IESPS=0
-          WRITE(15) IC,IESPS
-          DO 190 I=1,NESP
-             WRITE(15) ES(I)
-   190    CONTINUE
-          CLOSE(15)
- C
-          WRITE(6,'(A,F6.2,A)')
-      1'NAICAS DUMPED: ',100.D0/ISC*IC,' PERCENT COMPLETE'
-   200 CONTINUE
-       RETURN
-       END
-       SUBROUTINE NAICAP(ISC,IS,IP,NPR,NC,IPE,IPX,ICD)
-       IMPLICIT DOUBLE PRECISION(A-H,O-Z)
- C***********************************************************************
- C     THIS ROUTINE EVALUATES (P|P) NUCLEAR ATTRACTION INTEGRALS OVER
- C
- C     A STO-NG BASIS SET.
- C     WRITTEN BY B.H. BESLER AT FORD SCIENTIFIC RESEARCH LABS IN
- C     SEPT. 1989
- C
- C     ON INPUT:  IC = LOOP INDEX OF THE GAUSSIAN
- C                ICD = CONTRACTION DEPTH OF BASIS SET
- C                IESP = LOOP INDEX OF THE ESP POINT
- C                IS = NUMBER OS S PRIMITIVES
- C                IPE = INDEX OF LAST PX PRIMITIVE
- C                IPX = NUMBER OF PX PRIMITIVES
- C                IS = NUMBER OS S PRIMITIVES
- C                ISC = NUMBER OF CONTRACTED
- C                NPR = NUMBER OF PRIMITIVES
- C                NC = NUMBER OF CONTRACTED FUNCTIONS
- C
- C
- C     FOR MORE INFO SEE: OBARA&SAIKA J.CHEM.PHYS. 1986,84,3963.
- C***********************************************************************
-       INCLUDE 'SIZES'
-       DOUBLE PRECISION NAI,NAI1,NAI2
-       CHARACTER*241 KEYWRD
-       COMMON /KEYWRD/ KEYWRD
-       COMMON/ESPF/ AL((NUMATM+4)**2),A(NUMATM,NUMATM),B(NUMATM),
-      1Q(NUMATM+4),CESPM(MAXORB,MAXORB)
-       COMMON /INDX/ INDC(MAXORB)
-       COMMON /DENSTY/ P(MPACK),PA(MPACK),PB(MPACK)
-       COMMON /POTESP/ XC,YC,ZC,ESPNUC,ESPELE,NESP
-       COMMON /ABC/    CO(3,NUMATM),IAN(NUMATM),NATOM
-       COMMON /WORK1/  POTPT(3,MESP), ES(MESP), ESP(MESP), WORK1D(2*MESP)
-       COMMON /EXPONT/ ZS(107),ZP(107),ZD(107)
-       COMMON /STO6G/  ALLC(6,5,2),ALLZ(6,5,2)
-       COMMON /ESPC/ CC(MAXPR),CEN(MAXPR,3),IAM(MAXPR,2),IND(MAXPR),
-      1EX(MAXPR),ESPI(MAXORB,MAXORB),FV(0:8,821),
-      2FAC(0:7),DEX(-1:96),TF(0:2),
-      3TEMP(MAXPR),ITEMP(MAXPR),OVL(MAXORB,MAXORB),EXSR(MAXPR,6)
-       COMMON/X/ DX(MAXPR),DY(MAXPR),DZ(MAXPR),F1(MAXPR,6),F2(MAXPR,6),
-      1TD(MAXPR),CE(MAXPR,6),U(MAXPR,6),EXS(MAXPR,6),EXPN(MAXPR,6),
-      2NAI(MAXPR,6),EWCX(MAXPR,6),EWCY(MAXPR,6),EWCZ(MAXPR,6),F0(MAXPR,6)
-      3,NAI1(MAXPR,6),NAI2(MAXPR,6)
-       COMMON/FP/ PF0(MAXHES),PF1(MAXHES),PF2(MAXHES),ID(MAXPAR),
-      1PEXS(MAXHES),PCE(MAXHES),PEXPN(MAXHES),PTD(MAXHES),
-      2PEWCX(MAXHES),PEWCY(MAXHES),PEWCZ(MAXHES),IRD(MAXHES)
-       DATA BOHR/0.529167D0/
- C     SET NUMBER OF EQUALLY SPACED DUMPS
-       IDN=10
- C
-       IDC=0
-       WRITE(6,*)
-       IPX2=2*IPX
-       PI=4.D0*ATAN(1.D0)
-       NP=IS+1
- C     SETUP INDEX ARRAY
-       DO 10 I=NP,IPE
-          IRD(I)=I-IS
-          IRD(I+IPX)=I-IS
-          IRD(I+IPX2)=I-IS
-    10 CONTINUE
- C
- C     CALCULATE QUANTITIES INVARIANT WITH ESP POINT FOR
- C     (P|P) ESP INTEGRALS
- C
-       IL=L
-       L=0
-       DO 30 I=NP,IPE
-          DO 20 J=I,IPE
-             L=L+1
-             PTD(L)=(CEN(I,1)-CEN(J,1))**2+(CEN(I,2)-CEN(J,2))**2+
-      1(CEN(I,3)-CEN(J,3))**2
-             PEXS(L)=1.d0/(EX(I)+EX(J))
-             PCE(L)=EX(I)*EX(J)*PEXS(L)
-             PEXPN(L)=EXP(-PCE(L)*PTD(L))
-             PEWCX(L)=(EX(I)*CEN(I,1)+EX(J)*CEN(J,1))*PEXS(L)
-             PEWCY(L)=(EX(I)*CEN(I,2)+EX(J)*CEN(J,2))*PEXS(L)
-             PEWCZ(L)=(EX(I)*CEN(I,3)+EX(J)*CEN(J,3))*PEXS(L)
-    20    CONTINUE
- C
- C     SET UP OTHER INDEX ARRAY FOR PACKED SYMMETRIC ARRAY
- C     STORAGE
- C
-          ID(I-IS)=L-IPX
-    30 CONTINUE
- C
- C     READ IN RESTART INFORMATION IF THIS IS A RESTART
- C
-       IF(INDEX(KEYWRD,'ESPRST') .NE. 0) THEN
-          OPEN(UNIT=15,FILE='ESP.DUMP',STATUS='UNKNOWN',FORM='UNFORMATTED
-      1')
-          READ(15) JSTART,IESPS
-          IF(JSTART .NE. ISC*2) THEN
-             IESPS=0
-             CLOSE(15)
-             GOTO 50
-          ENDIF
-          DO 40 I=1,NESP
-             READ(15) ES(I)
-    40    CONTINUE
-          CLOSE(15)
-          IDC=FLOAT(IESPS)/FLOAT(NESP)*10
-       ELSE
-          IESPS=0
-       ENDIF
-    50 CONTINUE
- C
- C     LOOP OVER ESP PROBE POINTS
- C
-       DO 250 IESP=IESPS+1,NESP
-          POTP1=POTPT(1,IESP)/BOHR
-          POTP2=POTPT(2,IESP)/BOHR
-          POTP3=POTPT(3,IESP)/BOHR
- C     CALCULATE QUANTITY U
- C
-          L=0
-          DO 60 I=NP,IPE
-             DO 60 J=I,IPE
-                L=L+1
-                PTD(L)=((PEWCX(L)-POTP1)**2+(PEWCY(L)-POTP2)**2+
-      1      (PEWCZ(L)-POTP3)**2)/PEXS(L)
-                PCE(L)=SQRT(PI/PTD(L))
-    60    CONTINUE
- C
- C     CALCULATE F0, F1, AND F2(U) USING TAYLOR SERIES
- C     OR ASYMPTOTIC EXPANSION
- C
-          IL=L
-          L=0
-          DO 100 I=1,IL
-             IF(PTD(I) .LE. TF(0)) THEN
-                IREF=DNINT(PTD(I)*20.D0)
-                REF=0.05D0*IREF
-                RES=PTD(I)-REF
-                TERM=1.D0
-                PF0(I)=0.D0
-                DO 70 K=0,6
-                   F=FV(K,IREF+1)
-                   TS=F*TERM*FAC(K)
-                   TERM=-TERM*RES
-                   PF0(I)=PF0(I)+TS
-    70          CONTINUE
-             ELSE
-                PF0(I)=PCE(I)*0.5D0
-             ENDIF
-             IF(PTD(I) .LE. TF(1)) THEN
-                IREF=DNINT(PTD(I)*20.D0)
-                REF=0.05D0*IREF
-                RES=PTD(I)-REF
-                TERM1=1.D0
-                PF1(I)=0.D0
-                DO 80 K=0,6
-                   FI=FV(K+1,IREF+1)
-                   TS1=FI*TERM1*FAC(K)
-                   TERM1=-TERM1*RES
-                   PF1(I)=PF1(I)+TS1
-    80          CONTINUE
-             ELSE
-                PF1(I)=PCE(I)*0.25D0/PTD(I)
-             ENDIF
-             IF(PTD(I) .LE. TF(2)) THEN
-                IREF=DNINT(PTD(I)*20.D0)
-                REF=0.05D0*IREF
-                RES=PTD(I)-REF
-                TERM2=1.D0
-                PF2(I)=0.D0
-                DO 90 K=0,6
-                   FII=FV(K+2,IREF+1)
-                   TS2=FII*TERM2*FAC(K)
-                   TERM2=-TERM2*RES
-                   PF2(I)=PF2(I)+TS2
-    90          CONTINUE
-             ELSE
-                PF2(I)=PCE(I)*0.375D0/(PTD(I)*PTD(I))
-             ENDIF
-   100    CONTINUE
- C
- C     CALCULATE (S||S) TYPE INTEGRALS
- C
-          DO 110 I=1,IL
-             PF0(I)=2.D0*PI*PEXS(I)*PEXPN(I)*PF0(I)
-             PTD(I)=PF0(I)
-             PF1(I)=2.D0*PI*PEXS(I)*PEXPN(I)*PF1(I)
-             PF2(I)=2.D0*PI*PEXS(I)*PEXPN(I)*PF2(I)
-   110    CONTINUE
- C
-          DO 230 IC=ISC+1,NC
-             IPR=IC*ICD-ICD+1
-             ISTART=IPR
-             DO 200 J=1,ICD
- C
- C     CALCULATE (P||S) ESP INTEGRALS
- C
-                IF((IAM(IPR,1) .EQ. 1) .AND. (IS .NE. IP)) THEN
-                   DO 150 I=ISTART,NPR
-                      IN=IPR+J-1
-                      IR=IRD(I)+ID(IRD(IN))
-                      IR2=ID(IRD(I))+IRD(IN)
-                      IF(IR2 .LE. IR ) IR=IR2
-                      GO TO (120,130,140),IAM(IN,2)
-   120                NAI2(I,J)=(PEWCX(IR)-CEN(IN,1))*PF1(IR)-PF2(IR)*
-      1      (PEWCX(IR)-POTP1)
-                      NAI(I,J)=(PEWCX(IR)-CEN(IN,1))*PF0(IR)-PF1(IR)*
-      1      (PEWCX(IR)-POTP1)
-                      GO TO 150
-   130                NAI2(I,J)=(PEWCY(IR)-CEN(IN,2))*PF1(IR)-PF2(IR)*
-      1      (PEWCY(IR)-POTP2)
-                      NAI(I,J)=(PEWCY(IR)-CEN(IN,2))*PF0(IR)-PF1(IR)*
-      1      (PEWCY(IR)-POTP2)
-                      GO TO 150
-   140                NAI2(I,J)=(PEWCZ(IR)-CEN(IN,3))*PF1(IR)-PF2(IR)*
-      1      (PEWCZ(IR)-POTP3)
-                      NAI(I,J)=(PEWCZ(IR)-CEN(IN,3))*PF0(IR)-PF1(IR)*
-      1      (PEWCZ(IR)-POTP3)
-   150             CONTINUE
-                ENDIF
- C
- C     CALCULATE (P||P) ESP INTEGRALS
- C
-                IF((IAM(IPR,1) .EQ. 1) .AND. (IS .NE. IP)) THEN
-                   DO 190 I=ISTART,NPR
-                      IN=IPR+J-1
-                      IR=IRD(I)+ID(IRD(IN))
-                      IR2=ID(IRD(I))+IRD(IN)
-                      IF(IR2 .LE. IR ) IR=IR2
-                      GO TO (160,170,180),IAM(I,2)
-   160                NAI(I,J)=(PEWCX(IR)-CEN(I,1))*NAI(I,J)-(PEWCX(IR)-P
-      1OTP1)*      NAI2(I,J)
-                      IF(IAM(IN,2) .EQ. IAM(I,2)) NAI(I,J)=NAI(I,J)+PEXS(
-      1IR)*      0.5D0*(PTD(IR)-PF1(IR))
-                      GO TO 190
-   170                NAI(I,J)=(PEWCY(IR)-CEN(I,2))*NAI(I,J)-(PEWCY(IR)-P
-      1OTP2)*      NAI2(I,J)
-                      IF(IAM(IN,2) .EQ. IAM(I,2)) NAI(I,J)=NAI(I,J)+PEXS(
-      1IR)*      0.5D0*(PTD(IR)-PF1(IR))
-                      GO TO 190
-   180                NAI(I,J)=(PEWCZ(IR)-CEN(I,3))*NAI(I,J)-(PEWCZ(IR)-P
-      1OTP3)*      NAI2(I,J)
-                      IF(IAM(IN,2) .EQ. IAM(I,2)) NAI(I,J)=NAI(I,J)+PEXS(
-      1IR)*      0.5D0*(PTD(IR)-PF1(IR))
-   190             CONTINUE
-                ENDIF
-   200       CONTINUE
- C
- C     FORM INTEGRALS OVER CONTRACTED FUNCTIONS
- C
-             IPS=IC*ICD-ICD+1
-             DO 220 I=IC,NC
-                JPS=I*ICD-ICD+1
-                ESPI(I,IC)=0.D0
-                DO 210 J=JPS,JPS+ICD-1
-                   DO 210 K=IPS,IPS+ICD-1
-                      ESPI(I,IC)=ESPI(I,IC)+CC(J)*CC(K)*NAI(J,K-IPS+1)
-   210          CONTINUE
-                ES(IESP)=ES(IESP)+2.D0*CESPM(INDC(I),INDC(IC))*ESPI(I,IC)
-   220       CONTINUE
-             ES(IESP)=ES(IESP)-CESPM(INDC(IC),INDC(IC))*ESPI(IC,IC)
-   230    CONTINUE
- C
- C     WRITE OUT RESTART INFORMATION EVERY NESP/10 POINTS
- C
-          IF(MOD(IESP,NESP/IDN) .EQ. 0) THEN
-             OPEN(UNIT=15,FILE='ESP.DUMP',STATUS='UNKNOWN',FORM='UNFORMAT
-      1TED')
-             JSTART=ISC*2
-             WRITE(15) JSTART,IESP
-             DO 240 I=1,NESP
-                WRITE(15) ES(I)
-   240       CONTINUE
-             CLOSE(15)
-             IDC=IDC+1
-             WRITE(6,'(A,F6.2,A)')
-      1'NAICAP DUMPED: ',100.D0/IDN*IDC,' PERCENT COMPLETE'
-          ENDIF
-   250 CONTINUE
-       RETURN
-       END
--- 0 ----
diff -cdN ../src.old//f2c_mopac.c ./f2c_mopac.c
*** ../src.old//f2c_mopac.c
--- ./f2c_mopac.c	Fri Jan 27 15:27:35 1995
***************
*** 0 ****
--- 1,38 ----
+ #include 
+ #include 
+ #include 
+ #include 
+ #include 
+ #include 
+ #include 
+ 
+ real etime_(real tim_buf[2])
+ {
+ static  char		first_call = 1 ;
+ static	double		start ;
+         struct time     tim ;
+         struct date     dat ;
+         double		hrs, mins, secs, time ;
+ 
+ gettime( &tim ) ;
+ getdate( &dat ) ;
+ hrs  = (double)dat.da_day * 24.0 + (double)tim.ti_hour ;
+ mins = hrs  * 60.0 + (double) tim.ti_min ;
+ secs = mins * 60.0 + (double) tim.ti_sec ;
+ time = secs        + (double) tim.ti_hund / 100.0 ;
+ if( first_call ){
+     first_call = 0 ;
+     start = time ;
+     }
+ tim_buf[0] = time - start ;
+ tim_buf[1] = 0 ;
+ return time - start ;
+ }
+ 
+ void fdate_(char *buf, ftnlen len)
+ {
+ 	time_t	t = time(NULL) ;
+ 	char *	p = asctime(localtime(&t)) ;
+ 
+ memcpy( buf, p, min( len, 24 ) ) ;
+ }
Binary files ../src.old//f77pc and ./f77pc differ
diff -cdN ../src.old//f77pc.c ./f77pc.c
*** ../src.old//f77pc.c
--- ./f77pc.c	Thu Jan 26 15:22:15 1995
***************
*** 0 ****
--- 1,102 ----
+ #include 
+ #include 
+ 
+ #define	F2C	"f2c"
+ #define	GCC	"gcc"
+ #define MAXCMD	(31*1024)
+ 
+ #ifndef EXIT_SUCCESS
+ #define EXIT_SUCCESS	0
+ #endif
+ #ifndef EXIT_FAILURE
+ #define	EXIT_FAILURE	~EXIT_SUCCESS
+ #endif
+ 
+ int
+ FortranFile( char *p )
+ {
+ p += strlen( p ) - 2 ;
+ return strcmp( p, ".f" ) == 0 || strcmp( p, ".F" ) == 0 ;
+ }
+ 
+ int
+ FortranArg( char *p )
+ {
+ return strcmp ( p, "-A"     ) == 0 || strcmp ( p, "-p"    ) == 0 ||
+        strncmp( p, "-Nn", 3 ) == 0 || strncmp( p, "-T", 2 ) == 0 ;
+ }
+ 
+ int
+ CommonArg( char *p )
+ {
+ return strcmp( p, "-g" ) == 0 ;
+ }
+ 
+ char *
+ MakeCName( char *p )
+ {
+ 	char	*c = malloc( strlen( p ) + 1 ) ;
+ 
+ strcpy( c, p ) ;
+ c[ strlen( c ) - 1 ] = 'c' ;
+ return c ;
+ }
+ 
+ int
+ RunCompiler( char **args )
+ {
+ 	char	cmd[ MAXCMD ] = "" ;
+ 	int	i ;
+ 
+ for( i = 0 ; args[ i ] != NULL ; i++ ){
+     strcat( cmd, args[ i ] ) ;
+     if( args[ i+1 ] != NULL )
+         strcat( cmd, " " ) ;
+     }
+ return system( cmd ) ;
+ }
+ 
+ int
+ main( int argc, char *argv[] )
+ {
+ 	char	**ftn_fils ;
+ 	char	**ftn_args ;
+ 	char	**fin_args ;
+ 	int	n_ftn_fils = 0 ;
+ 	int	n_ftn_args = 1 ;
+ 	int	n_fin_args = 1 ;
+ 	int	i ;
+ 
+ if( ( ftn_fils = calloc( sizeof( char * ), argc + 1 ) ) == NULL ||
+     ( ftn_args = calloc( sizeof( char * ), argc + 1 ) ) == NULL ||
+     ( fin_args = calloc( sizeof( char * ), argc + 1 ) ) == NULL ){
+     perror( "Out of memory in f77 driver!\n" ) ;
+     return EXIT_FAILURE ;
+     }
+ ftn_args[0] = F2C ;
+ fin_args[0] = GCC ;
+ for( i = 1 ; i < argc ; i++ ){
+          if( FortranFile( argv[i] ) ){
+             ftn_fils[ n_ftn_fils++ ] = argv[i] ;
+             fin_args[ n_fin_args++ ] = MakeCName( argv[i] ) ;
+             }
+     else if( FortranArg( argv[i] ) ){
+             ftn_args[ n_ftn_args++ ] = argv[i] ;
+             }
+     else if( CommonArg( argv[i] ) ){
+             ftn_args[ n_ftn_args++ ] = argv[i] ;
+             fin_args[ n_fin_args++ ] = argv[i] ;
+             }
+     else {
+             fin_args[ n_fin_args++ ] = argv[i] ;
+             }
+     }
+ for( i = 0 ; i < n_ftn_fils ; i++ ){
+     ftn_args[n_ftn_args] = ftn_fils[i] ;
+     if( RunCompiler( ftn_args ) != 0 ){
+         fprintf( stderr, "Intermediate compiling %s\n", ftn_fils[i] ) ;
+         return EXIT_FAILURE ;
+         }
+     }
+ return RunCompiler( fin_args ) ;
+ }
diff -cdN ../src.old//fdummy.f ./fdummy.f
*** ../src.old//fdummy.f
--- ./fdummy.f	Mon Jan 30 15:45:15 1995
***************
*** 0 ****
--- 1,20 ----
+       SUBROUTINE GREENF
+       WRITE(6,10000)
+       RETURN
+ 10000 FORMAT(//
+      .' ************************************************************'
+      .' *  GREEN FUNCTIONS I.P. CORRECTION IS NOT INCLUDED, SO     *'
+      .' *  GREENF WAS IGNORED                                      *'
+      .' ************************************************************'
+      .//)
+       END
+       SUBROUTINE ESP
+       WRITE(6,10000)
+       RETURN
+ 10000 FORMAT(//
+      .' ************************************************************'
+      .' *  ELECTROSTATIC POTENTIAL CODE NOT INCLUDED, SO           *'
+      .' *  ESP WAS IGNORED                                         *'
+      .' ************************************************************'
+      .//)
+       END
diff -cdN ../src.old//ffhpol.f ./ffhpol.f
*** ../src.old//ffhpol.f	Tue Apr 20 03:38:14 1993
--- ./ffhpol.f	Wed Jan 25 17:26:58 1995
***************
*** 14,20 ****
  C
  C***********************************************************************
        COMMON /CORE  / CORE(107)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM),NORS,NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
--- 14,20 ----
  C
  C***********************************************************************
        COMMON /CORE  / CORE(107)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM),NORS,NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
***************
*** 41,47 ****
       1          DIPE4(3),APOLE4(6),BETAE4(9),GAMME4(6),
       2          DIPDP(3),APOLDP(6),BETADP(9),GAMMDP(6),
       3          DIP1P(3),DIP1M(3),DIP2P(3),DIP2M(3)
!       DIMENSION IPTBD(6)
        DATA IPTBD /5,7,4,9,6,8/
  C Energy: a.u. to kcal/mole
        AUTOKC = 23.061D+00*27.2107D+00
--- 41,47 ----
       1          DIPE4(3),APOLE4(6),BETAE4(9),GAMME4(6),
       2          DIPDP(3),APOLDP(6),BETADP(9),GAMMDP(6),
       3          DIP1P(3),DIP1M(3),DIP2P(3),DIP2M(3)
!       DIMENSION IPTBD(6), GRAD(MAXPAR)
        DATA IPTBD /5,7,4,9,6,8/
  C Energy: a.u. to kcal/mole
        AUTOKC = 23.061D+00*27.2107D+00
***************
*** 66,72 ****
        WRITE (6,10) EFVAL
     10 FORMAT (//' APPLIED ELECTRIC FIELD MAGNITUDE: ',F15.5)
        SFE = 1.D00/EFVAL
!       WRITE (6,20) 6.74834*ATPOL
     20 FORMAT (//' ATOMIC CONTRIBUTION TO THE POLARIZABILITY: ',F15.6,/,
       1          '  (IT IS ONLY APPLIED TO THE E4 RESULT)')
  C.......................................................................
--- 66,72 ----
        WRITE (6,10) EFVAL
     10 FORMAT (//' APPLIED ELECTRIC FIELD MAGNITUDE: ',F15.5)
        SFE = 1.D00/EFVAL
!       WRITE (6,20) 6.74834D0*ATPOL
     20 FORMAT (//' ATOMIC CONTRIBUTION TO THE POLARIZABILITY: ',F15.6,/,
       1          '  (IT IS ONLY APPLIED TO THE E4 RESULT)')
  C.......................................................................
***************
*** 140,146 ****
           IVL = (ID*(ID+1))/2
           ETERM = 2.5D00*HEAT0 - (4.D00/3.D00)*(HEAT1P + HEAT1M)
       1        + (1.D00/12.0D00)*(HEAT2P + HEAT2M)
!          APOLE4(IVL) = ETERM*SFE*SFE/AUTOKC + ATPOL*6.74834
  C
  C BETA
  C
--- 140,146 ----
           IVL = (ID*(ID+1))/2
           ETERM = 2.5D00*HEAT0 - (4.D00/3.D00)*(HEAT1P + HEAT1M)
       1        + (1.D00/12.0D00)*(HEAT2P + HEAT2M)
!          APOLE4(IVL) = ETERM*SFE*SFE/AUTOKC + ATPOL*6.74834D0
  C
  C BETA
  C
***************
*** 191,199 ****
           DO 140 JD = 1,IDM1
              HNUCJ = 0.0D00
              DO 90 I = 1,NUMAT
!                HNUCJ = HNUCJ + EFVAL*GEO(JD,I)*CORE(NAT(I))*51.4257
     90       CONTINUE
!             HNUCJ = HNUCJ*23.061
              DO 100 I = 1,3
                 EFIELD(I) = 0.0D00
    100       CONTINUE
--- 191,199 ----
           DO 140 JD = 1,IDM1
              HNUCJ = 0.0D00
              DO 90 I = 1,NUMAT
!                HNUCJ = HNUCJ + EFVAL*GEO(JD,I)*CORE(NAT(I))*51.4257D0
     90       CONTINUE
!             HNUCJ = HNUCJ*23.061D0
              DO 100 I = 1,3
                 EFIELD(I) = 0.0D00
    100       CONTINUE
diff -cdN ../src.old//flepo.f ./flepo.f
*** ../src.old//flepo.f	Tue Apr 20 03:38:14 1993
--- ./flepo.f	Tue Jan 17 12:25:46 1995
***************
*** 12,18 ****
        COMMON /PATH  / LATOM,LPARAM,REACT(200)
        COMMON /GRADNT/ GRAD(MAXPAR),GNORM
        COMMON /MESAGE/ IFLEPO,ISCF
!       COMMON /TIME  / TIME0
        COMMON /FMATRX/ HESINV(MAXPAR**2+MAXPAR*3+1), IDUMY(4)
        COMMON /SCFTYP/ EMIN, LIMSCF
        COMMON /TIMDMP/ TLEFT, TDUMP
--- 12,21 ----
        COMMON /PATH  / LATOM,LPARAM,REACT(200)
        COMMON /GRADNT/ GRAD(MAXPAR),GNORM
        COMMON /MESAGE/ IFLEPO,ISCF
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C     COMMON /TIME  / TIME0
!       COMMON /TIMEC / TIME0
! C ***************************** at 1994-05-25 *****
        COMMON /FMATRX/ HESINV(MAXPAR**2+MAXPAR*3+1), IDUMY(4)
        COMMON /SCFTYP/ EMIN, LIMSCF
        COMMON /TIMDMP/ TLEFT, TDUMP
***************
*** 141,147 ****
           IPRT  = 6
           TDEL  = 0.06D0
           NRST  = 30
!          SFACT = 1.5
           DELL  = 0.01D0
           EINC  = 0.3D0
           IGG1  = 3
--- 144,150 ----
           IPRT  = 6
           TDEL  = 0.06D0
           NRST  = 30
!          SFACT = 1.5D0
           DELL  = 0.01D0
           EINC  = 0.3D0
           IGG1  = 3
diff -cdN ../src.old//fmat.f ./fmat.f
*** ../src.old//fmat.f	Tue Apr 20 03:38:14 1993
--- ./fmat.f	Wed Jan 25 16:06:58 1995
***************
*** 1,7 ****
        SUBROUTINE FMAT(FMATRX, NREAL, TSCF, TDER, DELDIP, HEAT)
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120)
        DIMENSION FMATRX(*), DELDIP(3,*)
  ***********************************************************************
  *
--- 1,7 ----
        SUBROUTINE FMAT(FMATRX, NREAL, TSCF, TDER, DELDIP, HEAT)
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120), NENT
        DIMENSION FMATRX(*), DELDIP(3,*)
  ***********************************************************************
  *
***************
*** 27,33 ****
        COMMON /DENSTY/ P(MPACK),PDUMY(2,MPACK)
        COMMON /TIMDMP/ TLEFT, TDUMP
        COMMON /ATMASS/ ATMASS(NUMATM)
!       COMMON /TIME  / TIME0
        COMMON /CORE  / CORE(107)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
--- 27,36 ----
        COMMON /DENSTY/ P(MPACK),PDUMY(2,MPACK)
        COMMON /TIMDMP/ TLEFT, TDUMP
        COMMON /ATMASS/ ATMASS(NUMATM)
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C     COMMON /TIME  / TIME0
!       COMMON /TIMEC / TIME0
! C ***************************** at 1994-05-25 *****
        COMMON /CORE  / CORE(107)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
diff -cdN ../src.old//fock2.f ./fock2.f
*** ../src.old//fock2.f	Tue Apr 20 03:38:14 1993
--- ./fock2.f	Wed Jan 25 17:10:06 1995
***************
*** 3,9 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION F(*), PTOT(*), WJ(*), WK(*), NFIRST(*), NMIDLE(*),
!      1          NLAST(*), P(*), W(*)
        DOUBLE PRECISION WJ,WK
  C***********************************************************************
  C
--- 3,9 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION F(*), PTOT(*), WJ(*), WK(*), NFIRST(*), NMIDLE(*),
!      1          NLAST(*), P(*), W(*), NAT(*)
        DOUBLE PRECISION WJ,WK
  C***********************************************************************
  C
diff -cdN ../src.old//force.dat ./force.dat
*** ../src.old//force.dat
--- ./force.dat	Thu Jan 26 14:22:19 1995
***************
*** 0 ****
--- 1,65 ----
+   FORCE
+       TEST FOR FORCE CALCULATION
+   ROOTS SHOULD BE WITHIN ONE CM**(-1) OF 1210, 1215, 1490, 2114, 3256, 3302.
+    H    0.000000  0    0.000000  0    0.000000  0    0    0    0      -0.0009
+    C    1.106143  1    0.000000  0    0.000000  0    1    0    0       0.2920
+    H    1.106078  1  113.047446  1    0.000000  0    2    1    0      -0.0008
+    O    1.216552  1  123.459523  1  180.002569  1    2    1    3      -0.2903
+    0    0.000000  0    0.000000  0    0.000000  0    0    0    0
+     T=3   FORCE NOINTER NOXYZ SYMMETRY                   
+    FORCE CALCULATION OF FORMALDEHYDE
+    HIGHEST FREQUENCY SHOULD BE 3303 CM(-1)
+    XX    0.000000  0    0.000000  0    0.000000  0   0  0  0
+     H    1.000000  0    0.000000  0    0.000000  0   1  0  0      -0.0010
+     C    1.106004  1  180.000000  0    0.000000  0   2  1  0       0.2922
+     H    1.106004  0  112.940520  1  180.000000  0   3  2  1      -0.0010
+     O    1.216533  1  123.529882  1  180.000000  0   3  2  4      -0.2902
+    XX    0.970000  1  118.281126  1  180.000000  0   3  2  4
+     0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+     3,   1,   4,
+  
+   t=1h   RESTART FORCE NOINTER NOXYZ SYMMETRY                   
+    FORCE CALCULATION OF FORMALDEHYDE
+    HIGHEST FREQUENCY SHOULD BE 3303 CM(-1)
+    XX    0.000000  0    0.000000  0    0.000000  0   0  0  0
+     H    1.000000  0    0.000000  0    0.000000  0   1  0  0      -0.0010
+     C    1.106004  1  180.000000  0    0.000000  0   2  1  0       0.2922
+     H    1.106004  0  112.940520  1  180.000000  0   3  2  1      -0.0010
+     O    1.216533  1  123.529882  1  180.000000  0   3  2  4      -0.2902
+    XX    0.970000  1  118.281126  1  180.000000  0   3  2  4
+     0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+     3,   1,   4,
+  
+     FORCE          ISOTOPE thermo(298,298) rot=5
+    FORCE CALCULATION ON ETHYL RADICAL (NON-VARIATIONAL)
+   HIGHEST FREQUENCY SHOULD BE 3450 +/- 1.0 CM(-1)
+     C    0.000000  0    0.000000  0    0.000000  0   0  0  0
+     C    1.479146  1    0.000000  0    0.000000  0   1  0  0
+     H    1.109475  1  111.328433  1    0.000000  0   2  1  0
+     H    1.109470  1  111.753160  1  120.288410  1   2  1  3
+     H    1.109843  1  110.103163  1  240.205278  1   2  1  3
+     H    1.082055  1  121.214083  1   38.110989  1   1  2  3
+     H    1.081797  1  121.521232  1  217.450268  1   1  2  3
+     0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    T=40    FORCE          
+    FORCE CALCULATION ON ETHYL RADICAL (NON-VARIATIONAL)
+   HIGHEST FREQUENCY SHOULD BE 3450 +/- 1.0 CM(-1)
+     C    0.000000  0    0.000000  0    0.000000  0   0  0  0
+     C    1.479146  1    0.000000  0    0.000000  0   1  0  0
+     H    1.109475  1  111.328433  1    0.000000  0   2  1  0
+     H    1.109470  1  111.753160  1  120.288410  1   2  1  3
+     H    1.109843  1  110.103163  1  240.205278  1   2  1  3
+     H    1.082055  1  121.214083  1   38.110989  1   1  2  3
+     H    1.081797  1  121.521232  1  217.450268  1   1  2  3
+     0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    t=1d  RESTART FORCE          
+    FORCE CALCULATION ON ETHYL RADICAL (NON-VARIATIONAL)
+   HIGHEST FREQUENCY SHOULD BE 3450 +/-1.0 CM(-1)
+     C    0.000000  0    0.000000  0    0.000000  0   0  0  0
+     C    1.479146  1    0.000000  0    0.000000  0   1  0  0
+     H    1.109475  1  111.328433  1    0.000000  0   2  1  0
+     H    1.109470  1  111.753160  1  120.288410  1   2  1  3
+     H    1.109843  1  110.103163  1  240.205278  1   2  1  3
+     H    1.082055  1  121.214083  1   38.110989  1   1  2  3
+     H    1.081797  1  121.521232  1  217.450268  1   1  2  3
+     0    0.000000  0    0.000000  0    0.000000  0   0  0  0
diff -cdN ../src.old//force.f ./force.f
*** ../src.old//force.f	Tue Apr 20 03:38:14 1993
--- ./force.f	Wed Jan 25 16:06:44 1995
***************
*** 14,22 ****
        COMMON /ELEMTS/ ELEMNT(107)
        COMMON /LAST  / LAST
        COMMON /MESAGE/ IFLEPO,ISCF
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120)
        COMMON /SIMBOL/ SIMBOL(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /COORD / COORD(3,NUMATM)
  ***********************************************************************
  *
--- 14,22 ----
        COMMON /ELEMTS/ ELEMNT(107)
        COMMON /LAST  / LAST
        COMMON /MESAGE/ IFLEPO,ISCF
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SIMBOL/ SIMBOL(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /COORD / COORD(3,NUMATM)
  ***********************************************************************
  *
diff -cdN ../src.old//freqcy.f ./freqcy.f
*** ../src.old//freqcy.f	Tue Apr 20 03:38:16 1993
--- ./freqcy.f	Wed Jan 25 17:22:27 1995
***************
*** 17,28 ****
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
        COMMON /NLLCOM/ FMAT2D(2*MAXPAR**2), VEC(MAXPAR**2)
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120)
        COMMON /ATMASS/ ATMASS(NUMATM)
        COMMON /KEYWRD/ KEYWRD
        COMMON /SCRACH/ OLDF(MAXPAR**2)
        CHARACTER KEYWRD*241
        DIMENSION WTMASS(MAXPAR), SHIFT(6), SEC(MAXPAR**2)
        EQUIVALENCE (SEC,OLDF)
        SAVE FACT
        DATA FACT/6.023D23/
--- 17,32 ----
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
        COMMON /NLLCOM/ FMAT2D(2*MAXPAR**2), VEC(MAXPAR**2)
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /ATMASS/ ATMASS(NUMATM)
        COMMON /KEYWRD/ KEYWRD
        COMMON /SCRACH/ OLDF(MAXPAR**2)
+       COMMON /WORK1 /  DUMMY1(NPULAY*4), DUMMY2(NPULAY*2), 
+      .                 DUMMY3(NPULAY*2), ALBAND(NPULAY*13)
+ 
        CHARACTER KEYWRD*241
        DIMENSION WTMASS(MAXPAR), SHIFT(6), SEC(MAXPAR**2)
+       COMPLEX SEC, VEC
        EQUIVALENCE (SEC,OLDF)
        SAVE FACT
        DATA FACT/6.023D23/
diff -cdN ../src.old//geometry.dat ./geometry.dat
*** ../src.old//geometry.dat
--- ./geometry.dat	Thu Jan 26 14:22:19 1995
***************
*** 0 ****
--- 1,232 ----
+   SYMMETRY  geo-ok ef
+    GEOMETRY OPTIMIZATION OF C2H4 USING EIGENVECTOR FOLLOWING
+           FINAL HEAT OF FORMATION SHOULD BE 15.405 KCAL USING 9 SCF'S
+    C    0.000000  0    0.000000  0    0.000000  0   0  0  0      -0.0920
+    C    0.700000  1    0.000000  0    0.000000  0   1  0  0      -0.0930
+    H    1.100000  1  120.000000  1    0.000000  0   2  1  0       0.0462
+    H    1.100000  0  120.000000  0  180.000000  0   2  1  3       0.0462
+    H    1.100000  0  120.000000  0    0.000000  0   1  2  3       0.0461
+    H    1.100000  0  120.000000  0  180.000000  0   1  2  3       0.0465
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    3,   1,   4,
+    3,   1,   5,
+    3,   1,   6,
+    3,   2,   4,
+    3,   2,   5,
+    3,   2,   6,
+ 
+ 
+  GEOMETRY OPTIMIZATION OF CH3 USING DFP (NON-VARIATIONALLY OPTIMIZED)
+                 HEAT OF FORMATION SHOULD BE 25.796
+    C    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    H    1.000000  1    0.000000  0    0.000000  0   0  0  0
+    H    1.400000  1  110.000000  1    0.000000  0   1  2  0
+    H    1.200000  1  120.000000  0  180.000000  0   1  2  3
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+     NLLSQ  SYMMETRY  DUMP=6
+    GRADIENT MINIMIZATION OF C2H4 USING NLLSQ
+           FINAL HEAT OF FORMATION SHOULD BE 15.405 KCAL IN 24 SCF'S
+    C    0.000000  0    0.000000  0    0.000000  0   0  0  0      -0.0920
+    C    1.300000  1    0.000000  0    0.000000  0   1  0  0      -0.0930
+    H    1.100000  1  120.000000  1    0.000000  0   2  1  0       0.0462
+    H    1.100000  0  120.000000  0  180.000000  0   2  1  3       0.0462
+    H    1.100000  0  120.000000  0    0.000000  0   1  2  3       0.0461
+    H    1.100000  0  120.000000  0  180.000000  0   1  2  3       0.0465
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    3,   1,   4,
+    3,   1,   5,
+    3,   1,   6,
+    3,   2,   4,
+    3,   2,   5,
+    3,   2,   6,
+ 
+  PRECISE SYMMETRY                   
+   REACTION PATH, C=O STRETCH
+  HEAT OF FORMATION SHOULD BE -32.88, -32.87, -32.65, -32.18, -30.56, -28.12
+   XX    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    H    1.000000  0    0.000000  0    0.000000  0   1  0  0      -0.0010
+    C    1.106004  1  180.000000  0    0.000000  0   2  1  0       0.2922
+    H    1.106004  0  112.940520  1  180.000000  0   3  2  1      -0.0010
+    O    1.216533 -1  123.529882  1  180.000000  0   3  2  4      -0.2902
+   XX    0.970000  1  118.281126  1  180.000000  0   3  2  4
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    3,   1,   4,
+ 
+ 1.22 1.23 1.24 1.26 1.28
+ 
+  BAR=0.05  SADDLE    
+    SADDLE CALCULATION, CH2O - HCOH                                               
+ FINAL HEAT OF FORMATION SHOULD BE MORE THAN 75 KCAL/MOL
+   XX    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    O    1.008000  1    0.000000  0    0.000000  0   1  0  0      -0.2904
+    C    1.217034  1   97.664390  1    0.000000  0   2  1  0       0.2921
+    H    1.105388  1  123.492803  1    0.000000  1   3  2  1      -0.0008
+    H    1.305403  1   80.509198  1  180.014148  1   3  2  1      -0.0008
+   XX    0.958000  1  117.593577  1  180.000000  1   3  2  4
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+   XX    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    O    1.008000  1    0.000000  0    0.000000  0   1  0  0      -0.2115
+    C    1.299808  1  107.868467  1    0.000000  0   2  1  0       0.0071
+    H    1.109933  1  111.309147  1    0.000000  1   3  2  1      -0.0137
+    H    1.886033  1   27.738198  1  180.000000  1   3  2  1       0.2181
+   XX    0.958000  1  117.593577  1  180.000000  1   3  2  4
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+  XYZ  BAR=0.2 SADDLE                                                                                 
+    SADDLE CALCULATION, CH2O - HCOH                                               
+                 Heat of formation should be 75.7 Kcal/mol, gradient: < 10.
+   XX    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    O    1.008000  1    0.000000  0    0.000000  0   1  0  0      -0.2904
+    C    1.217034  1   97.664390  1    0.000000  0   2  1  0       0.2921
+    H    1.105388  1  123.492803  1    0.000000  1   3  2  1      -0.0008
+    H    1.305403  1  100.509198  1  180.014148  1   3  2  1      -0.0008
+   XX    0.958000  1  117.593577  1  180.000000  1   3  2  4
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+   XX    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    O    1.008000  1    0.000000  0    0.000000  0   1  0  0      -0.2115
+    C    1.299808  1  107.868467  1    0.000000  0   2  1  0       0.0071
+    H    1.109933  1  111.309147  1    0.000000  1   3  2  1      -0.0137
+    H    1.886033  1   27.738198  1  180.000000  1   3  2  1       0.2181
+   XX    0.938000  1  116.447661  1  180.000000  1   3  2  4
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+  PRECISE SYMMETRY  POINT=6 STEP=0.01
+   REACTION PATH, C=O STRETCH
+  HEAT OF FORMATION SHOULD BE -32.83, -32.87, -32.65, -32.18, -31.48, -30.56
+   XX    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    H    1.000000  0    0.000000  0    0.000000  0   1  0  0      -0.0010
+    C    1.106004  1  180.000000  0    0.000000  0   2  1  0       0.2922
+    H    1.106004  0  112.940520  1  180.000000  0   3  2  1      -0.0010
+    O    1.21     -1  123.529882  1  180.000000  0   3  2  4      -0.2902
+   XX    0.970000  1  118.281126  1  180.000000  0   3  2  4
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    3,   1,   4,
+ 
+  SYMMETRY  STEP1=0.02 STEP2=1.0 POINT1=10 POINT2=11
+   REACTION PATH, C=O STRETCH
+  
+ O
+ C 1.2  1
+ H 0.9 -1 117 -1
+ H 0.9  0 130  0 180 0 2 1 3
+ 
+ 3 1 4
+ 3 2 4
+ 
+    T=0.7     SYMMETRY                           
+    GEOMETRY OPTIMIZATION OF C2H4 USING DFP
+ 
+    C    0.000000  0    0.000000  0    0.000000  0   0  0  0      -0.0920
+    C    1.300000  1    0.000000  0    0.000000  0   1  0  0      -0.0930
+    H    1.100000  1  120.000000  1    0.000000  0   2  1  0       0.0462
+    H    1.100000  0  120.000000  0  180.000000  0   2  1  3       0.0462
+    H    1.100000  0  120.000000  0    0.000000  0   1  2  3       0.0461
+    H    1.100000  0  120.000000  0  180.000000  0   1  2  3       0.0465
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    3,   1,   4,
+    3,   1,   5,
+    3,   1,   6,
+    3,   2,   4,
+    3,   2,   5,
+    3,   2,   6,
+ 
+   t=1h   RESTART SYMMETRY                           
+    GEOMETRY OPTIMIZATION OF C2H4 USING DFP
+           FINAL HEAT OF FORMATION SHOULD BE 15.405 KCAL IN 8 SCF'S
+    C    0.000000  0    0.000000  0    0.000000  0   0  0  0      -0.0920
+    C    1.300000  1    0.000000  0    0.000000  0   1  0  0      -0.0930
+    H    1.100000  1  120.000000  1    0.000000  0   2  1  0       0.0462
+    H    1.100000  0  120.000000  0  180.000000  0   2  1  3       0.0462
+    H    1.100000  0  120.000000  0    0.000000  0   1  2  3       0.0461
+    H    1.100000  0  120.000000  0  180.000000  0   1  2  3       0.0465
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    3,   1,   4,
+    3,   1,   5,
+    3,   1,   6,
+    3,   2,   4,
+    3,   2,   5,
+    3,   2,   6,
+ 
+    T=3    NLLSQ  SYMMETRY                           
+    GRADIENT MINIMIZATION OF C2H4 USING NLLSQ
+ 
+    C    0.000000  0    0.000000  0    0.000000  0   0  0  0      -0.0920
+    C    1.300000  1    0.000000  0    0.000000  0   1  0  0      -0.0930
+    H    1.100000  1  120.000000  1    0.000000  0   2  1  0       0.0462
+    H    1.100000  0  120.000000  0  180.000000  0   2  1  3       0.0462
+    H    1.100000  0  120.000000  0    0.000000  0   1  2  3       0.0461
+    H    1.100000  0  120.000000  0  180.000000  0   1  2  3       0.0465
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    3,   1,   4,
+    3,   1,   5,
+    3,   1,   6,
+    3,   2,   4,
+    3,   2,   5,
+    3,   2,   6,
+ 
+   t=1d   RESTART  NLLSQ  SYMMETRY                           
+    GRADIENT MINIMIZATION OF C2H4 USING NLLSQ
+           FINAL HEAT OF FORMATION SHOULD BE 15.405 KCAL
+    C    0.000000  0    0.000000  0    0.000000  0   0  0  0      -0.0920
+    C    1.300000  1    0.000000  0    0.000000  0   1  0  0      -0.0930
+    H    1.100000  1  120.000000  1    0.000000  0   2  1  0       0.0462
+    H    1.100000  0  120.000000  0  180.000000  0   2  1  3       0.0462
+    H    1.100000  0  120.000000  0    0.000000  0   1  2  3       0.0461
+    H    1.100000  0  120.000000  0  180.000000  0   1  2  3       0.0465
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    3,   1,   4,
+    3,   1,   5,
+    3,   1,   6,
+    3,   2,   4,
+    3,   2,   5,
+    3,   2,   6,
+ 
+    T=1.5    SIGMA SYMMETRY                           
+    GRADIENT MINIMIZATION OF C2H4 USING SIGMA, DONE WITH RESTARTS
+   (SHOULD TAKE ABOUT 12 SCF CALCULATIONS)
+    C    0.000000  0    0.000000  0    0.000000  0   0  0  0      -0.0920
+    C    1.300000  1    0.000000  0    0.000000  0   1  0  0      -0.0930
+    H    1.100000  1  120.000000  1    0.000000  0   2  1  0       0.0462
+    H    1.100000  0  120.000000  0  180.000000  0   2  1  3       0.0462
+    H    1.100000  0  120.000000  0    0.000000  0   1  2  3       0.0461
+    H    1.100000  0  120.000000  0  180.000000  0   1  2  3       0.0465
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    3,   1,   4,
+    3,   1,   5,
+    3,   1,   6,
+    3,   2,   4,
+    3,   2,   5,
+    3,   2,   6,
+ 
+    RESTART SIGMA SYMMETRY t=60m                          
+    GRADIENT MINIMIZATION OF C2H4 USING SIGMA, DONE WITH RESTARTS
+           FINAL HEAT OF FORMATION SHOULD BE 15.405 KCAL 13 SCF CALC'NS
+    C    0.000000  0    0.000000  0    0.000000  0   0  0  0      -0.0920
+    C    1.300000  1    0.000000  0    0.000000  0   1  0  0      -0.0930
+    H    1.100000  1  120.000000  1    0.000000  0   2  1  0       0.0462
+    H    1.100000  0  120.000000  0  180.000000  0   2  1  3       0.0462
+    H    1.100000  0  120.000000  0    0.000000  0   1  2  3       0.0461
+    H    1.100000  0  120.000000  0  180.000000  0   1  2  3       0.0465
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    3,   1,   4,
+    3,   1,   5,
+    3,   1,   6,
+    3,   2,   4,
+    3,   2,   5,
+    3,   2,   6,
+ 
+   IRC=1 DRC=3.0 T=30  KINETIC=10
+   DRC/IRC STARTING FROM INITIAL GEOMETRY  
+                                                                                  
+    C    0.000000  0    0.000000  0    0.000000  0   0  0  0      -0.0902
+    H    1.078283  1    0.000000  0    0.000000  0   1  0  0       0.0302
+    H    1.078224  1  120.066593  1    0.000000  0   1  2  0       0.0301
+    H    1.078207  1  120.000000  0  180.000000  0   1  2  3       0.0300
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+   RESTART DRC=3 T=10
+   DRC/IRC STARTING FROM INITIAL GEOMETRY  
+                                                                                  
+    C    0.000000  0    0.000000  0    0.000000  0   0  0  0      -0.0902
+    H    1.078283  1    0.000000  0    0.000000  0   1  0  0       0.0302
+    H    1.078224  1  120.066593  1    0.000000  0   1  2  0       0.0301
+    H    1.078207  1  120.000000  0  180.000000  0   1  2  3       0.0300
+    0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+ 
diff -cdN ../src.old//geout.f ./geout.f
*** ../src.old//geout.f	Tue Apr 20 03:38:16 1993
--- ./geout.f	Tue Jan 17 15:32:32 1995
***************
*** 7,13 ****
  *         FROM ANY POINT IN THE PROGRAM AND DOES NOT AFFECT ANYTHING.
  *
  **********************************************************************
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1NA(NUMATM),NB(NUMATM),NC(NUMATM)
        COMMON /GEOVAR/ NVAR,LOC(2,MAXPAR),IDUMY,XPARAM(MAXPAR)
--- 7,13 ----
  *         FROM ANY POINT IN THE PROGRAM AND DOES NOT AFFECT ANYTHING.
  *
  **********************************************************************
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1NA(NUMATM),NB(NUMATM),NC(NUMATM)
        COMMON /GEOVAR/ NVAR,LOC(2,MAXPAR),IDUMY,XPARAM(MAXPAR)
diff -cdN ../src.old//geoutg.f ./geoutg.f
*** ../src.old//geoutg.f	Tue Apr 20 03:38:16 1993
--- ./geoutg.f	Tue Jan 17 15:32:27 1995
***************
*** 7,13 ****
        COMMON /SIMBOL/ SIMBOL(MAXPAR)
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)
        COMMON /ATOMTX/ LTXT, TXTATM(NUMATM)
!       COMMON /GEOM  / GEO(3,NUMATM)
  ************************************************************************
  *
  *   GEOUTG WRITES OUT THE GEOMETRY IN GAUSSIAN-8X STYLE
--- 7,13 ----
        COMMON /SIMBOL/ SIMBOL(MAXPAR)
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)
        COMMON /ATOMTX/ LTXT, TXTATM(NUMATM)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
  ************************************************************************
  *
  *   GEOUTG WRITES OUT THE GEOMETRY IN GAUSSIAN-8X STYLE
diff -cdN ../src.old//getgeo.f ./getgeo.f
*** ../src.old//getgeo.f	Tue Apr 20 03:38:16 1993
--- ./getgeo.f	Thu Jan 26 09:53:40 1995
***************
*** 27,33 ****
        COMMON /ATMASS/ ATMASS(NUMATM)
        COMMON /ATOMTX/ LTXT, TXTATM(NUMATM)
        COMMON /KEYWRD/ KEYWRD
!       DIMENSION ISTART(40), XYZ(3,NUMATM), VALUE(4)
        LOGICAL LEADSP, IRCDRC
        CHARACTER KEYWRD*241, TXTATM*8, SIMBOL*10, LTXT*1
        CHARACTER ELEMNT(107)*2, LINE*80, SPACE*1, NINE*1,ZERO*1,
--- 27,33 ----
        COMMON /ATMASS/ ATMASS(NUMATM)
        COMMON /ATOMTX/ LTXT, TXTATM(NUMATM)
        COMMON /KEYWRD/ KEYWRD
!       DIMENSION ISTART(40), XYZ(3,NUMATM), VALUE(40)
        LOGICAL LEADSP, IRCDRC
        CHARACTER KEYWRD*241, TXTATM*8, SIMBOL*10, LTXT*1
        CHARACTER ELEMNT(107)*2, LINE*80, SPACE*1, NINE*1,ZERO*1,
diff -cdN ../src.old//gover.f ./gover.f
*** ../src.old//gover.f	Tue Apr 20 03:38:16 1993
--- ./gover.f	Tue Jan 17 15:01:13 1995
***************
*** 79,92 ****
                    IF((ADB*R).LT.90.D0) THEN
                       ABN=1.0D0
                       GO TO(50,10,20,30),IS
!    10                ABN=2.*TOMB*Z(I,K)*SQRT(Z(J,L))/AMB
                       GO TO 50
!    20                ABN=-2.*TOMB*Z(J,L)*SQRT(Z(I,K))/AMB
                       GO TO 50
     30                ABN=-ADB*TOMB
                       IF(NAT.EQ.NBT) ABN=ABN+0.5D0
     40                ABN=4.0D0*ABN*SQRT(APB)/AMB
!    50                S(K,L)=SQRT((2.*SQRT(APB)/AMB)**3)*EXP(-ADB*R)*ABN
                    ENDIF
     60       CONTINUE
              SG(KA,KB)=0.0D0
--- 79,93 ----
                    IF((ADB*R).LT.90.D0) THEN
                       ABN=1.0D0
                       GO TO(50,10,20,30),IS
!    10                ABN=2.D0*TOMB*Z(I,K)*SQRT(Z(J,L))/AMB
                       GO TO 50
!    20                ABN=-2.D0*TOMB*Z(J,L)*SQRT(Z(I,K))/AMB
                       GO TO 50
     30                ABN=-ADB*TOMB
                       IF(NAT.EQ.NBT) ABN=ABN+0.5D0
     40                ABN=4.0D0*ABN*SQRT(APB)/AMB
!    50                S(K,L)=SQRT((2.D0*SQRT(APB)/AMB)**3)*EXP(-ADB*R)*
!      .                      ABN
                    ENDIF
     60       CONTINUE
              SG(KA,KB)=0.0D0
diff -cdN ../src.old//greenf.f ./greenf.f
*** ../src.old//greenf.f	Tue Apr 20 03:38:16 1993
--- ./greenf.f	Mon Jan 30 15:39:10 1995
***************
*** 12,17 ****
--- 12,18 ----
        COMMON/DOD1/NMUX,LM6,LM7
        COMMON /CHANEL/ IFILES(30)
        EQUIVALENCE(IW,IFILES(6))
+ *
        IW=6
        WRITE(IW,10)
     10 FORMAT(///)
***************
*** 105,111 ****
       * NLAST(NUMATM),NORBS,NELECS,NALPHA,NBETA,NCLOSE,NOPEN,
       * NDUMY,FRACT
        CHARACTER LINE*80
!       DIMENSION VALUE(3)
        NRA=6
        NAMB=NORBS-NCLOSE
        READ(5,'(A)') LINE
--- 106,112 ----
       * NLAST(NUMATM),NORBS,NELECS,NALPHA,NBETA,NCLOSE,NOPEN,
       * NDUMY,FRACT
        CHARACTER LINE*80
!       DIMENSION VALUE(40)
        NRA=6
        NAMB=NORBS-NCLOSE
        READ(5,'(A)') LINE
***************
*** 149,156 ****
        COMMON/WMATRX/W(N2ELEC),WK(N2ELEC)
        COMMON/CIPARM/ICI1,ICI2,IOUT2
        COMMON/DOD1/NMUX,LM6,LM7
!       PARAMETER (IGREEN=600000)
!       COMMON/FMCOM/X(600000)
        COMMON /CHANEL/ IFILES(30)
        EQUIVALENCE(IW,IFILES(6))
        IF(MEMORY.GT.IGREEN)THEN
--- 150,156 ----
        COMMON/WMATRX/W(N2ELEC),WK(N2ELEC)
        COMMON/CIPARM/ICI1,ICI2,IOUT2
        COMMON/DOD1/NMUX,LM6,LM7
!       COMMON/FMCOM/X(IGREEN)
        COMMON /CHANEL/ IFILES(30)
        EQUIVALENCE(IW,IFILES(6))
        IF(MEMORY.GT.IGREEN)THEN
***************
*** 657,663 ****
                       GO TO 170
    190                AS1=AS1+(2.D0*P(NUMB)-P(NUMB1))*
       1(2.D0*P(NUMB2)-P(NUMB3))*P(NUMB4)/
!      2((EIG(J)+EIG(I)-EIG(M)-EIG(N))*(EIG(K)+EIG(I)-EIG(M2)-EIG(N)))
    200 CONTINUE
        AS1=-AS1
        DO 400 M=KYR1,KYR2
--- 657,663 ----
                       GO TO 170
    190                AS1=AS1+(2.D0*P(NUMB)-P(NUMB1))*
       1(2.D0*P(NUMB2)-P(NUMB3))*P(NUMB4)/
!      2((EIG(J)+EIG(I)-EIG(M)-EIG(N))*(EIG(K)+EIG(I)-EIG(M)-EIG(N)))
    200 CONTINUE
        AS1=-AS1
        DO 400 M=KYR1,KYR2
***************
*** 948,954 ****
  C=================================================================
  C
        SUBROUTINE CSUM(P,NDIS,EP)
!       IMPLICIT REAL*8(A-H,O-Z)
  ************************************************************
  *  CALCULATION 'CI' VALUES FOR GREEN'S FUNCTION METHOD     *
  *  SUBROUTINE WRITTEN BY DR. DAVID DANOVICH, DEPARTMENT OF *
--- 948,954 ----
  C=================================================================
  C
        SUBROUTINE CSUM(P,NDIS,EP)
!       IMPLICIT DOUBLE PRECISION (A-H,O-Z)
  ************************************************************
  *  CALCULATION 'CI' VALUES FOR GREEN'S FUNCTION METHOD     *
  *  SUBROUTINE WRITTEN BY DR. DAVID DANOVICH, DEPARTMENT OF *
***************
*** 958,964 ****
        INCLUDE 'SIZES'
        DIMENSION P(*)
        COMMON/DOD/ITL(200),IT(200)
!       COMMON/VECTOR/C(MORB2),EIG(MAXORB)
        COMMON/PEREM/NYR,IY,IGGV,IGGW
        COMMON/CSUC/CS1,CS2,CS3,CS4,CS5,CS6
        KYR2=NYR+IGGV
--- 958,964 ----
        INCLUDE 'SIZES'
        DIMENSION P(*)
        COMMON/DOD/ITL(200),IT(200)
!       COMMON/VECTOR/C(MORB2),EIG(MAXORB),CBETA(MORB2),EIGBET(MAXORB)
        COMMON/PEREM/NYR,IY,IGGV,IGGW
        COMMON/CSUC/CS1,CS2,CS3,CS4,CS5,CS6
        KYR2=NYR+IGGV
***************
*** 1979,1985 ****
        COMMON/DSMD/DS1,DS2,DS3,DS4,DS5,DS6
        COMMON/SUMA/SU2R,EPS,SUM1,SUM2
        COMMON/VECTOR/C(MORB2),EIG(MAXORB),CBETA(MORB2),EIGB(MAXORB)
!       DIMENSION VALUE(10)
        CHARACTER LINE*80
        WRITE(6,1) INTSO,NORBS
     1  FORMAT(//5X,'number of nonzero integrals =',I10,5X,
--- 1979,1985 ----
        COMMON/DSMD/DS1,DS2,DS3,DS4,DS5,DS6
        COMMON/SUMA/SU2R,EPS,SUM1,SUM2
        COMMON/VECTOR/C(MORB2),EIG(MAXORB),CBETA(MORB2),EIGB(MAXORB)
!       DIMENSION VALUE(40)
        CHARACTER LINE*80
        WRITE(6,1) INTSO,NORBS
     1  FORMAT(//5X,'number of nonzero integrals =',I10,5X,
diff -cdN ../src.old//grid.f ./grid.f
*** ../src.old//grid.f	Tue Apr 20 03:38:16 1993
--- ./grid.f	Tue Jan 17 15:32:21 1995
***************
*** 24,30 ****
  *       6. Write out UNIMAP irregular data UMP.DAT
  *
  ************************************************************************
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /GEOVAR/ NVAR,LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
        COMMON /GRADNT/ GRAD(MAXPAR),GNORM
        COMMON /GRAVEC/ COSINE
--- 24,30 ----
  *       6. Write out UNIMAP irregular data UMP.DAT
  *
  ************************************************************************
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /GEOVAR/ NVAR,LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
        COMMON /GRADNT/ GRAD(MAXPAR),GNORM
        COMMON /GRAVEC/ COSINE
***************
*** 104,111 ****
  C   THESE PARAMETERS NEED TO BE DUMPED IN '.RES'
        CURRT1=START1
        CURRT2=START2
!       IONE=-1.D0
!       CPUTOT=0.0
        IJLP=0
        ILP=1
        JLP=1
--- 104,111 ----
  C   THESE PARAMETERS NEED TO BE DUMPED IN '.RES'
        CURRT1=START1
        CURRT2=START2
!       IONE=-1
!       CPUTOT=0.0D0
        IJLP=0
        ILP=1
        JLP=1
***************
*** 170,176 ****
        WRITE(12,'(/'' TOTAL CPU TIME IN FLEPO : '',F10.3/)') CPUTOT
  C
  C  WRITE OUT THE GRIDS
!       IONE=1.D0
        ILOOP=1
        JLOOP1=1
        DO 50 IJ=1,NPTS1*NPTS2
--- 170,176 ----
        WRITE(12,'(/'' TOTAL CPU TIME IN FLEPO : '',F10.3/)') CPUTOT
  C
  C  WRITE OUT THE GRIDS
!       IONE=1
        ILOOP=1
        JLOOP1=1
        DO 50 IJ=1,NPTS1*NPTS2
diff -cdN ../src.old//hqrii.f ./hqrii.f
*** ../src.old//hqrii.f	Tue Apr 20 03:38:16 1993
--- ./hqrii.f	Tue Jan 17 12:30:38 1995
***************
*** 44,50 ****
           KP1=K+1
           KRANK=KRANK+K
           W(2,K)=A(KRANK)
!          SUM=0.
           JRANK=KRANK
           DO 10 J=KP1,N
              W(2,J)=A(JRANK+K)
--- 44,50 ----
           KP1=K+1
           KRANK=KRANK+K
           W(2,K)=A(KRANK)
!          SUM=0.D0
           JRANK=KRANK
           DO 10 J=KP1,N
              W(2,J)=A(JRANK+K)
diff -cdN ../src.old//initsv.f ./initsv.f
*** ../src.old//initsv.f	Tue Apr 20 03:38:16 1993
--- ./initsv.f	Thu Mar  9 18:02:32 1995
***************
*** 1,11 ****
        SUBROUTINE INITSV (INDEPS)
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       COMMON / SOLV / FEPSI,RDS,DISEX2,NSPA,NPS,NPS2,NDEN,
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC)
        COMMON /DIRVEC/ DIRVEC(3,NPPA), NN(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
--- 1,12 ----
        SUBROUTINE INITSV (INDEPS)
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       COMMON / SOLV / FEPSI,RDS,DISEX2,NSPA,NPSX,NPS2X,NDEN,
       1                COSURF(3,LENABC), SRAD(NUMATM),ABCMAT(LENAB2),
       2                TM(3,3,NUMATM),QDEN(MAXDEN),DIRTM(3,NPPA),
       3                BH(LENABC)
!      4       /SOLVI/  IATSP(LENABC+1),NAR(LENABC), NNX(2,NUMATM)
!      x       /SOLVPS/ NPS, NPS2
        COMMON /DIRVEC/ DIRVEC(3,NPPA), NN(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
***************
*** 37,51 ****
        EPSI=READA(KEYWRD,INDEPS)
        FEPSI=(EPSI-1.D0)/(EPSI+0.5D0)
        NPS=0
        NDEN=3*NORBS-2*NUMAT
        MAXNPS=SQRT(2*LENAB2+0.251)-NDEN-0.5
        MAXNPS=MIN(MAXNPS,LENABC)
!       WRITE(IW,*) 'MAXIMUM NUMBER OF SEGMENTS ALLOWED:',MAXNPS
        IF ((NDEN*(NDEN+1))/2 .GT. LENAB2) THEN
           WRITE(IW,*) 'PARAMETER LENABC IS TOO SMALL FOR THIS SYSTEM'
           STOP 'PARAMETER LENABC IS TOO SMALL FOR THIS SYSTEM'
        ENDIF
!       RSOLV=1.
        INRSOL=INDEX(KEYWRD,'RSOLV=')
        IF (INRSOL .NE. 0) THEN
           RSOLV=READA(KEYWRD,INRSOL)
--- 38,53 ----
        EPSI=READA(KEYWRD,INDEPS)
        FEPSI=(EPSI-1.D0)/(EPSI+0.5D0)
        NPS=0
+       IW=6
        NDEN=3*NORBS-2*NUMAT
        MAXNPS=SQRT(2*LENAB2+0.251)-NDEN-0.5
        MAXNPS=MIN(MAXNPS,LENABC)
! *     WRITE(IW,*) 'MAXIMUM NUMBER OF SEGMENTS ALLOWED:',MAXNPS
        IF ((NDEN*(NDEN+1))/2 .GT. LENAB2) THEN
           WRITE(IW,*) 'PARAMETER LENABC IS TOO SMALL FOR THIS SYSTEM'
           STOP 'PARAMETER LENABC IS TOO SMALL FOR THIS SYSTEM'
        ENDIF
!       RSOLV=1.D0
        INRSOL=INDEX(KEYWRD,'RSOLV=')
        IF (INRSOL .NE. 0) THEN
           RSOLV=READA(KEYWRD,INRSOL)
diff -cdN ../src.old//interp.f ./interp.f
*** ../src.old//interp.f	Tue Apr 20 03:38:16 1993
--- ./interp.f	Tue Jan 17 15:03:00 1995
***************
*** 81,87 ****
           DO 90 J=1,N
     90 VEC(I,J)=CP(I,J)
        EOLD=E
!       XOLD=1.0
        MODE=2
        RETURN
  C
--- 81,87 ----
           DO 90 J=1,N
     90 VEC(I,J)=CP(I,J)
        EOLD=E
!       XOLD=1.0D0
        MODE=2
        RETURN
  C
***************
*** 286,292 ****
        DO 550 K=1,MINPQ
           CK=COS(XNOW*THETA(K))
           SK=SIN(XNOW*THETA(K))
!          IF(DEBUG)WRITE(6,'('' ROTATION ANGLE:'',F12.4)')SK*57.29578
           DO 540 I=1,N
              CP(I,K)   =CK*VEC(I,K)-SK*VEC(I,NP+K)
    540    CP(I,NP+K)=SK*VEC(I,K)+CK*VEC(I,NP+K)
--- 286,292 ----
        DO 550 K=1,MINPQ
           CK=COS(XNOW*THETA(K))
           SK=SIN(XNOW*THETA(K))
!          IF(DEBUG)WRITE(6,'('' ROTATION ANGLE:'',F12.4)')SK*57.29578D0
           DO 540 I=1,N
              CP(I,K)   =CK*VEC(I,K)-SK*VEC(I,NP+K)
    540    CP(I,NP+K)=SK*VEC(I,K)+CK*VEC(I,NP+K)
***************
*** 305,311 ****
    580 ROLD=XOLD*THETA(1)*57.29578D0
        RNOW=XNOW*THETA(1)*57.29578D0
        RMIN=XMIN*THETA(1)*57.29578D0
!       IF(DEBUG)WRITE(6,600) XOLD,EOLD*23.061,DEOLD,ROLD
       1,             XNOW,ENOW*23.061D0,DENOW,RNOW
       2,             XMIN,EMIN*23.061D0,DEMIN,RMIN
        EOLD=ENOW
--- 305,311 ----
    580 ROLD=XOLD*THETA(1)*57.29578D0
        RNOW=XNOW*THETA(1)*57.29578D0
        RMIN=XMIN*THETA(1)*57.29578D0
!       IF(DEBUG)WRITE(6,600) XOLD,EOLD*23.061D0,DEOLD,ROLD
       1,             XNOW,ENOW*23.061D0,DENOW,RNOW
       2,             XMIN,EMIN*23.061D0,DEMIN,RMIN
        EOLD=ENOW
***************
*** 388,394 ****
  C     SKIP INTERVAL IF PNTS ARE TOO CLOSE TOGETHER
  C
           IF(DX.LE.CLOSE) GO TO 110
!          X1=0.0
           IF(K.EQ.1) X1=XSTART-X(1)
           X2=DX
           IF(K.EQ.N1) X2=XSTOP-X(N1)
--- 388,394 ----
  C     SKIP INTERVAL IF PNTS ARE TOO CLOSE TOGETHER
  C
           IF(DX.LE.CLOSE) GO TO 110
!          X1=0.0D0
           IF(K.EQ.1) X1=XSTART-X(1)
           X2=DX
           IF(K.EQ.N1) X2=XSTOP-X(N1)
***************
*** 419,425 ****
  C     CUBIC IS DOMINATED BY QUADRATIC TERM
  C
     60    R=AC3/BB
!          XK=-(((0.039063*R+0.0625)*R+0.125)*R+0.5)*C/B
     70    IF(XK.LT.X1.OR.XK.GT.X2) GO TO 90
     80    FM=((A*XK+B)*XK+C)*XK+F(K)
           IF(FM.GT.FMIN) GO TO 90
--- 419,425 ----
  C     CUBIC IS DOMINATED BY QUADRATIC TERM
  C
     60    R=AC3/BB
!          XK=-(((0.039063D0*R+0.0625D0)*R+0.125D0)*R+0.5D0)*C/B
     70    IF(XK.LT.X1.OR.XK.GT.X2) GO TO 90
     80    FM=((A*XK+B)*XK+C)*XK+F(K)
           IF(FM.GT.FMIN) GO TO 90
***************
*** 717,723 ****
  *
  *
  ************************************************************************
!       D=1.0
        NK=-N
        DO 180 K=1,N
           NK=NK+N
--- 717,723 ----
  *
  *
  ************************************************************************
!       D=1.0D0
        NK=-N
        DO 180 K=1,N
           NK=NK+N
***************
*** 756,762 ****
              A(JK)=A(JI)
     70    A(JI)=HOLO
     80    IF (ABS(BIGA)-TOL) 90,100,100
!    90    D=0.0
           RETURN
    100    DO 120 I=1,N
              IF (I-K) 110,120,110
--- 756,762 ----
              A(JK)=A(JI)
     70    A(JI)=HOLO
     80    IF (ABS(BIGA)-TOL) 90,100,100
!    90    D=0.0D0
           RETURN
    100    DO 120 I=1,N
              IF (I-K) 110,120,110
***************
*** 780,786 ****
    160       A(KJ)=A(KJ)/BIGA
    170    CONTINUE
           D=MIN(D*BIGA,1.D10)
!          A(KK)=1.0/BIGA
    180 CONTINUE
        K=N
    190 K=K-1
--- 780,786 ----
    160       A(KJ)=A(KJ)/BIGA
    170    CONTINUE
           D=MIN(D*BIGA,1.D10)
!          A(KK)=1.0D0/BIGA
    180 CONTINUE
        K=N
    190 K=K-1
diff -cdN ../src.old//iter.f ./iter.f
*** ../src.old//iter.f	Tue Apr 20 03:38:16 1993
--- ./iter.f	Tue Jan 17 12:33:48 1995
***************
*** 15,21 ****
        COMMON /PATH  / LATOM,LPARAM,REACT(200)
        COMMON /NUMCAL/ NUMCAL
        COMMON /SCFTYP/ EMIN, LIMSCF
!       COMMON /TIME  / TIME0
        LOGICAL FULSCF, RAND, LIMSCF
        DOUBLE PRECISION WJ, WK
  C***********************************************************************
--- 15,24 ----
        COMMON /PATH  / LATOM,LPARAM,REACT(200)
        COMMON /NUMCAL/ NUMCAL
        COMMON /SCFTYP/ EMIN, LIMSCF
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C     COMMON /TIME  / TIME0
!       COMMON /TIMEC / TIME0
! C ***************************** at 1994-05-25 *****
        LOGICAL FULSCF, RAND, LIMSCF
        DOUBLE PRECISION WJ, WK
  C***********************************************************************
***************
*** 466,472 ****
    170          FB(L)=H(L)+SHIFTB*PB(L)
    180       FB(L)=FB(L)-SHIFTB
           ELSEIF (RAND.AND.LAST.EQ.0.AND.NITER.LT.2.AND.FULSCF)THEN
!             RANDOM=0.001
              DO 190 I=1,LINEAR
                 RANDOM=-RANDOM
    190       FB(I)=H(I)+RANDOM
--- 469,475 ----
    170          FB(L)=H(L)+SHIFTB*PB(L)
    180       FB(L)=FB(L)-SHIFTB
           ELSEIF (RAND.AND.LAST.EQ.0.AND.NITER.LT.2.AND.FULSCF)THEN
!             RANDOM=0.001D0
              DO 190 I=1,LINEAR
                 RANDOM=-RANDOM
    190       FB(I)=H(I)+RANDOM
***************
*** 632,638 ****
       1    WRITE(6,'('' ITERATION'',I3,'' PLS='',2E10.3,'' ENERGY  '',
       2F14.7,'' DELTAE'',F13.7)')NITER,PL,PLB,ESCF,DIFF
        close (6)
!        OPEN(UNIT=6,FILE=GETNAM('FOR006'),ACCESS='APPEND')
        ENDIF
        IF(INCITR)EOLD=ESCF
  ************************************************************************
--- 635,647 ----
       1    WRITE(6,'('' ITERATION'',I3,'' PLS='',2E10.3,'' ENERGY  '',
       2F14.7,'' DELTAE'',F13.7)')NITER,PL,PLB,ESCF,DIFF
        close (6)
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C      OPEN(UNIT=6,FILE=GETNAM('FOR006'),ACCESS='APPEND')
!       OPEN(UNIT=6,FILE=GETNAM('FOR006'))
!  9990 read (6,'()',end=9999)
!          goto 9990
!  9999 continue
! C ***************************** at 1994-05-25 *****
        ENDIF
        IF(INCITR)EOLD=ESCF
  ************************************************************************
***************
*** 834,840 ****
  C#        CALL TIMER('AFTER MECI')
              EE=EE+SUM
              IF(PRTPL)THEN
!                ESCF=(EE+ENUCLR)*23.061 +ATHEAT
                 WRITE(6,'(27X,''AFTER MECI, ENERGY  '',F14.7)')ESCF
              ENDIF
           ENDIF
--- 843,849 ----
  C#        CALL TIMER('AFTER MECI')
              EE=EE+SUM
              IF(PRTPL)THEN
!                ESCF=(EE+ENUCLR)*23.061D0+ATHEAT
                 WRITE(6,'(27X,''AFTER MECI, ENERGY  '',F14.7)')ESCF
              ENDIF
           ENDIF
diff -cdN ../src.old//jcarin.f ./jcarin.f
*** ../src.old//jcarin.f	Tue Apr 20 03:38:16 1993
--- ./jcarin.f	Tue Jan 17 15:32:14 1995
***************
*** 18,24 ****
       3       /GEOVAR/ NVAR,LOC(2,MAXPAR), IDUMY, YPARAM(MAXPAR)
       4       /EULER / TVEC(3,3),ID
       5       /UCELL / L1L,L2L,L3L,L1U,L2U,L3U
!      6       /GEOM  / GEO(3,NUMATM)
        DIMENSION COORD(3,*),XPARAM(*),B(NVAR,*), COOLD(3,NUMATM*27)
        LOGICAL PRECI
  C
--- 18,24 ----
       3       /GEOVAR/ NVAR,LOC(2,MAXPAR), IDUMY, YPARAM(MAXPAR)
       4       /EULER / TVEC(3,3),ID
       5       /UCELL / L1L,L2L,L3L,L1U,L2U,L3U
!      6       /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        DIMENSION COORD(3,*),XPARAM(*),B(NVAR,*), COOLD(3,NUMATM*27)
        LOGICAL PRECI
  C
diff -cdN ../src.old//keys.dat ./keys.dat
*** ../src.old//keys.dat
--- ./keys.dat	Thu Jan 26 14:22:19 1995
***************
*** 0 ****
--- 1,50 ----
+  1SCF  C.I.=2 MECI LARGE VECTORS DENSITY & HCORE FOCK ENPART  ITRY=40 
+  MULLIK LOCAL PI BONDS 1electron DEBUG GRADIENTS COMPFG denout
+    CALCULATED HEAT OF FORMATION SHOULD BE = -32.995 KCAL
+   XX    0.000000  0    0.000000  0    0.000000  0    0    0    0
+    H    1.000000  0    0.000000  0    0.000000  0    1    0    0      -0.0009
+    C    1.106060  1  180.000000  0  180.000000  0    2    1    0       0.2921
+    H    1.106071  1  112.948031  1  180.000000  0    3    2    1      -0.0010
+    O    1.216607  1  123.532498  1  180.000000  0    3    2    4      -0.2902
+   XX    0.978174  1  118.749470  1  180.000000  0    3    2    4
+    0    0.000000  0    0.000000  0    0.000000  0    0    0    0
+   1SCF T=23M GRADIENTS MOLDAT PL EIGS ITER TIMES C.I.=3 MECI VECTORS ENPART +
+      setup=mnrsk3.key  DEBUG large
+       1SCF - TEST MNDO CALCULATION OF FORMALDEHYDE +large
+    CALCULATED HEAT OF FORMATION SHOULD BE = -39.819 KCAL
+    H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.0033
+    C    1.1038875  1      0.000000  0      0.000000  0    1    0    0      0.2397
+    H    1.1038853  1    113.887246  1      0.000000  0    2    1    0      0.0033
+    O    1.2268927  1    123.055522  1   -179.999565  1    2    1    3     -0.2463
+  
+  SPIN LOCAL ENPART UHF TRIPLET
+       1SCF - UHF TRIPLET TEST MNDO CALCULATION OF FORMALDEHYDE
+     CALCULATED HEAT OF FORMATION SHOULD BE = 15.712
+   XX    0.000000  0    0.000000  0    0.000000  0    0    0    0
+    H    1.000000  0    0.000000  0    0.000000  0    1    0    0       0.1199
+    C    1.087803  1  180.000000  0  180.000000  0    2    1    0      -0.1975
+    H    1.086619  1  121.677600  1 -179.315636  1    3    2    1       0.1190
+    O    1.298843  1  119.396428  1  177.755070  1    3    2    4      -0.0413
+   XX    0.960000  1  117.708168  1  179.427042  1    3    2    4
+    0    0.000000  0    0.000000  0    0.000000  0    0    0    0
+    0scf aigout symmetry
+   Formaldehyde                             
+    Verify that Gaussian Z-matrix is correct in the output
+    o
+    c 1.2 1
+    h 1.1 1 120 1
+    h 1.1 0 120 0 180 0 2 1 3
+  
+    3 1 4
+    3 2 4
+  
+   POLAR DEBUG ANALYT GNORM=0.02 T=30M LINMIN EXTERNAL=PARAS.DAT PM3 &
+      graph search dep 
+  External param's turn PM3 into AM1 HEAT:  -31.4977
+   XX    0.000000  0    0.000000  0    0.000000  0    0    0    0
+    H    1.000000  0    0.000000  0    0.000000  0    1    0    0      -0.0011
+    C    1.106118  1  180.000000  0  180.000000  0    2    1    0       0.2923
+    H    1.106135  1  112.894927  1  180.000000  0    3    2    1      -0.0011
+    O    1.216395  1  123.560741  1  180.000000  0    3    2    4      -0.2901
+   XX    2.166435  0  150.770198  0    0.000000  0    3    2    4
+    0    0.000000  0    0.000000  0    0.000000  0    0    0    0
diff -cdN ../src.old//labels.log ./labels.log
*** ../src.old//labels.log	Fri Apr  2 01:57:32 1993
--- ./labels.log
***************
*** 1,37 ****
- This is TeX, C Version 3.14t3 (format=lplain 92.3.26)  2 APR 1993 08:57
- **labels.tex
- (labels.tex
- LaTeX Version 2.09 <7 Dec 1989>
- (/usr/local/lib/tex/inputs/jjps.sty
- Document Style `letter' <20 Sep 88>.
- \longindentation=\dimen99
- \indentedwidth=\dimen100
- \labelcount=\count79
- )
- Overfull \hbox (249.2949pt too wide) in paragraph at lines 20--21
- [][] 
- 
- \hbox(794.96988+0.0)x365.0
- .\hbox(0.0+0.0)x0.0
- .\hbox(794.96988+0.0)x614.2949, glue set 578.15991fil
- ..\glue 36.135
- ..\hbox(808.49876+0.0)x0.0
- ...\hbox(103.86638+0.0)x0.0, glue set - 221.96324fil, shifted -704.63239 []
- ..\glue 0.0 plus 1.0fil minus 1.0fil
- .\penalty 10000
- .\glue(\parfillskip) 0.0 plus 1.0fil
- .\glue(\rightskip) 0.0
- 
- [1
- 
- ] [2] ) 
- Here is how much of TeX's memory you used:
-  86 strings out of 4463
-  750 string characters out of 63241
-  24947 words of memory out of 262141
-  2049 multiletter control sequences out of 9500
-  19297 words of font info for 73 fonts, out of 72000 for 255
-  14 hyphenation exceptions out of 607
-  11i,7n,10p,160b,163s stack positions out of 300i,40n,60p,3000b,4000s
- 
- Output written on labels.dvi (2 pages, 680 bytes).
--- 0 ----
diff -cdN ../src.old//linmin.f ./linmin.f
*** ../src.old//linmin.f	Tue Apr 20 03:38:16 1993
--- ./linmin.f	Wed Jan 25 17:26:00 1995
***************
*** 1,7 ****
        SUBROUTINE LINMIN(XPARAM,ALPHA,PVECT,NVAR,FUNCT,OKF,IC, DOTT)
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       DIMENSION XPARAM(NVAR),PVECT(NVAR)
        COMMON /GRAVEC/ COSINE
        COMMON /NUMCAL/ NUMCAL
  C*********************************************************************
--- 1,7 ----
        SUBROUTINE LINMIN(XPARAM,ALPHA,PVECT,NVAR,FUNCT,OKF,IC, DOTT)
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       DIMENSION XPARAM(NVAR),PVECT(NVAR),GRAD(MAXPAR)
        COMMON /GRAVEC/ COSINE
        COMMON /NUMCAL/ NUMCAL
  C*********************************************************************
***************
*** 57,63 ****
              ALPHA=1.D0
              DELTA1 = 0.00005D0
              DELTA2 = 0.00001D0
!             IF(INDEX(KEYWRD,'PREC') .NE. 0) DELTA1=0.0000005
              MAXLIN=30
           ENDIF
           COSINE=99.99D0
--- 57,63 ----
              ALPHA=1.D0
              DELTA1 = 0.00005D0
              DELTA2 = 0.00001D0
!             IF(INDEX(KEYWRD,'PREC') .NE. 0) DELTA1=0.0000005D0
              MAXLIN=30
           ENDIF
           COSINE=99.99D0
***************
*** 161,173 ****
           GO TO 80
     70    ALPHA=3.0D00*VT(LEFT)-2.0D00*VT(CENTER)
     80    S=ALPHA-ALPOLD
!          IF (ABS(S).GT.XMAXM) S=SIGN(XMAXM,S)*(1+0.01*(XMAXM/S))
           ALPHA=S+ALPOLD
           GO TO 100
     90    ALPHA=-BETA/(2.0D00*ALPHA)
           S=ALPHA-ALPOLD
           XXM=2.0D00*XMAXM
!          IF (ABS(S).GT.XXM) S=SIGN(XXM,S)*(1+0.01*(XXM/S))
           ALPHA=S+ALPOLD
    100    CONTINUE
  C
--- 161,173 ----
           GO TO 80
     70    ALPHA=3.0D00*VT(LEFT)-2.0D00*VT(CENTER)
     80    S=ALPHA-ALPOLD
!          IF (ABS(S).GT.XMAXM) S=SIGN(XMAXM,S)*(1+0.01D0*(XMAXM/S))
           ALPHA=S+ALPOLD
           GO TO 100
     90    ALPHA=-BETA/(2.0D00*ALPHA)
           S=ALPHA-ALPOLD
           XXM=2.0D00*XMAXM
!          IF (ABS(S).GT.XXM) S=SIGN(XXM,S)*(1+0.01D0*(XXM/S))
           ALPHA=S+ALPOLD
    100    CONTINUE
  C
diff -cdN ../src.old//local.f ./local.f
*** ../src.old//local.f	Tue Apr 20 03:38:16 1993
--- ./local.f	Tue Jan 17 12:36:32 1995
***************
*** 104,110 ****
           DO 100 J=1,NUMAT
              IL=NFIRST(J)
              IU=NLAST(J)
!             X=0.0
  C$DOIT ASIS
              DO 90 K=IL,IU
     90       X=X+C(K,I)**2
--- 104,110 ----
           DO 100 J=1,NUMAT
              IL=NFIRST(J)
              IU=NLAST(J)
!             X=0.0D0
  C$DOIT ASIS
              DO 90 K=IL,IU
     90       X=X+C(K,I)**2
diff -cdN ../src.old//makpol.f ./makpol.f
*** ../src.old//makpol.f	Tue Apr 20 03:38:18 1993
--- ./makpol.f	Wed Jan 25 16:46:07 1995
***************
*** 15,24 ****
  *   
  ************************************************************************
  
!       CHARACTER KEYWRD*241, TXTATM*8
        COMMON /KEYWRD/ KEYWRD
        COMMON /GEOVAR/ NVAR, LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /ATOMTX/ LTXT, TXTATM(NUMATM)
        COMMON /SIMBOL/ SIMBOL(MAXPAR)
        COMMON /EULER / TVEC(3,3), ID
--- 15,24 ----
  *   
  ************************************************************************
  
!       CHARACTER KEYWRD*241, TXTATM*8, SIMBOL*10, LTXT*1
        COMMON /KEYWRD/ KEYWRD
        COMMON /GEOVAR/ NVAR, LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /ATOMTX/ LTXT, TXTATM(NUMATM)
        COMMON /SIMBOL/ SIMBOL(MAXPAR)
        COMMON /EULER / TVEC(3,3), ID
***************
*** 26,31 ****
--- 26,32 ----
       1NA(NUMATM),NB(NUMATM),NC(NUMATM)
        COMMON /GEOSYM/ NDEP, LOCPAR(MAXPAR), IDEPFN(MAXPAR),
       1                      LOCDEP(MAXPAR)
+          IOFF=0
           MERS=READA(KEYWRD,INDEX(KEYWRD,' MERS'))
           DO 270 I=1,NATOMS
    270    IF(LABELS(I).EQ.99)LABELS(I)=100
diff -cdN ../src.old//matou1.f ./matou1.f
*** ../src.old//matou1.f	Tue Apr 20 03:38:18 1993
--- ./matou1.f	Wed Jan 25 16:54:46 1995
***************
*** 10,16 ****
        COMMON /ELEMTS/ ELEMNT(107)
        COMMON/SYMRES/ TRANS,RTR,SIG,NAME,NAMO(MXDIM),JNDEX(MXDIM),ISTA(2)
        COMMON /KEYWRD/ KEYWRD
!       CHARACTER*80 KEYWRD
        LOGICAL ALLPRT
  C**********************************************************************
  C
--- 10,16 ----
        COMMON /ELEMTS/ ELEMNT(107)
        COMMON/SYMRES/ TRANS,RTR,SIG,NAME,NAMO(MXDIM),JNDEX(MXDIM),ISTA(2)
        COMMON /KEYWRD/ KEYWRD
!       CHARACTER*241 KEYWRD, NAME*4, NAMO*4, ISTA*4
        LOGICAL ALLPRT
  C**********************************************************************
  C
diff -cdN ../src.old//matout.f ./matout.f
*** ../src.old//matout.f	Tue Apr 20 03:38:18 1993
--- ./matout.f	Thu Jan 26 09:50:53 1995
***************
*** 1,4 ****
!       SUBROUTINE MATOUT (A,B,NC,NR,NDIM)
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION A(NDIM,NDIM), B(NDIM)
--- 1,4 ----
!       SUBROUTINE MATOUT (A,B,NC,NNR,NDIM)
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION A(NDIM,NDIM), B(NDIM)
***************
*** 25,30 ****
--- 25,31 ----
        DIMENSION NATOM(4*MAXHEV+3*MAXLIT )
        SAVE ATORBS
        DATA ATORBS/' S','PX','PY','PZ','X2','XZ','Z2','YZ','XY'/
+       NR = NNR
        IF(NUMAT.EQ.0)GOTO 30
        IF(NLAST(NUMAT).NE.NR) GOTO 30
        DO 20 I=1,NUMAT
diff -cdN ../src.old//meci.f ./meci.f
*** ../src.old//meci.f	Tue Apr 20 03:38:18 1993
--- ./meci.f	Tue Jan 17 15:04:26 1995
***************
*** 129,135 ****
           DO 40 J=1,NMOS
     40    X=X+OCCA(J)
           XX=X+X
!          NE=XX+0.5
           NELEC=(NELECS-NE+1)/2
        ENDIF
        PRNT=(DEBUG.OR.LAST.EQ.3.AND.PRNT2)
--- 129,135 ----
           DO 40 J=1,NMOS
     40    X=X+OCCA(J)
           XX=X+X
!          NE=XX+0.5D0
           NELEC=(NELECS-NE+1)/2
        ENDIF
        PRNT=(DEBUG.OR.LAST.EQ.3.AND.PRNT2)
***************
*** 180,186 ****
              RJKAA(I,J)=XY(I,I,J,J)-XY(I,J,I,J)
     80 RJKAB(I,J)=XY(I,I,J,J)
        DO 100 I=1,NMOS
!          X=0.0
           DO 90 J=1,NMOS
              X=X+(RJKAA(I,J)+RJKAB(I,J))*OCCA(J)
     90    CONTINUE
--- 180,186 ----
              RJKAA(I,J)=XY(I,I,J,J)-XY(I,J,I,J)
     80 RJKAB(I,J)=XY(I,I,J,J)
        DO 100 I=1,NMOS
!          X=0.0D0
           DO 90 J=1,NMOS
              X=X+(RJKAA(I,J)+RJKAB(I,J))*OCCA(J)
     90    CONTINUE
***************
*** 210,216 ****
              K=READA(KEYWRD,I)
              LAB=K
              IF(PRNT)WRITE(6,'(''    MICROSTATES READ IN'')')
!             NTOT=XX+0.5
              REWIND 5
              DO 150 I=1,1000
                 READ(5,'(A)')LINE
--- 210,216 ----
              K=READA(KEYWRD,I)
              LAB=K
              IF(PRNT)WRITE(6,'(''    MICROSTATES READ IN'')')
!             NTOT=XX+0.5D0
              REWIND 5
              DO 150 I=1,1000
                 READ(5,'(A)')LINE
diff -cdN ../src.old//mecid.f ./mecid.f
*** ../src.old//mecid.f	Tue Apr 20 03:38:18 1993
--- ./mecid.f	Tue Jan 17 12:36:44 1995
***************
*** 28,34 ****
        COMMON /XYIJKL/ XY(NMECI,NMECI,NMECI,NMECI)
        GSE=0.D0
        DO 20 I=1,NMOS
!          X=0.0
           DO 10 J=1,NMOS
     10    X=X+(2.D0*XY(I,I,J,J)-XY(I,J,I,J))*OCCA(J)
           EIGA(I)=EIGS(I+NELEC)-X
--- 28,34 ----
        COMMON /XYIJKL/ XY(NMECI,NMECI,NMECI,NMECI)
        GSE=0.D0
        DO 20 I=1,NMOS
!          X=0.0D0
           DO 10 J=1,NMOS
     10    X=X+(2.D0*XY(I,I,J,J)-XY(I,J,I,J))*OCCA(J)
           EIGA(I)=EIGS(I+NELEC)-X
diff -cdN ../src.old//moldat.f ./moldat.f
*** ../src.old//moldat.f	Tue Apr 20 03:38:18 1993
--- ./moldat.f	Tue Jan 17 15:32:00 1995
***************
*** 39,45 ****
       2ALPAM1(107), EISOLA(107), DDAM1(107), QQAM1(107), AMAM1(107),
       3ADAM1(107), AQAM1(107) ,GSSAM1(107), GSPAM1(107), GPPAM1(107),
       4GP2AM1(107), HSPAM1(107),POLVOA(107)
!       COMMON /GEOM  / GEO(3,NUMATM)
        PARAMETER (MDUMY=MAXPAR**2-MPACK)
        COMMON /SCRACH/ RXYZ(MPACK), XDUMY(MDUMY)
  *
--- 39,45 ----
       2ALPAM1(107), EISOLA(107), DDAM1(107), QQAM1(107), AMAM1(107),
       3ADAM1(107), AQAM1(107) ,GSSAM1(107), GSPAM1(107), GPPAM1(107),
       4GP2AM1(107), HSPAM1(107),POLVOA(107)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        PARAMETER (MDUMY=MAXPAR**2-MPACK)
        COMMON /SCRACH/ RXYZ(MPACK), XDUMY(MDUMY)
  *
diff -cdN ../src.old//mopac.f ./mopac.f
*** ../src.old//mopac.f	Tue Apr 20 03:38:18 1993
--- ./mopac.f	Thu Mar  9 18:03:02 1995
***************
*** 22,28 ****
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1NA(NUMATM),NB(NUMATM),NC(NUMATM)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /GRADNT/ GRAD(MAXPAR),GNORM
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
--- 22,28 ----
        COMMON /GEOSYM/ NDEP,LOCPAR(MAXPAR),IDEPFN(MAXPAR),LOCDEP(MAXPAR)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1NA(NUMATM),NB(NUMATM),NC(NUMATM)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /GRADNT/ GRAD(MAXPAR),GNORM
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
***************
*** 31,37 ****
        COMMON /LAST  / LAST
        COMMON /ATOMIC/ EISOL(107),EHEAT(107)
        COMMON /NUMCAL/ NUMCAL
!       COMMON /TIME  / TIME0
        COMMON /PATH  / LATOM,LPARAM,REACT(200)
  C COSMO change
        LOGICAL ISEPS, USEPS , UPDA
--- 31,40 ----
        COMMON /LAST  / LAST
        COMMON /ATOMIC/ EISOL(107),EHEAT(107)
        COMMON /NUMCAL/ NUMCAL
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C     COMMON /TIME  / TIME0
!       COMMON /TIMEC / TIME0
! C ***************************** at 1994-05-25 *****
        COMMON /PATH  / LATOM,LPARAM,REACT(200)
  C COSMO change
        LOGICAL ISEPS, USEPS , UPDA
***************
*** 91,98 ****
        INDEPS=INDEX(KEYWRD,'EPS=')
        IF (INDEPS .NE. 0) THEN
          ISEPS = .TRUE.
          UPDA =.TRUE.
!         CALL INITSV (INDEPS)
        END IF
  C A.KLAMT 18.7.91
  C end of COSMO change
--- 94,102 ----
        INDEPS=INDEX(KEYWRD,'EPS=')
        IF (INDEPS .NE. 0) THEN
          ISEPS = .TRUE.
+         USEPS = .TRUE.
          UPDA =.TRUE.
! *       CALL INITSV (INDEPS)
        END IF
  C A.KLAMT 18.7.91
  C end of COSMO change
***************
*** 213,219 ****
  C  IF YOU WANT TO USE THE ESP PROGRAM, UNCOMMENT THE LINE
  C  "C#      CALL ESP", ADD "ESP, " TO MOPAC.OPT, THEN COMPILE ESP AND
  C  MNDO, AND RELINK.
! C#        CALL ESP
        ENDIF
     50 TIM=SECOND()-TIME0
        LIMSCF=.FALSE.
--- 217,223 ----
  C  IF YOU WANT TO USE THE ESP PROGRAM, UNCOMMENT THE LINE
  C  "C#      CALL ESP", ADD "ESP, " TO MOPAC.OPT, THEN COMPILE ESP AND
  C  MNDO, AND RELINK.
!           CALL ESP
        ENDIF
     50 TIM=SECOND()-TIME0
        LIMSCF=.FALSE.
***************
*** 230,237 ****
  *   THE JOB STARTS.
  *
  ************************************************************************
-       DATA I/0/
        SAVE I
  C#      WRITE(6,*)GETNAM('FOR005')
        OPEN(UNIT=2,FILE=GETNAM('FOR005'),STATUS='UNKNOWN')
  C
--- 234,241 ----
  *   THE JOB STARTS.
  *
  ************************************************************************
        SAVE I
+       DATA I/0/
  C#      WRITE(6,*)GETNAM('FOR005')
        OPEN(UNIT=2,FILE=GETNAM('FOR005'),STATUS='UNKNOWN')
  C
diff -cdN ../src.old//mullik.f ./mullik.f
*** ../src.old//mullik.f	Tue Apr 20 03:38:18 1993
--- ./mullik.f	Tue Jan 17 15:31:48 1995
***************
*** 18,24 ****
       3                NCLOSE,NOPEN,NDUMY,FRACT
       4       /KEYWRD/ KEYWRD
       5       /BETAS / BETAS(107),BETAP(107),BETAD(107)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /EXPONT/ ZS(107),ZP(107),ZD(107)
        CHARACTER KEYWRD*241, GETNAM*80
        LOGICAL GRAPH
--- 18,24 ----
       3                NCLOSE,NOPEN,NDUMY,FRACT
       4       /KEYWRD/ KEYWRD
       5       /BETAS / BETAS(107),BETAP(107),BETAD(107)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /EXPONT/ ZS(107),ZP(107),ZD(107)
        CHARACTER KEYWRD*241, GETNAM*80
        LOGICAL GRAPH
diff -cdN ../src.old//nch34+.dat ./nch34+.dat
*** ../src.old//nch34+.dat
--- ./nch34+.dat	Thu Mar  9 16:45:50 1995
***************
*** 0 ****
--- 1,21 ----
+  AM1 PRECISE CHARGE=+1 DEBUG VERBOSE GRAD COMPFG EPS=78.4
+ N(CH3)4+, Heat of formation should be 101.1 according to JCS, Perkin Trans.
+ II, 1993 pp. 799-805
+  N              0.000000  0    0.000000  0    0.000000  0    0    0    0
+  C              1.540000  1    0.000000  0    0.000000  0    1    0    0
+  H              1.122530  1  109.471221  1    0.000000  0    2    1    0
+  H              1.122530  1  109.471221  1  120.000000  1    2    1    3
+  H              1.122530  1  109.471221  1 -120.000000  1    2    1    3
+  C              1.493820  1  109.471221  1  -60.000000  1    1    2    3
+  H              1.122530  1  109.471221  1  180.000000  1    6    1    2
+  H              1.122530  1  109.471221  1  -60.000000  1    6    1    2
+  H              1.122530  1  109.471221  1   60.000000  1    6    1    2
+  C              1.493820  1  109.471221  1  180.000000  1    1    2    3
+  H              1.122530  1  109.471221  1  180.000000  1   10    1    2
+  H              1.122530  1  109.471221  1  -60.000000  1   10    1    2
+  H              1.122530  1  109.471221  1   60.000000  1   10    1    2
+  C              1.493820  1  109.471221  1   60.000000  1    1    2    3
+  H              1.122530  1  109.471221  1   60.000000  1   14    1    2
+  H              1.122530  1  109.471221  1  180.000000  1   14    1    2
+  H              1.122530  1  109.471221  1  -60.000000  1   14    1    2
+  0              0.000000  0    0.000000  0    0.000000  0    0    0    0
diff -cdN ../src.old//nllsq.f ./nllsq.f
*** ../src.old//nllsq.f	Tue Apr 20 03:38:18 1993
--- ./nllsq.f	Thu Jan 26 10:59:58 1995
***************
*** 40,46 ****
  C     TOLS6 = ABSOLUTE TOLERANCE ON X FOR LINEAR SEARCHES
  C     NRST = NUMBER OF CYCLES BETWEEN SIDESTEPS
  C     **********
!       COMMON /TIME  / TIME0
        COMMON /NLLSQI/ NCOUNT
        COMMON /NUMSCF/ NSCF
        DIMENSION Y(MAXPAR), EFS(MAXPAR), P(MAXPAR)
--- 40,49 ----
  C     TOLS6 = ABSOLUTE TOLERANCE ON X FOR LINEAR SEARCHES
  C     NRST = NUMBER OF CYCLES BETWEEN SIDESTEPS
  C     **********
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C     COMMON /TIME  / TIME0
!       COMMON /TIMEC / TIME0
! C ***************************** at 1994-05-25 *****
        COMMON /NLLSQI/ NCOUNT
        COMMON /NUMSCF/ NSCF
        DIMENSION Y(MAXPAR), EFS(MAXPAR), P(MAXPAR)
***************
*** 49,57 ****
--- 52,62 ----
        COMMON /NLLCOM/ Q(MAXPAR,MAXPAR),R(MAXPAR,MAXPAR*2)
        COMMON /NLLCO2/ DDDUM(6),EFSLST(MAXPAR),XLAST(MAXPAR),IIIUM(7)
        LOGICAL MIDDLE, RESFIL, MINPRT, LOG
+       SAVE IXSO
        EQUIVALENCE ( IIIUM(2), ICYC),(IIIUM(3), IRST),
       1(IIIUM(4),JRST),
       2(DDDUM(2),ALF), (DDDUM(3),SSQ),(DDDUM(4), PN)
+       DATA IXSO/0/
        MIDDLE=(INDEX(KEYWRD,'RESTART') .NE. 0)
        LOG=(INDEX(KEYWRD,'NOLOG') .EQ. 0)
        IFLEPO=10
diff -cdN ../src.old//oldgeo.dat ./oldgeo.dat
*** ../src.old//oldgeo.dat
--- ./oldgeo.dat	Thu Jan 26 14:22:19 1995
***************
*** 0 ****
--- 1,65 ----
+     SYMMETRY gnorm=0 PRECISE
+   Formaldehyde, for Demonstration Purposes
+        
+   O
+   C 1.2 1
+   H 1.1 1 120 1
+   H 1.1 0 120 0 180 0 2 1 3
+  
+   3 1 4
+   3 2 4
+  
+  oldgeo force isotope
+    Do a force calculation on previous geometry
+  
+  oldgeo am1 nllsq gnorm=0 DERIV DEBUG DCART
+    Calculate the AM1 geometry, starting with the MNDO optimized geometry
+  
+  oldgeo force  AM1
+    Do a FORCE calculation on the AM1 geometry
+  
+  oldgeo restart force 
+    Re-do the FORCE calculation using the MNDO hessian
+  
+  oldgeo pm3  ef gnorm=0
+    Calculate the PM3 geometry, starting with the AM1 geometry
+  
+  oldgeo force  PM3
+   Do a FORCE calculation on the PM3 geometry
+  
+     charge=1
+   Formaldehyde, for Demonstration Purposes
+        
+   O
+   C 1.2 1
+   H 1.1 1 120 1
+   H 1.2 1 120 1 150 1 2 1 3
+  
+   oldgeo force  CHARGE=1
+    FORCE calculation on CH2O(+), RHF
+  
+  oldgeo uhf  CHARGE=1
+    Optimize the CH2O(+) geometry, UHF, starting with RHF geometry
+  
+  oldgeo force CHARGE=1 uhf
+   Do a force calculation on UHF geometry.
+  
+     charge=1 T=1M DUMP=1 UHF
+   Formaldehyde, for Demonstration Purposes
+        
+   O
+   C 1.2 1
+   H 1.1 1 120 1
+   H 1.2 1 120 1 150 1 2 1 3
+  
+   oldgeo force CHARGE=1 t=1h dump=23m
+    RHF force calculation
+  
+  oldgeo uhf RESTART CHARGE=1  t=1h
+  Restart geometry optimization in UHF
+  
+  oldgeo force CHARGE=1  uhf
+  
+  
+  
+  
diff -cdN ../src.old//paras.dat ./paras.dat
*** ../src.old//paras.dat
--- ./paras.dat	Thu Jan 26 14:22:20 1995
***************
*** 0 ****
--- 1,56 ----
+     USS     H     -11.396427
+     ZS      H     1.188078
+     BETAS   H     -6.173787
+     ALP     H     2.882324
+     FN11    H     0.122796
+     FN12    H     0.005090
+     FN13    H     -0.018336
+     FN21    H     5.000000
+     FN22    H     5.000000
+     FN23    H     2.000000
+     FN31    H     1.2
+     FN32    H     1.8
+     FN33    H     2.1
+     USS     C     -52.028658
+     UPP     C     -39.614239
+     ZS      C     1.808665
+     ZP      C     1.685116
+     BETAS   C     -15.715783
+     BETAP   C     -7.719283
+     ALP     C     2.648274
+     FN11    C     0.011355
+     FN12    C     0.045924
+     FN13    C     -0.020061
+     FN14    C     -0.001260
+     FN21    C     5.
+     FN22    C     5.
+     FN23    C     5.
+     FN24    C     5.
+     FN31    C     1.6
+     FN32    C     1.85
+     FN33    C     2.05
+     FN34    C     2.65
+     USS     O     -97.83
+     UPP     O     -78.262380
+     ZS      O     3.108032
+     ZP      O     2.524039
+     BETAS   O     -29.272773
+     BETAP   O     -29.272773
+     ALP     O     4.455371
+     FN11    O     0.280962
+     FN12    O     0.081430
+     FN21    O     5.
+     FN22    O     7.
+     FN31    O     0.847918
+     FN32    O     1.445071
+     GSS     H      12.848
+     GSS     C      12.230
+     GSP     C      11.470
+     GPP     C      11.080
+     GP2     C       9.840
+     HSP     C       2.430
+     GSS     O      15.420
+     GSP     O      14.480
+     GPP     O      14.520
+     GP2     O      12.980
+     HSP     O       3.940
diff -cdN ../src.old//parsav.f ./parsav.f
*** ../src.old//parsav.f	Tue Apr 20 03:38:18 1993
--- ./parsav.f	Tue Jan 17 15:31:40 1995
***************
*** 17,23 ****
       1                     LOCDEP(MAXPAR)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1                NA(NUMATM),NB(NUMATM),NC(NUMATM)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
--- 17,23 ----
       1                     LOCDEP(MAXPAR)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1                NA(NUMATM),NB(NUMATM),NC(NUMATM)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
diff -cdN ../src.old//partxy.f ./partxy.f
*** ../src.old//partxy.f	Tue Apr 20 03:38:18 1993
--- ./partxy.f	Tue Jan 17 14:35:43 1995
***************
*** 12,18 ****
        COMMON /NUMCAL/ NUMCAL
        DIMENSION W(N2ELEC*2)
        EQUIVALENCE (W,WJ)
-       REAL WJ, WK
        CHARACTER*241 KEYWRD
  C------------------------------------------------------------------
  C
--- 12,17 ----
diff -cdN ../src.old//pathk.f ./pathk.f
*** ../src.old//pathk.f	Tue Apr 20 03:38:18 1993
--- ./pathk.f	Tue Jan 17 15:31:33 1995
***************
*** 10,23 ****
  *	The reaction profile is archived.
  *
  ************************************************************************
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /GEOVAR/ NVAR,LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
        COMMON /GRADNT/ GRAD(MAXPAR),GNORM
        COMMON /GRAVEC/ COSINE
        COMMON /PATH  / LATOM, LPARAM, REACT(200)
        COMMON /PPARAM/ CURRT
        COMMON /KLOOP / KLOOP
!       COMMON /PROFIL/ PROFIL
        COMMON /KEYWRD/ KEYWRD
        DIMENSION GD(MAXPAR),XLAST(MAXPAR),MDFP(20),XDFP(20)
        DIMENSION PROFIL(200)
--- 10,26 ----
  *	The reaction profile is archived.
  *
  ************************************************************************
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /GEOVAR/ NVAR,LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
        COMMON /GRADNT/ GRAD(MAXPAR),GNORM
        COMMON /GRAVEC/ COSINE
        COMMON /PATH  / LATOM, LPARAM, REACT(200)
        COMMON /PPARAM/ CURRT
        COMMON /KLOOP / KLOOP
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C     COMMON /PROFIL/ PROFIL
!       COMMON /PROFIC/ PROFIL
! C ***************************** at 1994-05-25 *****
        COMMON /KEYWRD/ KEYWRD
        DIMENSION GD(MAXPAR),XLAST(MAXPAR),MDFP(20),XDFP(20)
        DIMENSION PROFIL(200)
***************
*** 40,46 ****
        ENDIF
  C
        KLOOP=1
!       CPUTOT=0.0
        CURRT=GEO(LPARAM,LATOM)
        PROFIL(1)=0.D0
        IF (INDEX(KEYWRD,'RESTART').NE.0) THEN
--- 43,49 ----
        ENDIF
  C
        KLOOP=1
!       CPUTOT=0.0D0
        CURRT=GEO(LPARAM,LATOM)
        PROFIL(1)=0.D0
        IF (INDEX(KEYWRD,'RESTART').NE.0) THEN
diff -cdN ../src.old//paths.f ./paths.f
*** ../src.old//paths.f	Tue Apr 20 03:38:18 1993
--- ./paths.f	Tue Jan 17 15:31:26 1995
***************
*** 4,11 ****
        COMMON /PATH  / LATOM,LPARAM,REACT(200)
        COMMON /GEOVAR/ NVAR, LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
        COMMON /KEYWRD/ KEYWRD
!       COMMON /TIME  / TIME0
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /ALPARM/ ALPARM(3,MAXPAR),X0, X1, X2, ILOOP
  ************************************************************************
  *
--- 4,14 ----
        COMMON /PATH  / LATOM,LPARAM,REACT(200)
        COMMON /GEOVAR/ NVAR, LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
        COMMON /KEYWRD/ KEYWRD
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C     COMMON /TIME  / TIME0
!       COMMON /TIMEC / TIME0
! C ***************************** at 1994-05-25 *****
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /ALPARM/ ALPARM(3,MAXPAR),X0, X1, X2, ILOOP
  ************************************************************************
  *
diff -cdN ../src.old//polar.f ./polar.f
*** ../src.old//polar.f	Tue Apr 20 03:38:18 1993
--- ./polar.f	Thu Jan 26 11:01:59 1995
***************
*** 17,23 ****
        COMMON /WORK1/ X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,
       1               XDUMY(21*MPACK-10*MAXORB*MAXORB)
        COMMON /WORK3/ X11,X12,XDUMY1(4*MPACK-2*MAXORB*MAXORB)
!       COMMON /SCRACH/ X13, XDUMY2(MAXALL*MAXALL-MAXORB*MAXORB)
  C..
        COMMON /TITLES/ KOMENT,TITLE
        COMMON /POLVOL/ POLVOL(107)
--- 17,23 ----
        COMMON /WORK1/ X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,
       1               XDUMY(21*MPACK-10*MAXORB*MAXORB)
        COMMON /WORK3/ X11,X12,XDUMY1(4*MPACK-2*MAXORB*MAXORB)
!       COMMON /SCRACH/ X13, XDUMY2(MAXPAR*MAXPAR-MAXORB*MAXORB)
  C..
        COMMON /TITLES/ KOMENT,TITLE
        COMMON /POLVOL/ POLVOL(107)
***************
*** 41,47 ****
        COMMON /CHANEL/ IFILES(30)
        EQUIVALENCE(IW,IFILES(6)), (IR,IFILES(5))
        DIMENSION GRAD(MAXPAR),ROTVEC(3,3), TEMPV(3,3), DATAEV(10)
!      1,VALUE(10)
        CHARACTER  KEYWRD*241, TYPE*7, KOMENT*81, TITLE*81
        CHARACTER  POLKEY*241, LINE*80
        LOGICAL LET, LIMSCF
--- 41,47 ----
        COMMON /CHANEL/ IFILES(30)
        EQUIVALENCE(IW,IFILES(6)), (IR,IFILES(5))
        DIMENSION GRAD(MAXPAR),ROTVEC(3,3), TEMPV(3,3), DATAEV(10)
!      1,VALUE(40)
        CHARACTER  KEYWRD*241, TYPE*7, KOMENT*81, TITLE*81
        CHARACTER  POLKEY*241, LINE*80
        LOGICAL LET, LIMSCF
***************
*** 60,66 ****
  C  IF LET IS SPECIFIED, THE INPUT ORIENTATION WILL BE USED.
  C
        IF (.NOT.LET) THEN
!          MASS = 1.0D00
           CALL AXIS(COORD,NUMAT,A,B,C,SUMW,MASS,ROTVEC)
           WRITE(6,20)
     20    FORMAT (/' ROTATION MATRIX FOR ORIENTATION OF MOLECULE:'/)
--- 60,66 ----
  C  IF LET IS SPECIFIED, THE INPUT ORIENTATION WILL BE USED.
  C
        IF (.NOT.LET) THEN
!          MASS = 1
           CALL AXIS(COORD,NUMAT,A,B,C,SUMW,MASS,ROTVEC)
           WRITE(6,20)
     20    FORMAT (/' ROTATION MATRIX FOR ORIENTATION OF MOLECULE:'/)
***************
*** 251,257 ****
           OMEGA=DATAEV(I)
           OMEGAU = OMEGA/27.2113961D+00
           IF (OMEGA.LT.1.0D-8) THEN
!             WAVLEN = 999999.99
  C#           WRITE(6,401) OMEGA
              WRITE(6,260)
    260       FORMAT(//,' ',65(1H*),/,
--- 251,257 ----
           OMEGA=DATAEV(I)
           OMEGAU = OMEGA/27.2113961D+00
           IF (OMEGA.LT.1.0D-8) THEN
!             WAVLEN = 999999.99D0
  C#           WRITE(6,401) OMEGA
              WRITE(6,260)
    260       FORMAT(//,' ',65(1H*),/,
***************
*** 259,265 ****
       2            ' ',65('*'))
           ELSE
              WRITE(6,270) OMEGA,OMEGAU,1239.8424D0/OMEGA,
!      1 8065.541*OMEGA
    270       FORMAT(//,' ',70(1H*),
       1          /' CALCULATION FOR A FREQUENCY OF ',F10.5,' EV  =',
       2           F14.5,' A.U. '/18X,'WAVELENGTH OF ',F10.2,' NM  =',
--- 259,265 ----
       2            ' ',65('*'))
           ELSE
              WRITE(6,270) OMEGA,OMEGAU,1239.8424D0/OMEGA,
!      1 8065.541D0*OMEGA
    270       FORMAT(//,' ',70(1H*),
       1          /' CALCULATION FOR A FREQUENCY OF ',F10.5,' EV  =',
       2           F14.5,' A.U. '/18X,'WAVELENGTH OF ',F10.2,' NM  =',
***************
*** 541,547 ****
  C  X: ID=1   Y: ID=2   Z: ID=3
  C
        DO 70 ID = 1,3
!          CMPTIM = SECOND(1)
           LAST = .FALSE.
  C
  C  CALCULATE THE DIPOLE MATRIX.
--- 541,547 ----
  C  X: ID=1   Y: ID=2   Z: ID=3
  C
        DO 70 ID = 1,3
!          CMPTIM = SECOND()
           LAST = .FALSE.
  C
  C  CALCULATE THE DIPOLE MATRIX.
***************
*** 589,595 ****
           CALL HPLUSF (F,H1,NORBS)
  C..............................................................
           IF (.NOT.LAST) GO TO 20
!          CMPTIM = SECOND(1) - CMPTIM
           WRITE(6,30) ICOUNT,CMPTIM,DIFF,DELA
     30    FORMAT (/' CONVERGED IN',I4,' ITERATIONS IN',F10.2,' SECONDS',
       1         /'           DENSITY CONVERG. TO ',1PD12.5,
--- 589,595 ----
           CALL HPLUSF (F,H1,NORBS)
  C..............................................................
           IF (.NOT.LAST) GO TO 20
!          CMPTIM = SECOND() - CMPTIM
           WRITE(6,30) ICOUNT,CMPTIM,DIFF,DELA
     30    FORMAT (/' CONVERGED IN',I4,' ITERATIONS IN',F10.2,' SECONDS',
       1         /'           DENSITY CONVERG. TO ',1PD12.5,
***************
*** 720,726 ****
       2                NCLOSE,NOPEN,NDUMY,FRACT
        COMMON /VECTOR/ C(MORB2),EIGS(MAXORB),CA(MORB2),DUMY(MAXORB)
        COMMON /WMATRX/ W(N2ELEC*2)
!       COMMON /COORD/ COORD(3,NUMATM)
        COMMON /OMVAL/ OMEGA
        COMMON /CHANEL/ IFILES(30)
        EQUIVALENCE(IW,IFILES(6))
--- 720,726 ----
       2                NCLOSE,NOPEN,NDUMY,FRACT
        COMMON /VECTOR/ C(MORB2),EIGS(MAXORB),CA(MORB2),DUMY(MAXORB)
        COMMON /WMATRX/ W(N2ELEC*2)
!       COMMON /GEOM /  GEO(3,NUMATM),  COORD(3,NUMATM)
        COMMON /OMVAL/ OMEGA
        COMMON /CHANEL/ IFILES(30)
        EQUIVALENCE(IW,IFILES(6))
***************
*** 767,773 ****
        BAVY = 0.0D+00
        BAVZ = 0.0D+00
        DO 90 ID = 1,9
!          CMPTIM = SECOND(1)
           IA=IDA(ID)
           IB=IDB(ID)
           LAST = .FALSE.
--- 767,773 ----
        BAVY = 0.0D+00
        BAVZ = 0.0D+00
        DO 90 ID = 1,9
!          CMPTIM = SECOND()
           IA=IDA(ID)
           IB=IDB(ID)
           LAST = .FALSE.
***************
*** 888,894 ****
           CALL HPLUSF(F,DA,NORBS)
  C..............................................................
           IF (.NOT.LAST) GO TO 40
!          CMPTIM = SECOND(1) - CMPTIM
           WRITE(6,50) ICOUNT,CMPTIM
     50    FORMAT(/' CONVERGED IN',I4,' ITERATIONS IN',F10.2,
       1            ' SECONDS')
--- 888,894 ----
           CALL HPLUSF(F,DA,NORBS)
  C..............................................................
           IF (.NOT.LAST) GO TO 40
!          CMPTIM = SECOND() - CMPTIM
           WRITE(6,50) ICOUNT,CMPTIM
     50    FORMAT(/' CONVERGED IN',I4,' ITERATIONS IN',F10.2,
       1            ' SECONDS')
***************
*** 906,912 ****
  C CALCULATES THE AVERAGE VALUE OF BETA
  C
              IF ((ID .EQ. 1) .AND. (IC .EQ. 1)) THEN
!                BAVX = BAVX + 3.0*BETAW
              ELSEIF (((ID.EQ.5).OR.(ID.EQ.9)).AND. (IC .EQ. 1)) THEN
                 BAVX = BAVX + BETAW
              ELSEIF (((ID.EQ.2).OR.(ID .EQ. 4)) .AND. (IC .EQ. 2)) THEN
--- 906,912 ----
  C CALCULATES THE AVERAGE VALUE OF BETA
  C
              IF ((ID .EQ. 1) .AND. (IC .EQ. 1)) THEN
!                BAVX = BAVX + 3.0D0*BETAW
              ELSEIF (((ID.EQ.5).OR.(ID.EQ.9)).AND. (IC .EQ. 1)) THEN
                 BAVX = BAVX + BETAW
              ELSEIF (((ID.EQ.2).OR.(ID .EQ. 4)) .AND. (IC .EQ. 2)) THEN
***************
*** 917,923 ****
  C CALCULATES AVERAGE BETA IN Y-DIRECTION
  C
              IF ((ID .EQ. 5) .AND. (IC .EQ. 2)) THEN
!                BAVY = BAVY + 3.0*BETAW
              ELSEIF (((ID.EQ.2).OR.(ID .EQ. 4)) .AND. (IC .EQ. 1)) THEN
                 BAVY = BAVY + BETAW
              ELSEIF (((ID.EQ.1).OR.(ID .EQ. 9)) .AND. (IC .EQ. 2)) THEN
--- 917,923 ----
  C CALCULATES AVERAGE BETA IN Y-DIRECTION
  C
              IF ((ID .EQ. 5) .AND. (IC .EQ. 2)) THEN
!                BAVY = BAVY + 3.0D0*BETAW
              ELSEIF (((ID.EQ.2).OR.(ID .EQ. 4)) .AND. (IC .EQ. 1)) THEN
                 BAVY = BAVY + BETAW
              ELSEIF (((ID.EQ.1).OR.(ID .EQ. 9)) .AND. (IC .EQ. 2)) THEN
***************
*** 928,934 ****
  C CALCULATES AVERAGE BETA IN THE Z-DIRECTION
  C
              IF ((ID .EQ. 9) .AND. (IC .EQ. 3)) THEN
!                BAVZ = BAVZ + 3.0 * BETAW
              ELSEIF (((ID.EQ.3).OR.(ID .EQ. 7)) .AND. (IC .EQ. 1)) THEN
                 BAVZ = BAVZ + BETAW
              ELSEIF (((ID.EQ.6).OR.(ID .EQ. 8)) .AND. (IC .EQ. 2)) THEN
--- 928,934 ----
  C CALCULATES AVERAGE BETA IN THE Z-DIRECTION
  C
              IF ((ID .EQ. 9) .AND. (IC .EQ. 3)) THEN
!                BAVZ = BAVZ + 3.0D0 * BETAW
              ELSEIF (((ID.EQ.3).OR.(ID .EQ. 7)) .AND. (IC .EQ. 1)) THEN
                 BAVZ = BAVZ + BETAW
              ELSEIF (((ID.EQ.6).OR.(ID .EQ. 8)) .AND. (IC .EQ. 2)) THEN
***************
*** 1027,1033 ****
        BAVY = 0.0D+00
        BAVZ = 0.0D+00
        DO 80 ID = 1,6
!          CMPTIM = SECOND(1)
           IA=IDA(ID)
           IB=IDB(ID)
           LAST = .FALSE.
--- 1027,1033 ----
        BAVY = 0.0D+00
        BAVZ = 0.0D+00
        DO 80 ID = 1,6
!          CMPTIM = SECOND()
           IA=IDA(ID)
           IB=IDB(ID)
           LAST = .FALSE.
***************
*** 1135,1141 ****
           CALL HPLUSF(F,DA,NORBS)
  C..............................................................
           IF (.NOT.LAST) GO TO 30
!          CMPTIM = SECOND(1) - CMPTIM
           WRITE(6,40) ICOUNT,CMPTIM
     40    FORMAT(/' CONVERGED IN',I4,' ITERATIONS IN',F10.2,
       1            ' SECONDS')
--- 1135,1141 ----
           CALL HPLUSF(F,DA,NORBS)
  C..............................................................
           IF (.NOT.LAST) GO TO 30
!          CMPTIM = SECOND() - CMPTIM
           WRITE(6,40) ICOUNT,CMPTIM
     40    FORMAT(/' CONVERGED IN',I4,' ITERATIONS IN',F10.2,
       1            ' SECONDS')
***************
*** 1162,1192 ****
  C CALCULATE AVERAGE BETA IN THE X-DIRECTION
  C
              IF ((ID .EQ. 1) .AND. (IC .EQ. 1)) THEN
!                BAVX = BAVX + 3.0 * BETAW
              ELSEIF ((ID .EQ. 2) .AND. (IC .EQ. 2)) THEN
!                BAVX = BAVX + 2.0 * BETAW
              ELSEIF ((ID .EQ. 3) .AND. (IC .EQ. 3)) THEN
!                BAVX = BAVX + 2.0 * BETAW
              ELSEIF (((ID.EQ.4).OR.(ID .EQ. 6)) .AND. (IC .EQ. 1)) THEN
                 BAVX = BAVX + BETAW
              ENDIF
  C CALCULATES AVERAGE BETA IN THE Y-DIRECTION
              IF ((ID .EQ. 4) .AND. (IC .EQ. 2)) THEN
!                BAVY = BAVY + 3.0 * BETAW
              ELSEIF ((ID .EQ. 2) .AND. (IC .EQ. 1)) THEN
!                BAVY = BAVY + 2.0 * BETAW
              ELSEIF ((ID .EQ. 5) .AND. (IC .EQ. 3)) THEN
!                BAVY = BAVY + 2.0 * BETAW
              ELSEIF (((ID.EQ.1).OR.(ID .EQ. 6)) .AND. (IC .EQ. 2)) THEN
                 BAVY = BAVY + BETAW
              ENDIF
  C CALCULATES AVERAGE BETA IN THE Z-DIRECTION
              IF ((ID .EQ. 6) .AND. (IC .EQ. 3)) THEN
!                BAVZ = BAVZ + 3.0 * BETAW
              ELSEIF ((ID .EQ. 3) .AND. (IC .EQ. 1)) THEN
!                BAVZ = BAVZ + 2.0 * BETAW
              ELSEIF ((ID .EQ. 5) .AND. (IC .EQ. 2)) THEN
!                BAVZ = BAVZ + 2.0 * BETAW
              ELSEIF (((ID.EQ.4) .OR. (ID.EQ.1)) .AND. (IC .EQ. 3)) THEN
                 BAVZ = BAVZ + BETAW
              ENDIF
--- 1162,1192 ----
  C CALCULATE AVERAGE BETA IN THE X-DIRECTION
  C
              IF ((ID .EQ. 1) .AND. (IC .EQ. 1)) THEN
!                BAVX = BAVX + 3.0D0 * BETAW
              ELSEIF ((ID .EQ. 2) .AND. (IC .EQ. 2)) THEN
!                BAVX = BAVX + 2.0D0 * BETAW
              ELSEIF ((ID .EQ. 3) .AND. (IC .EQ. 3)) THEN
!                BAVX = BAVX + 2.0D0 * BETAW
              ELSEIF (((ID.EQ.4).OR.(ID .EQ. 6)) .AND. (IC .EQ. 1)) THEN
                 BAVX = BAVX + BETAW
              ENDIF
  C CALCULATES AVERAGE BETA IN THE Y-DIRECTION
              IF ((ID .EQ. 4) .AND. (IC .EQ. 2)) THEN
!                BAVY = BAVY + 3.0D0 * BETAW
              ELSEIF ((ID .EQ. 2) .AND. (IC .EQ. 1)) THEN
!                BAVY = BAVY + 2.0D0 * BETAW
              ELSEIF ((ID .EQ. 5) .AND. (IC .EQ. 3)) THEN
!                BAVY = BAVY + 2.0D0 * BETAW
              ELSEIF (((ID.EQ.1).OR.(ID .EQ. 6)) .AND. (IC .EQ. 2)) THEN
                 BAVY = BAVY + BETAW
              ENDIF
  C CALCULATES AVERAGE BETA IN THE Z-DIRECTION
              IF ((ID .EQ. 6) .AND. (IC .EQ. 3)) THEN
!                BAVZ = BAVZ + 3.0D0 * BETAW
              ELSEIF ((ID .EQ. 3) .AND. (IC .EQ. 1)) THEN
!                BAVZ = BAVZ + 2.0D0 * BETAW
              ELSEIF ((ID .EQ. 5) .AND. (IC .EQ. 2)) THEN
!                BAVZ = BAVZ + 2.0D0 * BETAW
              ELSEIF (((ID.EQ.4) .OR. (ID.EQ.1)) .AND. (IC .EQ. 3)) THEN
                 BAVZ = BAVZ + BETAW
              ENDIF
***************
*** 1352,1358 ****
  C  CHECK FOR CONVERGENCE
  C
        DIFF = 0.0D00
!       MAXU = -1000.00
        DO 100 I = 1,NORBS
           DO 90 J = 1,NORBS
              UDIF = UAB(I,J)-UOLD1(I,J)
--- 1352,1358 ----
  C  CHECK FOR CONVERGENCE
  C
        DIFF = 0.0D00
!       MAXU = -1000.00D0
        DO 100 I = 1,NORBS
           DO 90 J = 1,NORBS
              UDIF = UAB(I,J)-UOLD1(I,J)
***************
*** 2377,2387 ****
  C CALCULATE THE AVERAGE GAMMA VALUE
  C
           IF (IE .LE. 3) THEN
!             GAV = GAV + 3.0*YY
           ELSEIF (IE .GT. 9) THEN
              GAV = GAV + YY
           ELSE
!             GAV = GAV + 2.0*YY
           ENDIF
  C
  C WRITE GAMMA(ABCD)
--- 2377,2387 ----
  C CALCULATE THE AVERAGE GAMMA VALUE
  C
           IF (IE .LE. 3) THEN
!             GAV = GAV + 3.0D0*YY
           ELSEIF (IE .GT. 9) THEN
              GAV = GAV + YY
           ELSE
!             GAV = GAV + 2.0D0*YY
           ENDIF
  C
  C WRITE GAMMA(ABCD)
***************
*** 2610,2620 ****
  C CALCULATE THE AVERAGE GAMMA VALUE
  C
           IF (IE .LE. 3) THEN
!             GAV = GAV + 3.0*YY
           ELSEIF (IE .GT. 9) THEN
              GAV = GAV + YY
           ELSE
!             GAV = GAV + 2.0*YY
           ENDIF
  C
  C WRITE GAMMA(ABCD)
--- 2610,2620 ----
  C CALCULATE THE AVERAGE GAMMA VALUE
  C
           IF (IE .LE. 3) THEN
!             GAV = GAV + 3.0D0*YY
           ELSEIF (IE .GT. 9) THEN
              GAV = GAV + YY
           ELSE
!             GAV = GAV + 2.0D0*YY
           ENDIF
  C
  C WRITE GAMMA(ABCD)
***************
*** 2670,2676 ****
        CALL DAREAD (G2Z,MAXSQ,19)
  C XXX
        CALL BETCOM (U1X,G1X,U2X,G2X,NCLOSE,NORBS,BXXX)
!       BAVX = BAVX +3.0 * BXXX
  C YXX
        CALL BETCOM (U1X,G1X,U2Y,G2Y,NCLOSE,NORBS,BYXX)
        BAVY = BAVY + BYXX
--- 2670,2676 ----
        CALL DAREAD (G2Z,MAXSQ,19)
  C XXX
        CALL BETCOM (U1X,G1X,U2X,G2X,NCLOSE,NORBS,BXXX)
!       BAVX = BAVX +3.0D0 * BXXX
  C YXX
        CALL BETCOM (U1X,G1X,U2Y,G2Y,NCLOSE,NORBS,BYXX)
        BAVY = BAVY + BYXX
***************
*** 2706,2712 ****
        BAVX = BAVX + BXYY
  C YYY
        CALL BETCOM (U1Y,G1Y,U2Y,G2Y,NCLOSE,NORBS,BYYY)
!       BAVY = BAVY + 3.0*BYYY
  C ZYY
        CALL BETCOM (U1Y,G1Y,U2Z,G2Z,NCLOSE,NORBS,BZYY)
        BAVZ = BAVZ + BZYY
--- 2706,2712 ----
        BAVX = BAVX + BXYY
  C YYY
        CALL BETCOM (U1Y,G1Y,U2Y,G2Y,NCLOSE,NORBS,BYYY)
!       BAVY = BAVY + 3.0D0*BYYY
  C ZYY
        CALL BETCOM (U1Y,G1Y,U2Z,G2Z,NCLOSE,NORBS,BZYY)
        BAVZ = BAVZ + BZYY
***************
*** 2742,2748 ****
        BAVY = BAVY + BYZZ
  C ZZZ
        CALL BETCOM (U1Z,G1Z,U2Z,G2Z,NCLOSE,NORBS,BZZZ)
!       BAVZ = BAVZ + 3.0 * BZZZ
  C
        BAVX = BAVX/5.0D+00
        BAVY = BAVY/5.0D+00
--- 2742,2748 ----
        BAVY = BAVY + BYZZ
  C ZZZ
        CALL BETCOM (U1Z,G1Z,U2Z,G2Z,NCLOSE,NORBS,BZZZ)
!       BAVZ = BAVZ + 3.0D0 * BZZZ
  C
        BAVX = BAVX/5.0D+00
        BAVY = BAVY/5.0D+00
***************
*** 2827,2833 ****
        CALL DAREAD (G1Z,MAXSQ,13)
  C XXX
        CALL BETALL (U1X,G1X,U0X,G0X,U1X,G1X,NCLOSE,NORBS,BXXX)
!       BAVX = BAVX + 3.0 * BXXX
  C YXX
        CALL BETALL (U1Y,G1Y,U0X,G0X,U1X,G1X,NCLOSE,NORBS,BYXX)
        BAVY = BAVY + BYXX
--- 2827,2833 ----
        CALL DAREAD (G1Z,MAXSQ,13)
  C XXX
        CALL BETALL (U1X,G1X,U0X,G0X,U1X,G1X,NCLOSE,NORBS,BXXX)
!       BAVX = BAVX + 3.0D0 * BXXX
  C YXX
        CALL BETALL (U1Y,G1Y,U0X,G0X,U1X,G1X,NCLOSE,NORBS,BYXX)
        BAVY = BAVY + BYXX
***************
*** 2863,2869 ****
        BAVX = BAVX + BXYY
  C YYY
        CALL BETALL (U1Y,G1Y,U0Y,G0Y,U1Y,G1Y,NCLOSE,NORBS,BYYY)
!       BAVY = BAVY + 3.0 * BYYY
  C ZYY
        CALL BETALL (U1Z,G1Z,U0Y,G0Y,U1Y,G1Y,NCLOSE,NORBS,BZYY)
        BAVZ = BAVZ + BZYY
--- 2863,2869 ----
        BAVX = BAVX + BXYY
  C YYY
        CALL BETALL (U1Y,G1Y,U0Y,G0Y,U1Y,G1Y,NCLOSE,NORBS,BYYY)
!       BAVY = BAVY + 3.0D0 * BYYY
  C ZYY
        CALL BETALL (U1Z,G1Z,U0Y,G0Y,U1Y,G1Y,NCLOSE,NORBS,BZYY)
        BAVZ = BAVZ + BZYY
***************
*** 2899,2905 ****
        BAVY = BAVY + BYZZ
  C ZZZ
        CALL BETALL (U1Z,G1Z,U0Z,G0Z,U1Z,G1Z,NCLOSE,NORBS,BZZZ)
!       BAVZ = BAVZ + 3.0 * BZZZ
  C
        BAVX = BAVX/5.0D+00
        BAVY = BAVY/5.0D+00
--- 2899,2905 ----
        BAVY = BAVY + BYZZ
  C ZZZ
        CALL BETALL (U1Z,G1Z,U0Z,G0Z,U1Z,G1Z,NCLOSE,NORBS,BZZZ)
!       BAVZ = BAVZ + 3.0D0 * BZZZ
  C
        BAVX = BAVX/5.0D+00
        BAVY = BAVY/5.0D+00
***************
*** 2985,2991 ****
  C
  C XXX
        CALL BETAL1 (U0X,G0X,U1X,G1X,U1X,G1X,NCLOSE,NORBS,BXXX)
!       BAVX = BAVX + 3.0* BXXX
  C YXX
        CALL BETAL1 (U0Y,G0Y,U1X,G1X,U1X,G1X,NCLOSE,NORBS,BYXX)
        BAVY = BAVY + BYXX
--- 2985,2991 ----
  C
  C XXX
        CALL BETAL1 (U0X,G0X,U1X,G1X,U1X,G1X,NCLOSE,NORBS,BXXX)
!       BAVX = BAVX + 3.0D0* BXXX
  C YXX
        CALL BETAL1 (U0Y,G0Y,U1X,G1X,U1X,G1X,NCLOSE,NORBS,BYXX)
        BAVY = BAVY + BYXX
***************
*** 3021,3027 ****
        BAVX = BAVX + BXYY
  C YYY
        CALL BETAL1 (U0Y,G0Y,U1Y,G1Y,U1Y,G1Y,NCLOSE,NORBS,BYYY)
!       BAVY = BAVY + 3.0 * BYYY
  C ZYY
        CALL BETAL1 (U0Z,G0Z,U1Y,G1Y,U1Y,G1Y,NCLOSE,NORBS,BZYY)
        BAVZ = BAVZ + BZYY
--- 3021,3027 ----
        BAVX = BAVX + BXYY
  C YYY
        CALL BETAL1 (U0Y,G0Y,U1Y,G1Y,U1Y,G1Y,NCLOSE,NORBS,BYYY)
!       BAVY = BAVY + 3.0D0 * BYYY
  C ZYY
        CALL BETAL1 (U0Z,G0Z,U1Y,G1Y,U1Y,G1Y,NCLOSE,NORBS,BZYY)
        BAVZ = BAVZ + BZYY
***************
*** 3057,3063 ****
        BAVY = BAVY + BYZZ
  C ZZZ
        CALL BETAL1 (U0Z,G0Z,U1Z,G1Z,U1Z,G1Z,NCLOSE,NORBS,BZZZ)
!       BAVZ = BAVZ + 3.0 * BZZZ
  C
        BAVX = BAVX/5.0D+00
        BAVY = BAVY/5.0D+00
--- 3057,3063 ----
        BAVY = BAVY + BYZZ
  C ZZZ
        CALL BETAL1 (U0Z,G0Z,U1Z,G1Z,U1Z,G1Z,NCLOSE,NORBS,BZZZ)
!       BAVZ = BAVZ + 3.0D0 * BZZZ
  C
        BAVX = BAVX/5.0D+00
        BAVY = BAVY/5.0D+00
diff -cdN ../src.old//powsav.f ./powsav.f
*** ../src.old//powsav.f	Tue Apr 20 03:38:20 1993
--- ./powsav.f	Tue Jan 17 15:31:17 1995
***************
*** 24,30 ****
       1                     LOCDEP(MAXPAR)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1                NA(NUMATM),NB(NUMATM),NC(NUMATM)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /LOCVAR/ LOCVAR(2,MAXPAR)
        COMMON /KEYWRD/ KEYWRD
        COMMON /VALVAR/ VALVAR(MAXPAR),NUMVAR
--- 24,30 ----
       1                     LOCDEP(MAXPAR)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1                NA(NUMATM),NB(NUMATM),NC(NUMATM)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /LOCVAR/ LOCVAR(2,MAXPAR)
        COMMON /KEYWRD/ KEYWRD
        COMMON /VALVAR/ VALVAR(MAXPAR),NUMVAR
diff -cdN ../src.old//powsq.f ./powsq.f
*** ../src.old//powsq.f	Tue Apr 20 03:38:20 1993
--- ./powsq.f	Tue Jan 17 15:30:53 1995
***************
*** 25,34 ****
  C        *****  TEXAS.  DECEMBER 1973                           *****
  C
        COMMON /GEOVAR/ NDUM,LOC(2,MAXPAR), IDUMY, XARAM(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /LAST  / LAST
        COMMON /KEYWRD/ KEYWRD
!       COMMON /TIME  / TIME0
        COMMON /NUMSCF/ NSCF
        COMMON /GEOSYM/ NDEP, LOCPAR(MAXPAR), IDEPFN(MAXPAR),
       1                 LOCDEP(MAXPAR)
--- 25,37 ----
  C        *****  TEXAS.  DECEMBER 1973                           *****
  C
        COMMON /GEOVAR/ NDUM,LOC(2,MAXPAR), IDUMY, XARAM(MAXPAR)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /LAST  / LAST
        COMMON /KEYWRD/ KEYWRD
! C ***** Modified by Jiro Toyoda at 1994-05-25 *****
! C     COMMON /TIME  / TIME0
!       COMMON /TIMEC / TIME0
! C ***************************** at 1994-05-25 *****
        COMMON /NUMSCF/ NSCF
        COMMON /GEOSYM/ NDEP, LOCPAR(MAXPAR), IDEPFN(MAXPAR),
       1                 LOCDEP(MAXPAR)
diff -cdN ../src.old//prtdrc.f ./prtdrc.f
*** ../src.old//prtdrc.f	Tue Apr 20 03:38:20 1993
--- ./prtdrc.f	Thu Jan 26 10:35:35 1995
***************
*** 34,44 ****
--- 34,46 ----
       1GEO(3*NUMATM), VREF(MAXPAR), VREF0(MAXPAR), TSTEPS(100), ETOT3(3),
       2XTOT3(3)
        SAVE  REFSCF, COTYPE
+       SAVE TURN
        LOGICAL  TURN, PARMAX, LDRC, GOTURN
        CHARACTER*241 KEYWRD, TEXT1*3, TEXT2*2,  COTYPE(3)*2
        DATA ICALCN/0/
        DATA REFSCF/0.D0/
        DATA COTYPE/'BL','BA','DI'/
+       DATA TURN/.FALSE./
        IF (ICALCN.NE.NUMCAL) THEN
           ICALCN=NUMCAL
           DO 10 I=1,NVAR
***************
*** 276,282 ****
    100          TSTEPS(I)=(-BB+SIGN(SQRT(BB*BB-4.D0*(AA*C1)),BB))/(2.D0*A
       1A)
              ENDIF
!             FRACT=-.1
              REFSCF=REFSCF+NFRACT*STEPH
           ENDIF
        ELSEIF(STEPT.NE.0.D0) THEN
--- 278,284 ----
    100          TSTEPS(I)=(-BB+SIGN(SQRT(BB*BB-4.D0*(AA*C1)),BB))/(2.D0*A
       1A)
              ENDIF
!             FRACT=-.1D0
              REFSCF=REFSCF+NFRACT*STEPH
           ENDIF
        ELSEIF(STEPT.NE.0.D0) THEN
***************
*** 319,331 ****
       1A)
              ENDIF
              REFX=REFX+NFRACT*STEPX
!             FRACT=-.1
           ENDIF
        ELSE
  C
  C   PRINT EVERY POINT.
  C
!          FRACT=0.0
        ENDIF
        IF(FRACT.LT.-9.D0)GOTO 170
        TURN=(TURN.OR.ABS(FRACT-1.D0).GT.1.D-6)
--- 321,333 ----
       1A)
              ENDIF
              REFX=REFX+NFRACT*STEPX
!             FRACT=-.1D0
           ENDIF
        ELSE
  C
  C   PRINT EVERY POINT.
  C
!          FRACT=0.0D0
        ENDIF
        IF(FRACT.LT.-9.D0)GOTO 170
        TURN=(TURN.OR.ABS(FRACT-1.D0).GT.1.D-6)
diff -cdN ../src.old//react1.f ./react1.f
*** ../src.old//react1.f	Tue Apr 20 03:38:20 1993
--- ./react1.f	Tue Jan 17 15:27:42 1995
***************
*** 2,8 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        REAL PASTOR, PBSTOR
        INCLUDE 'SIZES'
!       COMMON /GEOM  / GEO(3,NUMATM)
        DIMENSION GEOA(3,NUMATM), GEOVEC(3,NUMATM),
       1          PASTOR(MPACK),
       2          PBSTOR(MPACK), XOLD(MAXPAR), GROLD(MAXPAR)
--- 2,8 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        REAL PASTOR, PBSTOR
        INCLUDE 'SIZES'
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        DIMENSION GEOA(3,NUMATM), GEOVEC(3,NUMATM),
       1          PASTOR(MPACK),
       2          PBSTOR(MPACK), XOLD(MAXPAR), GROLD(MAXPAR)
***************
*** 254,260 ****
           STEP=MIN(SWAP,0.5D0, 6.D0/GNORM, DELL,STEPMX*STEP0+0.005D0)
           STEP=MIN(0.2D0,STEP/STEP0)*STEP0
           SWAP=SWAP+1.D0
!          DELL=DELL+0.1
           WRITE(6,'(''  BAR SHORTENED BY'',F12.7,'' PERCENT'')')
       1STEP/STEP0*100.D0
           STEP0=STEP0-STEP
--- 254,260 ----
           STEP=MIN(SWAP,0.5D0, 6.D0/GNORM, DELL,STEPMX*STEP0+0.005D0)
           STEP=MIN(0.2D0,STEP/STEP0)*STEP0
           SWAP=SWAP+1.D0
!          DELL=DELL+0.1D0
           WRITE(6,'(''  BAR SHORTENED BY'',F12.7,'' PERCENT'')')
       1STEP/STEP0*100.D0
           STEP0=STEP0-STEP
***************
*** 330,336 ****
              EOLD=ESCF
              SUM=GOLD
              GOLD=GNORM
!             I=1.7+ONE*0.5
              IF(GNORM.GT.10.D0)GOK(I)=.TRUE.
              GNORM=SUM
              DO 210 I=1,NATOMS
--- 330,336 ----
              EOLD=ESCF
              SUM=GOLD
              GOLD=GNORM
!             I=1.7D0+ONE*0.5D0
              IF(GNORM.GT.10.D0)GOK(I)=.TRUE.
              GNORM=SUM
              DO 210 I=1,NATOMS
diff -cdN ../src.old//readmo.f ./readmo.f
*** ../src.old//readmo.f	Tue Apr 20 03:38:20 1993
--- ./readmo.f	Thu Jan 26 11:07:21 1995
***************
*** 51,57 ****
        DIMENSION LOPT(3,NUMATM)
        CHARACTER KEYWRD*241, KOMENT*81, TITLE*81, LINE*80, BANNER*80
        CHARACTER KEYS(80)*1, SPACE*1, SPACE2*2, CH*1, CH2*2
!       CHARACTER ELEMNT*2, IDATE*24, GETNAM*80, NAME*4
        COMMON /KEYWRD/ KEYWRD
        COMMON /TITLES/ KOMENT,TITLE
        COMMON /GEOVAR/ NVAR, LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
--- 51,57 ----
        DIMENSION LOPT(3,NUMATM)
        CHARACTER KEYWRD*241, KOMENT*81, TITLE*81, LINE*80, BANNER*80
        CHARACTER KEYS(80)*1, SPACE*1, SPACE2*2, CH*1, CH2*2
!       CHARACTER ELEMNT*2, IDATE*24, GETNAM*80, NAME*4, NAMO*4, ISTA*4
        COMMON /KEYWRD/ KEYWRD
        COMMON /TITLES/ KOMENT,TITLE
        COMMON /GEOVAR/ NVAR, LOC(2,MAXPAR), IDUMY, XPARAM(MAXPAR)
***************
*** 62,72 ****
       * NMIDLE(NUMATM),NLAST(NUMATM),NORBS,NELECS,NALPHA,NBETA,
       * NCLOSE,NOPEN,NDUMY,FRACT
        COMMON /OKMANY/ ISOK
!       PARAMETER (MXDIM=MAXORB+NUMATM)
        COMMON /SYMRES/ TRANS,RTR,SIG,NAME,NAMO(MXDIM),INDX(MXDIM),
       * ISTA(2)
        COMMON /ISTOPE/ AMS(107)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /NUMCAL/ NUMCAL
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1NA(NUMATM),NB(NUMATM),NC(NUMATM)
--- 62,72 ----
       * NMIDLE(NUMATM),NLAST(NUMATM),NORBS,NELECS,NALPHA,NBETA,
       * NCLOSE,NOPEN,NDUMY,FRACT
        COMMON /OKMANY/ ISOK
!       PARAMETER (MXDIM=MAXPAR+NUMATM)
        COMMON /SYMRES/ TRANS,RTR,SIG,NAME,NAMO(MXDIM),INDX(MXDIM),
       * ISTA(2)
        COMMON /ISTOPE/ AMS(107)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /NUMCAL/ NUMCAL
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1NA(NUMATM),NB(NUMATM),NC(NUMATM)
***************
*** 74,80 ****
       1                      LOCDEP(MAXPAR)
        LOGICAL INT, AIGEO, ISOK
        SAVE SPACE, SPACE2, IREACT, INT
!       DIMENSION COORD(3,NUMATM),VALUE(40)
        EQUIVALENCE (KEYS(1),KEYWRD)
        DATA SPACE, SPACE2/' ','  '/
        CONVTR=2.D0*ASIN(1.D0)/180.D0
--- 74,80 ----
       1                      LOCDEP(MAXPAR)
        LOGICAL INT, AIGEO, ISOK
        SAVE SPACE, SPACE2, IREACT, INT
!       DIMENSION COORD(3,NUMATM),VALUE(40),C(1)
        EQUIVALENCE (KEYS(1),KEYWRD)
        DATA SPACE, SPACE2/' ','  '/
        CONVTR=2.D0*ASIN(1.D0)/180.D0
***************
*** 429,434 ****
--- 429,437 ----
    240       CONTINUE
           ENDIF
        ENDIF
+ C
+ C    C is not actually used in this call.
+ C
        CALL SYMTRZ(COORD,C,NORBS,NORBS,.FALSE.,.FALSE.)
        WRITE(6,'(//''     MOLECULAR POINT GROUP   :   '',A4)') NAME
        IF(   INDEX(KEYWRD,' XYZ') .NE. 0 )THEN
diff -cdN ../src.old//setupg.f ./setupg.f
*** ../src.old//setupg.f	Tue Apr 20 03:38:20 1993
--- ./setupg.f	Tue Jan 17 11:45:47 1995
***************
*** 4,10 ****
        COMMON /EXPONT/ ZS(107),ZP(107),ZD(107)
        COMMON /NATYPE/ NZTYPE(107),MTYPE(30),LTYPE
        COMMON /TEMP/  CC(60,6),ZZ(60,6)
!       COMMON /STO6G/ ALLC(6,5,2),ALLZ(6,5,2)
  C     SET-UP THE STEWART'S STO-6G EXPANSIONS
  C                                            1S
        ALLZ(1,1,1) =2.310303149D01
--- 4,10 ----
        COMMON /EXPONT/ ZS(107),ZP(107),ZD(107)
        COMMON /NATYPE/ NZTYPE(107),MTYPE(30),LTYPE
        COMMON /TEMP/  CC(60,6),ZZ(60,6)
!       COMMON /STO6G/ ALLC(6,6,2),ALLZ(6,6,2)
  C     SET-UP THE STEWART'S STO-6G EXPANSIONS
  C                                            1S
        ALLZ(1,1,1) =2.310303149D01
diff -cdN ../src.old//sympro.f ./sympro.f
*** ../src.old//sympro.f	Tue Apr 20 03:38:20 1993
--- ./sympro.f	Wed Jan 25 16:06:10 1995
***************
*** 2,8 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION H(*), DELDIP(3,*)
!       COMMON /SYMOPS/ R( 9,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
        COMMON /ATOMS/ COORD, NATOMS, NVAR
--- 2,8 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION H(*), DELDIP(3,*)
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
        COMMON /ATOMS/ COORD, NATOMS, NVAR
***************
*** 26,32 ****
        SUBROUTINE SYMR
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       COMMON /SYMOPS/ R(9,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
  *****************************************************************
--- 26,32 ----
        SUBROUTINE SYMR
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
  *****************************************************************
***************
*** 391,397 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION H(*), DIP(3,*)
!       COMMON /SYMOPS/ R( 9,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
  *****************************************************************
--- 391,397 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION H(*), DIP(3,*)
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
  *****************************************************************
***************
*** 454,472 ****
  C
           IF (K .GT. L) THEN
              IEL33 = (3*K*(3*K-1))/2 + 3*L
!             TEMP(9) = 0.5 * H(IEL33)
!             TEMP(8) = 0.5 * H(IEL33-1)
!             TEMP(7) = 0.5 * H(IEL33-2)
!             TEMP(6) = 0.5 * H(IEL33-K*3+1)
!             TEMP(5) = 0.5 * H(IEL33-K*3)
!             TEMP(4) = 0.5 * H(IEL33-K*3-1)
!             TEMP(3) = 0.5 * H(IEL33-6*K+3)
!             TEMP(2) = 0.5 * H(IEL33-6*K+2)
!             TEMP(1) = 0.5 * H(IEL33-6*K+1)
           ELSE
              IEL33 = (3*L*(3*L-1))/2 + 3*K
!             FACT = 1.0
!             IF (L .LT. I) FACT = 0.5
              TEMP(9) = FACT * H(IEL33)
              TEMP(6) = FACT * H(IEL33-1)
              TEMP(3) = FACT * H(IEL33-2)
--- 454,472 ----
  C
           IF (K .GT. L) THEN
              IEL33 = (3*K*(3*K-1))/2 + 3*L
!             TEMP(9) = 0.5D0 * H(IEL33)
!             TEMP(8) = 0.5D0 * H(IEL33-1)
!             TEMP(7) = 0.5D0 * H(IEL33-2)
!             TEMP(6) = 0.5D0 * H(IEL33-K*3+1)
!             TEMP(5) = 0.5D0 * H(IEL33-K*3)
!             TEMP(4) = 0.5D0 * H(IEL33-K*3-1)
!             TEMP(3) = 0.5D0 * H(IEL33-6*K+3)
!             TEMP(2) = 0.5D0 * H(IEL33-6*K+2)
!             TEMP(1) = 0.5D0 * H(IEL33-6*K+1)
           ELSE
              IEL33 = (3*L*(3*L-1))/2 + 3*K
!             FACT = 1.0D0
!             IF (L .LT. I) FACT = 0.5D0
              TEMP(9) = FACT * H(IEL33)
              TEMP(6) = FACT * H(IEL33-1)
              TEMP(3) = FACT * H(IEL33-2)
***************
*** 495,509 ****
  C  Now, to do the diagonal term
  C
        IEL33 = (3*K*(3*K+1))/2
!       TEMP(9) = 0.5 * H(IEL33)
!       TEMP(8) = 0.5 * H(IEL33-1)
!       TEMP(7) = 0.5 * H(IEL33-2)
        TEMP(6) = TEMP(8)
!       TEMP(5) = 0.5 * H(IEL33-K*3)
!       TEMP(4) = 0.5 * H(IEL33-K*3-1)
        TEMP(3) = TEMP(7)
        TEMP(2) = TEMP(4)
!       TEMP(1) = 0.5 * H(IEL33-6*K+1)
  C
        CALL MAT33(R(1,N), TEMP, TEMP2)
  C
--- 495,509 ----
  C  Now, to do the diagonal term
  C
        IEL33 = (3*K*(3*K+1))/2
!       TEMP(9) = 0.5D0 * H(IEL33)
!       TEMP(8) = 0.5D0 * H(IEL33-1)
!       TEMP(7) = 0.5D0 * H(IEL33-2)
        TEMP(6) = TEMP(8)
!       TEMP(5) = 0.5D0 * H(IEL33-K*3)
!       TEMP(4) = 0.5D0 * H(IEL33-K*3-1)
        TEMP(3) = TEMP(7)
        TEMP(2) = TEMP(4)
!       TEMP(1) = 0.5D0 * H(IEL33-6*K+1)
  C
        CALL MAT33(R(1,N), TEMP, TEMP2)
  C
***************
*** 553,559 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION  E(NUMAT*3), V(NUMAT*NUMAT*9)
!       COMMON /SYMOPS/ R( 9,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
  *********************************************************************
--- 553,559 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION  E(NUMAT*3), V(NUMAT*NUMAT*9)
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
  *********************************************************************
***************
*** 598,604 ****
       1              V(J*3-1+K*NVAR)*R(6,N)+
       2              V(J*3  +K*NVAR)*R(9,N)
     10       CONTINUE
!             T2(K+1,N) = 0.0
              DO 20 I = 1, NVAR
                 T2(K+1,N) = T2(K+1,N) + T1(I)*V(I+K*NVAR)
     20    CONTINUE
--- 598,604 ----
       1              V(J*3-1+K*NVAR)*R(6,N)+
       2              V(J*3  +K*NVAR)*R(9,N)
     10       CONTINUE
!             T2(K+1,N) = 0.0D0
              DO 20 I = 1, NVAR
                 T2(K+1,N) = T2(K+1,N) + T1(I)*V(I+K*NVAR)
     20    CONTINUE
***************
*** 631,637 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION H(*), DELDIP(3,*)
!       COMMON /SYMOPS/ R( 9,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
  *****************************************************************
--- 631,637 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION H(*), DELDIP(3,*)
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
  *****************************************************************
***************
*** 821,827 ****
        SUBROUTINE SYMP
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       COMMON /SYMOPS/ R(9,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
        CHARACTER*5 OPER
--- 821,827 ----
        SUBROUTINE SYMP
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       COMMON /SYMOPS/ R(14,120), NSYM, IPO(NUMATM,120), NENT
        COMMON /SYMOPC/ ISYMT(6)
        CHARACTER*10 ISYMT
        CHARACTER*5 OPER
***************
*** 1001,1007 ****
          GOTO 20
        ENDIF
        ANG = ACOS(TRACE)
!       AFULL = ACOS(-1.0)*2.D0
        DO 10 I = 3, 18
          ANS = I*ANG/AFULL
          IF (ABS(ANS - NINT(ANS)) .LE. 2.5D-3) THEN
--- 1001,1007 ----
          GOTO 20
        ENDIF
        ANG = ACOS(TRACE)
!       AFULL = ACOS(-1.0D0)*2.D0
        DO 10 I = 3, 18
          ANS = I*ANG/AFULL
          IF (ABS(ANS - NINT(ANS)) .LE. 2.5D-3) THEN
diff -cdN ../src.old//symtry.f ./symtry.f
*** ../src.old//symtry.f	Tue Apr 20 03:38:20 1993
--- ./symtry.f	Tue Jan 17 15:26:48 1995
***************
*** 1,7 ****
        SUBROUTINE SYMTRY
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /GEOSYM/ NDEP, LOCPAR(MAXPAR), IDEPFN(MAXPAR),
       1         LOCDEP(MAXPAR)
  C**********************************************************************
--- 1,7 ----
        SUBROUTINE SYMTRY
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /GEOSYM/ NDEP, LOCPAR(MAXPAR), IDEPFN(MAXPAR),
       1         LOCDEP(MAXPAR)
  C**********************************************************************
diff -cdN ../src.old//symtrz.f ./symtrz.f
*** ../src.old//symtrz.f	Tue Apr 20 03:38:20 1993
--- ./symtrz.f	Fri Jan 27 15:15:40 1995
***************
*** 167,173 ****
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
        CHARACTER*4 NAME,NAMO,ISTA
!       COMMON /S00002/ NUMAT,NORBS,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        COMMON/SYMRES/ TRANS,RTR,SIG,NAME,NAMO(MXDIM),INDEX(MXDIM),ISTA(2)
--- 167,173 ----
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
        CHARACTER*4 NAME,NAMO,ISTA
!       COMMON /S00002/ NUMAT,NORBS,NADIM,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        COMMON/SYMRES/ TRANS,RTR,SIG,NAME,NAMO(MXDIM),INDEX(MXDIM),ISTA(2)
***************
*** 179,191 ****
        DATA TOLER,BIG/ 0.1D0,1.D35 /
        DO 2 I=1,3
        DO 1 J=1,3
!  1    CUB(I,J)=0.
!  2    CUB(I,I)=1.
        DO 3 I=1,20
        CALL R00006(I,I)
   3    IELEM(I)=0
        DO 4 I=1,3
!  4    SHIFT(I)=0.
        WMOL=0.D0
        DO 5 I=1,NUMAT
        WMOL=WMOL+ATMASS(I)
--- 179,191 ----
        DATA TOLER,BIG/ 0.1D0,1.D35 /
        DO 2 I=1,3
        DO 1 J=1,3
!  1    CUB(I,J)=0.D0
!  2    CUB(I,I)=1.D0
        DO 3 I=1,20
        CALL R00006(I,I)
   3    IELEM(I)=0
        DO 4 I=1,3
!  4    SHIFT(I)=0.D0
        WMOL=0.D0
        DO 5 I=1,NUMAT
        WMOL=WMOL+ATMASS(I)
***************
*** 198,204 ****
   6    COORD(I,K)=COORD(I,K)-SHIFT(I)
        DO 7 J=1,I
        IJ=IJ+1
!       F(IJ)=0.
        DO 7 K=1,NUMAT
        TERM=ATMASS(K)*COORD(I,K)*COORD(J,K)
   7    F(IJ)=F(IJ)+TERM
--- 198,204 ----
   6    COORD(I,K)=COORD(I,K)-SHIFT(I)
        DO 7 J=1,I
        IJ=IJ+1
!       F(IJ)=0.D0
        DO 7 K=1,NUMAT
        TERM=ATMASS(K)*COORD(I,K)*COORD(J,K)
   7    F(IJ)=F(IJ)+TERM
***************
*** 320,325 ****
--- 320,326 ----
        EW(I)=TOTAL-EW(I)
        DO 26 J=1,NUMAT
   26   COORD(I,J)=COORD(I,J)+SHIFT(I)
+       JGROUP = 0
        CALL R00008(JGROUP,NCODE)
        IF(JGROUP.LT.1) IERROR=2
        TOTAL=EW(1)*EW(2)*EW(3)/(SIG*SIG)
***************
*** 334,340 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
!       COMMON /S00002/ NUMAT,NORBS,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION COORD(3,NUMATM)
        CALL R00005(COORD,-1)
--- 335,341 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
!       COMMON /S00002/ NUMAT,NORBS,NADIM,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION COORD(3,NUMATM)
        CALL R00005(COORD,-1)
***************
*** 352,363 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
!       COMMON /S00002/ NUMAT,NORBS,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION COORD(3,NUMATM),NAT(NUMATM),WINK(2)
        DATA BIG,TOLER / 1.D35,0.1/
!       DATA WINK(1),WINK(2)/ 0.955316618125, 0.6523581398          /
        GOTO (1,5),JUMP
   1    IELEM(19)=1
        INDEX=0
--- 353,364 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
!       COMMON /S00002/ NUMAT,NORBS,NADIM,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION COORD(3,NUMATM),NAT(NUMATM),WINK(2)
        DATA BIG,TOLER / 1.D35,0.1/
!       DATA WINK(1),WINK(2)/ 0.955316618125D0, 0.6523581398D0        /
        GOTO (1,5),JUMP
   1    IELEM(19)=1
        INDEX=0
***************
*** 378,395 ****
        BUFF1=SQRT(R(1,3)**2+R(3,3)**2)
        IF(BUFF.GT.BUFF1) GOTO 3
        R(1,1)= R(3,3)/BUFF1
!       R(2,1)=0.
        R(3,1)=-R(1,3)/BUFF1
        GOTO 4
   3    R(1,1)= R(2,3)/BUFF
        R(2,1)=-R(1,3)/BUFF
!       R(3,1)=0.
   4    R(1,2)= R(2,3)*R(3,1)-R(2,1)*R(3,3)
        R(2,2)= R(3,3)*R(1,1)-R(3,1)*R(1,3)
        R(3,2)= R(1,3)*R(2,1)-R(1,1)*R(2,3)
        CALL R00005(COORD,1)
        RETURN
!  5    WINK2=0.
        IF(IELEM(8).LT.1) GOTO 8
        DO 6 I=1,2
        JOTA=18-4*I
--- 379,396 ----
        BUFF1=SQRT(R(1,3)**2+R(3,3)**2)
        IF(BUFF.GT.BUFF1) GOTO 3
        R(1,1)= R(3,3)/BUFF1
!       R(2,1)=0.D0
        R(3,1)=-R(1,3)/BUFF1
        GOTO 4
   3    R(1,1)= R(2,3)/BUFF
        R(2,1)=-R(1,3)/BUFF
!       R(3,1)=0.D0
   4    R(1,2)= R(2,3)*R(3,1)-R(2,1)*R(3,3)
        R(2,2)= R(3,3)*R(1,1)-R(3,1)*R(1,3)
        R(3,2)= R(1,3)*R(2,1)-R(1,1)*R(2,3)
        CALL R00005(COORD,1)
        RETURN
!  5    WINK2=0.D0
        IF(IELEM(8).LT.1) GOTO 8
        DO 6 I=1,2
        JOTA=18-4*I
***************
*** 400,407 ****
        CALL R00007(NAT,COORD,JOTA)
        IF(IELEM(JOTA).GT.0) GOTO 7
        WINK2=-WINK2
!       SINB=SIN(2.*WINK2)
!       COSB=COS(2.*WINK2)
        CALL R00002(COORD,SINB,COSB,1,3)
        CALL R00007(NAT,COORD,JOTA)
        IF(IELEM(JOTA).GT.0) GOTO 7
--- 401,408 ----
        CALL R00007(NAT,COORD,JOTA)
        IF(IELEM(JOTA).GT.0) GOTO 7
        WINK2=-WINK2
!       SINB=SIN(2.D0*WINK2)
!       COSB=COS(2.D0*WINK2)
        CALL R00002(COORD,SINB,COSB,1,3)
        CALL R00007(NAT,COORD,JOTA)
        IF(IELEM(JOTA).GT.0) GOTO 7
***************
*** 421,427 ****
        IF(IELEM(9).GT.0) GOTO 9
        WINK2=-WINK2
        GOTO 10
!  9    CALL R00002(COORD,0.707106781186,0.707106781186,1,2)
   10   CUB(1,1)=COS(WINK2)
        CUB(3,3)=CUB(1,1)
        CUB(1,3)=SIN(WINK2)
--- 422,428 ----
        IF(IELEM(9).GT.0) GOTO 9
        WINK2=-WINK2
        GOTO 10
!  9    CALL R00002(COORD,0.707106781186D0,0.707106781186D0,1,2)
   10   CUB(1,1)=COS(WINK2)
        CUB(3,3)=CUB(1,1)
        CUB(1,3)=SIN(WINK2)
***************
*** 442,448 ****
        DIMENSION HELP(3,3),FMAT(3,3)
        DO 1 I=1,3
        DO 1 J=1,3
!       HELP(I,J)=0.
        DO 1 K=1,3
        DO 1 L=1,3
   1    HELP(I,J)=HELP(I,J)+FMAT(I,L)*FMAT(J,K)*ELEM(L,K,IPLACE)
--- 443,449 ----
        DIMENSION HELP(3,3),FMAT(3,3)
        DO 1 I=1,3
        DO 1 J=1,3
!       HELP(I,J)=0.D0
        DO 1 K=1,3
        DO 1 L=1,3
   1    HELP(I,J)=HELP(I,J)+FMAT(I,L)*FMAT(J,K)*ELEM(L,K,IPLACE)
***************
*** 458,464 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
!       COMMON /S00002/ NUMAT,NORBS,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION COORD(3,NUMATM),HELP(3)
        IF(JUMP.LT.0) GOTO 3
--- 459,465 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
!       COMMON /S00002/ NUMAT,NORBS,NADIM,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION COORD(3,NUMATM),HELP(3)
        IF(JUMP.LT.0) GOTO 3
***************
*** 466,472 ****
        DO 1 J=1,3
   1    HELP(J)=COORD(J,I)
        DO 2 J=1,3
!       COORD(J,I)=0.
        DO 2 K=1,3
   2    COORD(J,I)=COORD(J,I)+R(K,J)*HELP(K)
        RETURN
--- 467,473 ----
        DO 1 J=1,3
   1    HELP(J)=COORD(J,I)
        DO 2 J=1,3
!       COORD(J,I)=0.D0
        DO 2 K=1,3
   2    COORD(J,I)=COORD(J,I)+R(K,J)*HELP(K)
        RETURN
***************
*** 474,480 ****
        DO 4 J=1,3
   4    HELP(J)=COORD(J,I)
        DO 5 J=1,3
!       COORD(J,I)=0.
        DO 5 K=1,3
   5    COORD(J,I)=COORD(J,I)+R(J,K)*HELP(K)
        RETURN
--- 475,481 ----
        DO 4 J=1,3
   4    HELP(J)=COORD(J,I)
        DO 5 J=1,3
!       COORD(J,I)=0.D0
        DO 5 K=1,3
   5    COORD(J,I)=COORD(J,I)+R(J,K)*HELP(K)
        RETURN
***************
*** 507,513 ****
        DATA J(1,18),J(2,18),J(3,18) /      12   ,    0   ,   -1     /
        DATA J(1,19),J(2,19),J(3,19) /       5   ,    0   ,   -1     /
        DATA J(1,20),J(2,20),J(3,20) /       0   ,    0   ,   -1     /
!       DATA TWOPI / 6.283185308 /
        DO 2 I=1,3
        DO 1 K=1,3
   1    ELEM(I,K,IPLACE)=0.
--- 508,514 ----
        DATA J(1,18),J(2,18),J(3,18) /      12   ,    0   ,   -1     /
        DATA J(1,19),J(2,19),J(3,19) /       5   ,    0   ,   -1     /
        DATA J(1,20),J(2,20),J(3,20) /       0   ,    0   ,   -1     /
!       DATA TWOPI / 6.283185308D0 /
        DO 2 I=1,3
        DO 1 K=1,3
   1    ELEM(I,K,IPLACE)=0.
***************
*** 521,528 ****
        ELEM(1,2,IPLACE)=-ELEM(2,1,IPLACE)
   3    IF((IOPER.EQ.8).OR.(IOPER.EQ.15)) CALL R00004(CUB,IPLACE)
        RETURN
!  4    ELEM(1,2,IPLACE)=1.
!       ELEM(2,1,IPLACE)=1.
        RETURN
        END
  C
--- 522,529 ----
        ELEM(1,2,IPLACE)=-ELEM(2,1,IPLACE)
   3    IF((IOPER.EQ.8).OR.(IOPER.EQ.15)) CALL R00004(CUB,IPLACE)
        RETURN
!  4    ELEM(1,2,IPLACE)=1.D0
!       ELEM(2,1,IPLACE)=1.D0
        RETURN
        END
  C
***************
*** 532,538 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION NAT(NUMATM),COORD(3,NUMATM),HELP(3),E(3,3)
!       COMMON /S00002/ NUMAT,NORBS,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        DATA TOLER / 0.01 D0/
        IRESUL=1
--- 533,539 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        DIMENSION NAT(NUMATM),COORD(3,NUMATM),HELP(3),E(3,3)
!       COMMON /S00002/ NUMAT,NORBS,NADIM,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        DATA TOLER / 0.01 D0/
        IRESUL=1
***************
*** 932,938 ****
       .3HSIU ,         1        ,         1        ,        -1          ,
       .3HPIU ,         2        ,         0        ,        -2          ,
       .3HDEU ,         2        ,        -2        ,        -2          /
!       SIG=1.
        I=IGROUP
        IF(NCODE.LT.0) GOTO 2
        IGROUP=0
--- 933,939 ----
       .3HSIU ,         1        ,         1        ,        -1          ,
       .3HPIU ,         2        ,         0        ,        -2          ,
       .3HDEU ,         2        ,        -2        ,        -2          /
!       SIG=1.D0
        I=IGROUP
        IF(NCODE.LT.0) GOTO 2
        IGROUP=0
***************
*** 969,981 ****
        JX(2,1)=1
        JX(3,1)=0
        J2=J2+JX(2,K)
!       BUFF=1.
   3    IF(BUFF.LT.10.) GOTO 4
        NZZ=JTAB(JGROUP)
        NZ=NZZ/10
        FZ=NZ
        FN=NZZ-10*NZ
!       BUFF=2.*COS(6.283185307179*FN/FZ)
   4    T(I,K)=BUFF
        LINA=IGROUP-41
        RETURN
--- 970,982 ----
        JX(2,1)=1
        JX(3,1)=0
        J2=J2+JX(2,K)
!       BUFF=1.D0
   3    IF(BUFF.LT.10.) GOTO 4
        NZZ=JTAB(JGROUP)
        NZ=NZZ/10
        FZ=NZ
        FN=NZZ-10*NZ
!       BUFF=2.D0*COS(6.283185307179D0*FN/FZ)
   4    T(I,K)=BUFF
        LINA=IGROUP-41
        RETURN
***************
*** 988,994 ****
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
        COMMON /S00001/         T(12,12),JX(7,12),LINA,I1,J1,J2
!       COMMON /S00002/ NUMAT,NORBS,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION HELP(3,3),NAT(NUMATM),COORD(3,NUMATM)
--- 989,995 ----
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
        COMMON /S00001/         T(12,12),JX(7,12),LINA,I1,J1,J2
!       COMMON /S00002/ NUMAT,NORBS,NADIM,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION HELP(3,3),NAT(NUMATM),COORD(3,NUMATM)
***************
*** 1008,1014 ****
        IF(JOT.EQ.1) GOTO 5
        DO 3 J=1,3
        DO 3 K=1,3
!       HELP(J,K)=0.
        DO 3 L=1,3
   3    HELP(J,K)=HELP(J,K)+ELEM(J,L,JOT)*ELEM(L,K,I)
        DO 4 J=1,3
--- 1009,1015 ----
        IF(JOT.EQ.1) GOTO 5
        DO 3 J=1,3
        DO 3 K=1,3
!       HELP(J,K)=0.D0
        DO 3 L=1,3
   3    HELP(J,K)=HELP(J,K)+ELEM(J,L,JOT)*ELEM(L,K,I)
        DO 4 J=1,3
***************
*** 1033,1041 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
!       CHARACTER*4  NAME,IFRA,NAMES, JX, NAMO, ISTA
        COMMON /S00001/         T(12,12),JX(7,12),LINA,I1,J1,J2
!       COMMON /S00002/ NUMAT,NORBS,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        COMMON/SYMRES/TRANS,RTR,SIG,NAME,NAMO(MXDIM),INDEX(MXDIM),ISTA(2)
--- 1034,1042 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
!       CHARACTER*4  NAME,ISTA
        COMMON /S00001/         T(12,12),JX(7,12),LINA,I1,J1,J2
!       COMMON /S00002/ NUMAT,NORBS,NADIM,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        COMMON/SYMRES/TRANS,RTR,SIG,NAME,NAMO(MXDIM),INDEX(MXDIM),ISTA(2)
***************
*** 1057,1063 ****
        I=0
   3    IK=I+1
        DO 4 J=1,J1
!  4    CHAR(J)=0.
   5    I=I+1
        IF(I.GT.NORBS) GOTO 10
        DO 6 J=1,J1
--- 1058,1064 ----
        I=0
   3    IK=I+1
        DO 4 J=1,J1
!  4    CHAR(J)=0.D0
   5    I=I+1
        IF(I.GT.NORBS) GOTO 10
        DO 6 J=1,J1
***************
*** 1087,1103 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
!       COMMON /S00002/ NUMAT,NORBS,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION NTYPE(MXDIM),COEFF(NCDUM,NCDUM),E(3,3,20)
        DIMENSION H(5),P(3),D(5),IP(2,3),ID(2,5),LOC(2,50)
        EQUIVALENCE (ELEM(1,1,1),E(1,1,1))
!       R00011=1.
        IF(IOPER.EQ.1) RETURN
        DO 1 I=1,NORBS
!       VECT(1,I)=0.
!  1    VECT(2,I)=0.
        DO 13 IATOM=1,NUMAT
        JATOM=JELEM(IOPER,IATOM)
        KI=0
--- 1088,1104 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
!       COMMON /S00002/ NUMAT,NORBS,NADIM,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION NTYPE(MXDIM),COEFF(NCDUM,NCDUM),E(3,3,20)
        DIMENSION H(5),P(3),D(5),IP(2,3),ID(2,5),LOC(2,50)
        EQUIVALENCE (ELEM(1,1,1),E(1,1,1))
!       R00011=1.D0
        IF(IOPER.EQ.1) RETURN
        DO 1 I=1,NORBS
!       VECT(1,I)=0.D0
!  1    VECT(2,I)=0.D0
        DO 13 IATOM=1,NUMAT
        JATOM=JELEM(IOPER,IATOM)
        KI=0
***************
*** 1178,1192 ****
        KI=KI-5
        GOTO 5
   13   CONTINUE
!       C1=0.
!       C2=0.
        DO 14 I=1,NORBS
        C1=C1+VECT(1,I)*VECT(1,I)
   14   C2=C2+VECT(1,I)*VECT(2,I)
        IF(ABS(C1).LT.1.E-5) GOTO 15
        R00011=C2/C1
        RETURN
!  15   R00011=100.
        RETURN
   16   IERROR=98
        RETURN
--- 1179,1193 ----
        KI=KI-5
        GOTO 5
   13   CONTINUE
!       C1=0.D0
!       C2=0.D0
        DO 14 I=1,NORBS
        C1=C1+VECT(1,I)*VECT(1,I)
   14   C2=C2+VECT(1,I)*VECT(2,I)
        IF(ABS(C1).LT.1.E-5) GOTO 15
        R00011=C2/C1
        RETURN
!  15   R00011=100.D0
        RETURN
   16   IERROR=98
        RETURN
***************
*** 1199,1208 ****
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
        COMMON /S00001/         T(12,12),JX(7,12),LINA,I1,J1,J2
!       COMMON /S00002/ NUMAT,NORBS,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION D(5),H(5),T1(5,5,12),S(3,3)
        IF(NDORBS.GT.0) GOTO 4
        NDORBS=1
        DO 1 I=1,3
--- 1200,1210 ----
        INCLUDE 'SIZES'
        PARAMETER (MXDIM=MAXPAR+NUMATM)
        COMMON /S00001/         T(12,12),JX(7,12),LINA,I1,J1,J2
!       COMMON /S00002/ NUMAT,NORBS,NADIM,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /S00003/ IELEM(20),ELEM(3,3,20),CUB(3,3),JELEM(20,NUMATM)
        COMMON /S00004/ SHIFT(3),R(3,3),VECT(2,MXDIM)
        DIMENSION D(5),H(5),T1(5,5,12),S(3,3)
+       CHARACTER JX*4
        IF(NDORBS.GT.0) GOTO 4
        NDORBS=1
        DO 1 I=1,3
***************
*** 1216,1226 ****
        CALL R00013(S,T1,K)
   3    CONTINUE
   4    DO 5 I=1,5
!       H(I)=0.
        DO 5 J=1,5
   5    H(I)=H(I)+T1(I,J,1)*D(J)
        DO 6 I=1,5
!       D(I)=0.
        DO 6 J=1,5
   6    D(I)=D(I)+T1(I,J,IOPER)*H(J)
        RETURN
--- 1218,1228 ----
        CALL R00013(S,T1,K)
   3    CONTINUE
   4    DO 5 I=1,5
!       H(I)=0.D0
        DO 5 J=1,5
   5    H(I)=H(I)+T1(I,J,1)*D(J)
        DO 6 I=1,5
!       D(I)=0.D0
        DO 6 J=1,5
   6    D(I)=D(I)+T1(I,J,IOPER)*H(J)
        RETURN
***************
*** 1232,1239 ****
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        DIMENSION R(3,3),T(5,5,12),F(2,4)
        LOGICAL RIGHT
!       DATA PI,TOL,S12 / 3.1415926536 ,0.001,3.46410161513 /
!       DATA S3,ONE     / 1.73205080756 , 1. /
        R1=R(2,1)*R(3,2)-R(3,1)*R(2,2)
        R2=R(3,1)*R(1,2)-R(1,1)*R(3,2)
        R3=R(1,1)*R(2,2)-R(2,1)*R(1,2)
--- 1234,1241 ----
        IMPLICIT DOUBLE PRECISION (A-H,O-Z)
        DIMENSION R(3,3),T(5,5,12),F(2,4)
        LOGICAL RIGHT
!       DATA PI,TOL,S12 / 3.1415926536D0 ,0.001D0,3.46410161513D0 /
!       DATA S3,ONE     / 1.73205080756D0 , 1.D0 /
        R1=R(2,1)*R(3,2)-R(3,1)*R(2,2)
        R2=R(3,1)*R(1,2)-R(1,1)*R(3,2)
        R3=R(1,1)*R(2,2)-R(2,1)*R(1,2)
***************
*** 1245,1251 ****
        ARG=R3
        IF(ABS(ARG).GT.ONE) ARG=SIGN(ONE,ARG)
        B= ACOS(ARG)
!       SINA=SQRT(1.-ARG*ARG)
        IF(SINA.LT.TOL) GOTO 1
        ARG=R(3,2)/SINA
        IF(ABS(ARG).GT.ONE) ARG=SIGN(ONE,ARG)
--- 1247,1253 ----
        ARG=R3
        IF(ABS(ARG).GT.ONE) ARG=SIGN(ONE,ARG)
        B= ACOS(ARG)
!       SINA=SQRT(1.D0-ARG*ARG)
        IF(SINA.LT.TOL) GOTO 1
        ARG=R(3,2)/SINA
        IF(ABS(ARG).GT.ONE) ARG=SIGN(ONE,ARG)
***************
*** 1257,1263 ****
   1    ARG=R(1,2)
        IF(ABS(ARG).GT.ONE) ARG=SIGN(ONE,ARG)
        G= ASIN(ARG)
!       A=0.
   2    F(1,1)=A
        F(1,2)=A
        F(1,3)=PI-A
--- 1259,1265 ----
   1    ARG=R(1,2)
        IF(ABS(ARG).GT.ONE) ARG=SIGN(ONE,ARG)
        G= ASIN(ARG)
!       A=0.D0
   2    F(1,1)=A
        F(1,2)=A
        F(1,3)=PI-A
***************
*** 1279,1318 ****
   4    G=-G
        A=-A
        B=-B
!       E1=COS(B*0.5)
!       X1=-SIN(B*0.5)
        E2=E1*E1
        E3=E1*E2
        E4=E2*E2
        X2=X1*X1
        X3=X1*X2
        X4=X2*X2
!       TA=2.*A
!       TG=2.*G
        T(1,1,IOPER)=E4*COS(TA+TG)+X4*COS(TA-TG)
!       T(1,2,IOPER)=2.*E3*X1*COS(A+TG)-2.*E1*X3*COS(A-TG)
!       T(1,3,IOPER)=2.*S3*E2*X2*COS(TG)
!       T(1,4,IOPER)=2.*E3*X1*SIN(A+TG)-2.*E1*X3*SIN(A-TG)
        T(1,5,IOPER)=E4*SIN(TA+TG)+X4*SIN(TA-TG)
!       T(2,1,IOPER)=2.*E1*X3*COS(TA-G)-2.*E3*X1*COS(TA+G)
!       T(2,2,IOPER)=(E4-3.*E2*X2)*COS(A+G)-(3.*E2*X2-X4)*COS(A-G)
!       T(2,3,IOPER)=2.*S3*(E3*X1-E1*X3)*COS(G)
!       T(2,4,IOPER)=(E4-3.*E2*X2)*SIN(A+G)-(3.*E2*X2-X4)*SIN(A-G)
!       T(2,5,IOPER)=-2.*E3*X1*SIN(TA+G)+2.*E1*X3*SIN(TA-G)
        T(3,1,IOPER)=S12*E2*X2*COS(TA)
        T(3,2,IOPER)=-S12*(E3*X1-E1*X3)*COS(A)
!       T(3,3,IOPER)=E4-4.*E2*X2+X4
        T(3,4,IOPER)=-S12*(E3*X1-E1*X3)*SIN(A)
        T(3,5,IOPER)=S12*E2*X2*SIN(TA)
!       T(4,1,IOPER)=2.*E1*X3*SIN(TA-G)+2.*E3*X1*SIN(TA+G)
!       T(4,2,IOPER)=-(E4-3.*E2*X2)*SIN(A+G)-(3.*E2*X2-X4)*SIN(A-G)
!       T(4,3,IOPER)=-2.*S3*(E3*X1-E1*X3)*SIN(G)
!       T(4,4,IOPER)=(E4-3.*E2*X2)*COS(A+G)+(3.*E2*X2-X4)*COS(A-G)
!       T(4,5,IOPER)=-2.*E3*X1*COS(TA+G)-2.*E1*X3*COS(TA-G)
        T(5,1,IOPER)=-E4*SIN(TA+TG)+X4*SIN(TA-TG)
!       T(5,2,IOPER)=-2.*E3*X1*SIN(A+TG)-2.*E1*X3*SIN(A-TG)
!       T(5,3,IOPER)=-2.*S3*E2*X2*SIN(TG)
!       T(5,4,IOPER)=2.*E3*X1*COS(A+TG)+2.*E1*X3*COS(A-TG)
        T(5,5,IOPER)=E4*COS(TA+TG)-X4*COS(TA-TG)
        IF(RIGHT) RETURN
        DO 5 I=1,5
--- 1281,1320 ----
   4    G=-G
        A=-A
        B=-B
!       E1=COS(B*0.5D0)
!       X1=-SIN(B*0.5D0)
        E2=E1*E1
        E3=E1*E2
        E4=E2*E2
        X2=X1*X1
        X3=X1*X2
        X4=X2*X2
!       TA=2.D0*A
!       TG=2.D0*G
        T(1,1,IOPER)=E4*COS(TA+TG)+X4*COS(TA-TG)
!       T(1,2,IOPER)=2.D0*E3*X1*COS(A+TG)-2.D0*E1*X3*COS(A-TG)
!       T(1,3,IOPER)=2.D0*S3*E2*X2*COS(TG)
!       T(1,4,IOPER)=2.D0*E3*X1*SIN(A+TG)-2.D0*E1*X3*SIN(A-TG)
        T(1,5,IOPER)=E4*SIN(TA+TG)+X4*SIN(TA-TG)
!       T(2,1,IOPER)=2.D0*E1*X3*COS(TA-G)-2.D0*E3*X1*COS(TA+G)
!       T(2,2,IOPER)=(E4-3.D0*E2*X2)*COS(A+G)-(3.D0*E2*X2-X4)*COS(A-G)
!       T(2,3,IOPER)=2.D0*S3*(E3*X1-E1*X3)*COS(G)
!       T(2,4,IOPER)=(E4-3.D0*E2*X2)*SIN(A+G)-(3.D0*E2*X2-X4)*SIN(A-G)
!       T(2,5,IOPER)=-2.D0*E3*X1*SIN(TA+G)+2.D0*E1*X3*SIN(TA-G)
        T(3,1,IOPER)=S12*E2*X2*COS(TA)
        T(3,2,IOPER)=-S12*(E3*X1-E1*X3)*COS(A)
!       T(3,3,IOPER)=E4-4.D0*E2*X2+X4
        T(3,4,IOPER)=-S12*(E3*X1-E1*X3)*SIN(A)
        T(3,5,IOPER)=S12*E2*X2*SIN(TA)
!       T(4,1,IOPER)=2.D0*E1*X3*SIN(TA-G)+2.D0*E3*X1*SIN(TA+G)
!       T(4,2,IOPER)=-(E4-3.D0*E2*X2)*SIN(A+G)-(3.D0*E2*X2-X4)*SIN(A-G)
!       T(4,3,IOPER)=-2.D0*S3*(E3*X1-E1*X3)*SIN(G)
!       T(4,4,IOPER)=(E4-3.D0*E2*X2)*COS(A+G)+(3.D0*E2*X2-X4)*COS(A-G)
!       T(4,5,IOPER)=-2.D0*E3*X1*COS(TA+G)-2.D0*E1*X3*COS(TA-G)
        T(5,1,IOPER)=-E4*SIN(TA+TG)+X4*SIN(TA-TG)
!       T(5,2,IOPER)=-2.D0*E3*X1*SIN(A+TG)-2.D0*E1*X3*SIN(A-TG)
!       T(5,3,IOPER)=-2.D0*S3*E2*X2*SIN(TG)
!       T(5,4,IOPER)=2.D0*E3*X1*COS(A+TG)+2.D0*E1*X3*COS(A-TG)
        T(5,5,IOPER)=E4*COS(TA+TG)-X4*COS(TA-TG)
        IF(RIGHT) RETURN
        DO 5 I=1,5
***************
*** 1334,1370 ****
        IJ=IJ+1
        A(I,J)=F(IJ)
        A(J,I)=F(IJ)
!       V(I,J)=0.
!  1    V(J,I)=0.
!  2    V(J,J)=1.
        N1=N-1
!       ZETA=10.
!  3    SS=0.
        DO 4 J=1,N1
        DO 4 I=J,N1
        IRG=I+1
   4    SS=SS+ABS(A(IRG,J))
        IF(SS-TOLER) 21,21,5
!  5    TAU=0.
        DO 20 I=1,N
        I1=I+1
        IF(N-I1) 20,6,6
   6    DO 19 J=I1,N
        IF(ABS(A(J,I)).LT.1.E-30) GOTO 19
!       THETA=0.5*(A(J,J)-A(I,I))/A(J,I)
        IF(ABS(THETA)-ZETA) 7,7,19
!  7    T=1.
        IF(THETA) 8,9,9
!  8    T=-1.
!  9    T=1./(THETA+T*SQRT(1.+THETA*THETA))
!       C=1./SQRT(1.+T*T)
        S=C*T
!       H=2.*A(J,I)
        HC=S*H*(S*THETA-C)
        A(I,I)=A(I,I)+HC
        A(J,J)=A(J,J)-HC
!       A(J,I)=-H*C*(S*THETA-0.5*(C-S*S/C))
!       TAU=TAU+1.
        IF(I.LT.2) GOTO 11
        DO 10 IG=2,I
        IRS=IG-1
--- 1336,1372 ----
        IJ=IJ+1
        A(I,J)=F(IJ)
        A(J,I)=F(IJ)
!       V(I,J)=0.D0
!  1    V(J,I)=0.D0
!  2    V(J,J)=1.D0
        N1=N-1
!       ZETA=10.D0
!  3    SS=0.D0
        DO 4 J=1,N1
        DO 4 I=J,N1
        IRG=I+1
   4    SS=SS+ABS(A(IRG,J))
        IF(SS-TOLER) 21,21,5
!  5    TAU=0.D0
        DO 20 I=1,N
        I1=I+1
        IF(N-I1) 20,6,6
   6    DO 19 J=I1,N
        IF(ABS(A(J,I)).LT.1.E-30) GOTO 19
!       THETA=0.5D0*(A(J,J)-A(I,I))/A(J,I)
        IF(ABS(THETA)-ZETA) 7,7,19
!  7    T=1.D0
        IF(THETA) 8,9,9
!  8    T=-1.D0
!  9    T=1.D0/(THETA+T*SQRT(1.D0+THETA*THETA))
!       C=1.D0/SQRT(1.D0+T*T)
        S=C*T
!       H=2.D0*A(J,I)
        HC=S*H*(S*THETA-C)
        A(I,I)=A(I,I)+HC
        A(J,J)=A(J,J)-HC
!       A(J,I)=-H*C*(S*THETA-0.5D0*(C-S*S/C))
!       TAU=TAU+1.D0
        IF(I.LT.2) GOTO 11
        DO 10 IG=2,I
        IRS=IG-1
***************
*** 1389,1396 ****
   18   V(IG,I)=H
   19   CONTINUE
   20   CONTINUE
!       H=0.5*FLOAT(N*(N-1))
!       ZETA=ZETA**(2.5-TAU/H)
        GOTO 3
   21   DO 22 J=1,N
   22   EW(J)=A(J,J)
--- 1391,1398 ----
   18   V(IG,I)=H
   19   CONTINUE
   20   CONTINUE
!       H=0.5D0*FLOAT(N*(N-1))
!       ZETA=ZETA**(2.5D0-TAU/H)
        GOTO 3
   21   DO 22 J=1,N
   22   EW(J)=A(J,J)
***************
*** 1421,1427 ****
        PARAMETER (MXDIM=MAXPAR+NUMATM)
        CHARACTER*4 NAME,NAMO,ISTA
        COMMON /S00001/         T(12,12),JX(7,12),LINA,I1,J1,J2
!       COMMON /S00002/ NUMAT,NORBS,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /SYMINF/ IBASE(2,12),NBASE,IVIBRO(2,12),IVIB
        COMMON/SYMRES/TRANS,RTR,SIG,NAME,NAMO(MXDIM),INDEX(MXDIM),ISTA(2)
        DIMENSION CHAR(12),COEFF(12)
--- 1423,1429 ----
        PARAMETER (MXDIM=MAXPAR+NUMATM)
        CHARACTER*4 NAME,NAMO,ISTA
        COMMON /S00001/         T(12,12),JX(7,12),LINA,I1,J1,J2
!       COMMON /S00002/ NUMAT,NORBS,NADIM,NCDIM,IQUAL,NDORBS,IERROR
        COMMON /SYMINF/ IBASE(2,12),NBASE,IVIBRO(2,12),IVIB
        COMMON/SYMRES/TRANS,RTR,SIG,NAME,NAMO(MXDIM),INDEX(MXDIM),ISTA(2)
        DIMENSION CHAR(12),COEFF(12)
***************
*** 1439,1455 ****
        GOTO 5
   3    JP=JX(5,I)/10
        JK=JX(5,I)-10*JP
!       ANGLE=2.*COS(6.283185308*FLOAT(JK)/FLOAT(JP))
!       CHAR(I)=FLOAT(JX(6,I))*(ANGLE-1.)
        GOTO 5
   4    JP=JX(5,I)/10
        JK=JX(5,I)-10*JP
!       ANGLE=2.*COS(6.283185308*FLOAT(JK)/FLOAT(JP))
!       CHAR(I)=FLOAT(JX(6,I)-2)*(ANGLE+1.)
!  5    CHAR(I)=CHAR(I)*FLOAT(JX(2,I))
!       ORDER=FLOAT(J2)
        DO 7 I=1,I1
!       COEFF(I)=0.1
        DO 6 J=1,J1
   6    COEFF(I)=COEFF(I)+CHAR(J)*T(I,J)/ORDER
        IF(COEFF(I).LT.1.) GOTO 7
--- 1441,1457 ----
        GOTO 5
   3    JP=JX(5,I)/10
        JK=JX(5,I)-10*JP
!       ANGLE=2.D0*COS(6.283185308D0*DBLE(JK)/DBLE(JP))
!       CHAR(I)=DBLE(JX(6,I))*(ANGLE-1.D0)
        GOTO 5
   4    JP=JX(5,I)/10
        JK=JX(5,I)-10*JP
!       ANGLE=2.D0*COS(6.283185308D0*DBLE(JK)/DBLE(JP))
!       CHAR(I)=DBLE(JX(6,I)-2)*(ANGLE+1.D0)
!  5    CHAR(I)=CHAR(I)*DBLE(JX(2,I))
!       ORDER=DBLE(J2)
        DO 7 I=1,I1
!       COEFF(I)=0.1D0
        DO 6 J=1,J1
   6    COEFF(I)=COEFF(I)+CHAR(J)*T(I,J)/ORDER
        IF(COEFF(I).LT.1.) GOTO 7
Binary files ../src.old//temp.dvi and ./temp.dvi differ
diff -cdN ../src.old//test.csh ./test.csh
*** ../src.old//test.csh	Fri Apr  2 01:46:52 1993
--- ./test.csh	Tue Jan 17 16:29:42 1995
***************
*** 15,21 ****
  setenv FOR020 $job.ump
  setenv SETUP  SETUP.DAT
  setenv SHUTDOWN $job.end
! time mopac.exe $job <$job.dat 
  #time mopac.exe $job <$job.dat &
  #sleep 5
  #tail -67f $job.out
--- 15,21 ----
  setenv FOR020 $job.ump
  setenv SETUP  SETUP.DAT
  setenv SHUTDOWN $job.end
! time ./mopac $job <$job.dat 
  #time mopac.exe $job <$job.dat &
  #sleep 5
  #tail -67f $job.out
diff -cdN ../src.old//test_cos.out ./test_cos.out
*** ../src.old//test_cos.out	Fri Apr  2 01:47:40 1993
--- ./test_cos.out
***************
*** 1,184 ****
-  *******************************************************************************
-  ** MOPAC (PUBLIC DOMAIN) FOR DEVELOPMENT USE ONLY.  NOT FOR PRODUCTION WORK  **
-  *******************************************************************************
- 
-                                  AM1 CALCULATION RESULTS
- 
- 
-  *******************************************************************************
-  *          MOPAC:  VERSION  7.00               CALC'D. Fri Apr  2 08:47:31 1993
-  *  DEBUG    - DEBUG OPTION TURNED ON
-  *
-  *
-  *
-  *                 CHARGE ON SYSTEM =  1
-  *
-  *
-  *
-  *  GRADIENTS- ALL GRADIENTS TO BE PRINTED
-  *   T=      - A TIME OF  3600.0 SECONDS REQUESTED
-  *  DUMP=N   - RESTART FILE WRITTEN EVERY  3600.0 SECONDS
-  *  1SCF     - DO 1 SCF AND THEN STOP 
-  *  AM1      - THE AM1 HAMILTONIAN TO BE USED
-  *  DEBUG KEYWORDS USED:   NSPA=60 EPS=78.4
-  ***********************************************************************030BY030
-      DEBUG NSPA=60 GRADIENTS 1SCF  EPS=78.4 AM1 CHARGE=1
-  Ammonia (solution phase geometry)
-  Heat of Formation should be 59.766 kcal/mol and the gradient should be small.
- 
-     ATOM   CHEMICAL  BOND LENGTH    BOND ANGLE     TWIST ANGLE
-    NUMBER  SYMBOL    (ANGSTROMS)     (DEGREES)      (DEGREES)
-     (I)                  NA:I          NB:NA:I      NC:NB:NA:I     NA   NB   NC
- 
-       1      H       
-       2      N         1.01578  *                                  1
-       3      H         1.01578  *     109.47122  *                 2    1
-       4      H         1.01578  *     109.47122  * -120.00000  *   2    1    3
-       5      H         1.01578  *     109.47122  *  120.00000  *   2    1    3
- 
- 
-           CARTESIAN COORDINATES 
- 
-     NO.       ATOM         X         Y         Z
- 
-      1         H        0.0000    0.0000    0.0000
-      2         N        1.0158    0.0000    0.0000
-      3         H        1.3544    0.9577    0.0000
-      4         H        1.3544   -0.4788   -0.8294
-      5         H        1.3544   -0.4788    0.8294
- 
- 
-      MOLECULAR POINT GROUP   :   TD  
-   H: (AM1): M.J.S. DEWAR ET AL, J. AM. CHEM. SOC. 107 3902-3909 (1985)          
-   N: (AM1): M.J.S. DEWAR ET AL, J. AM. CHEM. SOC. 107 3902-3909 (1985)          
- 
- 
-           RHF CALCULATION, NO. OF DOUBLY OCCUPIED LEVELS =  4
- 
- 
-             INTERATOMIC DISTANCES
- 0
-                   H  1       N  2       H  3       H  4       H  5
-  ------------------------------------------------------------------
-      H    1   0.000000
-      N    2   1.015785   0.000000
-      H    3   1.658769   1.015785   0.000000
-      H    4   1.658769   1.015785   1.658769   0.000000
-      H    5   1.658769   1.015785   1.658769   1.658769   0.000000
- 
-  -------------------------------------------------------------------------------
-      DEBUG NSPA=60 GRADIENTS 1SCF  EPS=78.4 AM1 CHARGE=1
-  Ammonia (solution phase geometry)
-  Heat of Formation should be 59.766 kcal/mol and the gradient should be small.
- 
- 
-      1SCF WAS SPECIFIED, SO BFGS WAS NOT USED                 
-      SCF FIELD WAS ACHIEVED                                   
- 
- 
-                                 AM1    CALCULATION
-                                                        VERSION  7.00
-                                                        Fri Apr  2 08:47:39 1993
- 
- 
- 
- 
-           FINAL HEAT OF FORMATION =         59.76636 KCAL
- 
- 
-           TOTAL ENERGY            =       -259.34423 EV
-           ELECTRONIC ENERGY       =       -193.12913 EV
-           CORE-CORE REPULSION     =        -66.21510 EV
- 
-           GRADIENT NORM           =          0.34934
-           IONIZATION POTENTIAL    =         16.97079
-           NO. OF FILLED LEVELS    =          4
-           MOLECULAR WEIGHT        =     18.038
- 
- 
-           SCF CALCULATIONS  =                2
-           COMPUTATION TIME =   7.040 SECONDS
- 
- 
- 
-        FINAL  POINT  AND  DERIVATIVES
- 
-    PARAMETER     ATOM    TYPE            VALUE       GRADIENT
-       1          2  N    BOND            1.015785     0.180670  KCAL/ANGSTROM
-       2          3  H    BOND            1.015785     0.095515  KCAL/ANGSTROM
-       3          3  H    ANGLE         109.471221    -0.137652  KCAL/RADIAN  
-       4          4  H    BOND            1.015785     0.050770  KCAL/ANGSTROM
-       5          4  H    ANGLE         109.471221    -0.092758  KCAL/RADIAN  
-       6          4  H    DIHEDRAL     -120.000000     0.079078  KCAL/RADIAN  
-       7          5  H    BOND            1.015785     0.199945  KCAL/ANGSTROM
-       8          5  H    ANGLE         109.471221    -0.057039  KCAL/RADIAN  
-       9          5  H    DIHEDRAL      120.000000     0.025699  KCAL/RADIAN  
- 
- 
- 
- 
- 
-     ATOM   CHEMICAL  BOND LENGTH    BOND ANGLE     TWIST ANGLE
-    NUMBER  SYMBOL    (ANGSTROMS)     (DEGREES)      (DEGREES)
-     (I)                  NA:I          NB:NA:I      NC:NB:NA:I     NA   NB   NC
- 
-       1      H       
-       2      N         1.01578  *                                  1
-       3      H         1.01578  *     109.47122  *                 2    1
-       4      H         1.01578  *     109.47122  * -120.00000  *   2    1    3
-       5      H         1.01578  *     109.47122  *  120.00000  *   2    1    3
- 
- 
-             INTERATOMIC DISTANCES
- 0
-                   H  1       N  2       H  3       H  4       H  5
-  ------------------------------------------------------------------
-      H    1   0.000000
-      N    2   1.015785   0.000000
-      H    3   1.658769   1.015785   0.000000
-      H    4   1.658769   1.015785   1.658769   0.000000
-      H    5   1.658769   1.015785   1.658769   1.658769   0.000000
- 
- 
-       MOLECULAR POINT GROUP   :   TD  
- 
- 
-                   EIGENVALUES
- 
-  -35.52091 -16.97489 -16.97378 -16.97079   3.14110   5.20916   5.21101   5.21595
- 
- 
-               NET ATOMIC CHARGES AND DIPOLE CONTRIBUTIONS
- 
-          ATOM NO.   TYPE          CHARGE        ATOM  ELECTRON DENSITY
-            1          H           0.2668          0.7332
-            2          N          -0.0683          5.0683
-            3          H           0.2672          0.7328
-            4          H           0.2676          0.7324
-            5          H           0.2668          0.7332
-  DIPOLE           X         Y         Z       TOTAL
-  POINT-CHG.     0.002     0.000    -0.003     0.004
-  HYBRID         0.000     0.000     0.001     0.001
-  SUM            0.002     0.000    -0.003     0.003
- 
- 
-           CARTESIAN COORDINATES 
- 
-     NO.       ATOM               X         Y         Z
- 
-      1         H                 -1.0158    0.0000    0.0000
-      2         N                  0.0000    0.0000    0.0000
-      3         H                  0.3386    0.9577    0.0000
-      4         H                  0.3386   -0.4788   -0.8294
-      5         H                  0.3386   -0.4788    0.8294
- 
- 
-           ATOMIC ORBITAL ELECTRON POPULATIONS
- 
-    0.73320   1.40630   1.22037   1.22073   1.22090   0.73285   0.73244   0.73322
- 
- 
- 
-  TOTAL CPU TIME:             7.11 SECONDS
- 
-  == MOPAC DONE ==
--- 0 ----
diff -cdN ../src.old//test_ef_.out ./test_ef_.out
*** ../src.old//test_ef_.out	Fri Apr  2 01:53:50 1993
--- ./test_ef_.out
***************
*** 1,164 ****
-  *******************************************************************************
-  ** MOPAC (PUBLIC DOMAIN) FOR DEVELOPMENT USE ONLY.  NOT FOR PRODUCTION WORK  **
-  *******************************************************************************
- 
-                                 MNDO CALCULATION RESULTS
- 
- 
-  *******************************************************************************
-  *          MOPAC:  VERSION  7.00               CALC'D. Fri Apr  2 08:53:45 1993
-  *  GEO-OK   - OVERRIDE INTERATOMIC DISTANCE CHECK
-  *   XYZ     - CARTESIAN COORDINATE SYSTEM TO BE USED
-  *   T=      - A TIME OF  3600.0 SECONDS REQUESTED
-  *  DUMP=N   - RESTART FILE WRITTEN EVERY  3600.0 SECONDS
-  *  EF       - USE EF ROUTINE FOR MINIMUM SEARCH
-  *  NOINTER  - INTERATOMIC DISTANCES NOT TO BE PRINTED
-  ***********************************************************************030BY030
-       GEO-OK XYZ NOINTER  EF
-  Test of optimizing all cartesian coordinates
-  Heat should be -56.993
- 
-     ATOM   CHEMICAL  BOND LENGTH    BOND ANGLE     TWIST ANGLE
-    NUMBER  SYMBOL    (ANGSTROMS)     (DEGREES)      (DEGREES)
-     (I)                  NA:I          NB:NA:I      NC:NB:NA:I     NA   NB   NC
- 
-       1      H       
-       2      C         1.10000  *                                  1
-       3      F         1.30000  *     112.61986  *                 2    1
-       4     Cl         1.68819  *     107.22798  * -119.74488  *   2    1    3
-       5     Br         1.87083  *     105.50136  *  123.69007  *   2    1    3
- 
- 
-           CARTESIAN COORDINATES 
- 
-     NO.       ATOM         X         Y         Z
- 
-      1         H        0.0000    0.0000    0.0000
-      2         C        1.1000    0.0000    0.0000
-      3         F        1.6000    1.2000    0.0000
-      4        Cl        1.6000   -0.8000   -1.4000
-      5        Br        1.6000   -1.0000    1.5000
- 
- 
-      MOLECULAR POINT GROUP   :   C1  
-   H: (MNDO):  M.J.S. DEWAR, W. THIEL, J. AM. CHEM. SOC., 99, 4899, (1977)       
-   C: (MNDO):  M.J.S. DEWAR, W. THIEL, J. AM. CHEM. SOC., 99, 4899, (1977)       
-   F: (MNDO):  M.J.S. DEWAR, H.S. RZEPA, J. AM. CHEM. SOC., 100, 777, (1978)     
-  Cl: (MNDO): M.J.S.DEWAR, H.S.RZEPA, J. COMP. CHEM., 4, 158, (1983)             
-  Br: (MNDO): M.J.S.DEWAR, E.F. HEALY, J. COMP. CHEM., 4, 542, (1983)            
- 
- 
-           RHF CALCULATION, NO. OF DOUBLY OCCUPIED LEVELS = 13
- 
-           DIAGONAL MATRIX USED AS START HESSIAN
- 
-  CYCLE:   1 TIME:   0.43 TIME LEFT:   3599.6 GRAD.:   153.116 HEAT:-48.24605    
-  CYCLE:   2 TIME:   0.27 TIME LEFT:   3599.3 GRAD.:   128.932 HEAT:-51.79969    
-  CYCLE:   3 TIME:   0.28 TIME LEFT:   3599.0 GRAD.:    68.324 HEAT:-54.74900    
-  CYCLE:   4 TIME:   0.31 TIME LEFT:   3598.7 GRAD.:    19.852 HEAT:-56.64223    
-  CYCLE:   5 TIME:   0.33 TIME LEFT:   3598.4 GRAD.:     5.923 HEAT:-56.85348    
-  CYCLE:   6 TIME:   0.30 TIME LEFT:   3598.1 GRAD.:     5.057 HEAT:-56.88486    
-  CYCLE:   7 TIME:   0.32 TIME LEFT:   3597.8 GRAD.:     4.593 HEAT:-56.92380    
-  CYCLE:   8 TIME:   0.32 TIME LEFT:   3597.4 GRAD.:     2.256 HEAT:-56.97384    
-  CYCLE:   9 TIME:   0.29 TIME LEFT:   3597.1 GRAD.:     1.454 HEAT:-56.98052    
-  CYCLE:  10 TIME:   0.28 TIME LEFT:   3596.9 GRAD.:     1.295 HEAT:-56.98650    
-  CYCLE:  11 TIME:   0.29 TIME LEFT:   3596.6 GRAD.:     1.218 HEAT:-56.99114    
-  CYCLE:  12 TIME:   0.28 TIME LEFT:   3596.3 GRAD.:     0.890 HEAT:-56.99334    
- 
-      RMS GRADIENT =  0.89032  IS LESS THAN CUTOFF =  1.00000
- 
- 
- 
-  -------------------------------------------------------------------------------
-       GEO-OK XYZ NOINTER  EF
-  Test of optimizing all cartesian coordinates
-  Heat should be -56.993
- 
- 
-      GEOMETRY OPTIMISED USING EIGENVECTOR FOLLOWING (EF).     
-      SCF FIELD WAS ACHIEVED                                   
- 
- 
-                                MNDO    CALCULATION
-                                                        VERSION  7.00
-                                                        Fri Apr  2 08:53:50 1993
- 
- 
- 
- 
-           FINAL HEAT OF FORMATION =        -56.99334 KCAL
- 
- 
-           TOTAL ENERGY            =      -1324.26642 EV
-           ELECTRONIC ENERGY       =      -2849.75635 EV
-           CORE-CORE REPULSION     =       1525.48993 EV
- 
-           IONIZATION POTENTIAL    =         12.33069
-           NO. OF FILLED LEVELS    =         13
-           MOLECULAR WEIGHT        =    147.374
- 
- 
-           SCF CALCULATIONS  =               13
-           COMPUTATION TIME =   3.840 SECONDS
- 
- 
- 
- 
- 
-     ATOM   CHEMICAL  BOND LENGTH    BOND ANGLE     TWIST ANGLE
-    NUMBER  SYMBOL    (ANGSTROMS)     (DEGREES)      (DEGREES)
-     (I)                  NA:I          NB:NA:I      NC:NB:NA:I     NA   NB   NC
- 
-       1      H       
-       2      C         1.11628  *                                  1
-       3      F         1.32986  *     112.39404  *                 2    1
-       4     Cl         1.81072  *     106.46343  * -121.44477  *   2    1    3
-       5     Br         1.90235  *     106.27491  *  123.19352  *   2    1    3
- 
- 
-       MOLECULAR POINT GROUP   :   C1  
- 
- 
-                   EIGENVALUES
- 
-  -48.02002 -29.36448 -26.33058 -24.89318 -19.24703 -18.86622 -18.64484 -14.98129
-  -14.53210 -13.51194 -12.97175 -12.53882 -12.33069  -0.95526  -0.37448   2.27183
-    3.57723
- 
- 
-               NET ATOMIC CHARGES AND DIPOLE CONTRIBUTIONS
- 
-          ATOM NO.   TYPE          CHARGE        ATOM  ELECTRON DENSITY
-            1          H           0.0785          0.9215
-            2          C           0.3232          3.6768
-            3          F          -0.1738          7.1738
-            4         Cl          -0.1565          7.1565
-            5         Br          -0.0714          7.0714
-  DIPOLE           X         Y         Z       TOTAL
-  POINT-CHG.    -1.412    -0.002     0.590     1.530
-  HYBRID        -0.063     0.004    -0.127     0.142
-  SUM           -1.475     0.002     0.463     1.546
- 
- 
-           CARTESIAN COORDINATES 
- 
-     NO.       ATOM               X         Y         Z
- 
-      1         H                 -1.1800    0.1200   -0.0200
-      2         C                 -0.0637    0.1200   -0.0200
-      3         F                  0.4429    1.3496   -0.0200
-      4        Cl                  0.4494   -0.7859   -1.5015
-      5        Br                  0.4694   -0.8797    1.5081
- 
- 
-           ATOMIC ORBITAL ELECTRON POPULATIONS
- 
-    0.92154   1.24063   0.90933   0.72569   0.80114   1.88369   1.88433   1.46292
-    1.94282   1.98745   1.93573   1.77829   1.45507   1.99047   1.93547   1.73483
-    1.41061
- 
- 
- 
-  TOTAL CPU TIME:             3.87 SECONDS
- 
-  == MOPAC DONE ==
--- 0 ----
diff -cdN ../src.old//test_gre.out ./test_gre.out
*** ../src.old//test_gre.out	Fri Apr  2 01:55:22 1993
--- ./test_gre.out
***************
*** 1,522 ****
-  *******************************************************************************
-  ** MOPAC (PUBLIC DOMAIN) FOR DEVELOPMENT USE ONLY.  NOT FOR PRODUCTION WORK  **
-  *******************************************************************************
- 
-                                  PM3 CALCULATION RESULTS
- 
- 
-  *******************************************************************************
-  *          MOPAC:  VERSION  7.00               CALC'D. Fri Apr  2 08:54:22 1993
-  *  VECTORS  - FINAL EIGENVECTORS TO BE PRINTED
-  *  GREEN    - RUN DANOVICH'S GREEN'S FUNCTION CALCN.
-  *   T=      - A TIME OF  3600.0 SECONDS REQUESTED
-  *  DUMP=N   - RESTART FILE WRITTEN EVERY  3600.0 SECONDS
-  *  1SCF     - DO 1 SCF AND THEN STOP 
-  *  PM3      - THE PM3 HAMILTONIAN TO BE USED
-  *  PRECISE  - CRITERIA TO BE INCREASED BY 100 TIMES
-  ***********************************************************************030BY030
-  1SCF  PM3 PRECISE GREENF VECT
-  TEST FOR MOPAC 7.0 FOR J.J.P.STEWART
-   dimethoxy-s-tetrazine method OVGF(PM3)
- 
-     ATOM   CHEMICAL  BOND LENGTH    BOND ANGLE     TWIST ANGLE
-    NUMBER  SYMBOL    (ANGSTROMS)     (DEGREES)      (DEGREES)
-     (I)                  NA:I          NB:NA:I      NC:NB:NA:I     NA   NB   NC
- 
-       1      C       
-       2      N         1.37642  *                                  1
-       3      N         1.28602  *     118.36407  *                 2    1
-       4      C         1.37955  *     118.51027  *    0.00317  *   3    2    1
-       5      N         1.37625  *     123.12897  *   -0.00211  *   4    3    2
-       6      N         1.28617  *     118.35611  *   -0.00012  *   5    4    3
-       7      O         1.35392  *     112.34420  *  179.99563  *   1    2    3
-       8      O         1.35390  *     124.53025  * -179.99976  *   4    3    2
-       9      C         1.41426  *     117.59432  *  179.99799  *   7    1    2
-      10      H         1.09535  *     112.24034  *   62.17779  *   9    7    1
-      11      H         1.09534  *     112.23293  *  -62.21587  *   9    7    1
-      12      H         1.09377  *     101.50305  *  179.98192  *   9    7    1
-      13      C         1.41425  *     117.59651  *   -0.00905  *   8    4    3
-      14      H         1.09535  *     112.23477  *   62.20685  *  13    8    4
-      15      H         1.09535  *     112.23416  *  -62.19005  *  13    8    4
-      16      H         1.09378  *     101.50562  * -179.98986  *  13    8    4
- 
- 
-           CARTESIAN COORDINATES 
- 
-     NO.       ATOM         X         Y         Z
- 
-      1         C        0.0000    0.0000    0.0000
-      2         N        1.3764    0.0000    0.0000
-      3         N        1.9874    1.1316    0.0000
-      4         C        1.2335    2.2870    0.0001
-      5         N       -0.1428    2.2870    0.0001
-      6         N       -0.7537    1.1552    0.0000
-      7         O       -0.5147   -1.2523   -0.0001
-      8         O        1.7482    3.5392    0.0001
-      9         C       -1.9230   -1.3817   -0.0001
-     10         H       -2.3792   -0.9483   -0.8967
-     11         H       -2.3790   -0.9490    0.8970
-     12         H       -2.0422   -2.4689   -0.0005
-     13         C        3.1565    3.6687    0.0002
-     14         H        3.6126    3.2358   -0.8967
-     15         H        3.6125    3.2356    0.8971
-     16         H        3.2756    4.7560    0.0004
- 
- 
-      MOLECULAR POINT GROUP   :   C2H 
-   H: (PM3): J. J. P. STEWART, J. COMP. CHEM.     10, 209 (1989).                
-   C: (PM3): J. J. P. STEWART, J. COMP. CHEM.     10, 209 (1989).                
-   N: (PM3): J. J. P. STEWART, J. COMP. CHEM.     10, 209 (1989).                
-   O: (PM3): J. J. P. STEWART, J. COMP. CHEM.     10, 209 (1989).                
- 
- 
-           RHF CALCULATION, NO. OF DOUBLY OCCUPIED LEVELS = 27
- 
- 
-             INTERATOMIC DISTANCES
- 0
-                   C  1       N  2       N  3       C  4       N  5       N  6
-  ------------------------------------------------------------------------------
-      C    1   0.000000
-      N    2   1.376420   0.000000
-      N    3   2.286971   1.286020   0.000000
-      C    4   2.598401   2.291429   1.379550   0.000000
-      N    5   2.291498   2.745636   2.423323   1.376250   0.000000
-      N    6   1.379360   2.423218   2.741176   2.286855   1.286170   0.000000
-      O    7   1.353920   2.268165   3.455924   3.947448   3.558800   2.419331
-      O    8   3.947428   3.558684   2.419435   1.353900   2.267961   3.455837
-      C    9   2.367938   3.577080   4.648448   4.839688   4.077853   2.793434
-      H   10   2.713667   3.975943   4.919074   4.931811   4.034034   2.805587
-      H   11   2.713816   3.975960   4.919223   4.932142   4.034511   2.806064
-      H   12   3.204081   4.216925   5.403827   5.774820   5.121241   3.846399
-      C   13   4.839700   4.077731   2.793471   2.367939   3.576884   4.648342
-      H   14   4.932082   4.034233   2.805887   2.713798   3.975828   4.919102
-      H   15   4.931906   4.034071   2.805767   2.713673   3.975677   4.918931
-      H   16   5.774848   5.121142   3.846470   3.204105   4.216753   5.403770
- 0
-                   O  7       O  8       C  9       H 10       H 11       H 12
-  ------------------------------------------------------------------------------
-      O    7   0.000000
-      O    8   5.298962   0.000000
-      C    9   1.414260   6.139470   0.000000
-      H   10   2.091071   6.162591   1.095350   0.000000
-      H   11   2.090974   6.162981   1.095340   1.793671   0.000000
-      H   12   1.952798   7.103853   1.093770   1.796945   1.796949   0.000000
-      C   13   6.139505   1.414250   7.162950   7.263964   7.264228   8.043417
-      H   14   6.162913   2.090995   7.264196   7.308137   7.525242   8.082318
-      H   15   6.162746   2.090988   7.264012   7.524811   7.308108   8.082220
-      H   16   7.103903   1.952832   8.043429   8.082122   8.082417   8.970961
- 0
-                   C 13       H 14       H 15       H 16
-  ------------------------------------------------------
-      C   13   0.000000
-      H   14   1.095350   0.000000
-      H   15   1.095350   1.793733   0.000000
-      H   16   1.093780   1.796955   1.796925   0.000000
- 
-  -------------------------------------------------------------------------------
-  1SCF  PM3 PRECISE GREENF VECT
-  TEST FOR MOPAC 7.0 FOR J.J.P.STEWART
-   dimethoxy-s-tetrazine method OVGF(PM3)
- 
- 
-      1SCF WAS SPECIFIED, SO BFGS WAS NOT USED                 
-      SCF FIELD WAS ACHIEVED                                   
- 
- 
-                                 PM3    CALCULATION
-                                                        VERSION  7.00
-                                                        Fri Apr  2 08:54:24 1993
- 
- 
- 
- 
-           FINAL HEAT OF FORMATION =         14.44080 KCAL
- 
- 
-           TOTAL ENERGY            =      -1799.83570 EV
-           ELECTRONIC ENERGY       =      -8385.72709 EV
-           CORE-CORE REPULSION     =       6585.89139 EV
- 
-           IONIZATION POTENTIAL    =         10.00519
-           NO. OF FILLED LEVELS    =         27
-           MOLECULAR WEIGHT        =    142.117
- 
- 
-           SCF CALCULATIONS  =                1
-           COMPUTATION TIME =   1.830 SECONDS
- 
- 
- 
- 
- 
-     ATOM   CHEMICAL  BOND LENGTH    BOND ANGLE     TWIST ANGLE
-    NUMBER  SYMBOL    (ANGSTROMS)     (DEGREES)      (DEGREES)
-     (I)                  NA:I          NB:NA:I      NC:NB:NA:I     NA   NB   NC
- 
-       1      C       
-       2      N         1.37642  *                                  1
-       3      N         1.28602  *     118.36407  *                 2    1
-       4      C         1.37955  *     118.51027  *    0.00317  *   3    2    1
-       5      N         1.37625  *     123.12897  *   -0.00211  *   4    3    2
-       6      N         1.28617  *     118.35611  *   -0.00012  *   5    4    3
-       7      O         1.35392  *     112.34420  *  179.99563  *   1    2    3
-       8      O         1.35390  *     124.53025  * -179.99976  *   4    3    2
-       9      C         1.41426  *     117.59432  *  179.99799  *   7    1    2
-      10      H         1.09535  *     112.24034  *   62.17779  *   9    7    1
-      11      H         1.09534  *     112.23293  *  -62.21587  *   9    7    1
-      12      H         1.09377  *     101.50305  *  179.98192  *   9    7    1
-      13      C         1.41425  *     117.59651  *   -0.00905  *   8    4    3
-      14      H         1.09535  *     112.23477  *   62.20685  *  13    8    4
-      15      H         1.09535  *     112.23416  *  -62.19005  *  13    8    4
-      16      H         1.09378  *     101.50562  * -179.98986  *  13    8    4
- 
- 
-             INTERATOMIC DISTANCES
- 0
-                   C  1       N  2       N  3       C  4       N  5       N  6
-  ------------------------------------------------------------------------------
-      C    1   0.000000
-      N    2   1.376420   0.000000
-      N    3   2.286971   1.286020   0.000000
-      C    4   2.598401   2.291429   1.379550   0.000000
-      N    5   2.291498   2.745636   2.423323   1.376250   0.000000
-      N    6   1.379360   2.423218   2.741176   2.286855   1.286170   0.000000
-      O    7   1.353920   2.268165   3.455924   3.947448   3.558800   2.419331
-      O    8   3.947428   3.558684   2.419435   1.353900   2.267961   3.455837
-      C    9   2.367938   3.577080   4.648448   4.839688   4.077853   2.793434
-      H   10   2.713667   3.975943   4.919074   4.931811   4.034034   2.805587
-      H   11   2.713816   3.975960   4.919223   4.932142   4.034511   2.806064
-      H   12   3.204081   4.216925   5.403827   5.774820   5.121241   3.846399
-      C   13   4.839700   4.077731   2.793471   2.367939   3.576884   4.648342
-      H   14   4.932082   4.034233   2.805887   2.713798   3.975828   4.919102
-      H   15   4.931906   4.034071   2.805767   2.713673   3.975677   4.918931
-      H   16   5.774848   5.121142   3.846470   3.204105   4.216753   5.403770
- 0
-                   O  7       O  8       C  9       H 10       H 11       H 12
-  ------------------------------------------------------------------------------
-      O    7   0.000000
-      O    8   5.298962   0.000000
-      C    9   1.414260   6.139470   0.000000
-      H   10   2.091071   6.162591   1.095350   0.000000
-      H   11   2.090974   6.162981   1.095340   1.793671   0.000000
-      H   12   1.952798   7.103853   1.093770   1.796945   1.796949   0.000000
-      C   13   6.139505   1.414250   7.162950   7.263964   7.264228   8.043417
-      H   14   6.162913   2.090995   7.264196   7.308137   7.525242   8.082318
-      H   15   6.162746   2.090988   7.264012   7.524811   7.308108   8.082220
-      H   16   7.103903   1.952832   8.043429   8.082122   8.082417   8.970961
- 0
-                   C 13       H 14       H 15       H 16
-  ------------------------------------------------------
-      C   13   0.000000
-      H   14   1.095350   0.000000
-      H   15   1.095350   1.793733   0.000000
-      H   16   1.093780   1.796955   1.796925   0.000000
- 
- 
-       MOLECULAR POINT GROUP   :   C2H 
- 
- 
-                 EIGENVECTORS  
- 
- 
-    Root No.   19      20      21      22      23      24      25      26
- 
-               8 BU    2 BG    9 BU    9 AG    3 BG    3 AU   10 BU   10 AG  
- 
-            -13.643 -13.254 -13.020 -12.976 -12.908 -12.273 -11.957 -10.141
-   
-   S   C  1  0.0991  0.0000  0.0133  0.0647  0.0000  0.0000 -0.2017 -0.0013
-   Px  C  1 -0.0859  0.0000  0.0065 -0.0760  0.0000  0.0000 -0.0787 -0.2333
-   Py  C  1 -0.1249  0.0000 -0.0682 -0.0830  0.0000  0.0000 -0.1491  0.1330
-   Pz  C  1  0.0000 -0.3171  0.0000  0.0001 -0.0841 -0.0594  0.0000  0.0000
-   S   N  2 -0.0007  0.0000 -0.1679 -0.1634  0.0000  0.0000  0.3503  0.2670
-   Px  N  2  0.0583  0.0000 -0.2010 -0.0141  0.0000  0.0000  0.2043  0.2938
-   Py  N  2 -0.1155  0.0000  0.3725  0.3185  0.0000  0.0000 -0.2857 -0.2536
-   Pz  N  2  0.0000 -0.2387 -0.0001  0.0000  0.4448  0.1670  0.0000  0.0000
-   S   N  3  0.1203  0.0000 -0.1829 -0.2022  0.0000  0.0000 -0.3201 -0.2509
-   Px  N  3  0.1376  0.0000 -0.4702 -0.3226 -0.0001  0.0000 -0.2826 -0.3458
-   Py  N  3  0.0403  0.0000 -0.0275 -0.1546  0.0000  0.0000  0.0195  0.1151
-   Pz  N  3  0.0000 -0.0058  0.0000  0.0000  0.5245  0.1829  0.0000  0.0000
-   S   C  4 -0.0992  0.0000 -0.0112  0.0651  0.0000  0.0000  0.2017 -0.0013
-   Px  C  4 -0.0861  0.0000  0.0089  0.0757  0.0000  0.0000 -0.0786  0.2333
-   Py  C  4 -0.1251  0.0000 -0.0655  0.0849  0.0000  0.0000 -0.1492 -0.1330
-   Pz  C  4  0.0000  0.3172  0.0000 -0.0001  0.0836 -0.0594  0.0000  0.0000
-   S   N  5  0.0006  0.0000  0.1629 -0.1686  0.0000  0.0001 -0.3502  0.2670
-   Px  N  5  0.0584  0.0000 -0.2005  0.0204  0.0000  0.0000  0.2043 -0.2938
-   Py  N  5 -0.1157 -0.0001  0.3627 -0.3300  0.0000  0.0001 -0.2856  0.2536
-   Pz  N  5  0.0000  0.2387  0.0001  0.0000 -0.4445  0.1678  0.0000  0.0000
-   S   N  6 -0.1203  0.0000  0.1766 -0.2077  0.0000  0.0000  0.3201 -0.2509
-   Px  N  6  0.1376  0.0001 -0.4601  0.3370  0.0000  0.0000 -0.2826  0.3459
-   Py  N  6  0.0403  0.0000 -0.0228  0.1554  0.0000  0.0000  0.0195 -0.1151
-   Pz  N  6  0.0000  0.0057  0.0000  0.0001 -0.5243  0.1837  0.0000  0.0000
-   S   O  7 -0.1218  0.0000 -0.0301 -0.0588  0.0000  0.0000 -0.0096  0.0290
-   Px  O  7 -0.1142  0.0000 -0.0167 -0.0299  0.0000  0.0000 -0.0131  0.0451
-   Py  O  7  0.2180  0.0001  0.0570  0.2596  0.0000  0.0000 -0.0002 -0.0440
-   Pz  O  7  0.0000 -0.2810  0.0000  0.0000 -0.0531 -0.4921  0.0000  0.0000
-   S   O  8  0.1219  0.0000  0.0282 -0.0597  0.0000  0.0000  0.0096  0.0290
-   Px  O  8 -0.1144  0.0000 -0.0157  0.0304  0.0000  0.0000 -0.0132 -0.0452
-   Py  O  8  0.2182  0.0000  0.0490 -0.2612  0.0000  0.0000 -0.0001  0.0441
-   Pz  O  8  0.0000  0.2812  0.0000 -0.0001  0.0525 -0.4920  0.0000  0.0000
-   S   C  9  0.0150  0.0000 -0.0116  0.0189  0.0000  0.0000 -0.0053 -0.0124
-   Px  C  9  0.1395  0.0000  0.0408  0.0262  0.0000  0.0000  0.0232 -0.0667
-   Py  C  9 -0.3804 -0.0001 -0.1370 -0.2096 -0.0001  0.0000 -0.0251  0.0066
-   Pz  C  9  0.0000  0.3491  0.0000 -0.0001  0.0944  0.2778  0.0000  0.0000
-   S   H 10 -0.1841 -0.2659 -0.0618 -0.0925 -0.0658 -0.2403 -0.0135  0.0170
-   S   H 11 -0.1839  0.2660 -0.0617 -0.0924  0.0658  0.2404 -0.0135  0.0169
-   S   H 12  0.3274 -0.0001  0.1141  0.1975  0.0000 -0.0001  0.0188 -0.0067
-   S   C 13 -0.0150  0.0000  0.0122  0.0186  0.0000  0.0000  0.0053 -0.0124
-   Px  C 13  0.1397  0.0000  0.0399 -0.0274  0.0000  0.0000  0.0233  0.0667
-   Py  C 13 -0.3810  0.0001 -0.1302  0.2134  0.0000  0.0000 -0.0251 -0.0067
-   Pz  C 13  0.0000 -0.3492  0.0000  0.0001 -0.0938  0.2778  0.0000  0.0000
-   S   H 14  0.1843  0.2660  0.0588 -0.0943  0.0653 -0.2404  0.0135  0.0169
-   S   H 15  0.1844 -0.2660  0.0588 -0.0942 -0.0653  0.2404  0.0135  0.0169
-   S   H 16 -0.3279  0.0000 -0.1077  0.2007  0.0000  0.0000 -0.0188 -0.0067
- 
- 
-    Root No.   27      28      29      30      31      32      33      34
- 
-               4 BG    4 AU    5 AU   11 AG   11 BU    5 BG   12 AG   12 BU  
- 
-            -10.005  -1.449  -1.044   0.926   1.121   1.395   2.052   2.572
-   
-   S   C  1  0.0000  0.0000  0.0000  0.4294  0.3382  0.0000  0.0506 -0.1379
-   Px  C  1  0.0000  0.0000  0.0000  0.0330 -0.0333  0.0000 -0.1730  0.1470
-   Py  C  1  0.0000  0.0000  0.0000  0.0580 -0.1067  0.0000  0.2475 -0.2141
-   Pz  C  1  0.3882 -0.0673 -0.5788  0.0000  0.0000 -0.4270  0.0000  0.0000
-   S   N  2  0.0000  0.0000  0.0000 -0.1749 -0.1776  0.0000  0.1578 -0.0085
-   Px  N  2  0.0000  0.0000  0.0000  0.2937  0.1667  0.0000 -0.0416  0.0120
-   Py  N  2  0.0000  0.0000  0.0000  0.0004 -0.1995  0.0000  0.2276  0.1333
-   Pz  N  2  0.2974 -0.4745  0.2939  0.0000  0.0000  0.3915  0.0000  0.0000
-   S   N  3  0.0000  0.0000  0.0000 -0.1646  0.1584  0.0000 -0.2216 -0.1541
-   Px  N  3  0.0000  0.0000  0.0000  0.1541 -0.2453  0.0000  0.3273  0.2021
-   Py  N  3  0.0000  0.0000  0.0000 -0.2454  0.0011  0.0000  0.0008 -0.1632
-   Pz  N  3 -0.2691  0.5192  0.1814  0.0000  0.0001 -0.3836  0.0000  0.0000
-   S   C  4  0.0000  0.0000  0.0000  0.4288 -0.3390  0.0000  0.0507  0.1376
-   Px  C  4  0.0000  0.0000  0.0000 -0.0326 -0.0334  0.0000  0.1730  0.1465
-   Py  C  4  0.0000  0.0000  0.0000 -0.0584 -0.1065  0.0000 -0.2478 -0.2142
-   Pz  C  4 -0.3882 -0.0671 -0.5788  0.0000 -0.0001  0.4270  0.0000  0.0000
-   S   N  5  0.0000  0.0000  0.0000 -0.1744  0.1779  0.0000  0.1578  0.0082
-   Px  N  5  0.0000  0.0000  0.0000 -0.2932  0.1672  0.0000  0.0414  0.0119
-   Py  N  5  0.0000  0.0000  0.0000 -0.0007 -0.1995  0.0000 -0.2276  0.1338
-   Pz  N  5 -0.2977 -0.4742  0.2941  0.0000  0.0000 -0.3915  0.0000  0.0000
-   S   N  6  0.0000  0.0000  0.0000 -0.1648 -0.1581  0.0000 -0.2216  0.1545
-   Px  N  6  0.0000  0.0000  0.0000 -0.1544 -0.2449  0.0000 -0.3271  0.2025
-   Py  N  6  0.0000  0.0000  0.0000  0.2451  0.0006  0.0000 -0.0011 -0.1631
-   Pz  N  6  0.2694  0.5190  0.1816  0.0000  0.0000  0.3837  0.0000  0.0000
-   S   O  7  0.0000  0.0000  0.0000 -0.1002 -0.1503  0.0000  0.1041 -0.0922
-   Px  O  7  0.0000  0.0000  0.0000  0.0524  0.0981  0.0000 -0.1792  0.2570
-   Py  O  7  0.0000  0.0000  0.0000 -0.2236 -0.3123  0.0000  0.0621 -0.0019
-   Pz  O  7 -0.4033  0.0297  0.2055  0.0000  0.0000  0.1219  0.0000  0.0000
-   S   O  8  0.0000  0.0000  0.0000 -0.0999  0.1505  0.0000  0.1043  0.0924
-   Px  O  8  0.0000  0.0000  0.0000 -0.0522  0.0982  0.0000  0.1793  0.2571
-   Py  O  8  0.0000  0.0000  0.0000  0.2230 -0.3127  0.0000 -0.0622 -0.0022
-   Pz  O  8  0.4033  0.0296  0.2055  0.0000  0.0000 -0.1219  0.0000  0.0000
-   S   C  9  0.0000  0.0000  0.0000  0.0505  0.0882  0.0000 -0.2182  0.3217
-   Px  C  9  0.0000  0.0000  0.0000  0.1201  0.2053  0.0000 -0.2279  0.2292
-   Py  C  9  0.0000  0.0000  0.0000  0.0121  0.0191  0.0000 -0.0575  0.0927
-   Pz  C  9  0.0742 -0.0106  0.0124  0.0000  0.0000  0.0198  0.0000  0.0000
-   S   H 10 -0.1002  0.0046  0.0399  0.0034  0.0001  0.0316  0.0847 -0.1660
-   S   H 11  0.1002 -0.0047 -0.0399  0.0033  0.0001 -0.0316  0.0846 -0.1660
-   S   H 12  0.0000  0.0000  0.0000 -0.0637 -0.0905  0.0000  0.0860 -0.0995
-   S   C 13  0.0000  0.0000  0.0000  0.0502 -0.0883  0.0000 -0.2184 -0.3217
-   Px  C 13  0.0000  0.0000  0.0000 -0.1196  0.2055  0.0000  0.2281  0.2294
-   Py  C 13  0.0000  0.0000  0.0000 -0.0120  0.0191  0.0000  0.0576  0.0926
-   Pz  C 13 -0.0742 -0.0106  0.0124  0.0000  0.0000 -0.0198  0.0000  0.0000
-   S   H 14  0.1002  0.0046  0.0399  0.0034 -0.0001 -0.0316  0.0847  0.1660
-   S   H 15 -0.1002 -0.0046 -0.0399  0.0034 -0.0001  0.0316  0.0847  0.1660
-   S   H 16  0.0000  0.0000  0.0000 -0.0635  0.0906  0.0000  0.0861  0.0996
- 
- 
-               NET ATOMIC CHARGES AND DIPOLE CONTRIBUTIONS
- 
-          ATOM NO.   TYPE          CHARGE        ATOM  ELECTRON DENSITY
-            1          C          -0.0158          4.0158
-            2          N           0.0003          4.9997
-            3          N          -0.0481          5.0481
-            4          C          -0.0159          4.0159
-            5          N           0.0002          4.9998
-            6          N          -0.0483          5.0483
-            7          O          -0.1350          6.1350
-            8          O          -0.1350          6.1350
-            9          C           0.0562          3.9438
-           10          H           0.0434          0.9566
-           11          H           0.0434          0.9566
-           12          H           0.0559          0.9441
-           13          C           0.0562          3.9438
-           14          H           0.0434          0.9566
-           15          H           0.0434          0.9566
-           16          H           0.0559          0.9441
-  DIPOLE           X         Y         Z       TOTAL
-  POINT-CHG.     0.001    -0.001     0.000     0.001
-  HYBRID         0.000     0.000     0.000     0.000
-  SUM            0.001    -0.001     0.000     0.001
- 
- 
-           CARTESIAN COORDINATES 
- 
-     NO.       ATOM               X         Y         Z
- 
-      1         C                  0.0000    0.0000    0.0000
-      2         N                  1.3764    0.0000    0.0000
-      3         N                  1.9874    1.1316    0.0000
-      4         C                  1.2335    2.2870    0.0001
-      5         N                 -0.1428    2.2870    0.0001
-      6         N                 -0.7537    1.1552    0.0000
-      7         O                 -0.5147   -1.2523   -0.0001
-      8         O                  1.7482    3.5392    0.0001
-      9         C                 -1.9230   -1.3817   -0.0001
-     10         H                 -2.3792   -0.9483   -0.8967
-     11         H                 -2.3790   -0.9490    0.8970
-     12         H                 -2.0422   -2.4689   -0.0005
-     13         C                  3.1565    3.6687    0.0002
-     14         H                  3.6126    3.2358   -0.8967
-     15         H                  3.6125    3.2356    0.8971
-     16         H                  3.2756    4.7560    0.0004
- 
- 
-           ATOMIC ORBITAL ELECTRON POPULATIONS
- 
-    1.24619   0.92106   0.89624   0.95234   1.63544   1.04578   1.24869   1.06981
-    1.64293   1.36929   0.93531   1.10060   1.24621   0.92111   0.89623   0.95233
-    1.63548   1.04576   1.24858   1.07001   1.64288   1.36937   0.93530   1.10071
-    1.82991   1.23304   1.20677   1.86532   1.82990   1.23304   1.20680   1.86530
-    1.13568   0.80064   1.00161   1.00590   0.95659   0.95661   0.94411   1.13568
-    0.80066   1.00162   1.00589   0.95660   0.95660   0.94411
- 
- 
- 
- 
-           ************************************************
-           *                                              *
-           *   SEMIEMPIRICAL GREEN FUNCTION CALCULATION   *
-           *                                              *
-           *  This package was written by Dr. D.Danovich  *
-           *            Chemistry Department              *
-           *    TECHNION-Israel Institute of Technology   *
-           *      Technion City, Haifa  32000, ISRAEL     *
-           *                                              *
-           ************************************************
- 
- 
- 
-  NUMBER OF OCCUPIED MOS      20
-  NUMBER OF UNOCCUPIED MOS    19
-  PRINTING FLAG                0
- 
- 
- 
-  THERE ARE      304590 NONZERO INTEGRALS.
- 
- 
- 
-      number of nonzero integrals =    304590     Total number of MO  =  46
- 
- 
-                                      Orbital energy 
- 
-            1      2      3      4      5      6      7      8      9     10
- 
-           11     12     13     14     15     16     17     18     19     20
- 
-           21     22     23     24     25     26     27     28     29     30
- 
-           31     32     33     34     35     36     37     38     39     40
- 
-           41     42     43     44     45     46
- 
- 
-      -39.868-39.206-35.705-29.957-28.757-28.219-26.595-23.259-22.607-20.684
- 
- 
-      -19.197-19.183-17.470-16.910-16.112-15.897-15.109-13.924-13.643-13.254
- 
- 
-      -13.020-12.976-12.908-12.273-11.957-10.141-10.005 -1.449 -1.044  0.926
- 
- 
-        1.121  1.395  2.052  2.572  2.821  3.414  3.501  3.615  3.645  3.786
- 
- 
-        3.786  3.866  5.007  5.071  5.570  6.881
- 
- 
-       Higher occupied MO  is    27  MO 
- 
- 
- 
-      TOTAL NUMBER OF OCCUPIED ORBITALS INVOLVED IN THE
-       OVGF CALCULATION = 20
-      TOTAL NUMBER OF UNOCCUPIED ORBITALS INVOLVED IN THE
-       OVGF CALCULATION = 19
-      THE NUMBER OF FIRST OCCUPIED MO FOR WHICH OVGF CORRECTION 
-      MUST BE STARTED = 20
-      THE NUMBER OF LAST OCCUPIED MO FOR WHICH OVGF CORRECTION 
-      MUST BE  FINISHED = 27
-      TOLERANCE FACTOR =   1.00000000
-      SECOND-ORDER CONTRIBUTION =   0
-      THIRD-ORDER CONTRIBUTION =   0
-      FULL EXPRESSION =   0
-      PRINT FACTOR =   0
-      ONLY SECOND-ORDER CONTRIBUTION =   1
- 
- 
- 
-       RESULTS OF CALCULATION PES  
- 
-  LEVEL     2      IR     3      IR     FINAL    IR     SCF
- 
-  20     -12.697    1    0.000    0    0.000     0    -13.254
- 
-  21     -12.174    1    0.000    0    0.000     0    -13.020
- 
-  22     -12.233    1    0.000    0    0.000     0    -12.976
- 
-  23     -12.427    1    0.000    0    0.000     0    -12.908
- 
-  24     -11.459    1    0.000    0    0.000     0    -12.273
- 
-  25     -11.211    1    0.000    0    0.000     0    -11.957
- 
-  26      -9.529    1    0.000    0    0.000     0    -10.141
- 
-  27      -9.670    1    0.000    0    0.000     0    -10.005
- 
- 
-       IN CALCULATED USED    20 HOMO  and    19 LUMO 
-       ACCURACY SELFCONSISTENT  =   1.00000000
-       FINAL RESULT CALCULATED BY   0  METHOD 
- 
- 
-       FINAL=0, CALCULATED BY  FORMULA W=EP+SUM2+(1+A)**(-1)*SU3R
-       FINAL=1, CALCULATED BY FORMULA W=EP+SUM2+(1+G1)**-1)
-    *(CS4+CS5+CS6+DS4+DS5+DS6)+(1+G2)**(-1)*(CS1+CS2+CS3+DS1
-    +DS2+DS3)+AA
-       FINAL= -1, CALCULATED BY FORMULA W=EP+SUM2+(1+A)**(-1)*SUM3
- 
- 
-       CALCULATION RELAXATION EFFECTS ONLY  
- 
-    LEVEL  R.effect   ENERGY SCF     ENERGY
- 
-     20    0.038440   -13.2538         13.2154
- 
-     21    0.159918   -13.0202         12.8603
- 
-     22    0.066830   -12.9759         12.9091
- 
-     23    0.217969   -12.9082         12.6903
- 
-     24    0.097383   -12.2734         12.1760
- 
-     25    0.165876   -11.9573         11.7915
- 
-     26    0.180178   -10.1406          9.9605
- 
-     27    0.156901   -10.0052          9.8483
- 
- 
- 
-  TOTAL CPU TIME:            50.69 SECONDS
- 
-  == MOPAC DONE ==
--- 0 ----
diff -cdN ../src.old//test_pol.out ./test_pol.out
*** ../src.old//test_pol.out	Fri Apr  2 01:53:46 1993
--- ./test_pol.out
***************
*** 1,619 ****
-  *******************************************************************************
-  ** MOPAC (PUBLIC DOMAIN) FOR DEVELOPMENT USE ONLY.  NOT FOR PRODUCTION WORK  **
-  *******************************************************************************
- 
-                                 MNDO CALCULATION RESULTS
- 
- 
-  *******************************************************************************
-  *          MOPAC:  VERSION  7.00               CALC'D. Fri Apr  2 08:53:24 1993
-  *  POLAR    - CALCULATE FIRST, SECOND AND THIRD-ORDER POLARIZABILITIES
-  *  SYMMETRY - SYMMETRY CONDITIONS TO BE IMPOSED
-  *   T=      - A TIME OF  3600.0 SECONDS REQUESTED
-  *  DUMP=N   - RESTART FILE WRITTEN EVERY  3600.0 SECONDS
-  ***********************************************************************030BY030
- 
- 
- 
-      PARAMETER DEPENDENCE DATA
- 
-         REFERENCE ATOM      FUNCTION NO.    DEPENDENT ATOM(S)
-             3                  1             4
-             3                  2             4
- 
-              DESCRIPTIONS OF THE FUNCTIONS USED
- 
-    1      BOND LENGTH    IS SET EQUAL TO THE REFERENCE BOND LENGTH   
-    2      BOND ANGLE     IS SET EQUAL TO THE REFERENCE BOND ANGLE    
-     POLAR  SYMMETRY
-  Formaldehyde, for Demonstration Purposes
-  
- 
-     ATOM   CHEMICAL  BOND LENGTH    BOND ANGLE     TWIST ANGLE
-    NUMBER  SYMBOL    (ANGSTROMS)     (DEGREES)      (DEGREES)
-     (I)                  NA:I          NB:NA:I      NC:NB:NA:I     NA   NB   NC
- 
-       1      O       
-       2      C         1.20000  *                                  1
-       3      H         1.10000  *     120.00000  *                 2    1
-       4      H         1.10000        120.00000     180.00000      2    1    3
- 
- 
-           CARTESIAN COORDINATES 
- 
-     NO.       ATOM         X         Y         Z
- 
-      1         O        0.0000    0.0000    0.0000
-      2         C        1.2000    0.0000    0.0000
-      3         H        1.7500    0.9526    0.0000
-      4         H        1.7500   -0.9526    0.0000
- 
- 
-      MOLECULAR POINT GROUP   :   C2V 
-   H: (MNDO):  M.J.S. DEWAR, W. THIEL, J. AM. CHEM. SOC., 99, 4899, (1977)       
-   C: (MNDO):  M.J.S. DEWAR, W. THIEL, J. AM. CHEM. SOC., 99, 4899, (1977)       
-   O: (MNDO):  M.J.S. DEWAR, W. THIEL, J. AM. CHEM. SOC., 99, 4899, (1977)       
- 
- 
-           RHF CALCULATION, NO. OF DOUBLY OCCUPIED LEVELS =  6
- 
- 
-             INTERATOMIC DISTANCES
- 0
-                   O  1       C  2       H  3       H  4
-  ------------------------------------------------------
-      O    1   0.000000
-      C    2   1.200000   0.000000
-      H    3   1.992486   1.100000   0.000000
-      H    4   1.992486   1.100000   1.905256   0.000000
-  CYCLE:   1 TIME:   0.11 TIME LEFT:   3599.7 GRAD.:     6.340 HEAT:-32.84026    
-  CYCLE:   2 TIME:   0.05 TIME LEFT:   3599.7 GRAD.:     2.535 HEAT:-32.88011    
-  HEAT OF FORMATION TEST SATISFIED
-  PETERS TEST SATISFIED 
- 
-  -------------------------------------------------------------------------------
-     POLAR  SYMMETRY
-  Formaldehyde, for Demonstration Purposes
-  
- 
- 
-      PETERS TEST WAS SATISFIED IN BFGS OPTIMIZATION           
-      SCF FIELD WAS ACHIEVED                                   
- 
- 
-                                MNDO    CALCULATION
-                                                        VERSION  7.00
-                                                        Fri Apr  2 08:53:25 1993
- 
- 
- 
- 
-           FINAL HEAT OF FORMATION =        -32.88176 KCAL
- 
- 
-           TOTAL ENERGY            =       -478.11917 EV
-           ELECTRONIC ENERGY       =       -870.69628 EV
-           CORE-CORE REPULSION     =        392.57711 EV
- 
-           IONIZATION POTENTIAL    =         11.04197
-           NO. OF FILLED LEVELS    =          6
-           MOLECULAR WEIGHT        =     30.026
- 
- 
-           SCF CALCULATIONS  =                6
-           COMPUTATION TIME =   0.410 SECONDS
- 
- 
- 
- 
- 
-     ATOM   CHEMICAL  BOND LENGTH    BOND ANGLE     TWIST ANGLE
-    NUMBER  SYMBOL    (ANGSTROMS)     (DEGREES)      (DEGREES)
-     (I)                  NA:I          NB:NA:I      NC:NB:NA:I     NA   NB   NC
- 
-       1      O       
-       2      C         1.21678  *                                  1
-       3      H         1.10590  *     123.50231  *                 2    1
-       4      H         1.10590        123.50231     180.00000      2    1    3
- 
- 
-             INTERATOMIC DISTANCES
- 0
-                   O  1       C  2       H  3       H  4
-  ------------------------------------------------------
-      O    1   0.000000
-      C    2   1.216776   0.000000
-      H    3   2.046723   1.105904   0.000000
-      H    4   2.046723   1.105904   1.844347   0.000000
- 
- 
-       MOLECULAR POINT GROUP   :   C2V 
- 
- 
-                   EIGENVALUES
- 
-  -42.98353 -25.12195 -16.95327 -16.29818 -14.17550 -11.04197   0.85804   3.67676
-    3.84989   7.12409
- 
- 
-               NET ATOMIC CHARGES AND DIPOLE CONTRIBUTIONS
- 
-          ATOM NO.   TYPE          CHARGE        ATOM  ELECTRON DENSITY
-            1          O          -0.2903          6.2903
-            2          C           0.2921          3.7079
-            3          H          -0.0009          1.0009
-            4          H          -0.0009          1.0009
-  DIPOLE           X         Y         Z       TOTAL
-  POINT-CHG.     1.692     0.000     0.000     1.692
-  HYBRID         0.475     0.000     0.000     0.475
-  SUM            2.166     0.000     0.000     2.166
- 
- 
-           CARTESIAN COORDINATES 
- 
-     NO.       ATOM               X         Y         Z
- 
-      1         O                  0.0000    0.0000    0.0000
-      2         C                  1.2168    0.0000    0.0000
-      3         H                  1.8272    0.9222    0.0000
-      4         H                  1.8272   -0.9222    0.0000
- 
- 
-           ATOMIC ORBITAL ELECTRON POPULATIONS
- 
-    1.88270   1.21586   1.89126   1.30050   1.25532   0.86217   0.89095   0.69950
-    1.00087   1.00087
- 1******************** TDHF POLARIZABILITIES ********************
- 
- 
- 
-           MOLECULAR WEIGHT =   30.03
- 
- 
- 
-            PRINCIPAL MOMENTS OF INERTIA IN CM(-1)
- 
-           A =    9.833870   B =    1.261600   C =    1.118151
- 
- 
- 
-            PRINCIPAL MOMENTS OF INERTIA IN UNITS OF 10**(-40)*GRAM-CM**2
- 
-           A =    2.846554   B =   22.188196   C =   25.034750
- 
- 
-  ROTATION MATRIX FOR ORIENTATION OF MOLECULE:
- 
-         -1.000000    0.000000    0.000000
-          0.000000   -1.000000    0.000000
-          0.000000    0.000000    1.000000
- 
- 
-           CARTESIAN COORDINATES 
- 
-     NO.       ATOM         X         Y         Z
- 
-      1         O        0.6094    0.0000    0.0000
-      2         C       -0.6074    0.0000    0.0000
-      3         H       -1.2178   -0.9222    0.0000
-      4         H       -1.2178    0.9222    0.0000
- 
- 
-  ENERGY OF "REORIENTED" SYSTEM WITHOUT FIELD:      -32.8817631428
- 
- 
-   NFREQ=  3  IWFLB=  0  IBET=  1  IGAM=  1
-   ATOL= 0.10000D-02  BTOL= 0.10000D-02    MAXITU=  500    MAXITA=  150
- 
- 
-  *****************************************************************
-  CALCULATION OF STATIC FIELD QUANTITIES
-  *****************************************************************
- 
-  +++++ ALPHA AT       0.00000 EV.
- 
-  CONVERGED IN  10 ITERATIONS IN      0.12 SECONDS
-            DENSITY CONVERG. TO  9.12302D-04
-              ALPHA CONVERG. TO  9.69679D-04
- 
-       ALPHA(X,X) =  1.8702752D+01
-       ALPHA(Y,X) =  1.9863977D-10
-       ALPHA(Z,X) = -4.8795465D-10
- 
-  CONVERGED IN  11 ITERATIONS IN      0.14 SECONDS
-            DENSITY CONVERG. TO  6.58506D-04
-              ALPHA CONVERG. TO  2.17815D-03
- 
-       ALPHA(Y,Y) =  9.7938523D+00
-       ALPHA(X,Y) =  1.9866331D-10
-       ALPHA(Z,Y) = -1.0767537D-08
- 
-  CONVERGED IN   9 ITERATIONS IN      0.11 SECONDS
-            DENSITY CONVERG. TO  7.03620D-04
-              ALPHA CONVERG. TO  4.88292D-04
- 
-       ALPHA(Z,Z) =  2.3469180D+00
-       ALPHA(X,Z) = -4.8793269D-10
-       ALPHA(Y,Z) = -1.0769376D-08
- 
-   ISOTROPIC AVERAGE ALPHA =      10.28117 A.U.
- 
-  +++++ BETA (SECOND HARMONIC GENERATION) AT       0.00000 EV.
- 
- 
-  CONVERGED IN  14 ITERATIONS IN      0.68 SECONDS
-  MAXIMUM UAB ELEMENT =        5.41598,  MAXIMUM DIFFERENCE =        0.00081
- 
-       BETA(X,X,X) =        37.11909
-       BETA(Y,X,X) =         0.00000
-       BETA(Z,X,X) =         0.00000
- 
-  CONVERGED IN  13 ITERATIONS IN      0.65 SECONDS
-  MAXIMUM UAB ELEMENT =        9.90247,  MAXIMUM DIFFERENCE =        0.00075
- 
-       BETA(X,X,Y) =         0.00000
-       BETA(Y,X,Y) =        39.65181
-       BETA(Z,X,Y) =         0.00000
- 
-  CONVERGED IN  13 ITERATIONS IN      0.65 SECONDS
-  MAXIMUM UAB ELEMENT =        4.14332,  MAXIMUM DIFFERENCE =        0.00055
- 
-       BETA(X,X,Z) =         0.00000
-       BETA(Y,X,Z) =         0.00000
-       BETA(Z,X,Z) =         5.79988
- 
-  CONVERGED IN  16 ITERATIONS IN      0.76 SECONDS
-  MAXIMUM UAB ELEMENT =       12.92266,  MAXIMUM DIFFERENCE =        0.00075
- 
-       BETA(X,Y,Y) =        39.66643
-       BETA(Y,Y,Y) =         0.00000
-       BETA(Z,Y,Y) =         0.00000
- 
-  CONVERGED IN  27 ITERATIONS IN      1.23 SECONDS
-  MAXIMUM UAB ELEMENT =        9.41027,  MAXIMUM DIFFERENCE =        0.00082
- 
-       BETA(X,Y,Z) =         0.00000
-       BETA(Y,Y,Z) =         0.00000
-       BETA(Z,Y,Z) =         0.00000
- 
-  CONVERGED IN  10 ITERATIONS IN      0.50 SECONDS
-  MAXIMUM UAB ELEMENT =        0.77301,  MAXIMUM DIFFERENCE =        0.00082
- 
-       BETA(X,Z,Z) =         5.79454
-       BETA(Y,Z,Z) =         0.00000
-       BETA(Z,Z,Z) =         0.00000
- 
- 
-  AVERAGE BETAX(SHG) VALUE AT   0.00000 EV =    49.54432
-  AVERAGE BETAY(SHG) VALUE AT   0.00000 EV =     0.00000
-  AVERAGE BETAZ(SHG) VALUE AT   0.00000 EV =     0.00000
- 
- 
-  AVERAGE BETA (SHG) VALUE AT   0.00000 EV =    49.54432
- 
- 
- 
-  +++++ ALPHA AT       0.00000 EV.
- 
-  CONVERGED IN  10 ITERATIONS IN      0.12 SECONDS
-            DENSITY CONVERG. TO  9.12302D-04
-              ALPHA CONVERG. TO  9.69679D-04
- 
-       ALPHA(X,X) =  1.8702752D+01
-       ALPHA(Y,X) =  1.9863977D-10
-       ALPHA(Z,X) = -4.8795465D-10
- 
-  CONVERGED IN  11 ITERATIONS IN      0.16 SECONDS
-            DENSITY CONVERG. TO  6.58506D-04
-              ALPHA CONVERG. TO  2.17815D-03
- 
-       ALPHA(Y,Y) =  9.7938523D+00
-       ALPHA(X,Y) =  1.9866331D-10
-       ALPHA(Z,Y) = -1.0767537D-08
- 
-  CONVERGED IN   9 ITERATIONS IN      0.11 SECONDS
-            DENSITY CONVERG. TO  7.03620D-04
-              ALPHA CONVERG. TO  4.88292D-04
- 
-       ALPHA(Z,Z) =  2.3469180D+00
-       ALPHA(X,Z) = -4.8793269D-10
-       ALPHA(Y,Z) = -1.0769376D-08
- 
-   ISOTROPIC AVERAGE ALPHA =      10.28117 A.U.
- 
- 
-  GAMMA (THIRD HARMONIC GENERATION) AT    0.00000 EV.
- 
- 
-  GAMMA(X,X,X,X) =    -266.37470
-  GAMMA(Y,Y,Y,Y) =     250.55880
-  GAMMA(Z,Z,Z,Z) =      -5.58304
-  GAMMA(X,X,Y,Y) =     168.28002
-  GAMMA(X,X,Z,Z) =      78.85592
-  GAMMA(Y,Y,X,X) =     168.26779
-  GAMMA(Y,Y,Z,Z) =      92.16561
-  GAMMA(Z,Z,X,X) =      78.84936
-  GAMMA(Z,Z,Y,Y) =      92.14769
- 
- 
-  AVERAGE GAMMA VALUE AT    0.00000 =     131.43349
- 
- 
- 
- 
-  **********************************************************************
-  CALCULATION FOR A FREQUENCY OF    0.25000 EV  =       0.00919 A.U. 
-                   WAVELENGTH OF    4959.37 NM  =    2016.38525 CM(-1)
-  **********************************************************************
- 
-  +++++ ALPHA AT       0.25000 EV.
- 
-  CONVERGED IN  11 ITERATIONS IN      0.14 SECONDS
-            DENSITY CONVERG. TO  6.72239D-04
-              ALPHA CONVERG. TO  4.99296D-04
- 
-       ALPHA(X,X) =  1.8715372D+01
-       ALPHA(Y,X) =  1.9881075D-10
-       ALPHA(Z,X) = -4.8830949D-10
- 
-  CONVERGED IN  11 ITERATIONS IN      0.14 SECONDS
-            DENSITY CONVERG. TO  9.45855D-04
-              ALPHA CONVERG. TO  2.24448D-03
- 
-       ALPHA(Y,Y) =  9.8027243D+00
-       ALPHA(X,Y) =  1.9881075D-10
-       ALPHA(Z,Y) = -1.0775299D-08
- 
-  CONVERGED IN   9 ITERATIONS IN      0.12 SECONDS
-            DENSITY CONVERG. TO  7.79359D-04
-              ALPHA CONVERG. TO  4.92324D-04
- 
-       ALPHA(Z,Z) =  2.3475754D+00
-       ALPHA(X,Z) = -4.8827469D-10
-       ALPHA(Y,Z) = -1.0776999D-08
- 
-   ISOTROPIC AVERAGE ALPHA =      10.28856 A.U.
- 
-  +++++ BETA (SECOND HARMONIC GENERATION) AT       0.25000 EV.
- 
- 
-  CONVERGED IN  15 ITERATIONS IN      0.72 SECONDS
-  MAXIMUM UAB ELEMENT =        6.10703,  MAXIMUM DIFFERENCE =        0.00071
- 
-       BETA(X,X,X) =        37.23892
-       BETA(Y,X,X) =         0.00000
-       BETA(Z,X,X) =         0.00000
- 
-  CONVERGED IN  14 ITERATIONS IN      0.66 SECONDS
-  MAXIMUM UAB ELEMENT =       11.12295,  MAXIMUM DIFFERENCE =        0.00080
- 
-       BETA(X,X,Y) =         0.00000
-       BETA(Y,X,Y) =        39.87349
-       BETA(Z,X,Y) =         0.00000
- 
-  CONVERGED IN  13 ITERATIONS IN      0.62 SECONDS
-  MAXIMUM UAB ELEMENT =        4.18466,  MAXIMUM DIFFERENCE =        0.00073
- 
-       BETA(X,X,Z) =         0.00000
-       BETA(Y,X,Z) =         0.00000
-       BETA(Z,X,Z) =         5.82077
- 
-  CONVERGED IN  17 ITERATIONS IN      0.80 SECONDS
-  MAXIMUM UAB ELEMENT =       14.46534,  MAXIMUM DIFFERENCE =        0.00070
- 
-       BETA(X,Y,Y) =        39.84208
-       BETA(Y,Y,Y) =         0.00000
-       BETA(Z,Y,Y) =         0.00000
- 
-  CONVERGED IN  31 ITERATIONS IN      1.46 SECONDS
-  MAXIMUM UAB ELEMENT =        7.99153,  MAXIMUM DIFFERENCE =        0.00088
- 
-       BETA(X,Y,Z) =         0.00000
-       BETA(Y,Y,Z) =         0.00000
-       BETA(Z,Y,Z) =         0.00000
- 
-  CONVERGED IN  11 ITERATIONS IN      0.56 SECONDS
-  MAXIMUM UAB ELEMENT =        0.72359,  MAXIMUM DIFFERENCE =        0.00062
- 
-       BETA(X,Z,Z) =         5.80957
-       BETA(Y,Z,Z) =         0.00000
-       BETA(Z,Z,Z) =         0.00000
- 
- 
-  AVERAGE BETAX(SHG) VALUE AT   0.25000 EV =    49.75139
-  AVERAGE BETAY(SHG) VALUE AT   0.25000 EV =     0.00000
-  AVERAGE BETAZ(SHG) VALUE AT   0.25000 EV =     0.00000
- 
- 
-  AVERAGE BETA (SHG) VALUE AT   0.25000 EV =    49.75139
- 
- 
- 
-  +++++ ALPHA AT       0.75000 EV.
- 
-  CONVERGED IN  12 ITERATIONS IN      0.18 SECONDS
-            DENSITY CONVERG. TO  6.32423D-04
-              ALPHA CONVERG. TO  3.90550D-04
- 
-       ALPHA(X,X) =  1.8813606D+01
-       ALPHA(Y,X) =  2.0000668D-10
-       ALPHA(Z,X) = -4.9109244D-10
- 
-  CONVERGED IN  12 ITERATIONS IN      0.16 SECONDS
-            DENSITY CONVERG. TO  9.16083D-04
-              ALPHA CONVERG. TO  1.39529D-03
- 
-       ALPHA(Y,Y) =  9.8757114D+00
-       ALPHA(X,Y) =  2.0000890D-10
-       ALPHA(Z,Y) = -1.0837074D-08
- 
-  CONVERGED IN   9 ITERATIONS IN      0.11 SECONDS
-            DENSITY CONVERG. TO  9.70704D-04
-              ALPHA CONVERG. TO  5.25219D-04
- 
-       ALPHA(Z,Z) =  2.3528539D+00
-       ALPHA(X,Z) = -4.9102877D-10
-       ALPHA(Y,Z) = -1.0838383D-08
- 
-   ISOTROPIC AVERAGE ALPHA =      10.34739 A.U.
- 
- 
-  GAMMA (THIRD HARMONIC GENERATION) AT    0.25000 EV.
- 
- 
-  GAMMA(X,X,X,X) =    -267.76847
-  GAMMA(Y,Y,Y,Y) =     257.49135
-  GAMMA(Z,Z,Z,Z) =      -5.56557
-  GAMMA(X,X,Y,Y) =     171.17037
-  GAMMA(X,X,Z,Z) =      79.45773
-  GAMMA(Y,Y,X,X) =     172.28486
-  GAMMA(Y,Y,Z,Z) =      95.81644
-  GAMMA(Z,Z,X,X) =      79.33961
-  GAMMA(Z,Z,Y,Y) =      94.47450
- 
- 
-  AVERAGE GAMMA VALUE AT    0.25000 =     135.34017
- 
- 
- 
- 
-  **********************************************************************
-  CALCULATION FOR A FREQUENCY OF    0.50000 EV  =       0.01837 A.U. 
-                   WAVELENGTH OF    2479.68 NM  =    4032.77050 CM(-1)
-  **********************************************************************
- 
-  +++++ ALPHA AT       0.50000 EV.
- 
-  CONVERGED IN  11 ITERATIONS IN      0.13 SECONDS
-            DENSITY CONVERG. TO  8.73662D-04
-              ALPHA CONVERG. TO  5.89236D-04
- 
-       ALPHA(X,X) =  1.8751929D+01
-       ALPHA(Y,X) =  1.9925084D-10
-       ALPHA(Z,X) = -4.8934555D-10
- 
-  CONVERGED IN  12 ITERATIONS IN      0.15 SECONDS
-            DENSITY CONVERG. TO  6.78563D-04
-              ALPHA CONVERG. TO  1.18625D-03
- 
-       ALPHA(Y,Y) =  9.8306287D+00
-       ALPHA(X,Y) =  1.9926460D-10
-       ALPHA(Z,Y) = -1.0797760D-08
- 
-  CONVERGED IN   9 ITERATIONS IN      0.11 SECONDS
-            DENSITY CONVERG. TO  8.67690D-04
-              ALPHA CONVERG. TO  5.04526D-04
- 
-       ALPHA(Z,Z) =  2.3495508D+00
-       ALPHA(X,Z) = -4.8930370D-10
-       ALPHA(Y,Z) = -1.0799934D-08
- 
-   ISOTROPIC AVERAGE ALPHA =      10.31070 A.U.
- 
-  +++++ BETA (SECOND HARMONIC GENERATION) AT       0.50000 EV.
- 
- 
-  CONVERGED IN  16 ITERATIONS IN      0.75 SECONDS
-  MAXIMUM UAB ELEMENT =        6.89407,  MAXIMUM DIFFERENCE =        0.00068
- 
-       BETA(X,X,X) =        37.58620
-       BETA(Y,X,X) =         0.00000
-       BETA(Z,X,X) =         0.00000
- 
-  CONVERGED IN  15 ITERATIONS IN      0.71 SECONDS
-  MAXIMUM UAB ELEMENT =       12.53908,  MAXIMUM DIFFERENCE =        0.00090
- 
-       BETA(X,X,Y) =         0.00000
-       BETA(Y,X,Y) =        40.52671
-       BETA(Z,X,Y) =         0.00000
- 
-  CONVERGED IN  14 ITERATIONS IN      0.67 SECONDS
-  MAXIMUM UAB ELEMENT =        4.52869,  MAXIMUM DIFFERENCE =        0.00054
- 
-       BETA(X,X,Z) =         0.00000
-       BETA(Y,X,Z) =         0.00000
-       BETA(Z,X,Z) =         5.88487
- 
-  CONVERGED IN  18 ITERATIONS IN      0.88 SECONDS
-  MAXIMUM UAB ELEMENT =       16.29772,  MAXIMUM DIFFERENCE =        0.00074
- 
-       BETA(X,Y,Y) =        40.38414
-       BETA(Y,Y,Y) =         0.00000
-       BETA(Z,Y,Y) =         0.00000
- 
-  CONVERGED IN  37 ITERATIONS IN      1.71 SECONDS
-  MAXIMUM UAB ELEMENT =        6.91763,  MAXIMUM DIFFERENCE =        0.00091
- 
-       BETA(X,Y,Z) =         0.00000
-       BETA(Y,Y,Z) =         0.00000
-       BETA(Z,Y,Z) =         0.00000
- 
-  CONVERGED IN  11 ITERATIONS IN      0.55 SECONDS
-  MAXIMUM UAB ELEMENT =        0.67840,  MAXIMUM DIFFERENCE =        0.00090
- 
-       BETA(X,Z,Z) =         5.85568
-       BETA(Y,Z,Z) =         0.00000
-       BETA(Z,Z,Z) =         0.00000
- 
- 
-  AVERAGE BETAX(SHG) VALUE AT   0.50000 EV =    50.36431
-  AVERAGE BETAY(SHG) VALUE AT   0.50000 EV =     0.00000
-  AVERAGE BETAZ(SHG) VALUE AT   0.50000 EV =     0.00000
- 
- 
-  AVERAGE BETA (SHG) VALUE AT   0.50000 EV =    50.36431
- 
- 
- 
-  +++++ ALPHA AT       1.50000 EV.
- 
-  CONVERGED IN  13 ITERATIONS IN      0.17 SECONDS
-            DENSITY CONVERG. TO  7.43870D-04
-              ALPHA CONVERG. TO  5.34468D-04
- 
-       ALPHA(X,X) =  1.9153587D+01
-       ALPHA(Y,X) =  2.0416113D-10
-       ALPHA(Z,X) = -5.0073494D-10
- 
-  CONVERGED IN  14 ITERATIONS IN      0.17 SECONDS
-            DENSITY CONVERG. TO  6.73578D-04
-              ALPHA CONVERG. TO  8.39619D-04
- 
-       ALPHA(Y,Y) =  1.0129345D+01
-       ALPHA(X,Y) =  2.0417801D-10
-       ALPHA(Z,Y) = -1.1054686D-08
- 
-  CONVERGED IN  10 ITERATIONS IN      0.14 SECONDS
-            DENSITY CONVERG. TO  7.59157D-04
-              ALPHA CONVERG. TO  3.32814D-04
- 
-       ALPHA(Z,Z) =  2.3712611D+00
-       ALPHA(X,Z) = -5.0064898D-10
-       ALPHA(Y,Z) = -1.1053966D-08
- 
-   ISOTROPIC AVERAGE ALPHA =      10.55140 A.U.
- 
- 
-  GAMMA (THIRD HARMONIC GENERATION) AT    0.50000 EV.
- 
- 
-  GAMMA(X,X,X,X) =    -272.31877
-  GAMMA(Y,Y,Y,Y) =     279.50799
-  GAMMA(Z,Z,Z,Z) =      -5.51310
-  GAMMA(X,X,Y,Y) =     179.98516
-  GAMMA(X,X,Z,Z) =      81.33992
-  GAMMA(Y,Y,X,X) =     184.80112
-  GAMMA(Y,Y,Z,Z) =     108.22405
-  GAMMA(Z,Z,X,X) =      80.85389
-  GAMMA(Z,Z,Y,Y) =     102.17581
- 
- 
-  AVERAGE GAMMA VALUE AT    0.50000 =     147.81122
- 
- 
- 
- 
- 
-  TOTAL CPU TIME:            18.49 SECONDS
- 
-  == MOPAC DONE ==
--- 0 ----
diff -cdN ../src.old//testdata.dat ./testdata.dat
*** ../src.old//testdata.dat
--- ./testdata.dat	Thu Jan 26 14:22:20 1995
***************
*** 0 ****
--- 1,117 ----
+      nointer  noxyz + mndo dump=8
+      t=2000 + thermo(298,298) force isotope
+      ROT=2 
+      DEMONSTRATION OF MOPAC - FORCE AND THERMODYNAMICS CALCULATION
+      FORMALDEHYDE, MNDO ENERGY = -32.8819  See Manual.
+      O    
+      C    1.216487  1                                 1  0  0 
+      H    1.106109  1  123.513310  1                  2  1  0 
+      H    1.106109  1  123.513310  1  180.000000  1   2  1  3 
+      0    0.000000  0    0.000000  0    0.000000  0   0  0  0
+    CHARGE=2 OPEN(4,3) SINGLET ROOT=6 force 
+   Methane RHF dication, 6th singlet state (totally symmetric)
+    Check that vibrational frequencies are 1343(T) 2488(A) 2554(E) 4620(T) +/-1
+    H    
+    C    1.2298156  
+    H    1.2298156  0    109.471221  
+    H    1.2298156  0    109.471221  0   -120.000000  0    2    1    3
+    H    1.2298156  0    109.471221  0    120.000000  0    2    1    3
+  
+   gnorm=0  & 
+                        PM3 
+   Methanol   Check that heat of formation is -51.8773 kcal/mol
+     C
+     O 1.4 1             1
+     H 1.0 1 109 1       1 2
+     H 1.0 1 109 1 120 1 1 2 3
+     H 1.0 1 109 1 120 1 1 2 4
+     H 1.0 1 120 1  30 1 2 1 3
+  
+    gnorm=0    AIGIN
+   Ethane, showing use of Gaussian Z-matrix input (AIGIN is necessary in this run)
+   Check that heat of formation is -19.7220
+    C  
+    C     1     r21    
+    H     2     r32       1     a321   
+    H     2     r32       1     a321      3  120   0
+    H     2     r32       1     a321      3  240   0
+    H     1     r32       2     a321      3  d6321 0
+    H     1     r32       2     a321      3 -d6321 0
+    H     1     r32       2     a321      3  180   0
+  
+       r21        1.5
+       r32        1.0
+       a321     109.0
+       d6321     60.0
+  
+    ts  +
+             am1
+    Location of transition state for HCN -> HNC
+    Check the heat of formation is 118.456 kcal/mol
+    H
+    C  1.3 1
+    N  1.3 1 60 1
+  
+    SYMMETRY  CHARGE=2 OPEN(4,3) SINGLET ROOT=6 setup=testdata.dat rot=12
+   Methane  Check that the extra keywords are being read in from start of file
+   
+    H    0.0000000  0      0.000000  0      0.000000  0    0    0    0      0.4123
+    C    1.2298156  1      0.000000  0      0.000000  0    1    0    0      0.3509
+    H    1.2298156  0    109.471000  0      0.000000  0    2    1    0      0.4123
+    H    1.2298156  0    109.471000  0   -120.000000  0    2    1    3      0.4123
+    H    1.2298156  0    109.471000  0    120.000000  0    2    1    3      0.4123
+  
+     2  1    3   4   5
+  
+    1scf  
+   Aniline  Check that atom labels are being output.
+    
+    C(Ph-NH2)    
+    C(Atom 2)    1.4 1             1
+    C(Atom 3)    1.4 1 120 1       2 1
+    C(Atom 4)    1.4 1 120 1   0 1 3 2 1
+    C(Atom 5)    1.4 1 120 1   0 1 4 3 2
+    C(Atom 6)    1.4 1 120 1   0 1 5 4 3
+    N(Ph-NH2)    1.4 1 120 1 180 1 1 2 3
+    H(on N)      1.0 1 109 1   0 1 7 1 2
+    H(on N)      1.0 1 109 1 120 1 7 1 8
+    H(Ortho)     1.0 1 120 1 180 1 2 3 4
+    H(Meta)      1.0 1 120 1 180 1 3 4 5
+    H(Para)      1.0 1 120 1 180 1 4 5 6
+    H(Meta')     1.0 1 120 1 180 1 5 6 1
+    H(Ortho')    1.0 1 120 1 180 1 6 1 2
+  
+    pm3 denout  symmetry
+    Formaldehyde.  Density matrix written to disk.
+  
+  o
+  c 1.2 1             1
+  h 1.1 1 120 1       2 1
+  h 1.1 0 120 0 180 0 2 1 3
+  
+  3 1 4
+  3 2 4
+  
+   am1 symm
+  water.  This calculation ensures that the information on formaldehyde is lost.
+  
+  o
+  h 1.1 1           1
+  h 1.1 0  104 1    1 2 
+  
+  2 1 3
+  
+  oldgeo mndo 
+   Water  The geometry used is that for the previous run (water)
+  
+    pm3 oldens symmetry gnorm=0  pl  1scf
+    Formaldehyde  Check the PLS to ensure that the density matrix was read
+  in correctly
+    O    0.0000000  0      0.000000  0      
+    C    1.2020463  1      0.000000  0      
+    H    1.0912524  1    121.774563  1      
+    H    1.0912524  0    121.774563  0    180.000000  0    2    1    3      
+  
+     3  1    4
+     3  2    4
+  
diff -cdN ../src.old//tests.csh ./tests.csh
*** ../src.old//tests.csh
--- ./tests.csh	Mon Jan 30 10:52:32 1995
***************
*** 0 ****
--- 1,8 ----
+ #!/usr/bin/tcsh
+ foreach x (*.dat)
+     rm -rf temp
+     mkdir temp
+     cp $x temp/FOR005
+     (cd temp ; ../mopac )
+     cp temp/FOR006 $x:r.out
+ end
diff -cdN ../src.old//timer.f ./timer.f
*** ../src.old//timer.f	Tue Apr 20 03:38:20 1993
--- ./timer.f	Tue Jan 17 13:06:31 1995
***************
*** 14,20 ****
  C
  C   THE ACT OF CALLING THIS ROUTINE COSTS 0.026 SECONDS
  C
!       T0=T0+0.026
        T2=SECOND()
        IF(INDEX(A,'BEF').EQ.0.AND.A.NE.' ')THEN
           WRITE(6,'(2X,A,A,F7.2,A,F8.2)')
--- 14,20 ----
  C
  C   THE ACT OF CALLING THIS ROUTINE COSTS 0.026 SECONDS
  C
!       T0=T0+0.026D0
        T2=SECOND()
        IF(INDEX(A,'BEF').EQ.0.AND.A.NE.' ')THEN
           WRITE(6,'(2X,A,A,F7.2,A,F8.2)')
***************
*** 22,27 ****
        ELSE
           WRITE(6,'(40X,''TIME LOST:'',F7.2)')T2-T1
        ENDIF
!       T1=T2+0.026
        RETURN
        END
--- 22,27 ----
        ELSE
           WRITE(6,'(40X,''TIME LOST:'',F7.2)')T2-T1
        ENDIF
!       T1=T2+0.026D0
        RETURN
        END
diff -cdN ../src.old//timout.f ./timout.f
*** ../src.old//timout.f	Tue Apr 20 03:38:20 1993
--- ./timout.f	Tue Jan 17 13:07:04 1995
***************
*** 63,71 ****
           DO 20 I = 1,NUMAT
              IF = NFIRST(I)
              IL = NLAST(I)
!             SUM = 0.0
!             POP(I) = 0.0
!             CHRG(I) = 0.0
              DO 10 J = IF,IL
  C
  C    Diagonal element of mulliken matrix
--- 63,71 ----
           DO 20 I = 1,NUMAT
              IF = NFIRST(I)
              IL = NLAST(I)
!             SUM = 0.0D0
!             POP(I) = 0.0D0
!             CHRG(I) = 0.0D0
              DO 10 J = IF,IL
  C
  C    Diagonal element of mulliken matrix
***************
*** 121,127 ****
  C
  C  Write out the Dipole Moment
  C
!       IF(KCHRGE.NE.0) DIP = 0.0
        WRITE(16, '(I4,F10.3,''  Charge,Dipole Moment'')', ERR=30)
       1KCHRGE, DIP
        RETURN
--- 121,127 ----
  C
  C  Write out the Dipole Moment
  C
!       IF(KCHRGE.NE.0) DIP = 0.0D0
        WRITE(16, '(I4,F10.3,''  Charge,Dipole Moment'')', ERR=30)
       1KCHRGE, DIP
        RETURN
diff -cdN ../src.old//update.f ./update.f
*** ../src.old//update.f	Tue Apr 20 03:38:20 1993
--- ./update.f	Tue Jan 17 15:08:31 1995
***************
*** 85,91 ****
    240 GUESS3(IELMNT,KFN)=PARAM
        RETURN
    250 NATORB(IELMNT)=PARAM
!       I=INT(PARAM+0.5)
        IF(I.NE.9.AND.I.NE.4.AND.I.NE.1)THEN
           WRITE(6,'(///10X,'' UNACCEPTABLE VALUE FOR NO. OF ORBITALS'',
       1'' ON ATOM'')')
--- 85,91 ----
    240 GUESS3(IELMNT,KFN)=PARAM
        RETURN
    250 NATORB(IELMNT)=PARAM
!       I=INT(PARAM+0.5D0)
        IF(I.NE.9.AND.I.NE.4.AND.I.NE.1)THEN
           WRITE(6,'(///10X,'' UNACCEPTABLE VALUE FOR NO. OF ORBITALS'',
       1'' ON ATOM'')')
diff -cdN ../src.old//upsurf.f ./upsurf.f
*** ../src.old//upsurf.f	Tue Apr 20 03:38:20 1993
--- ./upsurf.f	Tue Jan 17 15:09:06 1995
***************
*** 14,36 ****
        DIMENSION XX(3),XA(3),COBAS(3,NPPA,NUMATM)
        DIMENSION XSP(4,MAXNSS),NSET(MAXNSS,MAXNSS)
  C     Added to satisfy the LAPACK call to DGETRI. SJC 1/10/93
!       DIMENSION IPIV(MAXNSS)   
        LOGICAL DIN(NPPA)
        COMMON / SOLVI / NSPA,NSS,IATSP(MAXNSS),NAR(MAXNSS),NN(2,NUMATM)
        COMMON / SOLVR / DIPL,FEPSI,RDS,DISEX2,TM(3,3,NUMATM),
       &                AAMAT(MAXNSS,MAXNSS),ADMAT(MAXNSS,MAXNSS), 
       &                CCMAT(MAXORB,MAXORB), BBMAT(MAXORB,MAXNSS),
       &                COSURF(3,MAXNSS), SRAD(NUMATM)
!       COMMON /DIRVEC/ DIRVEC(3,NPPA), DIRTM(3,NPPA)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
        COMMON /CHANEL/ IFILES(30)
        EQUIVALENCE (IW,IFILES(6))
        EQUIVALENCE (ADMAT,COBAS),(BBMAT,XSP)
!       FDIAG=1.05D0*SQRT(NPPA+0.)
        AREA=0.0D0
!       DS=SQRT(4./NSPA)
        C2DS=COS(2.0D0*DS)
        NSS1=0
        DO 1000 I=1,NUMAT
--- 14,37 ----
        DIMENSION XX(3),XA(3),COBAS(3,NPPA,NUMATM)
        DIMENSION XSP(4,MAXNSS),NSET(MAXNSS,MAXNSS)
  C     Added to satisfy the LAPACK call to DGETRI. SJC 1/10/93
!       DIMENSION IPIV(MAXNSS)
!       DIMENSION DIRTM(3,NPPA)
        LOGICAL DIN(NPPA)
        COMMON / SOLVI / NSPA,NSS,IATSP(MAXNSS),NAR(MAXNSS),NN(2,NUMATM)
        COMMON / SOLVR / DIPL,FEPSI,RDS,DISEX2,TM(3,3,NUMATM),
       &                AAMAT(MAXNSS,MAXNSS),ADMAT(MAXNSS,MAXNSS), 
       &                CCMAT(MAXORB,MAXORB), BBMAT(MAXORB,MAXNSS),
       &                COSURF(3,MAXNSS), SRAD(NUMATM)
!       COMMON /DIRVEC/ DIRVEC(3,NPPA), NNX(3,NUMATM)
        COMMON /MOLKST/ NUMAT,NAT(NUMATM),NFIRST(NUMATM),NMIDLE(NUMATM),
       1                NLAST(NUMATM), NORBS, NELECS,NALPHA,NBETA,
       2                NCLOSE,NOPEN,NDUMY,FRACT
        COMMON /CHANEL/ IFILES(30)
        EQUIVALENCE (IW,IFILES(6))
        EQUIVALENCE (ADMAT,COBAS),(BBMAT,XSP)
!       FDIAG=1.05D0*SQRT(NPPA+0.D0)
        AREA=0.0D0
!       DS=SQRT(4.D0/NSPA)
        C2DS=COS(2.0D0*DS)
        NSS1=0
        DO 1000 I=1,NUMAT
***************
*** 121,127 ****
  2020      CONTINUE        
            DO 2040 K = 1, NUMAT
              IF (K . EQ. I) GO TO 2040
!             DIST=0.
              DO 2030 IX=1,3
                DIST = DIST + (XX(IX) - COORD(IX,K))**2
  2030        CONTINUE
--- 122,128 ----
  2020      CONTINUE        
            DO 2040 K = 1, NUMAT
              IF (K . EQ. I) GO TO 2040
!             DIST=0.D0
              DO 2030 IX=1,3
                DIST = DIST + (XX(IX) - COORD(IX,K))**2
  2030        CONTINUE
***************
*** 150,156 ****
  345       XSP(IX,IPM)=XSP(IX,IPM)+DIRTM(IX,J)
  350     CONTINUE
          DO 400 IPS=NSS0,NSS1
!           DIST=0.
            IF (NAR(IPS) .EQ. 0) THEN
              GO TO 400
            END IF
--- 151,157 ----
  345       XSP(IX,IPM)=XSP(IX,IPM)+DIRTM(IX,J)
  350     CONTINUE
          DO 400 IPS=NSS0,NSS1
!           DIST=0.D0
            IF (NAR(IPS) .EQ. 0) THEN
              GO TO 400
            END IF
***************
*** 176,188 ****
          AA=0.D0
          DO 140 K=1,NARI
            J1=NSET(IPS,K)
!           AA=AA+.5*FDIAG
            X1=DIRVEC(1,J1)
            X2=DIRVEC(2,J1)
            X3=DIRVEC(3,J1)
            DO 140 L=1,K-1
              J2=NSET(IPS,L)
!             AA=AA+1./SQRT((X1-DIRVEC(1,J2))**2+
       &             (X2-DIRVEC(2,J2))**2+(X3-DIRVEC(3,J2))**2)
  140     CONTINUE
          AA=2*AA/RI 
--- 177,189 ----
          AA=0.D0
          DO 140 K=1,NARI
            J1=NSET(IPS,K)
!           AA=AA+.5D0*FDIAG
            X1=DIRVEC(1,J1)
            X2=DIRVEC(2,J1)
            X3=DIRVEC(3,J1)
            DO 140 L=1,K-1
              J2=NSET(IPS,L)
!             AA=AA+1.D0/SQRT((X1-DIRVEC(1,J2))**2+
       &             (X2-DIRVEC(2,J2))**2+(X3-DIRVEC(3,J2))**2)
  140     CONTINUE
          AA=2*AA/RI 
***************
*** 195,201 ****
  141     XA(IX)=XSP(IX,IPS)
          DO 169 JPS=1,IPS-1
            NARJ=NAR(JPS)
!           DIST=0.
            DO 143 IX=1,3
  143       DIST=DIST+(XSP(IX,JPS)-XA(IX))**2
            IF (DIST .LT. DISEX2) THEN
--- 196,202 ----
  141     XA(IX)=XSP(IX,IPS)
          DO 169 JPS=1,IPS-1
            NARJ=NAR(JPS)
!           DIST=0.D0
            DO 143 IX=1,3
  143       DIST=DIST+(XSP(IX,JPS)-XA(IX))**2
            IF (DIST .LT. DISEX2) THEN
diff -cdN ../src.old//writmo.f ./writmo.f
*** ../src.old//writmo.f	Tue Apr 20 03:38:20 1993
--- ./writmo.f	Thu Jan 26 15:22:15 1995
***************
*** 3,11 ****
        INCLUDE 'SIZES'
        CHARACTER KEYWRD*241
        DOUBLE PRECISION MECI
        COMMON /KEYWRD/ KEYWRD
        COMMON /ELEMTS/ ELEMNT(107)
!       COMMON /GEOM  / GEO(3,NUMATM)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1                NA(NUMATM),NB(NUMATM),NC(NUMATM)
        COMMON /HMATRX/ H(MPACK)
--- 3,12 ----
        INCLUDE 'SIZES'
        CHARACTER KEYWRD*241
        DOUBLE PRECISION MECI
+       COMPLEX SEC, VEC
        COMMON /KEYWRD/ KEYWRD
        COMMON /ELEMTS/ ELEMNT(107)
!       COMMON /GEOM  / GEO(3,NUMATM), XCOORD(3,NUMATM)
        COMMON /GEOKST/ NATOMS,LABELS(NUMATM),
       1                NA(NUMATM),NB(NUMATM),NC(NUMATM)
        COMMON /HMATRX/ H(MPACK)
***************
*** 24,30 ****
        COMMON /NUMSCF/ NSCF
        COMMON /WMATRX/ WJ(N2ELEC), WK(N2ELEC)
        COMMON /ATHEAT/ ATHEAT
!       PARAMETER (MXDIM=MAXORB+NUMATM)
        COMMON /SYMRES/ TRANS,RTR,SIG,NAME,NAMO(MXDIM),INDX(MXDIM),ISTA(2)
        COMMON /CORE  / CORE(107)
        COMMON /LAST  / LAST
--- 25,31 ----
        COMMON /NUMSCF/ NSCF
        COMMON /WMATRX/ WJ(N2ELEC), WK(N2ELEC)
        COMMON /ATHEAT/ ATHEAT
!       PARAMETER (MXDIM=MAXPAR+NUMATM)
        COMMON /SYMRES/ TRANS,RTR,SIG,NAME,NAMO(MXDIM),INDX(MXDIM),ISTA(2)
        COMMON /CORE  / CORE(107)
        COMMON /LAST  / LAST
***************
*** 54,63 ****
--- 55,66 ----
        DIMENSION Q(MAXORB), Q2(MAXORB), COORD(3,NUMATM)
       1,IEL1(107), NELEMT(107), IEL2(107)
        DIMENSION W(N2ELEC), DUMY(3)
+       DIMENSION GCOORD(1)
        LOGICAL UHF, CI, SINGLT, TRIPLT, EXCITD, PRTGRA, STILL
        CHARACTER TYPE(3)*11, IDATE*24, CALCN(2)*5, GTYPE*13, GRTYPE*14,
       1          FLEPO(16)*58, ITER(2)*58, NUMBRS(11)*1, GETNAM*80
        CHARACTER*2 ELEMNT, IELEMT(20), CALTYP*7, NAMFIL*80, NAME*4
+       CHARACTER NAMO*4, ISTA*4
        SAVE ICALCN, NUMBRS, CALCN, TYPE, FLEPO, ITER
        EQUIVALENCE (W,WJ)
        DOUBLE PRECISION WJ, WK
***************
*** 155,160 ****
--- 158,164 ----
  C COSMO change
        IF (ISEPS) THEN
          CALL DIELEN(EDIE)
+         IW = 6
          WRITE(IW,'(    10X,''DIELECTRIC ENERGY       ='',F17.5,'' EV''
       1  )')EDIE
        ENDIF
***************
*** 202,208 ****
       1        ,'' DEGREES'')')XREACT*DEGREE
           ENDIF
           WRITE(6,'(    10X,''REACTION GRADIENT       ='',F17.5,A14
!      1    )')GCOORD,GRTYPE
        ENDIF
        IF(NALPHA.GT.0)THEN
           EIONIS=-MAX(EIGS(NALPHA), EIGB(NBETA))
--- 206,212 ----
       1        ,'' DEGREES'')')XREACT*DEGREE
           ENDIF
           WRITE(6,'(    10X,''REACTION GRADIENT       ='',F17.5,A14
!      1    )')GCOORD(1),GRTYPE
        ENDIF
        IF(NALPHA.GT.0)THEN
           EIONIS=-MAX(EIGS(NALPHA), EIGB(NBETA))
***************
*** 237,243 ****
       1WRITE(6,'(    10X,''MOLECULAR WEIGHT        ='',F11.3)')SUMW
        IF(LATOM.EQ.0) WRITE(6,'(/)')
        WRITE(6,'(10X,''SCF CALCULATIONS  =   '',I14 )') NSCF
!       TIM=SECOND(1)-TIME0
        I=TIM*0.000001D0
        TIM=TIM-I*1000000
        CALL TIMOUT(6,TIM)
--- 241,247 ----
       1WRITE(6,'(    10X,''MOLECULAR WEIGHT        ='',F11.3)')SUMW
        IF(LATOM.EQ.0) WRITE(6,'(/)')
        WRITE(6,'(10X,''SCF CALCULATIONS  =   '',I14 )') NSCF
!       TIM=SECOND()-TIME0
        I=TIM*0.000001D0
        TIM=TIM-I*1000000
        CALL TIMOUT(6,TIM)
***************
*** 591,597 ****
       1        ,'' DEGREES'')')XREACT*DEGREE
           ENDIF
           WRITE(IWRITE,'(    10X,''REACTION GRADIENT       ='',F17.6,A14
!      1    )')GCOORD,GRTYPE
        ENDIF
        WRITE(IWRITE,'(  10X,''DIPOLE                  =''
       1,F16.5, '' DEBYE'')')DIP
--- 595,601 ----
       1        ,'' DEGREES'')')XREACT*DEGREE
           ENDIF
           WRITE(IWRITE,'(    10X,''REACTION GRADIENT       ='',F17.6,A14
!      1    )')GCOORD(1),GRTYPE
        ENDIF
        WRITE(IWRITE,'(  10X,''DIPOLE                  =''
       1,F16.5, '' DEBYE'')')DIP
***************
*** 615,621 ****
        WRITE(IWRITE,'(  10X,''MOLECULAR WEIGHT        ='',F14.3)')SUMW
        WRITE(IWRITE,'(  10X,''SCF CALCULATIONS        =''
       1,I10)') NSCF
!       TIM=SECOND(1)-TIME0
        CALL TIMOUT(IWRITE,TIM)
        WRITE(IWRITE,'(//10X,''FINAL GEOMETRY OBTAINED'',36X,''CHARGE'')')
        CALL GEOUT(IWRITE)
--- 619,625 ----
        WRITE(IWRITE,'(  10X,''MOLECULAR WEIGHT        ='',F14.3)')SUMW
        WRITE(IWRITE,'(  10X,''SCF CALCULATIONS        =''
       1,I10)') NSCF
!       TIM=SECOND()-TIME0
        CALL TIMOUT(IWRITE,TIM)
        WRITE(IWRITE,'(//10X,''FINAL GEOMETRY OBTAINED'',36X,''CHARGE'')')
        CALL GEOUT(IWRITE)
Modified: Fri Mar 10 17:00:00 1995 GMT
Page accessed 911 times since Sat Apr 17 21:55:27 1999 GMT