@@ -1207,7 +1207,7 @@ def _parse_job(cls, output):
1207
1207
thermal_corr_pattern = re .compile ("(?P<name>\S.*\S):\s+"
1208
1208
"(?P<correction>\d+\.\d+)\s+"
1209
1209
"k?cal/mol" )
1210
- detailed_charge_pattern = re .compile ("Ground-State (?P<method>\w+) Net"
1210
+ detailed_charge_pattern = re .compile ("( Ground-State )? (?P<method>\w+)( Net)? "
1211
1211
" Atomic Charges" )
1212
1212
nbo_charge_pattern = re .compile ("(?P<element>[A-Z][a-z]{0,2})\s+(?P<no>\d+)\s+(?P<charge>\-?\d\.\d+)"
1213
1213
"\s+(?P<core>\-?\d+\.\d+)\s+(?P<valence>\-?\d+\.\d+)"
@@ -1278,6 +1278,7 @@ def _parse_job(cls, output):
1278
1278
current_beta_homo = None
1279
1279
homo_lumo = []
1280
1280
bsse = None
1281
+ hiershfiled_pop = False
1281
1282
for line in output .split ("\n " ):
1282
1283
for ep , message in error_defs :
1283
1284
if ep .search (line ):
@@ -1517,8 +1518,13 @@ def _parse_job(cls, output):
1517
1518
parse_input = True
1518
1519
elif "Standard Nuclear Orientation (Angstroms)" in line :
1519
1520
parse_coords = True
1520
- elif "Cycle Energy DIIS Error" in line \
1521
- or "Cycle Energy RMS Gradient" in line :
1521
+ elif "Performing Hirshfeld population analysis" in line :
1522
+ hiershfiled_pop = True
1523
+ elif "Hirshfeld: atomic densities completed" in line :
1524
+ hiershfiled_pop = False
1525
+ elif ("Cycle Energy DIIS Error" in line \
1526
+ or "Cycle Energy RMS Gradient" in line )\
1527
+ and not hiershfiled_pop :
1522
1528
parse_scf_iter = True
1523
1529
scf_iters .append ([])
1524
1530
scf_successful = False
0 commit comments