Frage

Ich arbeite an einem Geometrie Problem, dass die Kreuzung von zwei parabolischen Bögen in jeder Drehung erfordert finden. Ich konnte eine Linie und einen parabolischen Bogen durch die Ebene intesect Rotieren des Lichtbogens mit einer Achse auszurichten, aber zwei Parabeln können nicht beide ausrichten mit einer Achse. Ich arbeite mit den Formeln auf Ableitung, aber ich würde gerne wissen, ob es eine Ressource bereits für diesen verfügbar ist.

War es hilfreich?

Lösung

Ich würde zuerst die Gleichung für die Parabelbogen in 2D definieren, ohne Drehungen:

  x(t) = ax² + bx + c
  y(t) = t;

Sie können nun die Rotation gelten durch eine Rotationsmatrix Aufbau:

  s = sin(angle)
  c = cos(angle)

  matrix = | c -s |
           | s  c |

, dass die Matrix Nehmen und Sie werden die gedrehte Parametergleichung erhalten:

x' (t) = x(t) * c - s*t;
y' (t) = x(t) * s + c*t;

Dies gibt Ihnen zwei Gleichungen (für x und y) des parabolischen Bögen.

Sie, dass für beide Ihrer gedreht Bögen und sie abzuziehen. Dies gibt Ihnen eine Gleichung wie folgt aus:

  xa'(t) = rotated equation of arc1 in x
  ya'(t) = rotated equation of arc1 in y.
  xb'(t) = rotated equation of arc2 in x
  yb'(t) = rotated equation of arc2 in y.
  t1 = parametric value of arc1
  t2 = parametric value of arc2

  0 = xa'(t1) - xb'(t2)
  0 = ya'(t1) - yb'(t2)

Jede dieser Gleichung ist nur eine Ordnung 2 Polynom. Diese sind leicht zu lösen.

die Schnittpunkte finden Sie die obige Gleichung lösen (zum Beispiel die Wurzeln finden).

Sie werden bis zu zwei Wurzeln für jede Achse erhalten. Jede Wurzel, die gleich ist zu x und y ist ein Schnittpunkt zwischen den Kurven.

Getting die Position ist jetzt einfach. Nur die Wurzel in der Parametergleichung stecken und Sie können direkt x und y erhalten

Andere Tipps

Leider ist die allgemeine Antwort erfordert Lösung eines Polynom vierter Ordnung. Wenn wir Koordinaten so eine der beiden Parabeln-Transformation ist in der Standardform y ^ 2 = x, dann die zweite Parabel erfüllt (ax + by) ^ 2 + cx + dy + e == 0. Um die Kreuzung zu finden, lösen beide gleichzeitig. Substituieren in y = x ^ 2 sehen wir, dass das Ergebnis ein Polynom vierter Ordnung: (ax + bx ^ 2) ^ 2 + cx + dx + e ^ 2 == 0. Nils Lösung wird daher nicht (seinen Fehler: jeder ist ein Polynom 2. Ordnung in jede Variable einzeln, sondern zusammen sind sie nicht).

Es ist einfach, wenn Sie einen CAS zur Hand haben.

Sehen Sie die Lösung in Mathematica.

Wähle eine Parabel und Änderungs-Koordinaten so seine Gleichung y (x) = a x ^ 2 (Normalform).

Die andere Parabel wird die allgemeine Form haben:

A x^2 + B x y + CC y^2 + DD x + EE y + F == 0 

where B^2-4 A C ==0 (so it's a parabola)  

Lassen Sie uns einen numerischen Fall lösen:

p = {a -> 1, A -> 1, B -> 2, CC -> 1, DD -> 1, EE -> -1, F -> 1};
p1 = {ToRules@N@Reduce[
       (A x^2 + B x y + CC y^2 + DD x + EE y +F /. {y -> a x^2 } /. p) == 0, x]}

{{x -> -2,11769}, {x -> -,641445},     {X -> 0.379567- 0,76948 I},     {X -> 0.379567+ 0,76948 I}}

Lassen Sie uns plotten es:

Show[{
  Plot[a x^2 /. p, {x, -10, 10}, PlotRange -> {{-10, 10}, {-5, 5}}], 
  ContourPlot[(A x^2 + B x y + CC y^2 + DD x + EE y + F /. p) == 
    0, {x, -10, 10}, {y, -10, 10}],
  Graphics[{
    PointSize[Large], Pink, Point[{x, x^2} /. p /. p1[[1]]],
    PointSize[Large], Pink, Point[{x, x^2} /. p /. p1[[2]]]
    }]}]

eingeben Bild Beschreibung hier

Die allgemeine Lösung beinhaltet die Wurzeln der Berechnung:

4 A F + 4 A DD x + (4 A^2 + 4 a A EE) x^2 + 4 a A B x^3 + a^2 B^2 x^4 == 0  

Welche ist leicht in jeder CAS getan.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top