|Posted on Wednesday, May 29, 2002 - 5:16 am: |
The MO Viewer doesn't seem to like S-containing compounds when generating surfaces. It can display orbitals OK, though. Example: try thiophen in Mopac (AM1 or PM3), compute Molecular Orbitals, then try viewing any surface. You should get an "Invalid MO file" error.
ps For larger systems (50+ atoms) you should also increase the alarm time in daemon.cgi from 60 to 180 to prevent time-outs during the parsing of the MO data
|Posted on Wednesday, May 29, 2002 - 8:17 pm: |
The problem is actually an obscure Mopac bug, but one that is documented in several places. In the GRAPH file produced by Mopac (which contains all the orbital and basis set information in binart form), Mopac sometimes spuriously places d-orbitals on atoms where they do not belong. One well documented case is that of Cl; yet another, as you discovered, is S.
Thus, the GRAPH file gives a non-zero (actually, 1.0) value for the d-type orbital exponent on S, even though those orbitals were not used in the calculation. Thus MO viewer gets confused because the number of MOs does not match the number of AOs. I tried to filter out these spurious d functions in the Perl parsing code, but I had a bug in my filter :-) (FYI, I cannot simply ignore the d-type orbitals, because they are used in Moapc 2000.)
To resolve the problem, open up parse_mopac.cgi in a text editor. Go to line ~711 (you will see a comment related to this very bug). In the 'if' statment directly after the comment,
abs($zd[$i] - 1.0 / 0.59...)
abs($zd[$i] - 1.0)
Of course, this bug will be corrected in WebMO 3.3.