For a proper use of the programs, several Gaussian links has to be modified and then recompiled. Link l103 is mandatory. A few lines of code must be included to print out the gradient in internal coordinates with full precision. Therefore, in subroutine GrdOpt after line


515 Continue

the following 5 lines should be added


rewind 99

write(99) Nvar

write(99) (aprint(2,iii),iii=1,Nvar)

close (unit=99)


After the modification, new l103.exe will produce an extra output file named fort.99. Another modification is needed to treat big systems depending on the optimization procedure chosen. BFGS-DIIS method has proved to perform quite well so an approximate hessian is needed and afterwards updated at each step. To get an approximate hessian one can use Gaussian again but it won't print it out if the number of geometrical parameters is greater than 20. To avoid this situation one can modify Getchr subroutine on l103.F link. Line corresponding to


If( then

should be

If( IPSave(0).le.1) then


Link l301 has to be modified to overcome some Gaussian errors on the treatment of the dummy atoms and the MASSAGE option. Thus, the following lines in Massge Subroutine


Do 210 J = 1, NZ

If(IAnZ(J).ge.0) I = I + 1

If(I.eq.ICntr) IAnZ(J) = IAn(ICntr)

210 Continue

must be substituted by

Do 210 J = 1, NZ

If(IAnZ(J).ge.0) I = I + 1

If(I.eq.ICntr) then

IAnZ(J) = IAn(ICntr)

goto 213


210 Continue

213 continue



Once the links have been properly modified they have to be recompiled. G94 and G98 have a useful tool to do it. We'll describe a procedure to carry out this operation from C shell

First of all, it's a good idea to keep the original executable and source code files for the links to be modified. For instance renaming them to l103.exe.old and l103.F.old.


mv l103.exe l103.exe.old

cp l103.F l103.F.old

mv l301.exe l310.exe.old

cp l301.F l301.F.old


Then perform the corresponding modifications over l103.F and l301.F files. Finally, as described in the Gaussian 98 manual, page 232, just type the following commands


cd g98root/g98

source bsd/g98.login

mg l103.exe

mg l301.exe


Note that the recompilation procedure has to be made from the g98root/g98 directory. In normal conditions new l103.exe and l301.exe files should have been created. A good option is to move this files to the CPDIR or to the user's bin directory and restore the original l103.exe and l301.exe files. For instance


mv l103.exe ~/bin

mv l301.exe ~/bin

mv l103.exe.old l103.exe

mv l301.exe.old l310.exe




Last Update: 14/12/1999 Back