JGU Logo JGU Logo JGU Logo JGU Logo

Institut für Informatik

Modellierung 1

Michael Wand &
David Hartmann
Wintersemester 21/22

Parametrische Modellierung

Übungsblatt 2
Letzte Änderung: 05. November 2021, 16:07 Uhr
Bearbeitung bis: Freitag, der 12.11.2021, 15 Uhr



Aufgabe 1 - Was nicht alles linear ist...


Sei \(V\) der Vektorraum aller glatten (\(C^{\infty}\), die Menge aller beliebig oft stetig differenzierbaren) Funktionen auf einem Interval \([a,b] \in \mathbb{R}\). Wir betrachten nun lineare Gleichungen


\[ L (f) = g, \]


wobei \(L:V \rightarrow V\) eine lineare Abbildung vom Funktionenraum \(V\) auf sich selbst ist.


Aufgaben

  1. Zeigen Sie (unter Benutzung der bekannten Eigenschaften von Ableitungen), dass die Abbildung \(L = \frac{\partial^2}{\partial^2_x}\) eine lineare Abbildung ist.
  2. Geben Sie mindestens zwei nicht linear abhängige Funktionen an, die im Kern von \(\frac{\partial^2}{\partial^2_x}\) liegen.
  3. Betrachten Sie die Differentialgleichung \[ a(x) \cdot \frac{\partial^2}{\partial^2_x} f(x) + b(x) \cdot \frac{\partial}{\partial_x} f(x) + c(x) \cdot f(x) + d(x) = 0 \] für beliebige, fest gegebene Funktionen \(a,b,c,d \in C^{\infty}\) und eine unbekannte (gesuchte) Funktion \(f \in C^{\infty}\).

    Begründen Sie, warum die Menge aller Lösungen dieser "linearen" Differentialgleichung einen affinen (Unter-)Vektorraum (zur Erinnerung: das Ding mit den Schafen) bildet.

    Hinweis: Es ist nicht nötig, alle Vektorraumaxiome durchzuexerzieren. Einfacher ist, zu zeigen, dass wir es im wesentlichen mit einer affinen Abbildung auf einem Funktionenraum zu tun haben.

Aufgabe 2 - Parametrische Modellierung

Kurven, die sich um einen Torus wickeln, sind häufig verknotet und werden daher als Torusknoten (engl. torus knots) bezeichnet.
Analog zur parametrischen Darstellung von Tori definieren wir Torusknoten als parametrische Kurve wie folgt:


TorusKnot3D TorusKnot3D TorusKnot3D TorusKnot3D
Beispiele einiger Torusknoten. Quelle: Wolfram MathWorld


Definition: Torusknoten
Als Torusknoten bezeichnen wir die parametrische Kurve \(\alpha: [0, 2\pi] \rightarrow \mathbb{R}^3\), \[ \alpha (\varphi) = \left( \begin{array}{cc} \big(a + b \cos (q \varphi) \big) \cos (p \varphi) \\ \big(a + b \cos (q \varphi) \big) \sin (p \varphi) \\ c \sin (q \varphi) \end{array} \right), \] mit den freien Parametern \(a, b, c, q, p\).


Ganz am Rande:
Ob die Kurve tatsächlich verknotet ist, hängt von den Parameter \(p\) und \(q\) ab. Man kann zeigen, dass \(p\) und \(q\) teilerfremd sein müssen, damit eine Verknotung stattfindet.


