|
From: Adam T. <ate...@gm...> - 2012-04-01 17:53:01
|
Hi Pavlo,
Can you supply cclib with a public domain file that has this problem? We should have similar file in our regression tests.
Thanks,
Adam
On Apr 1, 2012, at 9:02 AM, Pavel Solntsev wrote:
> Dear Adam.
>
> I found another bug in cclib.
> If you have ECP job cclib doesn't extract correct number for HOMO orbitals.
> Firefly removes all core electrons and corresponding orbitals. All
> another orbitals are renumbered. After that number of the HOMO orbital
> will be lower by number of the core orbitals. I solved program by
> commenting couple lines in the gamessparser.py file. Now cclib works
> correctly with FF output files with and without ECP. I didn't check
> cclib with GAMESS US, but it looks like it should not be any problem.
>
> # line 857
> if line[1:28] == "NUMBER OF OCCUPIED ORBITALS" and not
> hasattr(self,'homos'):
> homos = [int(line.split()[-1])-1]
> line = inputfile.next()
> homos.append(int(line.split()[-1])-1)
> self.homos = numpy.array(homos, "i")
>
>
> All the best.
>
> Pavlo.
>
>
>
> On 03/28/2012 11:19 AM, Adam Tenderholt wrote:
>> Oops, one minor mistake in my email. You need to keep the following
>> line (since it does all the parsing magic):
>>
>> 150 data = parser.parse()
>>
>> Adam
>>
>>
>> On Wed, Mar 28, 2012 at 9:18 AM, Adam Tenderholt <ate...@gm...> wrote:
>>> Hi Pavel,
>>>
>>> Your error now looks like a problem with QMForge. For the windows and
>>> Mac version, I wanted the cclib info/warning/errors to be displayed in
>>> a nice window after parsing the file. This, however, appears to be
>>> broken due to Qt 4.8 (I think I wrote QMForge with Qt 4.4 or 4.5 in
>>> mind...it's been too long).
>>>
>>> The easiest fix that will get you up and running involves changing the
>>> source code of QMForge a bit. Edit qmforge.py, go to the open function
>>> (near line 126), and comment out (or remove) the following lines:
>>>
>>> 129 viewer = LogViewer(self)
>>>
>>> and
>>>
>>> 149 parser.logger.addHandler(viewer)
>>> 150 data = parser.parse()
>>> 151 warnings = viewer.ui.textEdit.toPlainText()
>>> 152 if len(warnings) > 0:
>>> 153 viewer.show()
>>>
>>> Let me know if this works for you. The info/warnings/errors from cclib
>>> should be printed in the console.
>>>
>>> Take care,
>>>
>>> Adam
>>>
>>>
>>> On Wed, Mar 28, 2012 at 7:34 AM, Pavel Solntsev
>>> <pav...@gm...> wrote:
>>>> Hi Adam.
>>>>
>>>> I checked another output file from Firefly with last version of the
>>>> cclib and also found some problems .
>>>> In terminal i can see:
>>>> $ qmforge
>>>> [GAMESS
>>>> /home/pavel/Documents/people/Lysenko/IC/ag2trz2/sp/ag2trz2_ci_sp_b3lyp.out
>>>> WARNING] Number of occupied orbitals not consistent. This is normal for
>>>> ECP and FMO jobs.
>>>> Traceback (most recent call last):
>>>> File "/usr/local/lib/python2.7/dist-packages/qmforge/qmforge.py", line
>>>> 250, in fileOpen
>>>> File "/usr/local/lib/python2.7/dist-packages/qmforge/qmforge.py", line
>>>> 150, in open
>>>> File
>>>> "/usr/local/lib/python2.7/dist-packages/cclib/parser/logfileparser.py",
>>>> line 221, in parse
>>>> self.extract(inputfile, line)
>>>> File
>>>> "/usr/local/lib/python2.7/dist-packages/cclib/parser/gamessparser.py",
>>>> line 877, in extract
>>>> self.logger.warning("Number of occupied orbitals not consistent.
>>>> This is normal for ECP and FMO jobs.")
>>>> File "/usr/lib/python2.7/logging/__init__.py", line 1144, in warning
>>>> self._log(WARNING, msg, args, **kwargs)
>>>> File "/usr/lib/python2.7/logging/__init__.py", line 1250, in _log
>>>> self.handle(record)
>>>> File "/usr/lib/python2.7/logging/__init__.py", line 1260, in handle
>>>> self.callHandlers(record)
>>>> File "/usr/lib/python2.7/logging/__init__.py", line 1300, in callHandlers
>>>> hdlr.handle(record)
>>>> TypeError: QWidget.handle(): too many arguments
>>>> $
>>>>
>>>> My input file is normal single point run with ECP.
>>>> $CONTRL SCFTYP=RHF RUNTYP=energy
>>>> DFTTYP=B3LYP
>>>> MAXIT=100 inttyp=hondo icut=10 itol=30
>>>> ICHARG=2 MULT=1
>>>> ecp=read exetyp=run $END
>>>> $SYSTEM TIMLIM=9999999 mwords=40 $END
>>>> $BASIS extfil=.t. $END
>>>> $SCF DIRSCF=.TRUE. fdiff=.t. $END
>>>> $smp call64=.t. $end
>>>> $DATA
>>>> Ci
>>>>
>>>> coordinates
>>>>
>>>> $ecp
>>>> ......
>>>> $end
>>>>
>>>> Unfortunately i can't provide this file in the public domain, but i can
>>>> send it to you.
>>>>
>>>> Thank you very much for you help.
>>>>
>>>> PS.
>>>>
>>>>
>>>>
>>>>
>>>> On 03/25/2012 01:09 PM, Adam Tenderholt wrote:
>>>>> Hi Pavel,
>>>>>
>>>>> I have fixed this bug in the svn trunk version of cclib. Please let me know if you'd prefer me to send you the updated source code.
>>>>>
>>>>> Take care,
>>>>>
>>>>> Adam
>>>>>
>>>>>
>>>>> On Mar 22, 2012, at 9:04 AM, Pavel Solntsev wrote:
>>>>>
>>>>>> Yes. You can place this log file in the public domain
>>>>>>
>>>>>> PS.
>>>>>>
>>>>>>
>>>>>>
>>>>>> On 03/22/2012 05:44 AM, Noel O'Boyle wrote:
>>>>>>> Hello Pavel,
>>>>>>>
>>>>>>> We have a policy of only fixing bugs for public domain log files. Are
>>>>>>> you happy to place this log file in the public domain?
>>>>>>>
>>>>>>> - Noel
>>>>>>>
>>>>>>> On 22 March 2012 05:12, Pavel Solntsev <pav...@gm...> wrote:
>>>>>>>> Hi i have a file from Firefly ( pcgamess)i can't parse with cclib. I use
>>>>>>>> version form svn and QMforge program. In console i got
>>>>>>>> [GAMESS <path to my file>/triazole_tddft_c1_b3lyp_631Gdp_sp.out WARNING]
>>>>>>>> MO section found but could not be parsed!
>>>>>>>> Traceback (most recent call last):
>>>>>>>> File "/usr/local/lib/python2.7/dist-packages/qmforge/qmforge.py", line
>>>>>>>> 250, in fileOpen
>>>>>>>> File "/usr/local/lib/python2.7/dist-packages/qmforge/qmforge.py", line
>>>>>>>> 150, in open
>>>>>>>> File
>>>>>>>> "/usr/local/lib/python2.7/dist-packages/cclib/parser/logfileparser.py",
>>>>>>>> line 221, in parse
>>>>>>>> File
>>>>>>>> "/usr/local/lib/python2.7/dist-packages/cclib/parser/gamessparser.py",
>>>>>>>> line 720, in extract
>>>>>>>> self.logger.warning('MO section found but could not be parsed!')
>>>>>>>> File "/usr/lib/python2.7/logging/__init__.py", line 1144, in warning
>>>>>>>> self._log(WARNING, msg, args, **kwargs)
>>>>>>>> File "/usr/lib/python2.7/logging/__init__.py", line 1250, in _log
>>>>>>>> self.handle(record)
>>>>>>>> File "/usr/lib/python2.7/logging/__init__.py", line 1260, in handle
>>>>>>>> self.callHandlers(record)
>>>>>>>> File "/usr/lib/python2.7/logging/__init__.py", line 1300, in callHandlers
>>>>>>>> hdlr.handle(record)
>>>>>>>> TypeError: QWidget.handle(): too many arguments
>>>>>>>>
>>>>>>>> If i run this file with gamess us it goes withput problems. The problem
>>>>>>>> file for Firefly is attached.
>>>>>>>>
>>>>>>>> Thank you.
>>>>>>>>
>>>>>>>> Pavlo.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Pavlo V. Solntsev
>>>>>>>> pavlo.solntsev at gmail.com
>>>>>>>>
>>>>>>>>
>>>>>>>> ------------------------------------------------------------------------------
>>>>>>>> This SF email is sponsosred by:
>>>>>>>> Try Windows Azure free for 90 days Click Here
>>>>>>>> http://p.sf.net/sfu/sfd2d-msazure
>>>>>>>> _______________________________________________
>>>>>>>> cclib-devel mailing list
>>>>>>>> ccl...@li...
>>>>>>>> https://lists.sourceforge.net/lists/listinfo/cclib-devel
>>>>>>>>
>>>>>> --
>>>>>> Pavlo V. Solntsev
>>>>>> pavlo.solntsev at gmail.com
>>>>>>
>>>>>>
>>>>>> ------------------------------------------------------------------------------
>>>>>> This SF email is sponsosred by:
>>>>>> Try Windows Azure free for 90 days Click Here
>>>>>> http://p.sf.net/sfu/sfd2d-msazure
>>>>>> _______________________________________________
>>>>>> cclib-devel mailing list
>>>>>> ccl...@li...
>>>>>> https://lists.sourceforge.net/lists/listinfo/cclib-devel
>>>>
>>>> --
>>>> Pavlo V. Solntsev
>>>> pavlo.solntsev at gmail.com
>>>>
>
>
> --
> Pavlo V. Solntsev
> pavlo.solntsev at gmail.com
>
|