% % Loesung Blatt 5 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Loesung Aufgabe 1 Blatt 5 % % % Datei b5_aufgabe1.m % % % Teil a % clear; A=[1 2 3; 4 5 6; 5 7 9]; % Initialisierung der einzelnen Groessen b=[0 0 1]'; disp(' '); disp('Teil a'); disp(' '); disp (' x1=A\b'); % Loesungsversuch via Linksdivision x1=A\b; % Octave warnt: System singulaer x1 disp('Residuenvektor r=A*x1-b'); % Ergebnis ist keine Loesung, da Residuenvektor ~=0!!! r=A*x1-b; r disp('Rang von A sowie Rang von [A b]'); % Das System hat keine Loesungen [rank(A) rank([A b])] pause; % % Teil b % b=[0 1 1]'; % Festlegung der neuen Groessen disp(' '); disp('Teil b'); disp(' '); disp (' x1=A\b'); x1=A\b; x1 disp('Residuenvektor r=A*x1-b'); % Diesmal liegt eine Loesung nach Linksdivision vor!!! r=A*x1-b; % Octave warnt: Matrix hat nicht vollen Rang!!! r disp('Rang von A sowie Rang von [A b]'); % Das System besitzt 8'-viele Loesung [rank(A) rank([A b])] pause; % % Teil c % warning off; % Unterdrueckt Warnungen A=[1 2 3; 4 5 6; 5 7 9]; b=[0 1 1]'; disp(' '); disp ('Teil d, System b'); disp(' '); disp('Loesung des homogenen Systems'); disp('x_hom=null(A)'); x_hom=null(A); x_hom disp('Partikulaere Loesung / Loesung des inhomogenen Systems'); disp('x_p=A\b'); x_p=A\b; x_p disp('Allgemeine Loesung'); disp('x=s*x_hom(:,1)+x_p'); disp('mit s aus den reellen Zahlen '); disp(' '); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Loesung Aufgabe 2 Blatt 5 % % % Datei b5_aufgabe2.m % % Test der Funktionen aus Aufgabe 2 % Blatt 5. % % Benoetigt Dateien abstpe.m und abstgg.m!!! % % % Teil a % p=[1 6 2]; % Bereitstellen der Groessen e=[1 -2 4 1]; abstpe(p,e) pause; % % Teil b % g1=[6 1 -4;4 1 -6]'; % Bereitstellen der Groessen g2=[4 0 3;0 -1 3]'; abstgg(g1,g2) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Datei abstpe.m % % Funktion zur Berechnung des Abstands eines Punktes von einer Ebene % Eingabe: (1,3)-Vektor p des Punktes, (1,4)-Vektor der Koeffizienten % der Koordinatengleichung der Ebene e. % % Ausgabe: Skalar d = Abstand von p und e. % function d=abstpe(p,e) A=e(1:3)*p'-e(4); % Anwendung der bekannten Formel B=norm(e(1:3),2); d=abs(A/B); end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Datei abstgg.m % % Funktion d=abstgg(g1,g2) zur Berechnung des Abstands % zweier windschiefer Geraden im Raum. % % Eingabe: (3,2)-Matrix der Geraden g1, (3,2)-Matrix der Geraden g2, % dabei stellt jeweils die erste Spalte den Orts- und die % zweite den Richtungsvektor dar. % % Ausgabe: Skalar d = Abstand von g1 und g2. % function d=abstgg(g1,g2) n=cross(g1(:,2),g2(:,2)); % Konstruktion eines zu beiden Geraden senkrechten Vektors f=norm(n,2); if (abs(f)