Ent­wick­lung und Imple­men­tie­rung eines Pro­grammes zur Visua­li­sie­rung von Molekülen

Projekt 2018 | Jugend forscht | Entwicklung und Implementierung eines Programmes zur Visualisierung von Molekülen

Teil­nehmer
Alina Laura Gries
12207 Berlin
???
Lili­en­thal-Gymnasium


Lucas Hoschar
12205 Berlin
12. Klasse
Lili­en­thal-Gymnasium

Betreuer
Herr Thorsten Beyer

Erarbeitungsort(e)
Lili­en­thal-Gymnasium
12203 Berlin

Preis(e)
Zulassung zum Bun­des­wett­be­werb
1. Platz Mathematik/Informatik im Lan­des­wett­be­werb
Son­der­preis für lebendige Wis­sen­schaft

Kurz­fas­sung

Bei lang­ket­tigen und kom­pli­zierten Moleküle, wie zum Beispiel “5-Propyldec-3-en-1-al”, ist oft keine Mög­lich­keit gegeben, diese bildlich dar­zu­stellen oder nach­zu­bauen oder sich auch nur im Geiste vor­zu­stellen.
Bei unserem Programm soll der Benutzer einen Molekül-Namen eingeben, der den Richt­li­nien der IUPAC folgt. Anders, als bei anderen Pro­grammen, die sich an einer großen Datenbank von Molekülen bedienen, soll der Name bei uns
mit Hilfe von regulären Aus­drü­cken ana­ly­siert werden und ver­schie­dene Atom­ob­jekte zu einem Mole­kül­ob­jekt zusam­men­ge­setzt werden. In einer anderen Klasse sollen diese drei­di­men­sional dar­ge­stellt und in der Benut­zer­ober­fläche angezeigt werden. Unter­schied­liche Atome, sowie Mehr­fach­bin­dungen sollen gekenn­zeichnet werden. Wir werden dabei auch die Bin­dungs­winkel zwischen den Atomen beachten und mit Hilfe von Vektoren dar­stellen. Außerdem soll der Benutzer an das Molekül her­an­zoomen können, die Atom- und Bin­dungs­größe verändern und andere Zusatz­op­tionen auswählen können.

Weitere Infor­ma­tionen

Was war der Anstoß für dein/euer Projekt?

Als wir in der zehnten Klasse mit orga­ni­scher Chemie anfingen, haben wir schnell die Dis­kre­panz erlebt, zwischen dem, was man tat­säch­lich sehen oder riechen kann und wie die Reaktion chemisch mit Formalen ana­ly­siert und erklärt wird. Die Moleküle, die bei einer che­mi­schen Reaktion zusam­men­treffen, sind oftmals physisch erlebbar. Aber die Erklä­rungen dazu beschränken sich meist auf die Struktur- oder Sum­men­for­meln der in der Reaktion auf­ein­ander tref­fenden Moleküle. Lange haben wir auch nicht „gesehen“, dass Moleküle eine räumliche Struktur haben. Durch den Leis­tungs­kurs Infor­matik angeregt, kamen wir auf die Idee, ein Programm zu ent­wi­ckeln, das genau das konnte, was im Unter­richt nur schwierig oder gar nicht möglich war: kom­pli­zierte orga­ni­sche Moleküle drei­di­men­sional dar­zu­stellen.

Erkläre/Erklärt kurz wie du dein/ihr euer Projekt durch­ge­führt hast/habt.

Wir wollten ein Programm ent­wi­ckeln, dass nur anhand einer Analyse des sys­te­ma­tisch auf­ge­bauten Namens her­aus­findet, wie das Molekül aussieht und dieses auto­ma­tisch zusam­men­baut. Dabei ist ein großer Vorteil, dass man nicht nur eine geringe Menge an Molekülen dar­stellen kann, sondern Millionen von Mole­kül­be­zeich­nungen ver­ar­beitet werden können. Bei unserem Programm soll der Benutzer einen Molekül-Namen eingeben, der den Richt­li­nien der IUPAC folgt. Anders, als bei anderen Pro­grammen, die sich an einer großen Datenbank von Molekülen bedienen, soll der Name bei uns mit Hilfe von regulären Aus­drü­cken ana­ly­siert werden und ver­schie­dene Atom­ob­jekte zu einem Mole­kül­ob­jekt zusam­men­ge­setzt werden. In einer anderen Klasse sollen diese drei­di­men­sional dar­ge­stellt und in der Benut­zer­ober­fläche angezeigt werden. Unter­schied­liche Atome, sowie Mehr­fach­bin­dungen sollen gekenn­zeichnet werden. Wir haben dabei auch die Bin­dungs­winkel zwischen den Atomen beachtet und mit Hilfe von Vektoren dar­ge­stellt. Außerdem soll der Benutzer an das Molekül her­an­zoomen können, die Atom- und Bin­dungs­größe verändern und andere Zusatz­op­tionen auswählen können. Das Programm haben wir mit Python und OpenGl/Vispy ent­wi­ckelt.

Was sind deine/eure der­zei­tigen Pro­jekt­er­geb­nisse?

Nach vielen Tests und erneute Über­ar­bei­tungen haben wir unser Ziel erreicht und ein Programm ent­wi­ckelt, dass Moleküle drei­di­men­sional dar­stellen kann. Unsere Anfor­de­rungs­kri­te­rien und Ziel­be­stim­mungen haben wir imple­men­tiert. Man kann sich außerdem die Erklärung einer Struk­tur­formel ausgeben lassen, sowie Sum­men­formel und Gewicht. Außerdem gibt es optionale Ein­stel­lungen, die der Nutzer wählen kann, sowie die Mög­lich­keit zur Ver­än­de­rung der Größe und Farbe der Atome und Bindungen. Durch diese Kom­po­nenten hat unser Programm einen spie­le­ri­schen Anteil, der dazu anregt sich mit Molekülen zu beschäf­tigen.

Wie sieht dein/euer Pro­jekt­aus­blick aus? (Erneute Teilnahme mit diesem Projekt, Weit­erfor­schung, Wett­be­werbe, Fir­men­grün­dung, …)

Man könnte das Programm noch wei­ter­ent­wi­ckeln, indem man es noch mehr Mole­kül­arten dar­stellen lässt. Zum Beispiel auch Moleküle aus der anor­ga­ni­schen Chemie, da besteht die Schwie­rig­keit jedoch darin, dass anor­ga­ni­sche Moleküle einen anderen Namens­aufbau haben und teilweise auch nicht so sys­te­ma­tisch benannt werden, wie es bei orga­ni­schen Molekülen der Fall ist. Auch könnte man noch eine Art Baukasten ergänzen, mit dem man selbst Moleküle bauen kann und von diesen dann den Namen ermitteln lassen. Gerade arbeiten wir auch noch daran, dass die Atome indi­vi­duell rotiert werden, damit sie sich in manchen Kon­stel­la­tionen nicht über­lappen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.