Aufgaben:

  1. Visualisieren Sie zunächst die einzelnen Koordinaten der Kurve in Abhängigkeit des Bogenwinkels \(\varphi\) jeweils in 2D. Berechnen Sie dazu den Verlauf der jeweiligen Koordinated \((x,y,z)\) komponentenweise auf einem diskreten, uniformen Gitter auf \([0,2\pi]\).
    Visualisieren Sie nun den Graphen \(\varphi \rightarrow (\varphi,\alpha(\varphi_i))\) in 2D indem Sie zwei aufeinanderfolgende Gitterpunkte durch Linen verbinden. Wählen Sie dabei nun die Diskretisierung so fein, dass die Rundungen wirklich Glatt wirken. (Zu fein und die Visualisierung hackt. Wir möchten hier einen guten Mittelweg finden).
  2. Visualisieren Sie die parametrische Kurven in 3D.
    Wir erweitern dies jetzt zu 3d, statt der Komponenten visualisieren wir den Torusknoten direkt. Mithilfe des selben Gitters verbinden wir dazu einfach die 3d-koordinaten visualisieren dies in einem geeigneten Viewer.

    Hinweise zur Implementierung: Sie können eine Punktwolke erstellen (dafür existiert eine Trimesh-Klasse) und darüber hinaus können Sie die Farbwerte abhängig von \(\varphi\) wählen. In Pyrender können Sie dazu beispielsweise die Funktion "pyrender.Mesh.from_points(pointcloud,colors)" verwenden.
  3. Welche Eigenschaften des Torusknoten legen wir mit den Parametern \(a,b,c\) fest?
    Wir wählen nun (o.B.d.A.) \(a=2, b=1, c=1\), weiterhin seien \(p=2\) und \(q=5\).
    Testen Sie aber auch ruhig andere Paraḿetereinstellungen indem Sie je einen Slider implementieren, der den Torusknoten interaktiv verändert.
  4. Also nächstes versuchen wir uns an einer numerischen Näherung der Kurve
    Wir versuchen folgendes: dazu testen wir wie sehr sich Näherung und wahre Kurve unterscheidet, wenn wir stets der Ableitung folgen. Ziel ist es hier einzusehen wie schnell sich numerischer Fehler aufakkumuliert.
    1. Wir bestimmen zuerst die Ableitung \(\alpha'\).
    2. Wir starten mit dem Punkt \(\alpha(0)\). Bei einer Gitterweite von \(\Delta \phi\) lässt sich nach Taylor (lineare Ordnung) der nächste Diskretisierungspunkt durch \[\alpha(\Delta \phi) \approx \alpha(0) + \Delta\phi \cdot \alpha'(0)\] approximieren. Wenn wir uns auf unsere exakte Rechnung de Ableitung verlassen1 finden wir den übenächsten Diskretisierungspunkt bei \[\alpha(2\cdot \Delta \phi) \approx \alpha(0) + \Delta\phi \cdot \alpha'(0) + \Delta\phi \cdot \alpha'(\Delta \phi),\] und so weiter.

      Mit anderen Worten folgen wir der Ableitung des Torusknoten beginnend beim Startpunkt \(\alpha(0)\).
    3. Visualisieren Sie beides: den Torusknoten selbst und die numerische Näherung durch die Ableitung. Testen Sie verschiedene Gitterweiter \(\Delta \varphi\).
    4. Visualisieren Sie auch den Abstand dieser beiden Darstellungen abhängig vom Winkel \(\phi\).
  5. (*)2 Zuletzt nutzen wir die oben bestimmte Ableitung, um die Länge des Torusknoten zu berechnen.
    Konkret ist die Länge einer Kurve \(\alpha\) durch das Integral \[ L(\alpha) = \int \left\| \alpha'(\phi) \right\| d\phi \] gegeben. \(\|\cdot\|\) bezeichne dabei die Vektorlänge, also in unserem Fall mit drei Dimensiolnen ist \[\|(x,y,z)\| = \sqrt{x^2+y^2+z^2}.\]

    Wir versuchen nun zwei Arten für die Integration, die in der Vorlesung vorgestellt wurden:
    • einfache numerische Approximation: wir Diskretisieren wieder auf einem uniformen Gitter und Addieren die Längen aller Gitterpunkte gewichtet mit der Größe der Gitterzellen zusammen.
    • Monte Carlo Integration: Statt einem Gitter sampeln wir \(n\) Punkte im Bereich \([0,2\pi)\) und Addieren die lokal gesampelten Längen. Beachten Sie hierbei die richtige Normierung, damit wir auf eine gute Approximation kommen, wenn nur wenige Punkte verwendet werden.
    • analytisches Riemann Integral: wir bestimmen die tatsächliche Länge auf dem Papier


    Visualisieren Sie zuletzt die bestimmte Länge abhängig von der Anzahl Punkte, die verwendet wurden.
  6. Optional: Wenn Sie möchten können Sie bei der Markov-Integration für jede Anzahl an Punkten das Experiment wiederholen und so die jeweiligen Varianzen der Messung bestimmen.
    Stimmt die Konvergenz mit der in der Vorlesung vorgestellten Konvergenzgeschwindigkeit überein?



[1] Dies ist gar nicht so abwegig. Viele numeische Lösungen von Differentialgleichungen beruhen auf einer exakten Darstellung der Ableitung, die jedoch nicht ohne weitees Integriet werden kann.
[2] Diese Aufgabe ist etwas schwieriger.