www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 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
Forum "Matlab" - Inkreismittelpunkt Dreieck
Inkreismittelpunkt Dreieck < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Inkreismittelpunkt Dreieck: in Matlab Inkreismittelpunkt
Status: (Frage) beantwortet Status 
Datum: 22:32 Mi 29.11.2006
Autor: makao

Aufgabe
Berechnung des Inkreismittelpunkts eines Dreiecks in Matlab.

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

Anmerkung: mit der Schulmethode soll ich den Inkreismittelpunkt (IKP) ausrechnen, d.h. Winkelsymmetralen aufstellen, und schneiden.

Nur ich habe das Problem, dass ich mit Matlab keine Geraden aufstellen kann, weil ich zu jeder Variable vorher den Wert der Variable definieren muss, sonst zeigt Matlab einen Fehler an.

d.h. ich kann Nicht sagen:
g=A+t*X



Unser Prof. hat gemeint mit:
-
a*x+b*y+c=0  mit Nebenbedingung: [mm] a^2+b^2=1 [/mm] ... so eine Gerade aufstellen.
-dann alle 3 Seiten des Dreiecks ausrechnen
-dann die Winkelsymmetralen
-dann durch Schnittpkt der winkelsymmetralen erhalte ich den Inkreismittelpunkt.

Also ich versteh auch nicht, warum diese Nebenbedingung gelten muss.
Aber wie gesagt, das Hauptproblem: Wie gebe ich diese Gleichung der Geraden a*x+b*y+c=0  in Matlab ein, wenn ich x und y keine Werte vorher zuweisen möchte?

        
Bezug
Inkreismittelpunkt Dreieck: Antwort
Status: (Antwort) fertig Status 
Datum: 23:37 Mi 29.11.2006
Autor: Martin243

Hallo,

> ich kann Nicht sagen:
> g=A+t*X

Nein, aber du kannst sagen:
g = 'A + t*X'

Sieh dir am besten die Hilfe zu solve an. Dort steht auch, wie man es aufruft, um die Lösungen für alle Unbekannten zu bekommen.


Zu dem [mm] $a^2 [/mm] + [mm] b^2 [/mm] = 1$:
Es scheint die Hesse-Normalform einer Gleichungsgeraden zu sein. Diese hat die Form:
$l(x,y) = [mm] x\cos\beta [/mm] + [mm] y\sin\beta [/mm] - p = 0$.

Wegen [mm] $\sin^2\beta [/mm] + [mm] \cos^2\beta [/mm] = 1$ stellt man für $a$ und $b$ sicher, dass man eine Hesse-Normalform hat.


Gruß
Martin

Bezug
                
Bezug
Inkreismittelpunkt Dreieck: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 01:42 Do 30.11.2006
Autor: makao

function i = inkreis(A,B,C);
% A=[1; 2]; B=[4; 1]; C=[6; 8];
a1=A(1);a2=A(2);
b1=B(1);b2=B(2);
c1=C(1);c2=C(2);

d = (B-A)/ norm(B-A) +(C-A)/norm(C-A);
%Winkelhalbierender Vektor der Ecke A
d1=d(1);d2=d(2);
e =  (A-B)/ norm(A-B)+(C-B)/norm(C-B);
%Winkelhalbierender Vektor der Ecke B
e1=e(1);e2=e(2);

syms t % Einführung einer neuen Variable (symbolic variables)
I = a1 + t*d1- b1-t*e1;  
% Hier werden die Winkelsymmetralen geschnitten, d.h. gleichgesetzt
t=solve(I,t); %Gleichung nach t lösen
t=simplify(t);
t=simple(t);
s1 = a1 + t*d1;
%t in die Gleichung einer Winkelsymmetrale einsetzen ergibt den x-Wert
%des Inkreismittelpunktes
s2 = a2 + t*d2;

I=[s1;s2] %Inkreismittelpunkt; wird aber als Bruch dargestellt!!!

Bezug
                
Bezug
Inkreismittelpunkt Dreieck: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 01:49 Do 30.11.2006
Autor: makao

habe jetzt meine Lösung weiter oben gepostet.

er berechnet auch den Inkreismittelpunkt. Nur stellt er dies als BRUCH dar. selbst wenn ich simplify sage (siehe Code), dann gibt Matlab den Inkreismittelpunkt als Bruch aus?!??

z.B. gibt er dann folgendes aus:
>> A=[1 2];
B=[4 1];
C=[6 8];inkreis(A,B,C)

I =

31657751663844521/10190879749733735
  21190842365978435/8152703799786988

dabei stimmt das Ergebnis. habe eine Zeichenkontrolle gemacht.

danke schon im Voraus! :-)

Bezug
                        
Bezug
Inkreismittelpunkt Dreieck: Antwort
Status: (Antwort) fertig Status 
Datum: 08:24 Do 30.11.2006
Autor: Martin243

Hallo,

versuche es doch mal mit eval(...).


Gruß
Martin

Bezug
                
Bezug
Inkreismittelpunkt Dreieck: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 01:57 Do 30.11.2006
Autor: makao


> Zu dem [mm]a^2 + b^2 = 1[/mm]:
>  Es scheint die Hesse-Normalform
> einer Gleichungsgeraden zu sein. Diese hat die Form:
>  [mm]l(x,y) = x\cos\beta + y\sin\beta - p = 0[/mm].
>  
> Wegen [mm]\sin^2\beta + \cos^2\beta = 1[/mm] stellt man für [mm]a[/mm] und [mm]b[/mm]
> sicher, dass man eine Hesse-Normalform hat.


wieso stellt man dass dadurch sicher, dass es dann eine Hesse-Normalform ist?
irgendwie versteh ichs grad nicht.


Bezug
                        
Bezug
Inkreismittelpunkt Dreieck: Antwort
Status: (Antwort) fertig Status 
Datum: 08:32 Do 30.11.2006
Autor: Martin243

Mal angenommen, du hast bereits eine Geradengleichung, die aber die Nebenbedingung nicht erfüllt:
$l(x,y) = Ax + By + C = 0$

Wenn ich nun sage: Leite daraus die Hesse-Normalform ab, dann musst du die Koeffizienten so verändern, dass der x-Koeffizient den Kosinus des Steigungswinkels und der y-Koeffizient den Sinus des Steigungswinkels ergibt (das ist eben diese Normalform).
Da aber [mm] $\sin^2\beta [/mm] + [mm] \cos^2\beta [/mm] = 1$ gilt und deine Bedingung [mm] $a^2+b^2=1$ [/mm] lautet, läuft es darauf hinaus, dass du [mm] $a=\cos\beta$ [/mm] und [mm] $b=\sin\beta$ [/mm] setzen musst, da dies eine eindeutige Darstellung ist.


Gruß
Martin

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


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]