Ellipsoid - Punkt innerhalb? < Sonstiges < Lineare Algebra < Hochschule < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 13:44 Mo 25.05.2009 | Autor: | becky--- |
Hi an alle,
sitz schon seit einiger Zeit an einer Aufgabe, bei der ich ermitteln muss, ob ein gegebener Punkt innerhalb oder außerhalb eines Ellipsoids liegt. Da das Ellipsoid auch gedreht sein kann, hab ich keine Ahnung, wie ich das anstellen könnte...hoffe es kann mir jemand weiterhelfen.
Bekannt sind der Mittelpunkt, die 3 radien und die 3 Winkel für das Ellipsoid und der zu untersuchende Punkt.
Gruß und schon mal Danke!
(Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.)
|
|
|
|
Kochrezept:
- Den Mittelpunkt in den Nullpunkt legen (d.h. von beiden gegebenen Vektoren abziehen).
- Normalform des Ellipsoids bestimmen.
- Punkt einsetzen.
- Erhaltener Wert auf der linken Seite <1: Innerer Punkt.
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 14:21 Mi 03.06.2009 | Autor: | becky--- |
Vielen Dank für deine Antwort!!
Wenn ich nach diesem Kochrezept vorgehe, werden dann schon die möglichen Drehungen (Drehwinkel) berücksichtigt oder muss ich dafür noch Weiteres berechnen bzw. beachten?
(Sorry für meine späte Reaktion, war bis gestern in Urlaub)
Schon mal Danke
|
|
|
|
|
Verstehe ich das recht, dass du wissen möchtest, ob ein gegebener Punkt eventuell nach Drehung des Ellipsoids ein innerer Punkt wird, auch wenn er vorher keiner war? Das wäre nämlich in dem Kochrezept noch nicht berücksichtigt. Dann bekommt man auch ein Problem damit, den Mittelpunkt in den Nullpunkt zu verschieben, da ja die Rotationsachsen sich ändern würden.
Beschreib doch nochmal genauer, was da passieren soll. Wenn ich versuche mir das vorzustellen, dann rotiert das Ellipsoid um den Nullpunkt und erzeugt dabei etwas ähnliches wie eine Kugelschale - nur elliptisch. Und du sollst jetzt sagen, ob dein Punkt in dieser Figur liegt?
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 18:32 Mi 03.06.2009 | Autor: | becky--- |
Meine Aufgabe ist eigentlich folgende:
Es gibt 2 Ellipsoide mit unterschiedlicher Lage, Drehwinkel und Radien (alles gegeben). Nun soll ich bestimmen, ob der der Mittelpunkt des einen Ellipsoids innerhalb des anderen Ellipsoids liegt.
Diese Fragestellung habe ich auf "liegt ein bestimmter Punkt in einem möglicherweise gedrehten Ellipsoid" reduziert.
Es geht also nur um die momentane Lage bzw. Drehung des Ellipsoids. Trotzdem finde ich keine Lösung, wie ich das mit der Drehung beachten muss. Kann es sein, dass ich davor noch eine Multiplikation mit einer Matrix, welche die Winkel enthält, durchführen muss?
Danke für deine schnelle Antworten!!!
|
|
|
|
|
> Meine Aufgabe ist eigentlich folgende:
>
> Es gibt 2 Ellipsoide mit unterschiedlicher Lage, Drehwinkel
> und Radien (alles gegeben). Nun soll ich bestimmen, ob der
> der Mittelpunkt des einen Ellipsoids innerhalb des anderen
> Ellipsoids liegt.
> Diese Fragestellung habe ich auf "liegt ein bestimmter
> Punkt in einem möglicherweise gedrehten Ellipsoid"
> reduziert.
>
> Es geht also nur um die momentane Lage bzw. Drehung des
> Ellipsoids. Trotzdem finde ich keine Lösung, wie ich das
> mit der Drehung beachten muss. Kann es sein, dass ich davor
> noch eine Multiplikation mit einer Matrix, welche die
> Winkel enthält, durchführen muss?
>
> Danke für deine schnelle Antworten!!!
Hallo Rebecca,
damit man genauer auf deine Fragen eingehen könnte,
müsste man genauer wissen, wie denn dein Ellipsoid
genau gegeben ist. Wenn es schon schön als Gleichung
bzw. das Innere des Ellipsoids in Form einer Ungleichung
in x, y, z beschrieben ist, müsste die Aufgabe dann
eigentlich trivial sein. Sind erst die drei Halbachsen, der
Mittelpunkt und die Drehwinkel gegeben, musst du dich
entscheiden, entweder den Punkt oder das Ellipsoid
zu drehen. Die notwendigen Drehungen werden dann
natürlich durch Matrizen dargestellt.
LG Al-Chw.
|
|
|
|
|
Hallo Al-Chwarizmi,
die Aufgabe muss ich im Rahmen eines C++-Programms lösen. Für die Berechnung erhalte ich leider nur die Halbachsen, die Drehwinkel und die Lage. Also keine Gleichung.
Du schreibst, man muss nun das Ellipsoid bzw. den Punkt durch Matritzenmultpliaktion drehen. Mir ist nur nicht ganz klar, wie ich die 3 Winkel in eine Matritze packen muss. Bestimmt gibt es eine allgemeingülitge Vorgehensweise, so dass ich die Lösung auch in C++ hinbekomme, oder? Vielleicht würde mir auch schon ein Stichwort reichen, so dass ich dann über Google danach suchen kann...
Dankeschön!
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 19:20 Fr 05.06.2009 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 09:34 Do 04.06.2009 | Autor: | becky--- |
Hallo Al-Chwarizmi,
die Aufgabe muss ich im Rahmen eines C++-Programms lösen. Für die Berechnung erhalte ich leider nur die Halbachsen, die Drehwinkel und die Lage. Also keine Gleichung.
Du schreibst, man muss nun das Ellipsoid bzw. den Punkt durch Matritzenmultpliaktion drehen. Mir ist nur nicht ganz klar, wie ich die 3 Winkel in eine Matritze packen muss. Bestimmt gibt es eine allgemeingülitge Vorgehensweise, so dass ich die Lösung auch in C++ hinbekomme, oder? Vielleicht würde mir auch schon ein Stichwort reichen, so dass ich dann über Google danach suchen kann...
Dankeschön!
Edit:
Hab mal bei Wiki nach Drehmatrix geschaut und bin mir nicht ganz sicher, ob es sich dabei schon um die Lösung für mein Problem handelt.
Ist es korrekt, wenn ich den Punkt nacheinander mit folgenden Matrizen multipliziere:
* Drehung mit x-Achse als Drehachse:
[mm] \begin{pmatrix} 1 & 0 & 0 \\ 0 & \cos \alpha & -\sin \alpha \\ 0 & \sin \alpha & \cos \alpha \end{pmatrix} [/mm] ,
* Drehung mit y-Achse als Drehachse:
[mm] \begin{pmatrix} \cos \beta & 0 & \sin \beta \\ 0 & 1 & 0 \\ -\sin \beta & 0 & \cos \beta \end{pmatrix} [/mm] ,
* Drehung mit z-Achse als Drehachse:
[mm] \begin{pmatrix} \cos \gamma & -\sin \gamma & 0 \\ \sin \gamma & \cos \gamma & 0 \\ 0 & 0 & 1 \end{pmatrix} [/mm] ?
Wenn es eine einfachere Lösung (z.b. mit nur einer Multiplikation) gibt, wär mir das natürlich lieber...
|
|
|
|
|
> Hallo Al-Chwarizmi,
>
> die Aufgabe muss ich im Rahmen eines C++-Programms lösen.
> Für die Berechnung erhalte ich leider nur die Halbachsen,
> die Drehwinkel und die Lage. Also keine Gleichung.
>
> Du schreibst, man muss nun das Ellipsoid bzw. den Punkt
> durch Matritzenmultpliaktion drehen. Mir ist nur nicht ganz
> klar, wie ich die 3 Winkel in eine Matritze packen muss.
> Bestimmt gibt es eine allgemeingülitge Vorgehensweise, so
> dass ich die Lösung auch in C++ hinbekomme, oder?
> Vielleicht würde mir auch schon ein Stichwort reichen, so
> dass ich dann über Google danach suchen kann...
>
> Dankeschön!
>
> Edit:
> Hab mal bei Wiki nach Drehmatrix geschaut und bin mir
> nicht ganz sicher, ob es sich dabei schon um die Lösung für
> mein Problem handelt.
> Ist es korrekt, wenn ich den Punkt nacheinander mit
> folgenden Matrizen multipliziere:
>
> * Drehung mit x-Achse als Drehachse:
>
> [mm]\begin{pmatrix} 1 & 0 & 0 \\ 0 & \cos \alpha & -\sin \alpha \\ 0 & \sin \alpha & \cos \alpha \end{pmatrix}[/mm]
> ,
>
> * Drehung mit y-Achse als Drehachse:
>
> [mm]\begin{pmatrix} \cos \beta & 0 & \sin \beta \\ 0 & 1 & 0 \\ -\sin \beta & 0 & \cos \beta \end{pmatrix}[/mm]
> ,
>
> * Drehung mit z-Achse als Drehachse:
>
> [mm]\begin{pmatrix} \cos \gamma & -\sin \gamma & 0 \\ \sin \gamma & \cos \gamma & 0 \\ 0 & 0 & 1 \end{pmatrix}[/mm]
> ?
>
> Wenn es eine einfachere Lösung (z.b. mit nur einer
> Multiplikation) gibt, wär mir das natürlich lieber...
Hallo Becky,
insofern es nur um die Drehungen geht, sind dies
die dazu nötigen Drehmatrizen . Man kann daraus
eine einzige (komplizierte) Matrix machen, wenn
man sie multipliziert. Der Prozess bleibt aber eher
übersichtlicher, wenn man die einzelnen Drehungen
stehen lässt.
LG Al
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 13:31 Do 04.06.2009 | Autor: | becky--- |
Ok, vielen Dank
|
|
|
|