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

Approximation via Interpolation von Messdaten

 

shalec
Forum-Anfänger

Forum-Anfänger


Beiträge: 34
Anmeldedatum: 11.07.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.07.2010, 13:38     Titel: Approximation via Interpolation von Messdaten
  Antworten mit Zitat      
Hallo,

ich habe ein Problem mit der im Anhang befindlichen "aufgabe.png".
Aufgabe a) ist kein problem.. einfach auf die messdaten zugreifen und plotten lassen

Code:
load liste.dat
x=liste(:,1); y=liste(:,2);
plot(x,y)


bei Aufgabe b) wirds schon schwerer, dies soll mit interpolation geschehen.

dazu sieht mein text bislang so aus:

Code:
load liste.dat

x=liste(:,1); y=liste(:,2);
t=x*0.01;
p=polyfit(t,y,2);
pp=polyval(p,y,2);
q=polyfit(t,y,1);
qq=polyval(q,y,1);


t musste gewählt werden, da das matlab auf dem uni-rechnerpool mir andernfalls bei polyfit fehler ausgab. (x-werte zu groß)

meine frage ist nun,
1)
wie kann ich den graph der messdaten mit einer quadratischen und linearen funktion approximieren (sodass die graphen in einem gemeinsamen plott auch auf der selben höhe (also zum teil die gleichen punkte) durchlaufen)

2)
wie kann ich mehere graphen gleichzeitig plotten lassen? (bei gnuplot ists ja einfach "plot x, y, f(x), ..." einfach mit "," getrennt funktioniert hier aber leider nicht :/ )

3.)
für aufgabe c) muss ich beide funktionen auch als funktionen angeben, sodass eine eingabe via p(2030) bzw. q(2030) auch den dazugehörigen zeitwert angeben (also eine relative prognose erstellen)

4.)
für aufgabe d) lässt sich doch via roots(p) bzw. roots(q) die "nullstellen" der approximationen angeben.. oder gibt es da einen eleganteren und besseren befehl um das ziel dieser aufgabe gekonnt zu bewältigen?


liebe Grüße und vielen Dank schonmal im Voraus!
Shalec


ps:
seh grad, das die .dat datei nicht hochgeladen werden kann, daher hier der inhalt:

Code:

1932 10.38
1948 10.34
1958 10.29
1960 10.25
1964 10.06
1968 9.95
1983 9.93
1987 9.93
1988 9.92
1991 9.86
1994 9.85
1996 9.84
1999 9.79
2005 9.77
2006 9.77
2007 9.74
2008 9.69
2009 9.58
 

Quelle: Wikipedia

aufgabe.png
 Beschreibung:

Download
 Dateiname:  aufgabe.png
 Dateigröße:  26 KB
 Heruntergeladen:  698 mal
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 11.07.2010, 17:40     Titel: Re: Approximation via Interpolation von Messdaten
  Antworten mit Zitat      
Hallo Shalec,

shalec hat Folgendes geschrieben:
t musste gewählt werden, da das matlab auf dem uni-rechnerpool mir andernfalls bei polyfit fehler ausgab. (x-werte zu groß)

Das ist eine mir unbekannte Fehlermeldung. Meinst Du die Warnung "Polynomial is badly conditioned"?
Skalieren oder Zentrieren ist dann der Weg der Lösung.

shalec hat Folgendes geschrieben:
1) wie kann ich den graph der messdaten mit einer quadratischen und linearen funktion approximieren (sodass die graphen in einem gemeinsamen plott auch auf der selben höhe (also zum teil die gleichen punkte) durchlaufen)

Du hast die X-Werte skaliert um die Polynom-Interpolation besser zu konditionieren. Danach mußt Du einfach wieder zurück-skalieren.

shalec hat Folgendes geschrieben:
2) wie kann ich mehere graphen gleichzeitig plotten lassen?

help hold

shalec hat Folgendes geschrieben:
3.) für aufgabe c) muss ich beide funktionen auch als funktionen angeben, sodass eine eingabe via p(2030) bzw. q(2030) auch den dazugehörigen zeitwert angeben (also eine relative prognose erstellen)

Hast Du verstanden, was POLYFIT berechnet? Es werden die Koeffizienten des Polynoms zurückgegeben:
y = a1 * x^2 + a2 * x + a3
Also ist Dein "p" und "q" bereits die Antwort. Ein Auswerten dieser Funktionen geht entweder mittels POLYVAL, man kann dies aber auch einfach in einer eigenen Funktion ausführen lassen.

