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

Komischer Fehler in Matlab? Vektorfeld

 

Residuum

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.08.2011, 10:13     Titel: Komischer Fehler in Matlab? Vektorfeld
  Antworten mit Zitat      
Hallo,

ich erzeuge mir ein Vektorfeld und würde gerne einen inneren Cirkel ignorieren. Sobalt ich aber die distanz (dis) verändere, wird mir ein anderes vektorfeld erzeugt. Woran kann das liegen? verändert dis>0 z.B. auf dis>10.


Code:

clear
x = [-100:100];
y = [-100:100];

 for i=1:201
       for j=1:201
           dis=sqrt( x(j)^2+ y(i)^2);  
           if(dis>0)
            gx(i,j) =   x(j)/dis^3;
            gy(i,j) =   y(i)/dis^3;
           else
            gx(i,j) =0;
            gy(i,j) =0;
           end
        end
 end
quiver(x,y,gx,gy,1);
 


Vielen Dank


BlackDread
Forum-Century

Forum-Century


Beiträge: 212
Anmeldedatum: 11.05.11
Wohnort: ---
Version: 2015a
     Beitrag Verfasst am: 08.08.2011, 11:37     Titel:
  Antworten mit Zitat      
Hallo Residuum,

wenn du bei der if-Abfrage dis>10 eingibst, muss sich das Ergebnis natürlich verändern, da zwischen
x,y = +-sqrt(50)
-->dis=sqrt( x(j)^2+ y(i)^2) kleiner als 10 ist.
Das entsprechende Element also null gesetzt wird.

edit: desweiteren teilst du die Elemente deines Vektorfeld durch dis^3
gy(i,j) = y(i)/dis^3

Grüßle Chris
Private Nachricht senden Benutzer-Profile anzeigen
 
Residuum

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.08.2011, 12:19     Titel:
  Antworten mit Zitat      
ich bin davon ausgegangen das sich die Vektoren im inneren um den Kreis mir Radius 10 entferenen (=0) aber nicht das das Vektorfeld auserhalb des Radius größer wird als vorher.
 
Residuum

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.08.2011, 12:29     Titel:
  Antworten mit Zitat      
also in der Matrix sind die Beträge die gleiche trozdem Zeichnet quiver die vektoren länger gibts da eine autoscalierung?
 
BlackDread
Forum-Century

Forum-Century


Beiträge: 212
Anmeldedatum: 11.05.11
Wohnort: ---
Version: 2015a
     Beitrag Verfasst am: 08.08.2011, 14:29     Titel:
  Antworten mit Zitat      
Ja es gibt eine Autoscalierung, du kannst sie über folgenden Code auslesen/verändern

Code:
YLim = get(gca, 'YLim');%y-limits auslesen
XLim = get(gca,'XLim');%x-limits auslesen
YLim = [-15 15];
XLim = [-15 15];
set(gca, 'YLim',YLim,'XLim',XLim);


Grüßle Chris

btw. bist das auch du? http://www.gomatlab.de/vector-field.....p-help-please-t19414.html
In anderen Foren wo ich unterwegs bin, wird sowas nicht gern gesehen, 2 mal das Gleiche/Ähnliche zu posten und unter verschiedenen Namen, oder ist dass nur ein (Studien-)Kollege, der die gleiche Hausaufgabe und Probleme hat?
Private Nachricht senden Benutzer-Profile anzeigen
 
Residuum

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.08.2011, 18:43     Titel:
  Antworten mit Zitat      
Hey denke das war ein Kommilitone.

Ich verstehe trozdem nicht wieso quiver die länger der Vektoren unterschiedliche zeichnet obwohl die beiden Matrizen gleich aussehen, mal davon abgesehen das bei einer ein innerer Kreis mit Nullen existiert, dass zerstört doch total die Vergleichbarkeit
 
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.