From: Karol L. <kar...@kn...> - 2007-03-23 12:52:17
|
On Tuesday 20 of March 2007 22:53, Karol Langner wrote: > On Tuesday 20 of March 2007 22:29, Adam Tenderholt wrote: > > > OK, I see that now, but don't know how to fix it. I did just submit > > > a little > > > fix for the code that parses mocoeff, although I'm not sure I relly > > > fixed > > > anything (looks nicer, though). > > > > Nor do I. I'm a bit busy right now, but I'll keep it in the back of > > my mind and hopefully think of a fix soon. > > > > Adam > > I have an idea. There is a "SYMMETRY, ELECTRONS" section in the output, in > two places - the second one is after building the fragments or > something(?). Anyways, it looks like this the second time around for Nuno's > "Au2.out": > > ===================================== > S Y M M E T R Y , E L E C T R O N S > ===================================== > > Symmetry: D(LIN) > > Irreducible Representations, including subspecies > ------------------------------------------------- > SIGMA.g > SIGMA.u > PI.g:x PI.g:y > PI.u:x PI.u:y > DELTA.g:x2-y2 DELTA.g:xy > DELTA.u:x2-y2 DELTA.u:xy > PHI.g:x3-3xy2 PHI.g:3x2y-y3 > PHI.u:x3-3xy2 PHI.u:3x2y-y3 > > ...which should work nicely for counting the number of irreducible > representations, I think. > > I don't think I understand where the mocoeffs are read in for ADF, > though..... the attribute, together with mosyms, is parsed when "Orbital > Energies, all Irreps" is found on some line - and this, again, happens > twice. As it turns out, the second one is not parsed (there's an 'and not > hasattr(self, "mosyms")' addition to the parsing condition. Is this > correct? I wonder, because these energies are different, and the MO > coefficients are printed only once, after the second MO energies output. > This is all because I'm not oriented much with ADF. > > Karol After looking through the parser code a bit, I understand now that the first print-out is from the reate job and therefore is'nt parsed. I commited a revision that parses the irrep subspecies from the output and stores them in a list called 'irreps' (each element one irrep). I also added a tweak for normalisedegenerates() and the part that parses mocoeffs and mosyms (only restricted variant now), so that any set of subspecies is used for repeating the parsed energies. A dict is created before that to add to mosyms, which is passed to normalisedegenerates() as a optional argument. All the tests still pass, but if I broke something don't hesitate to revert this, since I'm not into ADF too much yet. However, after these changes the jobs we have trouble with still don't get parsed. Notice that the number of SFOs in each irrep listed in the table with MO coefficients is not the same as that given in the section describing the SFOs (for example, 42 versus 16 for SIGMA.g in 'Au2.out'). I think this is the heart of the problem, at least in this case, and I don't understand it. Cheers, Karol -- written by Karol Langner Fri Mar 23 13:41:36 CET 2007 |