shalec hat Folgendes geschrieben:
4.) für aufgabe d) lässt sich doch via roots(p) bzw. roots(q) die "nullstellen" der approximationen angeben.. oder gibt es da einen eleganteren und besseren befehl um das ziel dieser aufgabe gekonnt zu bewältigen?

ROOTS ist eine geeignete Funktion um Nullstellen eines Polynoms zu bestimmen.

Viel Erfolg, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
shalec
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 34
Anmeldedatum: 11.07.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.07.2010, 20:50     Titel:
  Antworten mit Zitat      
vielen dank schonmal für deine antwort!

wie kann ich denn in matlab das ganze entsprechend günstig skalieren?
der programmcode soll nun nichts besonderes darstellen, er entscheidet nur, ob ich den kurs bestanden hab oder nicht (bekomm dafür nur 3cp's und benötige das ganze egtl. nicht fürs studium, ist aber nen pflichtkurs <.<)

und ja, ich hatte polyfit verstanden, aber polyval nicht..^^

um diese aufgabe nun bewältigt zu haben ist jetzt egtl. nur noch die skalierung der schlüssel, richtig?

mit polyfit hab ich den graphen bereits approximiert, mit polyval kann ich ihn dann an antsprechenden stellen auswerten... werde dazu noch ne funktion f schreiben, sodass folgendes passiert:

Eingabe:
f(x)

Ausgabe:
Wert für p an der Stelle x und q an der Stelle x in Matrixschreibweise..
also:
erst so: f=[polyfit(x,y,2) polyfit(x,y,1)]=[p(x) q(x)]
also dass dann die koeffizienten auch in der matrix zu erst stehen und der anwender das ganze nachvollziehen kann.

btw. ist das erste, was ich außer den fibonacci zahlen, in matlab schreibe.. habe vorher noch nie sowas gebraucht o0



-----------------------------
meine idee ist jetzt diese:

Code:

function z=f(s);
load liste.dat
x=liste(:,1); y=liste(:,2);
p=polyfit(x,y,2);
z=polyval(p,s);
end
 


eingabe:
f(1930)

ausgabe
p(1930)

----------------------------------

damit kann ich nun das einzelne jahr ansteuern.. jetzt noch hinbekommen, dass das in der von mir gewünschten matrix darstellung erscheint.. (möglich auch so: [1;1])

dazu gleich noch ne frage.. meine datei "liste.dat" liegt dort:
Code:

cd f:\uni\  
cd '2. semester'
cd computerpraktikum\übung\13
 


der, der das programm ausführt, bei dem liegt das nicht da wo es bei mir liegt.. kann ich ne m-file machen (ich arbeite mit octave), die via matlab geladen wird und in dem ordner, in dem diese datei liegt, muss dann auch die liste.dat liegen, um dort direkt ohne CD drauf zuzugreifen?

also -> direkte ansprache der LISTE.DAT ohne ordnerpfadspezifisch zu arbeiten?

ich werd gleich noch ein wenig rum experimentieren und dann meinen bisherigen fortschritt stets dokumentieren.. =)

danke an dieser stelle nochmal für die hilfe^^[/code]
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 11.07.2010, 21:05     Titel:
  Antworten mit Zitat      
Ich weiss nicht, ob es in Octave geht, aber Matlab kann den Pfad des gerade laufenden M-Files bestimmen, so dass Du Ihn für den Dateinamen benutzen kannst:
Code:
MFile = mfilename('fullpath');
MPath = fileparts(MFile);
DatFile = fullfile(MPath, FileName);


Viel Erfolg, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
shalec
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 34
Anmeldedatum: 11.07.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.07.2010, 21:31     Titel:
  Antworten mit Zitat      
kannst du mir das vlt schreiben? mein octave weigert sich nen m-file zu erstellen >.<

hier der code, den ich bislang habe, dieser erfüllt aufgabe a-c:

Code:

%zum Plot der Messdaten und damit für Aufgabe a)
cd f:\uni\  
cd '2. semester'
cd computerpraktikum\übung\13
load liste.dat
x=liste(:,1); y=liste(:,2);


%Interpolation, für späteres Nullstellenberechnen
p=polyfit(x,y,2); q=polyfit(x,y,1);



%quadratische Funktion
function z=f(s);
cd f:\uni\  
cd '2. semester'
cd computerpraktikum\übung\13
load liste.dat
x=liste(:,1); y=liste(:,2);
p=polyfit(x,y,2);
z=polyval(p,s);
end

