WebMO - Computational chemistry on the WWW
Recent news

WebMO 17.0 is now available for free download!

WebMO 17.0 Pro and Enterprise have a variety of additional features and is available for purchase.

The WebMO app is now available for iOS and Android.

December 12, 2019

Gamess uv-vis parse errors Log Out | Topics | Search
Moderators | Edit Profile

WebMO Support Forum » Bug Reports » WebMO Version 15.X » Gamess uv-vis parse errors « Previous Next »

Author Message
Anonymous
 
Posted on Monday, March 21, 2016 - 11:17 am:   

WebMO does not seem to be parsing gamess uv-vis calculations properly. I can see the errors just by comparing ethylene uv-vis done by gaussian and gamess on the demo server. With gamess, the oscillator strengths and molecular orbitals are not being parsed correctly. It seems a few minor corrections to parse_gamess.cgi are needed, the patch file below seems to work for me.
Again, it looks just like typo's in sub_parse_gamess_excited_states. The other spot, in sub_parse_gamess_orbitals it seems better to scan the output.log file from the beginning rather than the end when looking for the keyword "EIGENVECTORS", because this keyword appears twice in the uv-vis calculation, and the one closer to the end of file is not the one that is needed.

--- parse_gamess.cgi 2016-03-21 10:25:25.010588452 -0400
+++ parse_gamess.cgi-new 2016-03-21 10:28:36.766128913 -0400
@@ -826,11 +826,11 @@
push(@wavelengths, $energy);

#try and locate the transition diple strength
- my $i2 = search_forward("TRANSITION FROM THE GROUND STATE TO EXCITED STATE\s+$state", $i, \@logfileText);
+ my $i2 = search_forward("TRANSITION FROM THE GROUND STATE TO EXCITED STATE\s+$state", $i, \@logfileText);
if ($i2 != -1)
{
$i2 = search_forward('OSCILLATOR STRENGTH', $i2, \@logfileText);
- $_ = $logfileText[$i];
+ $_ = $logfileText[$i2];
my ($dipole) = /OSCILLATOR STRENGTH\s*=\s*(\S+)/;
push(@dipoles, $dipole);
}
@@ -1058,7 +1058,7 @@
/NUMBER OF OCCUPIED ORBITALS \(\s*BETA\s*\)\s+=\s+(\S+)/;
local $betaElectrons = $1;

- $i = search_from_end('EIGENVECTORS$|MOLECULAR ORBITALS$', \@logfileText);
+ $i = search_from_beginning('EIGENVECTORS$|MOLECULAR ORBITALS$', \@logfileText);
return if ($i == -1);

my $is_rohf = search_from_end("FINAL ROHF ENERGY IS", \@logfileText) != -1;
JR Schmidt
Moderator
Username: Schmidt

Post Number: 499
Registered: 11-2006
Posted on Monday, March 21, 2016 - 11:27 am:   

Thank for the report (and patch!). GAMESS has tweaked their output format over the years and this may have been a causality. I will get a fix similar to the above integrated into the next release.
Anonymous
 
Posted on Monday, March 21, 2016 - 12:44 pm:   

yeah, look it over, see if I may be creating more problems than I am solving. I think the forum software gratuitously removed at least one back slash when I pasted the patch ...

+ my $i2 = search_forward("TRANSITION FROM THE GROUND STATE TO EXCITED STATE\\s+$state", $i, \@logfileText)

thanks
JR Schmidt
Moderator
Username: Schmidt

Post Number: 503
Registered: 11-2006
Posted on Wednesday, April 20, 2016 - 5:13 pm:   

I believe I tracked this down. It should be resolved in the next bugfix release.

Add Your Message Here
Post:
Username: Posting Information:
This is a public posting area. Enter your username and password if you have an account. Otherwise, enter your full name as your username and leave the password blank. Your e-mail address is optional.
Password:
E-mail:
Options: Post as "Anonymous"
Enable HTML code in message
Automatically activate URLs in message
Action:

Topics | Last Day | Last Week | Tree View | Search | Help/Instructions | Program Credits Administration