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

Vektorfeld plotten

 

Pow
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 27.10.11
Wohnort: ---
Version: Scilab 5.3.3
     Beitrag Verfasst am: 28.10.2011, 09:34     Titel: Vektorfeld plotten
  Antworten mit Zitat      
Hallo,

ich beschäftige mich erst seit kurzem mit Scilab.
Ich versuche für eine Versuchsauswertung ein Vektorfeld zu zeichnen, doch irgendwie gelingt mir das nicht so ganz.

Ich habe eine Datei vorliegen, die aus den Bildern einer Kamera ein Vektorfeld erstellt und als ASCII-Datei abspeichert.
Diese Datei ist so aufgebaut:
Code:
x y u v
x y u v
x y u v
 


Wobei x und y für die Koordinaten im Bild stehen und u und v die Komponenten des Vektoren sind.

Dazu habe ich folgende Anweisung geschrieben:
Code:
clear
stacksize('max');
mat = fscanfMat('C:\...\V01A000700.T000.D000.P002.H007.L.vec');
fprintfMat('C:\...\Test.vec', mat);
x_temp = read('C:\...\Test.vec', -1, 1)';
y_temp = read('C:\...\Test.vec', -1, 2)';
u_temp = read('C:\...\Test.vec', -1, 3)';
v_temp = read('C:\...\Test.vec', -1, 4)';
x = x_temp(1, :);
y = y_temp(2, :);
u = u_temp(3, :);
v = v_temp(4, :);
[uv vv] = meshgrid(u, v);
champ(x, y, uv, vv, 1)
 


leider sagt er mir inzwischen bei dieser Anweisung:
Zitat:
-->champ(x, y, uv, vv, 1)
!--error 999
Dieses Objekt hat keine clip_state Eigenschaft.

Warning !!!
Scilab has found a critical error (EXCEPTION_ACCESS_VIOLATION)
with "champ" function.
Save your data and restart Scilab.



Kann mir da jemand helfen? Confused
Private Nachricht senden Benutzer-Profile anzeigen


Kevin
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 93
Anmeldedatum: 18.08.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.10.2011, 13:02     Titel:
  Antworten mit Zitat      
Hallo,
welche SCILABversion benutzt du denn?
Gruß
Kevin
_________________

1000 Buchstaben? Warum nur 6?
Private Nachricht senden Benutzer-Profile anzeigen
 
Pow
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 27.10.11
Wohnort: ---
Version: Scilab 5.3.3
     Beitrag Verfasst am: 28.10.2011, 13:14     Titel:
  Antworten mit Zitat      
Ich benutze die aktuellste Version 5.3.3 (32 bit)
Private Nachricht senden Benutzer-Profile anzeigen
 
Kevin
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 93
Anmeldedatum: 18.08.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.10.2011, 16:14     Titel:
  Antworten mit Zitat      
Hi,
ich hab des Befehl jetzt schon mit mehreren SCILAB 5 versionen getestet und bekomme auch immer eine Fehlermeldung. Mit Scilab 4.1.2 geht es, das hab ich grade probiert.
Im übrigen bin ich von SCILAB 5 (von allen versionen) extrem enttäuscht, weil da keine Verbesserungen drin sind. Es ist langsamer und m. E. eine Sammlung von Bugs.
Ich empfehle dir die 5er version zu löschen und mit der letzten 4er zu arbeiten. Vermutlich stolperst du dann über den Befehl uigetfile() (version 5), der vorher tk_getfile() (version 4) hieß. Wenn du eine GUI programmiert hast, kann es dir auch passieren, dass die seltsam bis unübersichtich aussieht...aber das lässt sich an einem Tag ändern.
Gruß
Kevin
_________________

1000 Buchstaben? Warum nur 6?
Private Nachricht senden Benutzer-Profile anzeigen
 
Pow
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 27.10.11
Wohnort: ---
Version: Scilab 5.3.3
     Beitrag Verfasst am: 31.10.2011, 11:13     Titel:
  Antworten mit Zitat      
Hallo Kevin,

vielen Dank, ich werde es gegen Ende der Woche mal ausprobieren und berichten, ob es wirklich die Problemlösung ist Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Pow
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 27.10.11
Wohnort: ---
Version: Scilab 5.3.3
     Beitrag Verfasst am: 03.11.2011, 14:03     Titel:
  Antworten mit Zitat      
Ich habe inzwischen die Version 4.1.2 ausprobiert und da habe ich leider das Problem, dass er beim meshgrid einen fatalen Fehler verursacht und Scilab dann komplett abstürzt (typische Windowsfrage, ob Programm beenden oder online Lösung suchen).

Also habe ich es nochmal mit der 5 Familie versucht und lustigerweise habe ich heute mit genau dem gleichen Code plötzlich eine völlig andere Meldung.
Zitat:
champ(x, y, u, v, 1)
!--error 999
champ: Erste(s) und dritte Argumente haben inkompatible Dimension.


Versteh ich es richtig, dass x und y für die Skala der x und y Achsen stehen (also 1. und 2. Argument)?

Bei mir sieht mein x Vektor also folgendermaßen aus:
32 64 96 128 ... 2016 32 64 96 ...

Es wiederholt sich also eine bestimmte Sequenz, während bei jeder Sequenz der y-Wert dann anders ist (wie ein Bild eben abgetastet wird, Pixel für Pixel)

Entsprechend sieht dann mein u-Vektor aus und die daraus gemachte Matrix (die Matrix ist dann 3969x3969 groß).


Habe ich da irgendwo einen Denkfehler?
Was mich völlig verwirrt ist ja, dass es bei den ersten 2 - 3 Versuchen ganz am Anfang sogar geklappt hat und Vektorfelder gezeichnet wurden Confused
Private Nachricht senden Benutzer-Profile anzeigen
 
Kevin
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 93
Anmeldedatum: 18.08.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.11.2011, 18:22     Titel:
  Antworten mit Zitat      
Hallo,
x und y gibt nur den Bereich der Achsen an, d.h. vin wo bis wo x und y liegen (size(x)==size(x_werte)//size(y)==size(y_werte)!!!). Erst dann kommen die Daten. Was die "1" als 5. Wert soll, weiß ich nicht. Ich benutze den nur mit 4 Argumenten.
Zitat:

Ich habe inzwischen die Version 4.1.2 ausprobiert und da habe ich leider das Problem, dass er beim meshgrid einen fatalen Fehler verursacht

Der Befehl meshgrid() geht bei mir...ich nutz ihn aber nicht, weil ich finde, dass der überflüssig ist, denn den x bzw y vektor mit nem Einheitvektor zu multiplizieren, um ne Matrix zu bekommen, kann ich noch selbst.
Wenn du dich für scilab 5 entscheidest, dann kann ich dir nur viel Glück wünschen, denn da hatte ich auch schon mit dem gleichen skript an verschiedenen Tagen verschiedene Fehlermeldungen...das ist mir zu hoch, was da passiert bzw. wahrscheinlich nicht passiert.
Gruß
Kevin
_________________

1000 Buchstaben? Warum nur 6?
Private Nachricht senden Benutzer-Profile anzeigen
 
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 - 2024 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.