%lineare Funktion
function z=g(s);
cd f:\uni\  
cd '2. semester'
cd computerpraktikum\übung\13
load liste.dat
x=liste(:,1); y=liste(:,2);
q=polyfit(x,y,1);
z=polyval(q,s);
end

"Aufgabe a)"
plot(x,y)
title('Aufzeichnung der 100m-Lauf Messdaten')
xlabel('Jahr')
ylabel('Zeit [s]')
grid on


"Aufgabe b)"
"Quadratische Funktion f(x)=" p
"Lineare Funktion g(x)=" q
plot(p)
title('Approximation via Interpolation einer quadratischen Funktion')
xlabel('Jahr [*10^2]')
ylabel('Zeit [s]')
grid on

plot(q)
title('Approximation via Interpolation einer linearen Funktion')
xlabel('Jahr [*10^3]')
ylabel('Zeit [s]')
grid on


"Aufgabe c)"
"Zur Kontrolle: im Jahr 1930 ist ein Läufer so schnell gelaufen:"
["f(1930)=" f(1930);"g(1930)=" g(1930)]
"Im Jahre 2030 sind sie dann bereits so schnell:"
["f(2030)=" f(2030);"g(2030)=" g(2030)]

"Weitere Prognosen können mit f(Jahreszahl) oder g(Jahreszahl) angestellt werden. Nun weiter zur endlichen

Prognose, abwann das unmögliche möglich ist:"

"Aufgabe d)"
"Nach der quadratischen Funktion f(x) wird in den Jahren" roots(p) "ein Läufer in 0 Sekunden 100m gelaufen sein!"
"Nach der linearen Funktion g(x) wird im Jahr" roots(q) "ein Läufer 100m in 0 Sekunden zurückgelegt haben."
 


anstelle dieser cd's würd ich gern eine universelle aufrufe haben..und den gesamten code in einer m-file ladbar zu haben wäre auch super (für den, der es prüfen soll kommt das halt besser..)..

und kann man bei funktionen auch globale opperatoren aufrufen? jedesmal den polyfit zu schreiben verschwendet doch unmengen an speicherplatz.

also den code hätte ich gern in einer aufrufbaren file, und die liste.dat sollte dann im selben ordner liegen und aufgerufen werden können.

dank dir schonmal Smile



edit:\\
hab da jetzt eine .m-file erstellt, mit deinem vorgeschlagenen code..
mein octave gibt mir nen error aus , wenn ich ihm sag "load liste.m"..
hab die datei mal angehangen.. hab ich da irgendwas falsch gemacht?

liste.m
 Beschreibung:

Download
 Dateiname:  liste.m
 Dateigröße:  1.81 KB
 Heruntergeladen:  412 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 11.07.2010, 22:57     Titel:
  Antworten mit Zitat      
Hallo Shalec,

"Aufgabe d)"
"Nach der quadratischen Funktion f(x) wird in den Jahren" roots(p) "ein Läufer in 0 Sekunden 100m gelaufen sein!"
"Nach der linearen Funktion g(x) wird im Jahr" roots(q) "ein Läufer 100m in 0 Sekunden zurückgelegt haben."

Wenn Du ein Polynom hast, z.B. 2.ten Grades:
y = a2 * x^2 + a1 * x + a0
und wissen möchtest, wann y=0 ist, kannst Du das auch ohne ROOTS lösen - meine ich.

Dein DAT File in ein M-File zu übersetzen sollte nicht schwierig sein.
Code:
load('liste.dat');
[s1, s2] = size(liste);
FID = fopen('Liste.m', 'wb');
fprintf(FID, 'function L = liste\n');
fprintf(FID, 'L = [\n');
for i1 = 1:s1-1
  for i2 = 1:s2 - 1
    fprintf(FID, '%g, ', liste(i1, i2));
  end
  fprintf(FID, '%g;\n', liste(i1, s2));
end
fprintf(FID, '%g];\nreturn\n', liste(s1, s2));
fclose(FID);


Dieses M-file kannst Du nun im gleichen Ordner lagern.
Nebenbei findet WHICH auch Files mit ihrem File Namen.

Ein M-File in Octave zu erstellen ist nicht mein Aufgaben Gebiet.

Platzverschwendung durch wiederholt POLYFIT Aufrufe ist kein ernstes Problem. Ein paar Bytes werden schon noch übrig sein.

