WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Schnittpunkt Gerade - Kreiskegel (Mantelfläche)

 

Brathamster
Forum-Newbie

Forum-Newbie


Beiträge: 1
Anmeldedatum: 30.03.15
Wohnort: ---
Version: R2015a
     Beitrag Verfasst am: 31.03.2015, 15:22     Titel: Schnittpunkt Gerade - Kreiskegel (Mantelfläche)
  Antworten mit Zitat      
Hallo liebe Leute,

ich möchte den Schnittpunkt einer beliebigen Geraden mit der Mantelfläche eines Kreiskegels berechnen.

Die Mantelfläche lässt sich folgendermaßen beschreiben:
x = 0 + s cos(phi)
y = 0 + s sin(phi)
z = Z_0 + s m

Die Spitze liegt also auf der z-Achse bei Z_0 und der Öffnungswinkel ist arctan(m). Der Winkel (phi) beschreibt die Rotation um die z-Achse und s ist irgendein realer Parameter. (Für eine Lösung des nichtlinearen Gleichungssystems mit fsolve fehlt mir die "Optimization Toolbox", daher muss ich es irgendwie anders hinbekommen.)

Mit nur einer Geraden aus der Kegelfläche ist der Abstand leicht berechnet:
Code:
d = dot([P_g-P_k],cross(g,k));

(P - Punkt von Gerade bzw. Kegel, g/k jeweilige Richtungsvektoren)[/code]

Ich würde statt k gern ein k(phi) nutzen, aber da macht mir das Kreuzprodukt nicht mit. (Und die Toolbox für symbolisches Rechnen fehlt mir auch.) Also wie finde ich den Winkel (phi) meines Schnittpunktes (wenn es denn einen gibt)?

Den Winkel per Schleife durchlaufen zu lassen und nach d(phi)=0 zu suchen, erscheint mir zu umständlich und ungenau.

Etwas eleganter, aber genauso ungenau wäre die Erstellung einer Matrix für den Richtungsvektor k in Abhängigkeit von Phi. Aber auch hier wäre die Erstellung der Vektoren wohl auf eine Schleife angewiesen.

Hat jemand eine Idee, ob ich die Schleifen vermeiden kann? Und wenn schon Schleife, dann wäre natürlich irgendein iteratives Suchverfahren optimal.

Schönen Gruß in die Runde und Danke im Vorraus!
Private Nachricht senden Benutzer-Profile anzeigen


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 31.03.2015, 15:59     Titel:
  Antworten mit Zitat      
http://de.wikipedia.org/wiki/Schnit.....er_Gerade_mit_einem_Kegel
sollte mit ein wenig vektorrechnung nicht so schwer sein das umzusetzen denke ich. wenn fehler im code auftauchen oder du irgendwo hängst kannst du ja dann konkret fragen.
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.