Strukturformeln – Abstraction layer

In der orga­ni­schen Che­mie nut­zen wir im Unter­richt Struk­tur­for­meln zur sym­bo­li­schen Dar­stel­lung von Mole­kü­len. Das kann man auf recht unter­schied­li­chem Abs­trak­ti­ons­ni­veau tun (hier am Bei­spiel des Ethans):

(a) ist ein Bei­spiel für eine voll­stän­di­ge Struk­tur­for­meln. Mit etwa Übung schafft man es, die Was­ser­stoff­atom­rümp­fe an der Tafel in einem Rhyth­mus zu schrei­ben. Bei län­ge­ren Koh­len­was­ser­stoff­ket­ten oder gar ver­zweig­ten nervt das nur noch. Daher besteht unter Che­mie­leh­rern die prag­ma­ti­sche, aber völ­lig IUPAC-wid­ri­ge Vor­ge­hens­wei­se, die Was­ser­stoff­atom­rümp­fe ein­fach weg­zu­las­sen. Laut IUPAC steht näm­lich ein offe­nes Stri­chen­de stets für eine Methylgruppe…

(b) ist ein Kom­pro­miss aus Sum­men- und Struk­tur­for­mel, gemein­hin als Halb­struk­tur­for­mel bekannt. Das ist ein IUPAC-kon­for­mer und prak­ti­ka­bler Aus­weg aus der der Mise­re bei den Strukturformeln.

© Ist eine Ske­lett­for­mel. Ein Stri­chen­de steht für eine Methyl­grup­pe, eine (hier optio­na­le) Ecke für eine CH2-Grup­pe. Che­mi­ker sind schreib­faul. Des­we­gen hat man so etwas erfun­den. Wir Che­mie­leh­rer nut­zen das z.B. bei grö­ße­ren Mole­kü­len (etwa Fet­ten), Bio­lo­gen tun das (die kön­nen sich nicht mit klei­nen Mole­kü­le beschei­den), Schul­bü­cher tun es, Wiki­pe­dia sowie­so – weil es eben so schön fluf­fig zu schrei­ben ist.

Sel­ten erle­ben ich es, dass man Ske­lett­for­meln SuS sys­te­ma­tisch bei­bringt, dabei ist die Welt voll davon. „Zu abs­trakt im OC-Anfangs­un­ter­richt“ – ein häu­fi­ges Argu­ment. Man kann sich mit die­ser Abs­trak­ti­on jedoch eine Men­ge Zeit spa­ren und so ein The­ma wie die Nomen­kla­tur der Alka­ne hübsch in eine Geschich­te ver­pa­cken – in die Geschich­te von den Gliedertieren.

Hier ist ein sol­ches und sucht nach sei­nem Namen:

Zuerst suchen wir die längs­te Gliederkette:

Dann num­me­rie­ren wir sie so durch, dass die Anhäng­sel mög­lichst klei­ne Zah­len erhal­ten und malen dem Tier einen Kopf am ers­ten Koh­len­stoff­atom­rumpf oder eben mög­lichst nahe an den meis­ten Extremitäten:

Unser Tier­chen besitzt neun Koh­len­stoff­atom­rümp­fe (Nonan). Jetzt schau­en wir uns die Extre­mi­tä­ten des Tie­res genau­er an:

Wir haben drei­mal einen ein­fa­chen Strich als Extre­mi­tät, also drei Mey­thyl­grup­pen, die an den Glie­dern 3,4, und 5 sit­zen (3,4,5‑trimethyl-). Der Strich mit Knick am 6. Glied ist eine Ethyl­grup­pe (6‑e­thyl-).

Name:

6‑Ethyl‑3,4,5‑trimethylnonan

Wenn die Ske­lett­for­mel­schreib­wei­se sau­ber ein­ge­führt und durch Trans­for­ma­ti­ons­übun­gen ein­ge­schlif­fen ist, wer­den die SuS schon sehr früh die Mole­kül­welt auf Wiki­pe­dia und anders­wo sofort ver­ste­hen. Bei der Nomen­kla­tur spart man sich viel Tafel­ge­schreib­sel. Bei mir hat es pri­ma geklappt. Jetzt malen sie zwar immer Tier­chen, aber wenn der Name hin­ter­her stimmt, dann hilft die­se Abs­trak­ti­on sehr.

Benutzerdaten für Moodle mit einer Tabellenkalkulation erzeugen