Ich selbst bin immer recht zufrieden, wenn ich sehe, dass meine Studenten sich auch in Foren nach Lösungen umschauen. Immerhin gehört zum erfolgreichen Programmieren auch ein koordiniertes Teamwork. Wenn ein Student dann noch seine Quellen angibt, ist das immer ein gutes Zeichen. Falls aber fertige Lösungen gepostet werden, können die Studenten kaum noch nachweisen, dass sie selbst Matlab anwenden können.

Gruß, Jan[/code]
Private Nachricht senden Benutzer-Profile anzeigen
 
shalec
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 34
Anmeldedatum: 11.07.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.07.2010, 23:28     Titel:
  Antworten mit Zitat      
Hallo und vielen Dank schonmal für die Antwort Smile
Jan S hat Folgendes geschrieben:
Hallo Shalec,

"Aufgabe d)"
"Nach der quadratischen Funktion f(x) wird in den Jahren" roots(p) "ein Läufer in 0 Sekunden 100m gelaufen sein!"
"Nach der linearen Funktion g(x) wird im Jahr" roots(q) "ein Läufer 100m in 0 Sekunden zurückgelegt haben."

Wenn Du ein Polynom hast, z.B. 2.ten Grades:
y = a2 * x^2 + a1 * x + a0
und wissen möchtest, wann y=0 ist, kannst Du das auch ohne ROOTS lösen - meine ich.


finde auch, dass ROOTS bei quadratischen Polynomen nicht gerade die beste Lösung ist, werde mir morgen dazu nochmal FZERO angucken. (funktioniert das so: "fzero(f,2000)" um die Nullstelle in der Nähe von 2000 herauszufinden? [müsste dann ja die 2. Nullstelle angeben])


Jan S hat Folgendes geschrieben:

Dein DAT File in ein M-File zu übersetzen sollte nicht schwierig sein.
Code:
load('liste.dat');
[s1, s2] = size(liste);
FID = fopen('Liste.m', 'wb');
fprintf(FID, 'function L = liste\n');
fprintf(FID, 'L = [\n');
for i1 = 1:s1-1
  for i2 = 1:s2 - 1
    fprintf(FID, '%g, ', liste(i1, i2));
  end
  fprintf(FID, '%g;\n', liste(i1, s2));
end
fprintf(FID, '%g];\nreturn\n', liste(s1, s2));
fclose(FID);


Dieses M-file kannst Du nun im gleichen Ordner lagern.
Nebenbei findet WHICH auch Files mit ihrem File Namen.


Jan S hat Folgendes geschrieben:

Ich selbst bin immer recht zufrieden, wenn ich sehe, dass meine Studenten sich auch in Foren nach Lösungen umschauen. Immerhin gehört zum erfolgreichen Programmieren auch ein koordiniertes Teamwork. Wenn ein Student dann noch seine Quellen angibt, ist das immer ein gutes Zeichen. Falls aber fertige Lösungen gepostet werden, können die Studenten kaum noch nachweisen, dass sie selbst Matlab anwenden können.

Gruß, Jan


Ich finde Plaquiate auch immer schrecklich, wenn man etwas nicht kann, sollte man dazu auch stehen..man studiert es ja schließlich um es irgendwie dann mal zu können. ich selbst studiere ja mathematik als vollfach, interessiere mich also nur für die mathematik, nicht fürs rechnen im allgemeinen. was jedoch schrecklicher ist und oft zum plaquiat verleitet, ist der intensive notendruck/leistungsdruck, dass studenten ein thema bis zu einem bestimmten punkt unbedingt verstanden haben müssen, da sie sonst nicht weiter kommen. auch klausuren sind keine wirklichen leistungsüberprüfungen.. generell sagt es nichts über die egtl. denkstruktur aus, nur darüber, wie gut gelernt werden kann.
finds auch traurig, dass seid der bachelor umstellung die meisten prüfungen in der mathematik nun schriftlich sind Sad


naja, ich denke mal, ich hab den kern schonmal soweit fertig, sodass ich nun nur noch den beischmuck, die schöngestaltung, machen sollte. für meinen prof. wäre es dann doch schon schöner, wenn er nicht noch selber den pfad eingeben müsste, wo die datei liegt^^ in html und delphi gabs immer son einfachen befehl wie "...\liste.dat" und schon ist man im selben verzeichnis Smile
aber ist egtl. schon eine bessere methode mit zeigern den speicherort zu suchen um dann dort die datei ausfindig zu machen.

naja liebe grüße und eine gute nacht und vielen dank für die bislang geleistete hilfe!

Shalec
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 12.07.2010, 11:11     Titel:
  Antworten mit Zitat      
Hallo Shalec,

