matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Schulmathe
  Status Primarstufe
  Status Mathe Klassen 5-7
  Status Mathe Klassen 8-10
  Status Oberstufenmathe
    Status Schul-Analysis
    Status Lin. Algebra/Vektor
    Status Stochastik
    Status Abivorbereitung
  Status Mathe-Wettbewerbe
    Status Bundeswettb. Mathe
    Status Deutsche MO
    Status Internationale MO
    Status MO andere Länder
    Status Känguru
  Status Sonstiges

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenMatlabProblem mit der Winkelangabe
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Deutsch • Englisch • Französisch • Latein • Spanisch • Russisch • Griechisch
Forum "Matlab" - Problem mit der Winkelangabe
Problem mit der Winkelangabe < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Problem mit der Winkelangabe: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 20:10 Mi 03.04.2013
Autor: JamesDean

Aufgabe
Die Aufgabenstellung lasse ich mal weg, da das Programm bis auf ne kleinigkeit Funktioniert.


function [ m, y0, r, phi ] = gerade( x1, y1, x2, y2 )

%Geradengleichung aus Koordinaten bestimmen
% [m,y0] berechnen aus den beiden kartesischen
% Koordinaten P1 (x1,y1) und P2 (x2,y2)
% Den Abstand r des Punktes P1 vom Koordinatenursprung
% und seinen Winkel phi zur x-Achse in Grad
%Autor: D.Proeve/J.Gaedecke

if nargin == 2  %wenn nur zwei Parameter eingegegeben werden wird y0=0
             %ausgegegeben und der Radius wird mittels Pythagoras berechnet
    y0     = 0;
    r      = sqrt [mm] (x1^2 [/mm] + [mm] y1^2); [/mm]
    if x1 == 0  %wenn x1==0 wird auf dem Command Window der Formatstring
                %"Steigung Unendlich" gezeigt und außerdem die Steigung m
                %sowie WInkel Phi berechnet
        disp ('Steigung unendlich!')
        m   = sign(y1) * inf;
        phi = sign(y1) * pi/2 * 180/pi;
        return
    end  
    m   = y1 / x1;  %Ermittlung der Steigung via Steigungsdreieck
    phi = sign(y1) * atan2(y1,x1) * 180/pi; %Berechnung durch Bogenmaß  
    
elseif nargin == 4  
    if x1 == x2 %wenn x1 == x2 wird auf dem Command Window der Formatstring
                %"Steigung Unendlich" gezeigt und sowohl die Steigung m
                %berechnet als auch y0 ausgegeben
       disp ('Steigung unendlich!')
       m  = sign(y2-y1) * inf;  
       y0 = [];
      
    end
    m   = (y2-y1) / (x2-x1); %Ermittllung der Steigung mittels der
                             %Punktkoordianten
    y0  = (x2*y1 - x1*y2) / (x2-x1); %y0 wird mittels umgestellter geraden
                                     % Gleichung ermittelt
    r   = [];
    phi = [];

else
    disp ('Falsche Anzahl von Parametern!')
    help gerade
end

Schönen Guten Abend alle zusammen,

ich habe da ein Problem. Das Programm funktioniert bis auf eine kleinigkeit tadellos.
Bei der Winkelausgabe von der x-Achse aus gesehen gibt MATLAB  die Winkel mal von rechts und mal von links aus.
Was müsste ich am Programm verändern um das Einheitlich hin zu bekommen?

Mit freundlichen Grüßen

J.DEan

        
Bezug
Problem mit der Winkelangabe: Antwort
Status: (Antwort) fertig Status 
Datum: 21:02 Mi 03.04.2013
Autor: Lueger

Moin,

verstehe nicht ganz was du möchtest.
Meinst du diese Stelle?
phi = sign(y1) * atan2(y1,x1) * 180/pi; %Berechnung durch Bogenmaß  

Wenn du immer einen positiven Winkel möchtest musst du sowas wie
mod(atan2(-1,1)+2*pi,2*pi) * 180/pi
eingeben.

Wenn noch was ist melde dich noch mal ....
Grüße
Lueger

Bezug
                
Bezug
Problem mit der Winkelangabe: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 21:21 Mi 03.04.2013
Autor: JamesDean

Aufgabe
sign(y1) * atan2(y1,x1) * 180/pi

Was bleibt den davon jetzt erhalten oder wie kombiniere ich die beiden Ausdrücke?

Guten Abend,

wo setze ich den jetzt y1, x1 ein?


Mit freundlichen Grüßen

J.Dean

Bezug
                        
Bezug
Problem mit der Winkelangabe: Antwort
Status: (Antwort) fertig Status 
Datum: 21:34 Mi 03.04.2013
Autor: Lueger

Mir ist immer noch nicht ganz klar, ob du das überhaupt möchtest.

phi = mod(atan2(y1,x1)+2*pi,2*pi) * 180/pi ; %Berechnung durch Bogenmaß

Beispiel:
x = 1, y=1 -> Winkel 45 Grad
x = 1, y=-1 -> Winkel von atan2 -45 Grad durch die Umrechnung 315
Das liegt daran, dass der Winkel bei Matalb von -pi/2 bis pi/2 definiert ist (gib mal doc atan2 ein dann sieht du das schön mit einem Bildchen) und nicht von 0 bis pi.
War es das was du wolltest ?

Bezug
                                
Bezug
Problem mit der Winkelangabe: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 21:42 Mi 03.04.2013
Autor: JamesDean

Ja genau das habe ich gemeint, vielen Dank für deine Hilfe. Deine Antwort war wirklich sehr hilfreich.

Thank you

Mit freundlichen GRuß

J.DEan

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.schulmatheforum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]