Verfasst am: 09.01.2010, 15:16
Titel: probleme beim Einlesen von Daten und zu plotten
Hallo ,
Zuerst musste ich sagen sehr beschränke Kenntnisse von Matlab habe.ich habe nun die Aufgabe Messdatei Einzulesen und daraus dann 3 unterschiedliche Graph(Diagram 2 Achsen z.B kraft -weg, fliessspannung-umformgrad, spannung-dehnungs) zu erstellen .
Die Datei sieht folgendermaßen aus
function [ergebnis]=fli_umf(eps,sig)
phi=log(1+eps);
kf=sig*(1+eps);
ergebnis=[phi,kf];
Unter dem' main.m 'datei bekomme ich immer diese warnung und ich weiss es nicht genau ,wo ich fehler gemacht habe .und wie kan ich an schliessend zu drei unterschiedliche Diagram in eine Ansicht zu plotten .
ich habe noch folgendes gemacht .Trotzdem bekommen ich gleiche probleme,und ich weiss es nicht wie ich weiter arbeiten kann.
Kann jemand mir bisschen Helfen
for i=1:double(D): i;
f(i)=span_dehn(D(i,: ),l,b,d);
r(i)=fli_umf(f(i));
end
subplot(3,3,1);
plot(D(:,1),D(:,2)),xlabel('U'),ylabel('F'),title('Kraft-Weg');
hold on;
subplot(3,3,2);
plot(eps(1,: ),sig(1,: )),xlabel('eps'),ylabel('sig'),title('Spannungs_Dehnung');
hold on;
subplot(3,3,3);
plot(phi(1,: ),kf(1,: )),xlabel('phi'),ylabel('kf'),title('Fliessspnnung_Umformgrad');
hold on;
??? Undefined variable eps.
vlg
filo
die Variablen eps und phi gibt es im Hauptprogramm main.m nicht, sondern nur f(i) und r(i). Benutze lieber eine andere Laufvariable als i und j, wegen dem imaginären rechnen und benutze hier im Forum bitte die Code buttons. Bitte nicht falsch verstehen, sind nur Tipps, die dir helfen sollen.
Danke erstmal für deine Antwort.
wenn die eps und phi im Hauptprogramm main.m nicht gibt ,wie kann ich es verbessern (richtig schreiben )?
außerdem sind die rest richtig ?
P.S.ich wusste es nicht ,das ich auch code benutzen kann danke für deine hinweis.
sorry, ich dachte die Lösung wäre ersichtlich, du hast eine Funktion Span_dehn, diese liefert eine Variable zurück, welches ein 1x2 Array enthält mit eps und sig. Dieses speicherst du nun im main Script unter f(i) ab. Wobei mir fällt gerade auf, dass sollte so überhaupt nicht funktionieren. Mach doch lieber 2 rückgabevariablen eps und phi und nimm dann auch wieder 2 entgegen. Und dann plottest du diese natürlich. Also:
eps ist ein Matlabbefehl und sollte nicht als Variable benutzt werden. Du könntest du For Schleife auf komplett weglassen und gleich die jeweiligen Vektoren in der Funktion berechnen lassen.
Danke ,dass du zuruck geschrieben hast:)
ok ,ich habe eps schon weg gelassen
trotzdem es nicht funktioniert und gibt immer die gleiche problem''ep undefinierte variabel''.
ich habe es noch mal so geschrieben,ich weiss aber nicht ,ob dass besser oder nicht ? Aber habe noch die gleiche problem ''ep undefinierte variabel''.
unter dem daten.txt gibt zwei werte ,wie ich ganz oben geschrieben habe..
unter dem span-dehn.m
for k=1:double(D);k;
[ergebnis1]=span_dehn(D(k,:),b,d,l);
ep(k)=ergebnis1(1);
sig(k)=ergebnis1(2);
[ergebnis2]=fli_umf(sig(k),ep(k));
phi(k)=ergebnis2(1);
kf(k)= ergebnis2(2);
end subplot(3,3,1);
plot(D(:,1),D(:,2)),xlabel('U'),ylabel('F'),title('Kraft-Weg');
hold on;
subplot(3,3,2);
plot(ep(1,:),sig(1,:)),xlabel('Eps'),ylabel('Sig'),title('Spannungs_Dehnung');
hold on;
subplot(3,3,3);
plot(phi(1,:),kf(1,:)),xlabel('Phi'),ylabel('Kf'),title('Fliessspnnung_Umformgrad');
hold on;
Es funktioniert sehr gut .
es gibt noch aber eine problem ,ich sehe jetzt drei unterschiedliche diagram in eine Fenster,wie ich auch haben will, von den nur kraft-weg diagram zeigt die ergebnisse .ich weiss es nicht genau ob das eine fehler ist oder?
nun möchte ich die ergebnisse noch mal schreiben ,damit du mir auch besser helfen kansst .ich bedanke mich für deine Mühe
span_dehn.m
%Breite, Länge, Dicke
b=12;
l=20;
d=1.5;
%Daten einlesen
D=dlmread('daten.txt');
%erg=fli_umf(1,2);
phi=log(1+ep);
kf=sig*(1+ep);
ep=u/l;
sig=f/(b*d);
%
for k=1:double(D):k;
[ep(k),sig(k)]=span_dehn(D(k,: ),l,b,d);
[phi(k),kf(k)]=fli_umf(ep(k),sig(k));
end
%
subplot(3,3,1);
plot(D(:,1),D(:,2),'LineWidth',1),xlabel('U'),ylabel('F'),title('Kraft-Weg','fontsize',12);
hold on
subplot(3,3,2);
plot(ep,sig,'LineWidth',1),xlabel('ep'),ylabel('sig'),title('Span-Dehn','fontsize',12);
hold on
subplot(3,3,3);
plot(phi,kf),xlabel('phi'),ylabel('kf'),title('Fliessspan.-Umformgrad','fontsize',12);
hold on
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.