Mood­le bie­tet die Mög­lich­keit des CSV-Uploads, um Daten­be­stän­de zu pfle­gen. Wenn man in der – nach mei­ner Ansicht – bedau­erns­wer­ten Lage ist, kei­ne schon vor­han­de­ne exter­ne Authen­ti­fi­zie­rungs­mög­lich­keit nut­zen zu kön­nen, kann das ein eini­ger­ma­ßen kom­for­ta­bler Weg sein, um User­da­ten zu ver­wal­ten. Mood­le bie­tet eini­ge nütz­li­che Funk­tio­nen, um Nut­zer­na­men aus Tabel­len­da­ten zu erzeu­gen – viel­sei­ti­ger ist aber der Weg über die Tabellenkalkulation.

Jede Tabel­len­kal­ku­la­ti­on besitzt For­meln für Text – wenn man sich nur die­se anzei­gen lässt, wird man sehr schnell fündig.

  • KLEIN() wan­delt einen Text in Klein­buch­sta­ben um
  • LINKS() lie­fert den lin­ken Teil einer Zei­chen­ket­te zurück, durch zusätz­li­ches Argu­ment kann ich sagen, wie lang der Teil sein soll, stan­dard­mä­ßig gilt die Län­ge 1.
  • VERKETTEN() ver­knüpft zwei Zeichenketten
A B C
1 Riecken Maik

Um den Benut­zer­na­men „mriecken“ zu gene­rie­ren, gebe ich in der Zel­le A1 fol­gen­de For­mel ein:

=KLEIN(VERKETTEN(LINKS(C1);B1))

Gehen wir das mal von innen nach außen durch:

