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 06:44] – [Vorgehen] Ivo Blöchliger | lehrkraefte:blc:math:vektoranalysis:jahrmarkt [2018/09/28 12:17] (current) – [Berg und Tal Bahn] Ivo Blöchliger | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Vorgehen ====== | ||
| + | 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 ===== | ||
| + | Rotation mit vertikaler Wellenbewegung: | ||
| + | * Videos: [[https:// | ||
| + | |||
| + | Angaben des Betreibers zur Bahn: | ||
| + | * 16m Tiefe | ||
| + | * 12m Bahndurchmesser | ||
| + | * Zeltspitz 7.5m | ||
| + | * 6.2m Fassadenhöhe | ||
| + | * 12-14 U/min (ca. 35 km/h) | ||
| + | * 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 ===== | ||
| + | 2-fach Rotation (wovon 1 Pendelbewegung) | ||
| + | | ||
| + | |||
| + | Angaben des Betreibers: | ||
| + | * 12m - 13m Pendellänge | ||
| + | * Bis $120^\circ$ Auslenkung | ||
| + | * 6m -7m Kreisdurchmesser | ||
| + | * 22m höchster Punkt ab Boden | ||
| + | |||
| + | ===== Insider ===== | ||
| + | 2- (bzw. 3-fach Rotation, davon eine frei) auf schiefer Ebene | ||
| + | * Videos[[https:// | ||
| + | |||
| + | Angaben des Betreibers | ||
| + | * 7m Scheibenradius | ||
| + | * 2.5m von aussen bis zum Aufhängepunkt | ||
| + | * 13.5 U/min für die Scheibe | ||
| + | * 14 U/min für die 4er Kreuze | ||
| + | * 2m Radius der 4er Kreuze | ||
| + | * Sitze frei drehend | ||
| + | * 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 ===== | ||
| + | * Rotierende Rotationsachse (plus freie Pendelbewegung): | ||
| + | * [[https:// | ||
| + | * Freier Fall: | ||
| + | * [[https:// | ||
| + | * Einface Rotation des Aufhängepunktes: | ||
| + | * [[https:// | ||
| + | |||
| + | |||
| + | |||
| + | |||