| Normlen ploten im R^2 < Matlab < Mathe-Software < Mathe < Vorhilfe 
 
 
  |  |  
  | 
    
     |  | Status: | (Frage) beantwortet   |   | Datum: | 10:36 Fr 22.05.2009 |   | Autor: | DerGraf | 
 
 | Aufgabe |  | Stelle  die Punktmengen [mm] M_{np}:=\{ x\in\IR^n : \parallel x \parallel_p \le 1 \} [/mm] für n=1,2,3 und p [mm] \in 1,2,\infty [/mm] grafisch dar oder beschreibe diese verbal. Zusatz: Entwickle ein Matlab-Programm zur Darstellung von [mm] M_{np} [/mm] für n=2 und beliebiges p.
 | 
 Hallo,
 ich habe eine Frage zum Zusatz. Für p=1 haben wir folgendes Programm:
 
 clear;
 a=-1; b=1; n=20; dx=(b-a)/n;
 xv=(a:dx:b);
 yv=1-(abs(xv));
 zv=-yv;
 plot(xv,yv,xv,zv);
 
 Nun habe ich versucht, dieses Programm zu erweitern für p=1 und p=2:
 
 clear;
 a=-1; b=1; n=20; dx=(b-a)/n;
 xv=(a:dx:b);
 yv=1-(abs(xv));
 zv=-yv;
 subplot(2,1,1);
 plot(xv,yv,xv,zv);
 [mm] yv=sqrt(1-xv^2);
 [/mm]
 zv=-yv;
 subplot(2,1,2);
 plot(xv,yv,xv,zv);
 
 Leider gibt dies einen Fehler und ich weis nicht warum. Kann mir einer weiterhelfen?
 
 Gruß
 DerGraf
 
 
 
 
 
 |  |  |  | 
 
  |  |  
  | 
    
     |  | Status: | (Antwort) fertig   |   | Datum: | 11:16 Fr 22.05.2009 |   | Autor: | Frasier | 
 Hallo,
 
 der Fehler liegt in der 8. Zeile beim [mm] xv^2.
 [/mm]
 Hier versuchst du, zwei Vektoren miteinander zu multiplizieren. Vermutlich möchtest du aber einfach nur die Elemente von xv einzeln quadrieren.
 Das geht mit xv.^2.
 
 lg
 F.
 
 
 |  |  | 
 |  | 
 
  |  |  
  | 
    
     |  | Status: | (Frage) beantwortet   |   | Datum: | 12:21 Fr 22.05.2009 |   | Autor: | DerGraf | 
 Danke für die schnelle Hilfe :)
 Die 2. Norm hat jetzt auch geklappt. Für die Unendlichnorm kam jetzt folgender Gedanke:
 
 clear;
 a=-1; b=1; n=20; dx=(b-a)/n;
 xv=(a:dx:b);
 yv=1-(abs(xv));
 zv=-yv;
 subplot(3,1,1);
 plot(xv,yv,xv,zv);
 yv=sqrt(1-xv.^2);
 zv=-yv;
 subplot(3,1,2);
 plot(xv,yv,xv,zv);
 yv=1;
 zv=-yv;
 subplot(3,1,3);
 plot(xv,yv,xv,zv,yv,xv,zv,xv);
 
 Ich bekomme zwar keine Fehler, aber Graph 3 macht auch nichts. Was ist hier verkehrt?
 
 Gruß DerGraf
 
 
 |  |  | 
 |  | 
 
  |  |  
  | 
    
     |  | Status: | (Antwort) fertig   |   | Datum: | 13:08 Fr 22.05.2009 |   | Autor: | Frasier | 
 Hallo,
 
 die Punkte werden geplottet, aber nicht verbunden, weil die Dimensionen nicht passen: xv hat 21 Werte, yv und zv aber nur jeweils einen.
 Du kannst jetzt die Punkte mit Markern versehen, dann sieht man sie besser:
 plot(xv,yv,'rx',xv,zv,'bx',yv,xv,'gx',zv,xv,'mx');
 oder du passt die Größen an, dann werden sie auch verbunden:
 
 | 1: | yv=1*ones(size(xv)); |  | 2: | zv=-1*ones(size(xv)); |  | 3: | plot(xv,yv,xv,zv,yv,xv,zv,xv); |  | 4: | xlim([-1.2 1.2]); |  | 5: | ylim([-1.2 1.2]); | 
 Zur besseren Darstellung sind die Achsen etwas angepasst.
 
 lg
 F.
 
 
 
 |  |  | 
 |  | 
 
  |  |  
  | 
    
     |  | Status: | (Mitteilung) Reaktion unnötig   |   | Datum: | 13:57 Fr 22.05.2009 |   | Autor: | DerGraf | 
 Funktioniert fabelfahft, danke :)
 
 Gruß DerGraf
 
 
 |  |  | 
 
 
 |