=LINKS(C1) gibt den Buch­sta­ben „M“ zurück
=VERKETTEN((LINKS(C1);B1) gibt die Zei­chen­ket­te „MRiecken“ zurück
=KLEIN(VERKETTEN(LINKS(C1);B1)) macht die­se Zei­chen­ket­te klein

Noch ein Beispiel:
=KLEIN(VERKETTEN(LINKS(C1;2);B1)) gibt dann z.B. „mariecken“ zurück

Es gibt auch die Funktionen
=RECHTS() – gleich wie LINKS() nur schnip­pelt die eben rechts
=TEIL() – schnei­det in der Mit­te aus
=GROSS() gibt es auch…

Das geht auch für Pass­wör­ter, die man dann gleich per Seri­en­brief mit­tei­len kann. Gefunden/geklaut/neu zusam­men­ge­fasst habe ich das (von) hier. Dafür nimmt man ein eige­nes Tabel­len­blatt und erstellt fol­gen­den Inhalt:

  • Zel­le A1 bis A9: Zah­len 1 bis 9
  • Zel­le A10 bis A35: Klein­buch­st­ab­den a bis z 
  • Zel­le A36 bis A61: Groß­buch­sta­ben A bis Z 

Dann in eine lee­re Zel­le fol­gen­de Formel:

=INDIREKT(„A“&ZUFALLSBEREICH(1;61))&INDIREKT(„A“&ZUFALLSBEREICH(1;61))&INDIREKT(„A“&ZUFALLSBEREICH(1;61))&INDIREKT(„A“&ZUFALLSBEREICH(1;61))&INDIREKT(„A“&ZUFALLSBEREICH(1;61))&INDIREKT(„A“&ZUFALLSBEREICH(1;61))

für sechs­stel­li­ge Pass­wör­ter. Für mehr Stel­len, muss man ein­fach noch zusätz­li­che „&INDIREKT(„A“&ZUFALLSBEREICH(1;61)“ am Ende ein­fü­gen. Die­se For­mel kopiert man im sepa­ra­ten Tabel­len­blatt ein­fach her­un­ter und fügt dann über „Inhal­te ein­fü­gen“ die erstell­ten Pass­wor­te in die Tabel­le im Pass­wort­feld ein, die die Nut­zer­da­ten ent­hält. Man kann das nicht direkt im glei­chen Tabel­len­blatt machen, da die For­mel spä­tes­tens bei einem neu­en Auf­ruf der Datei neue Pass­wör­ter erzeugt…

Für die ganz Beque­men gibt es hier zwei Down­loads für ein Mus­ter­ta­bel­len­blatt zur Gene­rie­rung von Pass­wor­ten. Dabei habe ich  bereits Zei­chen eli­mi­niert, die der Nut­zer ger­ne ver­wech­selt, etwa den Buch­sta­ben „O“ und die Null oder den Buch­sta­ben „l“ (ger­ne mit der Eins ver­wech­selt). Die Tabel­le bie­tet in der ers­ten Spal­te den Pool an Zufallzei­chen, in der zwei­ten ein sechs­stel­li­ges und in der drit­ten ein acht­stel­li­ges Zufalls­pass­wort an. Sie lässt sich leicht an die eige­nen Bedürf­nis­se anpassen.

Zusam­men mit den ande­ren Mög­lich­kei­ten, die durch den CSV-Import in Mood­le gege­ben sind, las­sen sich damit span­nen­de Din­ge anstellen.

Neue Formelfreunde (Calc||Excel)

Ich mag manch­mal nicht ger­ne mit der Maus arbei­ten –  stel­len­wei­se unge­nau und ineff­zi­ent. Eine schö­ne Bat­ch­rou­ti­ne mit hohem nice im Hin­ter­grund tut All­tags­din­ge wie Bild­kon­ver­tie­run­gen o.ä. meist viel bes­ser als Klickibunti.Es gibt aber natür­lich auch Aus­nah­men: Zu Fens­ter­zei­ten war das MS Access (Klein­weich kann auch anders), heu­te ist sind es Brow­ser, Mail­cli­ents, neu­er­dings Tweet­deck und natür­lich zuneh­mend ger­ne OpenOffice.

In Open­Of­fice habe ich in den letz­ten Tagen zwei neue Freun­de ken­nen und schät­zen gelernt: Es han­delt sich um die Funk­tio­nen ZÄHLENWENN() und SUMMENPRODUKT(). Fol­gen­de Auf­ga­ben­stel­lung galt es mit nach­fol­gen­der Tabel­len­struk­tur im Rah­men unse­rer Eva­lua­ti­ons­aus­wer­tung zu bewältigen:


A B C D E
1 Daten­satz-Id Merk­mal 1 Merk­mal 2 Fra­ge 1 Fra­ge 2
2 1 w 5 1 2
3 2 w 7 4 3
4 3 m 8 3 4
5 4 w 5 2 2
6 5 m 11 1 4
7 6 m 13 4 3
8 7 w 10 3 3
9 8 m 6 2 2
10 9 w 5 2 1
11

Es soll­te nun z.B. ermit­telt wer­den, wie oft das Merk­mal 1 über­haupt vor­kommt. Das geht sehr hübsch mit der Funktion

ZÄHLENWENN(Bereich; Kri­te­ri­en)

Als Bereich kommt z.B. Zel­le B1 bis Zel­le B10 in Betracht. Es soll geprüft wer­den, wie oft das Merk­mal „w“ (weib­lich) vor­kommt. Dann lau­tet die Syn­tax, bzw. der not­wen­di­ge Zellinhalt:

=ZÄHLENWENN(B1:B10; „=w“)

Bei Open­Of­fice Calc darf übri­gens zwi­schen den Anfüh­rungs­zei­chen bei Kri­te­ri­en auch ein regu­lä­rer Aus­druck ste­hen – sehr mäch­tig und praktisch.

Nur unwe­sent­lich schwie­ri­ger ist fol­gen­de Auf­ga­be: Wie vie­le Jun­gen haben bei Fra­ge 1 mit „1“ geant­wor­tet? Das geht mit der Funktion

SUMMENPRODUKT(MATRIX1;MATRIX2;…)

Sieht von der Syn­tax erst­mal abschre­ckend aus, ist aber eigent­lich recht ein­fach. Für unse­re Auf­ga­be lau­tet der kor­rek­te Zellinhalt:

=SUMMENPRODUKT((B1:B10=„m“)*(D1:D10=„1“))

Das Spiel­chen lässt sich belie­big erwei­tern, z.B. so:

=SUMMENPRODUKT((B1:B10=„m“)*(C1:C10=„5“)*(D1:D10=„2“))

Damit wer­den alle Daten­sät­ze gezählt, für die gilt männ­lich („m“), Klas­sen­stu­fe 5 („5“) und bei Fra­ge 1 die zwei­te Ant­wort­mög­lich­keit gewählt. Natür­lich klappt das auch über meh­re­re Tabel­len­blät­ter hin­weg. Bei vier Kri­te­ri­en wird es aber unüber­sicht­lich, ins­be­son­de­re wenn man noch auf rela­ti­ve Ver­hält­nis­se (Pro­zent­an­ga­ben) nor­miert. Toll, so eine Tabellenkalkulation…