finde auch, dass ROOTS bei quadratischen Polynomen nicht gerade die beste Lösung ist, werde mir morgen dazu nochmal FZERO angucken. (funktioniert das so: "fzero(f,2000)" um die Nullstelle in der Nähe von 2000 herauszufinden? [müsste dann ja die 2. Nullstelle angeben])

Laut Help-Text ist ROOTS speziell auf Polynome zugeschnitten, während FZERO auch andere Funktionen auswerten kann. Andererseits kann man "0 = a2*x^2 + a1 * x + a0" ja bekanntlicherweise auch mit der PQ-Formel lösen... Da die nun bei naiver Implementation bei Floating-Point-Arithmetik instabil ist, kann man dann als Korrigierender immer sehen, ob die Studenten den Numerik 0 Kurs schon verinnerlicht haben.

Nebenbei: Es gibt natürlich zwei Null-Stellen, möglicherweise natürlich auch komplex-wertige.

Viel Erfolg, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
shalec
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 34
Anmeldedatum: 11.07.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.07.2010, 18:29     Titel:
  Antworten mit Zitat      
Hallo,
ich hab jetzt eine funktionierende alternative gefunden:

Code:

%zum Plot der Messdaten und damit für Aufgabe a)
S = load('liste.dat', '-ascii');
x = S(:,1);  y  = S(:,2);


%Interpolation, für späteres Nullstellenberechnen
p=polyfit(x,y,2); q=polyfit(x,y,1);



%quadratische Funktion
function z=f(s)
S = load('liste.dat', '-ascii');
x = S(:,1);  y  = S(:,2);
p=polyfit(x,y,2);
z=polyval(p,s);
end

%lineare Funktion
function z=g(s)
S = load('liste.dat', '-ascii');
x = S(:,1);  y  = S(:,2);q=polyfit(x,y,1);
z=polyval(q,s);
end

"Aufgabe a)"
plot(x,y)
title('Aufzeichnung der 100m-Lauf Messdaten')
xlabel('Jahr')
ylabel('Zeit [s]')
grid on


"Aufgabe b)"
"Quadratische Funktion f(x)=" p
"Lineare Funktion g(x)=" q
plot(p)
title('Approximation via Interpolation einer quadratischen Funktion')
xlabel('Jahr [*10^2]')
ylabel('Zeit [s]')
grid on

plot(q)
title('Approximation via Interpolation einer linearen Funktion')
xlabel('Jahr [*10^3]')
ylabel('Zeit [s]')
grid on


"Aufgabe c)"
"Zur Kontrolle: im Jahr 1930 ist ein Läufer so schnell gelaufen:"
["f(1930)=" f(1930);"g(1930)=" g(1930)]
"Im Jahre 2030 sind sie dann bereits so schnell:"
["f(2030)=" f(2030);"g(2030)=" g(2030)]

"Weitere Prognosen können mit f(Jahreszahl) oder g(Jahreszahl) angestellt werden. Nun weiter zur endlichen Prognose, abwann das unmögliche möglich ist:"

"Aufgabe d)"
"Nach der quadratischen Funktion f(x) wird in den Jahren" fzero(@(x) f(x),2000) "ein Läufer in 0 Sekunden 100m gelaufen sein!"
"Nach der linearen Funktion g(x) wird im Jahr" roots(q) "ein Läufer 100m in 0 Sekunden zurückgelegt haben."
 



ich muss jetzt nur noch eine für matlab ladbare m-file erstellen, sodass ich das abgeben kann. nur mein octave stellt sich immernoch quer eine .m-file zu laden >.<

-----------------------------------
dann sollte ich noch die rootsausgabe ändern. hab gelesen, dass man den bereich, in dem die nullstellen berechnet werden sollen, eingrenzbar ist. in diese richtung werde ich mal weiter lesen, dann sollte es soweit klappen.
----------done--------------------

wie sieht ein m-file eigentl. vom inhalt her aus? ist dort nur der quelltext unverschlüsselt drin, oder gibts noch irgendwelche kryptischen anweisungen für matlab, die durch das m-file erstellen gemacht wurden?

liebe grüße
Shalec



edit::

wenn ich das ganze als m-file von octave speichere und dann das versuche zu laden, kommt folgender error:
Code:

error: load: abgabe.m: inconsistent number of columns near line 2
error: load: unable to extract matrix size from file `abgabe.m'
 


abgabe.m
 Beschreibung:
die m-file..

Download
 Dateiname:  abgabe.m
 Dateigröße:  1.54 KB
 Heruntergeladen:  391 mal
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 - 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.