Hilfe beim Erstellen des GUIs von "bestehendem" Pr
physiker
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 11.09.2009, 17:17
Titel: Hilfe beim Erstellen des GUIs von "bestehendem" Pr
hallo
ich arbeite da grad an einem für mich doch recht großem programm mit vielen hürden.
ich muss dazu sagen, dass mein wissenstands zum erstellen eines GUIs eher gering ist, aber ich habe mich mal versucht und bin soweit gekommen:
% dy = der(y,x,n)
%
% DER calculates the n'th difference of y : dy=y/x % using a third order scheme for n=1, fourth order for n=2 and % fifth order for n=3 % y matrix to be derived (data sets are columns) % x x-axis for y, has to be equidistant % n derivative order n=1,2 or 3 (default is 1) % dy derived matrix
% ThDdW 5/89
%changed by Christiane Schroeder 25.4.2003: included x, so that also
%for dx~=1 derivative is correctly calculated
[m,n2]=size(y);
if m==1, y=y.'; m=n2; n2=1; end if nargin<2, x=1:m; end if nargin<3, n=1; end% default is first derivative
dx=x(2)-x(1);
if n==1,
edge = 3*y([1,m],:) - 4*y([2,m-1],:) + y([3,m-2],:); % y' at edge
dy = [-edge(1,:); y(3:m,:)-y(1:m-2,:); edge(2,:)]/2;
dy=dy/dx;
elseif n==2,
edge = 2*y([1,m],:) - 5*y([2,m-1],:) + 4*y([3,m-2],:)...
- y([4,m-3],:); % y'' at edge
dy = [-edge(1,:); y(3:m,:)-2*y(2:m-1,:)+y(1:m-2,:); edge(2,:)];
dy=dy./(dx^2);
elseif n==3,
edge = (5*y([1:2,m-1:m],:) - 18*y([2:3,m-2:m-1],:)...
+ 24*y([3:4,m-3:m-2],:) - 14*y([4:5,m-4:m-3],:)...
+ 3*y([5:6,m-5:m-4],:));
dy = [y(5:m,:)-2*y(4:m-1,:)+2*y(2:m-3,:)-y(1:m-4,:)];
dy = [-edge(1:2,:); dy; edge(3:4,:)]/2;
dy=dy./(dx^3);
end
1) zunächst habe ich noch ein kleines problem im programm. ich habe ja 2 plots. im rechten möchte ich egal zu welcher zeit einen datenpunkt extrahieren (das wäre dann potpl) und mit diesem dann weiter rechnen. mein problem ist zunächst, dass dieser ausgesuchte punkt auch wirklich punkt der menge ist. (das habe ich in der if schleife versucht, aber das wird nichts!) es muss der punkt im plot sein, der vorher geplottet ist, aber das krieg ich irgendwie nicht hin. und wie kann ich es anstellen, dass ich diesen punkt egal zu welcher zeit aktualisieren kann (gerne per knopfdruck) und die berechnung erneut alle werte dementsprechend anpasst? außerdem sollte sich der cursor nur auf den datenbereich beschränken...wie so eine sonde...ich brauche hier auch nur den x wert (abzisse)
2) zum gui
ich möchte gerne eine zusammenhängende oberfläche haben, auf der die beiden plots sind und die berechneten werte para in jeweils verschiedenen Felder auber, schick angezeigt werden und gegebenfalls aktualisiert werden, wenn man siehe oben den einen wert ändert. dann wollte ich noch sowas einbauen, dass man eine liste mit der directory hat, wo man dann seine messwerte aussuchen kann. die benutzte variante praktisch im programm, aber auf der oberfläche angewendet. geht sowas?
hui das wird noch viel arbeit. ich hoffe, dass mir einer vllt helfen kann. ich freu mich und bedanke mich im voraus!
p.s.: übrigens das prog oben, hab ich fast alleine durch lesen von beiträgen aus diesem forum zusammenbauen können, also weiter so!!!
mit dieser bestimmst du per Klick den Punkt. Da es nicht gegeben ist, dass du den richtigen Wert triffst, müsstest du eine Berechnung anschließen, die dir den nächstgelegenen Punkt bestimmt und diesen dann für deine Berechnungen verwendet.
zu 2.: Ich habe deinen Code, mangels Files (ja, ich bin zu Faul mir eigene zu erstellen ), nicht ausgeführt. Aber wenn du dein GUI mit GUIDE erstellst, dann bist du auf dem richtigen Weg, du musst nur deine Berechnungen an den richtigen Stellen einbauen. Oder du erstellst dir das GUI manuell, was allerdings zu Fummelarbeit ausarten kann, je nach dem...
Die letzte Frage zu 2. habe ich nicht verstanden.
also ginput habe ich schon benutzt und dann per schleife prüfen lassen, welcher genaue wert dann als nächstes dazu passt aber irgendwie funktioniert das nicht...warum auch immer....kannst du dort vllt nochmal in die schleife schauen?
also bezogen auf dieser sache, habe ich bereits ein fertiges gui gesehen, wo man nur mit der maus in diesem einen bestimmten diagramm sich die werte geben lassen konnte. wie kann man sowas realisieren?
zu 2) ich würde gerne sone art liste im gui reinpacken mit der ich dann durch die directories switchen kann und dann die datei mit den messwerten aussuchen kann, die dann geladen werden und berechnet werden.
also das problem mit der schleife habe ich beheben können.!
so stelle ich mir das gui vor, aber mir fehlt das wissen um den code einzuspeisen. mit der liste habe listbox directory reader gefunden (schon fertig gebaut)
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
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.