// Sanity check
// Currently disabled -- GAMESS does weird things.
// if (displacementVectors.size() != m_molecule->numAtoms()) {
// QMessageBox::warning(m_widget, tr("Vibrational Analysis"), tr("The computed vibrations do not match this molecule."));
// return;
// }
For your molecule, in the debugger it looks like displacementVectors (from Open Babel) is of zero size. It looks like we should at least check that vector is bigger that the number of atoms (although I am not sure in which case it would be a different size).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I see,
// Sanity check
// Currently disabled -- GAMESS does weird things.
// if (displacementVectors.size() != m_molecule->numAtoms()) {
// QMessageBox::warning(m_widget, tr("Vibrational Analysis"), tr("The computed vibrations do not match this molecule."));
// return;
// }
For your molecule, in the debugger it looks like displacementVectors (from Open Babel) is of zero size. It looks like we should at least check that vector is bigger that the number of atoms (although I am not sure in which case it would be a different size).
Adding back in that check prevents the crash, I think this will need fixing in Open Babel before we can actually display the vibrations in Avogadro.
Bump. I confirm the crash with latest OB and Avogadro master.