- Grafické uživatelské rozhraní
- Sémantická chemie
- Stavba molekuly: atom po atomu
- Sestavení molekuly: z fragmentů
- Příprava vstupů pro kvantové kódy
- Zarovnání a měření
- Vizualizace
- Standardní zobrazení
- Kvantové výpočty a elektronická struktura
- Sekundární biologická struktura
- GLSL, nová vizualizace
- Ray tracing
- Použití knihovny Avogadro
- Packmol
- XtalOpt
Grafické uživatelské rozhraní
První, co většina lidí uvidí, je hlavní okno aplikace Avogadro, jak ukazuje obrázek 4. K dispozici jsou binární instalační programy pro systémy Apple Mac OS X a Microsoft Windows a balíčky pro všechny hlavní distribuce systému Linux. To znamená, že program Avogadro lze poměrně snadno nainstalovat na většinu operačních systémů. Pro odvážlivce nebo pro ty, kteří používají operační systém, který zatím není podporován, jsou na hlavní webové stránce Avogadro k dispozici také srozumitelné pokyny, jak zkompilovat nejnovější zdrojový kód.
Sada nástrojů Qt dává systému Avogadro nativní vzhled ve třech hlavních podporovaných operačních systémech – Linux, Apple Mac OS X a Microsoft Windows. Byly implementovány základní funkce očekávané od nástroje pro tvorbu a prohlížení molekul a několik méně obvyklých funkcí. Pro nové uživatele je velmi snadné nainstalovat Avogadro a sestavit své první molekuly během několika minut. Díky knihovně Open Babel , Avogadro podporuje velkou část běžně používaných formátů chemických souborů. Převážná většina těchto funkcí byla napsána pomocí rozhraní zpřístupněného autorům zásuvných modulů a je načtena za běhu. Tato rozhraní zásuvných modulů a popisy typů zásuvných modulů probereme později.
Sémantická chemie
Avogadro od počátku používalo jako výchozí formát souborů CML; ten byl vybrán místo jiných formátů souborů kvůli rozšiřitelné sémantické struktuře, kterou CML poskytuje, a podpoře dostupné v knihovně Open Babel . Formát CML nabízí oproti jiným běžně používaným formátům řadu výhod, včetně možnosti jeho rozšíření. To umožňuje programu Avogadro a dalším programům, aby byly odolné vůči budoucnosti a mohly později přidávat nové informace a funkce potřebné pro pokročilý sémanticky orientovaný editor, a přitom zůstaly čitelné ve starších verzích programu Avogadro.
Pomocí Open Babel , lze interpretovat velké množství formátů souborů. Při rozšiřování programu Avogadro pro čtení většího množství výstupů z kvantových kódů bylo nutné věnovat značné vývojové prostředky na pochopení a přidání sémantického významu výstupu kvantového kódu. Tato práce byla vyvinuta v zásuvném modulu, který byl později rozdělen do malé samostatné knihovny nazvané OpenQube . V poslední době bylo v rámci projektu Quixote , JUMBO-Converters a semináře Semantic Physical Science odvedeno velké množství práce na rozšíření kvantových kódů tak, aby bylo možné vyvést více těchto dat přímo z kódu. Vzhledem k tomu, že CML lze rozšířit, je možné znovu použít stávající konvence pro data o molekulové struktuře a přidat nové konvence pro další kvantová data.
Stavba molekuly: atom po atomu
Po otevření programu Avogadro se zobrazí okno, jaké je znázorněno na Obrázek 4. Ve výchozím nastavení je vybrán nástroj kreslení. Stačí kliknout levým tlačítkem myši na černou část displeje a uživatel může nakreslit atom uhlíku. Pokud uživatel stiskne levé tlačítko myši a táhne, nakreslí se vázaný atom uhlíku mezi počátečním bodem a konečnou polohou, kde je myš uvolněna.
Na vytvoření intuitivního nástroje pro kreslení malých molekul bylo vynaloženo velké úsilí. Běžné chemické prvky lze vybírat z rozevíracího seznamu nebo lze zobrazit periodickou tabulku pro výběr méně běžných prvků. Kliknutím na existující atom jej změníte na aktuálně vybraný prvek, tažením změníte atom zpět na předchozí prvek a nakreslíte nový atom vázaný na původní. Pokud na vazby kliknete levým tlačítkem myši, pak se pořadí vazeb cyklicky mění mezi jednoduchou, dvojitou a trojitou. K dispozici jsou také klávesové zkratky, např. zadáním atomového symbolu (např. „C-o“ pro kobalt) změníte vybraný prvek nebo zadáním čísel „1“, „2“ a „3“ změníte pořadí vazeb.
Klepnutím pravým tlačítkem myši na atomy nebo vazby je odstraníte. Pokud je zaškrtnuto políčko „Adjust Hydrogens“ (Upravit vodíky), počet vodíků vázaných k jednotlivým atomům se automaticky upraví tak, aby vyhovoval valenci. Alternativně to lze provést také na konci relace úprav pomocí rozšíření „Přidat hydrogeny“ v nabídce sestavení.
Kromě nástroje pro kreslení jsou k dispozici dva nástroje pro úpravu polohy atomů v existujících molekulách. Nástroj „manipulace s centrovaným atomem“ lze použít k přesunu atomu nebo skupiny vybraných atomů. Nástroj „bond centric manipulate“ lze použít k výběru vazby a následné úpravě polohy všech atomů vzhledem k vybrané vazbě různými způsoby (např. změnou délky vazby, vazebných úhlů nebo dihedrálních úhlů). Tyto tři nástroje umožňují velkou flexibilitu při interaktivním sestavování malých molekul na obrazovce.
Jakmile je struktura molekuly hotová, lze pomocí rozšíření silového pole provést optimalizaci geometrie. Kliknutím na „Extensions“ a „Optimize Geometry“ se provede rychlá optimalizace geometrie molekuly. Parametry silového pole a výpočtu lze upravit, ale výchozí hodnoty jsou pro většinu molekul dostačující. Tento pracovní postup je typický při sestavování malých molekulárních struktur pro použití jako vstup do kvantových výpočtů nebo obrázků v publikační kvalitě.
Alternativou je kombinace nástroje „Automatická optimalizace“ s nástrojem pro kreslení. To představuje jedinečný způsob tvarování molekuly, zatímco geometrie je neustále minimalizována na pozadí. Optimalizace geometrie je animovaná a účinek změny pořadí vazeb, přidání nových skupin nebo odebrání skupin lze sledovat interaktivně.
Je implementováno několik dialogových oken, která poskytují informace o vlastnostech molekuly a umožňují přesně měnit parametry, například kartézské souřadnice atomů v molekule.
Sestavení molekuly: z fragmentů
Kromě sestavování molekul atom po atomu mohou uživatelé vkládat předem sestavené fragmenty běžných molekul, ligandů nebo aminokyselinových sekvencí, jak je znázorněno na obrázku 5. Na obrázku 5 je znázorněno, jak se sestavují molekuly z fragmentů. Ve všech případech je po vložení fragmentu vybrán nástroj pro manipulaci s atomem, který umožňuje fragment snadno přesunout nebo otočit do správné polohy.
Uživatelé mohou pro molekulu vložit také řetězec SMILES. V tomto případě se pomocí Open Babel a rychlé optimalizace silového pole vygeneruje hrubá 3D geometrie.
Příprava vstupů pro kvantové kódy
Pro Avogadro bylo vyvinuto několik rozšíření, která pomáhají uživateli při přípravě vstupních souborů pro populární kvantové kódy, jako jsou GAMESS-US, NWChem, Gaussian, Q-Chem, Molpro a MOPAC200x . Grafická dialogová okna představují funkce potřebné ke spuštění základních kvantových výpočtů; některé příklady jsou uvedeny na obrázku 6.
Náhled vstupního souboru v dolní části každého dialogu se aktualizuje při změně možností. Tento přístup pomáhá novým uživatelům kvantových kódů naučit se syntaxi vstupních souborů pro různé kódy a při učení rychle generovat užitečné vstupní soubory. Vstupní soubor lze také ručně upravit v dialogovém okně před uložením a odesláním do kvantového kódu. Rozšíření MOPAC může také přímo spustit program MOPAC200x, pokud je na počítači uživatele k dispozici, a po dokončení výpočtu znovu načíst výstupní soubor do programu Avogadro. Tato funkce bude v budoucích verzích programu Avogadro rozšířena i na další kvantové kódy.
Přídavek GAMESS-US je jedním z nejpropracovanějších, obsahuje základní dialogové okno přítomné ve většině ostatních generátorů vstupních balíčků a také pokročilé dialogové okno odhalující mnoho neobvyklých a složitějších typů výpočtů. Kromě pokročilého dialogu lze vstupní balíček upravovat inline a je vybaven zvýrazněním syntaxe (obrázek 7), které se používá v mnoha populárních editorech určených pro vývojáře softwaru. To může indikovat jednoduché překlepy v klíčových slovech i hůře odhalitelné chyby v bílých znacích, které by jinak způsobily, že by ručně upravený vstupní balíček při čtení programem GAMESS-US selhal.