Avogadro 1.99.0#

10 February 2024

🌟 Highlights (tldr)#

  • Further improvements to the new optimization framework, including default integrated Open Babel force fields (MMFF94, UFF, GAFF)

  • New toolbar icons with light / dark theme from @matterhorn103

  • Significantly faster molecular and orbital surfaces

  • Vibrational spectra plotting

  • Support for installing Python packages with plugins via pip or conda

  • Improved selection of conda environments

  • Conformer search dialog through Open Babel

  • Improved template tool for inserting ligands and functional groups

    • Significant improvements from @nbehrnd for the ligand library

  • Logging debugging / error messages to a file for Windows users

✨ Features#

  • Add optional energy / optimize code that links Open Babel @ghutchis

  • Update tool plugins to set icon as light / dark theme @ghutchis

  • Modern tool icons @matterhorn103

  • Add confirmation dialog to install with conda or pip @ghutchis

  • Add support for first launch dialog and conda environments @ghutchis

  • Add red = a, blue = b, green = c color axes for unit cells @ghutchis

  • Vibrational spectra plot @ghutchis

  • Add UniqueID atom label type @ghutchis

  • Add ethylene, ethyne, and phosphate standard functional groups @ghutchis

  • Improved python configure dialog @ghutchis

  • Adding support for bond label in base classes and CJSON @ghutchis

  • Add “…” indicator for display types with settings @ghutchis

  • Split ligands and functional groups in the template tool @ghutchis

  • Added copy and export feature to property tables @Surajjalpun2002

  • Add initial support for copy from tables @ghutchis

  • Add conformer search box @ghutchis

  • Add template library to insert ligands or functional groups @ghutchis (#1456)

  • Add support for Hall number and space group to CJSON read/write @ghutchis (#1440)

  • Add new MessagePack version of CJSON @ghutchis (#1452)

  • Add a message handler to grab debug / warnings on Windows @ghutchis

  • Save and load the camera modelView and projection matrix @ghutchis

🐛 Bug Fixes#

  • Fixed typo in setDefaultPythonInterpretor() @matterhorn103 (#1583)

  • Fix Mac builds @ghutchis (#1522)

  • Fix quantum surface max cutoff for diffuse functions @ghutchis (#1556)

  • Change “Insert fragment” ⇒ “Insert molecule” by popular request @ghutchis (#1519)

  • Fix parsing XYZ files with tabs between columns @ghutchis (#1513)

  • Fix bug with incorrect Unicode characters added to labels @ghutchis (#1588)

  • Fix for Wayland @matterhorn103 (#1577)

  • Fixed crash with angle properties on an empty molecule @secretkontributer (#1566)

  • Fix density color crash @ghutchis (#1537)

  • Fix crash in forcefields - check if method is valid before using it @ghutchis (#1526)

  • Fix for first item in ordered plugin dialog being empty @matterhorn103 (#1523)

  • Fix crash with “copy as” and an empty molecule @ghutchis (#1521)

  • Turn off Color Opacity Map unless a VTK widget is active @ghutchis (#1509)

  • Make sure to automatically load the “Meshes” display type @ghutchis (#1508)

  • If no partial charges are assigned, set them @ghutchis (#1502)

  • Fix potential crashes in selection commands @ghutchis (#1499)

  • Fix vibration animation @ghutchis (#1487)

  • Generate the density matrix if needed for the electron density surface @ghutchis (#1482)

  • Fix empty window showing up for commands without an option dialog @ghutchis (#1468)

  • Save partial charges and properly read them from CJSON @ghutchis (#1467)

  • Don’t show PNG files in the filter dialog @ghutchis (#1462)

  • Fix GFN-FF energy - redirect GFN-FF output through a hack @ghutchis (#1454)

  • Fixup PDB reading with non-standard MD files (no element column) @ghutchis (#1450)

  • Fix atomic numbers from Orca - it would read electrons not symbols @ghutchis (#1451)

  • Fix linear molecular template @ghutchis (#1474)

  • Avoid segfaulting while manipulating carbon bonds/hydrogens @Makiah (#1493)

  • Reduce ambiguity of “Export” toolbar button @matterhorn103 (#442)

  • Ensure that title bar correctly displays active molecule file @Makiah (#440)

🐍 Scripting / Plugin Improvements#

  • Allow scripts to add properties (orbitals, vibrations, cubes) @ghutchis

  • Add support for navigator commands - rotate, translate, zoom @ghutchis

  • Windows: Standardize plugin location based on forum feedback @ghutchis

  • Add some additional Python classes including cjson and connect @ghutchis

  • Always supply cjson to scripts @ghutchis

  • If userOptions specifies an order, use that to sort the form @ghutchis

  • Check script –menupath for {} priority numbers @ghutchis

  • Add a “text” option for scripts to add text labels / help @ghutchis

🚀 Performance Improvements#

  • Skip calculating orbital / surface points too far apart (e.g., negligible) @ghutchis

    • Leads to 2-3x faster surface generation

🧰 Builds / Maintenance#

  • Package OpenSSL for Windows @ghutchis

  • Update Eigen cmake header references @ghutchis (#1544)

  • Add Qt6 build tests @ghutchis (#1547)

  • Update to cibuildwheel for Python 3.12 @ghutchis (#1546)

  • Fix include of avogadrocoreexport.h @ghutchis (#1504)

  • Add specialization for char* and MatrixXf types @ghutchis (#1494)

  • Install ligand and functional group fragments @ghutchis (#1460)

  • Make sure to copy libopenbabel on Mac for CPack @ghutchis

📚 Translations#

  • Correct typo @Acylation (#1553)

  • Update Australian and Canadian localization from GB version @ghutchis (#1453)

  • Translations update from Hosted Weblate @weblate

  • Automated translation updates @github-actions

  • Fix a few remaining cases of … instead of ellipsis character @ghutchis (#1458)

Credits#

Thanks to many contributors, including: @Acylation, @Azaathooth, @IagoEmanuel15, @ImgBotApp, @Makiah, @NorwayFun, @Surajjalpun2002, @alchemistcai, @bitigchi, @dependabot, @dependabot[bot], @ghutchis, @github-actions, @hakkikonu, @imgbot, @imitrichev, @joerivan, @koenr, @matterhorn103, @nbehrnd, @ovari, @research11111, @secretkontributer, @tacitcoast, @weblate, Alejandro Díaz-Moscoso, Eisuke Kawashima, Ivanushka, LibreTranslate, Remus-Gabriel Chelu, Weblate Translation Memory and gallegonovato