Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
lehrkraefte:blc:math:vektoranalysis:jahrmarkt [2018/09/10 08:33] Ivo Blöchliger |
lehrkraefte:blc:math:vektoranalysis:jahrmarkt [2018/09/28 14:17] (current) Ivo Blöchliger [Berg und Tal Bahn] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== | + | ====== |
+ | Ziel ist es, die Bahn eines Passagiers zu modellieren, | ||
+ | |||
+ | Da meist mehrere Drehachsen vorhanden ist, ist zuerst ein oder mehrere Koordinatensysteme zu beschreiben, | ||
+ | |||
+ | Drehwinkel werden in Abhängikeit der Zeit beschrieben. | ||
+ | |||
+ | ===== Einzelne Schritte ===== | ||
+ | * Festlegen der statischen Lage der Bahn, wo genau wird der Nullpunkt gewählt (typischerweise am Boden unter dem Zentrum der Bahn), Koordinatenachsen in eine der Symmetrieachsen der Bahn. Koordinatensystem $K_0$. | ||
+ | * Festlegen einer Drehwinkelfunktion $\alpha(t)$ der Hauptrotation der Bahn (erst einmal linear). | ||
+ | * Berechnung eines drehenden Koordinatensystems $K_1$ aus $\alpha(t)$. | ||
+ | * Weitere Punkte (evtl. Koordinatensysteme) im Koordinatensystme $K_0$. | ||
+ | * Modellierung in POV-Ray: | ||
+ | * Passagierkurve (z.B. einfärben, je nach Betrag der Geschwindigkeit, | ||
+ | * Bahn als Ganzes (stark vereinfacht bis beliebig kompliziert, | ||
+ | |||
+ | |||
+ | ====== Einige Bahnen der Olma 2017 ====== | ||
+ | ==== POV-Transformation für ein Koordinatensystem ==== | ||
+ | Folgendes Macro erlaubt es uns, gewohnte Objekt in einem eigenen Koordinatensystem zu platzieren, definiert durch Urpsrung und die drei Einheitsvektoren: | ||
+ | <code povray> | ||
+ | #macro ksysttrans(oi, | ||
+ | matrix <xi.x, xi.y, xi.z, | ||
+ | yi.x, yi.y, yi.z, | ||
+ | zi.x, zi.y, zi.z, | ||
+ | oi.x, oi.y, oi.z> | ||
+ | #end | ||
+ | </ | ||
+ | Zu verwenden z.B. wie folgt: | ||
+ | <code povray> | ||
+ | // Stellt die Box an folgenden Koordinaten im Koordinatensystem K3 dar | ||
+ | // (definiert durch o3, x3, y3, z3). | ||
+ | box { < | ||
+ | | ||
+ | } | ||
+ | </ | ||
+ | |||
===== Berg und Tal Bahn ===== | ===== Berg und Tal Bahn ===== | ||
Rotation mit vertikaler Wellenbewegung: | Rotation mit vertikaler Wellenbewegung: | ||
Line 12: | Line 49: | ||
* 4 Motoren, 360V 60A | * 4 Motoren, 360V 60A | ||
+ | <hidden Lösungsvorschlag> | ||
+ | <code povray> | ||
+ | // Kamera | ||
+ | camera { | ||
+ | sky < | ||
+ | right < | ||
+ | location < | ||
+ | look_at <0, 0, 1> // Blickrichtung (erscheint im Bildmittelpunkt) | ||
+ | angle 30 // Öffnungswinkel der Kamera | ||
+ | } | ||
+ | |||
+ | // Lichtquellen | ||
+ | light_source { | ||
+ | < | ||
+ | color rgb < | ||
+ | } | ||
+ | light_source { | ||
+ | < | ||
+ | color rgb < | ||
+ | } | ||
+ | // Boden (xy-Ebene, kariert mit Quadraten von Seitenlänge 1) | ||
+ | plane { | ||
+ | z,0 // Ebene, senkrecht zu z=< | ||
+ | pigment { // Schachbrett | ||
+ | checker color rgb < | ||
+ | } | ||
+ | finish { reflection 0.4 } | ||
+ | } // Ende Boden | ||
+ | |||
+ | |||
+ | #declare zeit=clock*5/ | ||
+ | |||
+ | |||
+ | #declare wagen=16; | ||
+ | #declare h1=2; // Höhe über Boden des Drehzentrums. | ||
+ | #declare a1=15/ | ||
+ | #declare w2=12.0/ | ||
+ | #declare a2=w2*zeit; | ||
+ | #declare a3=5.0/ | ||
+ | #declare r3=5; // Distanz Drehzentrum - Passagier | ||
+ | |||
+ | #declare wagennr=0; | ||
+ | #while (wagennr< | ||
+ | #declare a2 = a2 + 1/ | ||
+ | #declare f3=-a3*cos(3*a2); | ||
+ | |||
+ | // K1 (Ebene der Drehscheibe) | ||
+ | #declare x1=-sin(a1)*z+cos(a1)*x; | ||
+ | #declare y1=y; | ||
+ | #declare z1=cos(a1)*z+sin(a1)*x; | ||
+ | #declare o1=h1*z; | ||
+ | | ||
+ | // K2 (Drehende Ebene) | ||
+ | #declare x2=cos(a2)*x1+sin(a2)*y1; | ||
+ | #declare y2=-sin(a2)*x1+cos(a2)*y1; | ||
+ | #declare z2=z1; | ||
+ | #declare o2=o1; | ||
+ | // K3 (mit Pendelbewegung) | ||
+ | #declare x3=cos(f3)*x2+sin(f3)*z2; | ||
+ | #declare y3=y2; | ||
+ | #declare z3=-sin(f3)*x2+cos(f3)*z2; | ||
+ | #declare o3=o2; | ||
+ | | ||
+ | #declare p=o3+r3*x3; | ||
+ | | ||
+ | sphere {p, 0.3 | ||
+ | pigment { color rgb x } | ||
+ | } | ||
+ | cylinder { o3,p,0.1 | ||
+ | pigment { color rgb x2 } | ||
+ | } | ||
+ | cylinder { p,p-10*z, 0.03 | ||
+ | pigment { color rgb z } | ||
+ | } | ||
+ | |||
+ | |||
+ | #declare wagennr=wagennr+1; | ||
+ | #end // while | ||
+ | </ | ||
+ | Maxima Code (für die Ableitungen) | ||
+ | < | ||
+ | |||
+ | /* K0 */ | ||
+ | o0:[0,0,0]; | ||
+ | x0:[1,0,0]; | ||
+ | y0:[0,1,0]; | ||
+ | z0:[0,0,1]; | ||
+ | |||
+ | alpha1: | ||
+ | h1:2; | ||
+ | |||
+ | /* K1 schiefe Ebene */ | ||
+ | o1: | ||
+ | x1: | ||
+ | y1:y0; | ||
+ | z1: | ||
+ | |||
+ | /* Parameter K2 */ | ||
+ | omega2: | ||
+ | alpha2: | ||
+ | |||
+ | /* K2, drehende Ebene */ | ||
+ | o2:o1; | ||
+ | x2: | ||
+ | y2: | ||
+ | z2:z1; | ||
+ | |||
+ | /* Parameter K3 */ | ||
+ | r3:5; | ||
+ | alpha3: | ||
+ | f3: | ||
+ | |||
+ | o3:o2; | ||
+ | x3: | ||
+ | y3:y2; | ||
+ | z3: | ||
+ | |||
+ | /* Passagier */ | ||
+ | |||
+ | define(p(t), | ||
+ | define(v(t), | ||
+ | define(a(t), | ||
+ | |||
+ | /* Betraege der Geschwindigkeit und Beschleunigung */ | ||
+ | define(aa(t), | ||
+ | define(vv(t), | ||
+ | |||
+ | plot2d([vv(t), | ||
+ | [title, " | ||
+ | [legend, " | ||
+ | </ | ||
+ | |||
+ | Das Bild dazu: | ||
+ | {{ : | ||
+ | $$\left[ 5\, | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | \sin \left({{\pi\, | ||
+ | | ||
+ | | ||
+ | | ||
+ | Beschleunigung: | ||
+ | $$\left[ 5\, | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | \cos \left({{2\, | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | \cos \left({{2\, | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | \sin \left({{2\, | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | \sin \left({{2\, | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | \sin \left({{\pi}\over{12}}\right)\, | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | </ | ||
===== VIP VIP ===== | ===== VIP VIP ===== | ||
2-fach Rotation (wovon 1 Pendelbewegung) | 2-fach Rotation (wovon 1 Pendelbewegung) | ||
- | | + | |
Angaben des Betreibers: | Angaben des Betreibers: | ||
Line 31: | Line 263: | ||
* 13.5 U/min für die Scheibe | * 13.5 U/min für die Scheibe | ||
* 14 U/min für die 4er Kreuze | * 14 U/min für die 4er Kreuze | ||
- | * 2m Raduis | + | * 2m Radius |
* Sitze frei drehend | * Sitze frei drehend | ||
* Facebook: https:// | * Facebook: https:// | ||
+ | |||
+ | <hidden POV-Ray und Maxima-Code> | ||
+ | <code povray> | ||
+ | // Kamera | ||
+ | camera { | ||
+ | sky < | ||
+ | right < | ||
+ | location < | ||
+ | look_at <0, 0, 1> // Blickrichtung (erscheint im Bildmittelpunkt) | ||
+ | angle 40 // Öffnungswinkel der Kamera | ||
+ | } | ||
+ | |||
+ | // Lichtquellen | ||
+ | light_source { | ||
+ | < | ||
+ | color rgb < | ||
+ | } | ||
+ | light_source { | ||
+ | < | ||
+ | color rgb < | ||
+ | } | ||
+ | // Boden (xy-Ebene, kariert mit Quadraten von Seitenlänge 1) | ||
+ | plane { | ||
+ | z,0 // Ebene, senkrecht zu z=< | ||
+ | pigment { // Schachbrett | ||
+ | checker color rgb < | ||
+ | } | ||
+ | finish { reflection 0.4 } | ||
+ | } // Ende Boden | ||
+ | |||
+ | |||
+ | #macro ksysttrans(oi, | ||
+ | matrix <xi.x, xi.y, xi.z, | ||
+ | yi.x, yi.y, yi.z, | ||
+ | zi.x, zi.y, zi.z, | ||
+ | oi.x, oi.y, oi.z> | ||
+ | #end | ||
+ | |||
+ | |||
+ | #declare zeit=clock*5; | ||
+ | |||
+ | |||
+ | #declare h1=1.4; | ||
+ | #declare a1=5/ | ||
+ | #declare w2=13.5/ | ||
+ | #declare a2=w2*zeit; | ||
+ | #declare r3=4.5; | ||
+ | #declare w3=(-14-13.5)/ | ||
+ | #declare a3=w3*zeit; | ||
+ | #declare r4=2; // Distanz Kreuzzentrum - Passagier | ||
+ | |||
+ | |||
+ | // K1 (Ebene der Drehscheibe) | ||
+ | #declare x1=-sin(a1)*z+cos(a1)*x; | ||
+ | #declare y1=y; | ||
+ | #declare z1=cos(a1)*z+sin(a1)*x; | ||
+ | #declare o1=h1*z; | ||
+ | |||
+ | // K2 (Drehende Ebene) | ||
+ | #declare x2=cos(a2)*x1+sin(a2)*y1; | ||
+ | #declare y2=-sin(a2)*x1+cos(a2)*y1; | ||
+ | #declare z2=z1; | ||
+ | #declare o2=o1; | ||
+ | |||
+ | // K3 (Drehende Kreuze) | ||
+ | #declare x3=cos(a3)*x2+sin(a3)*y2; | ||
+ | #declare y3=-sin(a3)*x2+cos(a3)*y2; | ||
+ | #declare z3=z2; | ||
+ | #declare o3=o2+r3*x2; | ||
+ | |||
+ | |||
+ | #declare p=o3+r4*x3+0.5*z3; | ||
+ | |||
+ | sphere {p, 0.3 | ||
+ | pigment { color rgb x } | ||
+ | } | ||
+ | |||
+ | cylinder { p,p-10*z, 0.03 | ||
+ | pigment { color rgb z } | ||
+ | } | ||
+ | |||
+ | |||
+ | // Definition in K2-Koordinaten | ||
+ | cylinder { 0, 0.1*z, 7 | ||
+ | pigment { checker color rgb x, color rgb x+y scale 2 } | ||
+ | // Transformation in K2 (bzw. umgekehrt) | ||
+ | transform { ksysttrans(o2, | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | Maxima-Code (für die Ableitungen der Position) | ||
+ | <code maxima> | ||
+ | /* K0 */ | ||
+ | o0:[0,0,0]; | ||
+ | x0:[1,0,0]; | ||
+ | y0:[0,1,0]; | ||
+ | z0:[0,0,1]; | ||
+ | |||
+ | alpha1: | ||
+ | h1:1.4; | ||
+ | |||
+ | /* K1 schiefe Ebene */ | ||
+ | o1: | ||
+ | x1: | ||
+ | y1:y0; | ||
+ | z1: | ||
+ | |||
+ | /* Parameter K2 */ | ||
+ | omega2: | ||
+ | alpha2: | ||
+ | |||
+ | /* K2, drehende Ebene */ | ||
+ | o2:o1; | ||
+ | x2: | ||
+ | y2: | ||
+ | z2:z1; | ||
+ | |||
+ | /* Parameter K3 */ | ||
+ | r3:4.5; | ||
+ | w3: | ||
+ | a3:w3*t; | ||
+ | |||
+ | o3: | ||
+ | x3: | ||
+ | y3: | ||
+ | z3:z2; | ||
+ | |||
+ | /* Passagier */ | ||
+ | r4:2; | ||
+ | |||
+ | define(p(t), | ||
+ | define(v(t), | ||
+ | define(a(t), | ||
+ | |||
+ | /* Betraege der Geschwindigkeit und Beschleunigung */ | ||
+ | define(aa(t), | ||
+ | define(vv(t), | ||
+ | |||
+ | plot2d([vv(t), | ||
+ | [title, " | ||
+ | [legend, " | ||
+ | </ | ||
+ | Heraus kommt folgende Grafik: | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Mit folgenden Vektoren für Position, Geschwindigkeit und Beschleunigung: | ||
+ | $$\vec{OP}(t) = \begin{pmatrix} 2\, | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | \sin \left({{\pi}\over{36}}\right)\, | ||
+ | | ||
+ | | ||
+ | \cos \left({{11\, | ||
+ | | ||
+ | \end{pmatrix} $$ | ||
+ | |||
+ | </ | ||
===== Weitere Bahnen ===== | ===== Weitere Bahnen ===== | ||
* Rotierende Rotationsachse (plus freie Pendelbewegung): | * Rotierende Rotationsachse (plus freie Pendelbewegung): |