La première chose que la plupart des gens verront est la fenêtre principale de l’application Avogadro, comme le montre la figure 4. Des installateurs binaires sont fournis pour Apple Mac OS X et Microsoft Windows, ainsi que des paquets pour toutes les principales distributions Linux. Cela signifie qu’Avogadro peut être installé assez facilement sur la plupart des systèmes d’exploitation. Des instructions faciles à suivre sur la façon de compiler le dernier code source sont également fournies sur le site web principal d’Avogadro pour les plus aventureux, ou ceux qui utilisent un système d’exploitation qui n’est pas encore supporté.
La boîte à outils Qt donne à Avogadro une apparence native sur les trois principaux systèmes d’exploitation pris en charge – Linux, Apple Mac OS X et Microsoft Windows. La fonctionnalité de base attendue dans un constructeur et un visualiseur moléculaire a été implémentée, ainsi que plusieurs fonctionnalités moins courantes. Il est très facile pour les nouveaux utilisateurs d’installer Avogadro et de construire leurs premières molécules en quelques minutes. Grâce à la bibliothèque Open Babel, Avogadro supporte une grande partie des formats de fichiers chimiques couramment utilisés. La grande majorité de cette fonctionnalité a été écrite en utilisant l’interface mise à la disposition des auteurs de plugins, et est chargée au moment de l’exécution. Nous discuterons de ces interfaces de plugins et des descriptions des types de plugins plus tard.
Chimie sémantique
Avogadro a utilisé CML comme format de fichier par défaut dès le début ; ce format a été choisi par rapport à d’autres formats de fichiers en raison de la structure extensible et sémantique fournie par CML, et du support disponible dans Open Babel . Le format CML offre un certain nombre d’avantages par rapport aux autres formats couramment utilisés, notamment la possibilité de l’étendre. Cela permet à Avogadro et à d’autres programmes d’être à l’épreuve du temps, en ajoutant ultérieurement de nouvelles informations et fonctionnalités nécessaires à un éditeur sémantique avancé, tout en restant lisibles dans les anciennes versions d’Avogadro.
Grâce à l’utilisation d’Open Babel , un large éventail de formats de fichiers peut être interprété. Lors de l’extension d’Avogadro pour lire de plus grandes quantités de la sortie des codes quantiques, il a été nécessaire de consacrer des ressources de développement importantes pour comprendre et ajouter une signification sémantique à la sortie du code quantique. Ce travail a été développé dans un plugin, qui a ensuite été séparé en une petite bibliothèque indépendante appelée OpenQube . Plus récemment, le projet Quixote, les convertisseurs JUMBO et l’atelier sur les sciences physiques sémantiques ont effectué un travail considérable pour améliorer les codes quantiques afin de produire davantage de données directement à partir du code. Puisque CML peut être étendu, il est possible de réutiliser les conventions existantes pour les données de structure moléculaire, et d’ajouter de nouvelles conventions pour les données quantiques supplémentaires.
Construire une molécule : atome par atome
Après avoir ouvert Avogadro, une fenêtre telle que celle présentée dans la figure 4 se présente. Par défaut, l’outil de dessin est sélectionné. Un simple clic gauche sur la partie noire de l’écran permet à l’utilisateur de dessiner un atome de carbone. Si l’utilisateur appuie sur le bouton gauche de la souris et fait glisser, un atome de carbone lié est dessiné entre le point de départ et la position finale où la souris est relâchée.
Une grande quantité d’efforts a été déployée pour créer un outil intuitif pour dessiner de petites molécules. Les éléments chimiques courants peuvent être sélectionnés dans une liste déroulante, ou un tableau périodique peut être affiché pour sélectionner des éléments moins courants. Un clic sur un atome existant le transforme en l’élément actuellement sélectionné, un glissement ramène l’atome à son élément précédent et dessine un nouvel atome lié à l’original. Si l’on clique avec le bouton gauche de la souris sur les liaisons, l’ordre des liaisons varie entre simple, double et triple. Des touches de raccourci sont également disponibles, par exemple, taper le symbole atomique (par exemple, « C-o » pour le cobalt) change l’élément sélectionné, ou taper les chiffres « 1 », « 2 » et « 3 » change l’ordre des liaisons.
Un clic droit sur les atomes ou les liaisons les supprime. Si la case « Ajuster les hydrogènes » est cochée, le nombre d’hydrogènes liés à chaque atome est automatiquement ajusté pour satisfaire la valence. Cela peut également être fait à la fin d’une session d’édition en utilisant l’extension « Ajouter des hydrogènes » dans le menu de construction.
En plus de l’outil de dessin, il existe deux outils pour ajuster la position des atomes dans les molécules existantes. L’outil « atom centric manipulate » peut être utilisé pour déplacer un atome ou un groupe d’atomes sélectionnés. L’outil « manipuler centré sur la liaison » peut être utilisé pour sélectionner une liaison, puis ajuster la position de tous les atomes par rapport à la liaison sélectionnée de différentes manières (par exemple, en modifiant la longueur de la liaison, les angles de liaison ou les angles dièdres). Ces trois outils permettent une grande flexibilité dans la construction interactive de petites molécules à l’écran.
Une fois que la structure moléculaire est complète, l’extension du champ de force peut être utilisée pour effectuer une optimisation de la géométrie. En cliquant sur « Extensions » et « Optimize Geometry », une optimisation rapide de la géométrie est effectuée sur la molécule. Le champ de force et les paramètres de calcul peuvent être ajustés, mais les valeurs par défaut sont suffisantes pour la plupart des molécules. Ce flux de travail est typique lors de la construction d’une petite structure moléculaire à utiliser comme entrée pour des calculs quantiques, ou des figures de qualité de publication.
Une alternative est de combiner l’outil « Auto Optimisation » avec l’outil de dessin. Cela présente une façon unique de sculpter la molécule alors que la géométrie est constamment minimisée en arrière-plan. L’optimisation de la géométrie est animée, et l’effet de la modification des ordres de liaison, de l’ajout de nouveaux groupes ou de la suppression de groupes peut être observé de manière interactive.
Plusieurs dialogues sont implémentés pour fournir des informations sur les propriétés de la molécule et pour modifier précisément des paramètres, tels que les coordonnées cartésiennes des atomes de la molécule.
Construire une molécule : à partir de fragments
En plus de construire des molécules atome par atome, les utilisateurs peuvent insérer des fragments préconstruits de molécules, de ligands ou de séquences d’acides aminés courants, comme le montre la figure 5. Dans tous les cas, après avoir inséré le fragment, l’outil de manipulation centré sur l’atome est sélectionné, ce qui permet de déplacer ou de faire pivoter le fragment en position facilement.
Les utilisateurs peuvent également insérer une chaîne SMILES pour une molécule. Dans ce cas, une géométrie 3D grossière est générée à l’aide d’Open Babel et d’une optimisation rapide du champ de force.
Préparation des entrées pour les codes quantiques
Plusieurs extensions ont été développées pour Avogadro qui aident l’utilisateur à préparer les fichiers d’entrée pour les codes quantiques populaires tels que GAMESS-US, NWChem, Gaussian, Q-Chem, Molpro et MOPAC200x. Les dialogues graphiques présentent les fonctionnalités requises pour exécuter des calculs quantiques de base ; quelques exemples sont présentés dans la Figure 6.
L’aperçu du fichier d’entrée au bas de chaque dialogue est mis à jour au fur et à mesure que les options sont modifiées. Cette approche aide les nouveaux utilisateurs de codes quantiques à apprendre la syntaxe des fichiers d’entrée pour différents codes, et à générer rapidement des fichiers d’entrée utiles au fur et à mesure de leur apprentissage. L’entrée peut également être modifiée manuellement dans le dialogue avant que le fichier ne soit enregistré et soumis au code quantique. L’extension MOPAC peut également exécuter directement le programme MOPAC200x s’il est disponible sur l’ordinateur de l’utilisateur, puis recharger le fichier de sortie dans Avogadro une fois le calcul terminé. Cette fonctionnalité sera étendue à d’autres codes quantiques dans les futures versions d’Avogadro.
Le plugin GAMESS-US est l’un des plus développés, présentant un dialogue de base présent dans la plupart des autres générateurs de jeux d’entrée, ainsi qu’un dialogue avancé exposant de nombreux types de calculs plus inhabituels et complexes. En plus de la boîte de dialogue avancée, le jeu de données d’entrée peut être édité en ligne et comporte une coloration syntaxique (Figure 7) comme celle utilisée dans de nombreux éditeurs populaires destinés aux développeurs de logiciels. Cela peut indiquer de simples erreurs de frappe dans les mots-clés, ainsi que des erreurs d’espacement plus difficiles à repérer qui, autrement, feraient échouer le jeu d’entrée édité à la main lors de sa lecture par GAMESS-US.
Alignement et mesures
L’un des outils spécialisés inclus dans la distribution standard d’Avogadro est l’outil d’alignement. Cet outil de souris facilite l’alignement d’une structure moléculaire avec l’origine des coordonnées si un atome est sélectionné, et le long de l’axe spécifié si deux atomes sont sélectionnés. L’outil d’alignement peut être combiné avec les outils de mesure, de sélection et de manipulation pour créer des entrées pour les codes quantiques où la position et l’orientation de la molécule sont importantes. Les calculs dans lesquels un champ électrique externe est appliqué à la molécule en sont un exemple. Dans ces types de calculs, l’alignement de la molécule peut avoir un effet important. La figure 8 montre l’outil de mesure en action avec le dialogue de configuration de l’outil d’alignement visible dans le coin inférieur gauche.