Matlab: Unterschied zwischen den Versionen

Aus Physik
Zur Navigation springen Zur Suche springen
Zeile 10: Zeile 10:
 
und aus den Vorlesungsunterlagen.
 
und aus den Vorlesungsunterlagen.
   
== Matlab Books ==
 
Eine Reihe von Matlab Dokumentationen steht auch im pdf-Format zur Verfügung.
 
 
{| border="1" cellpadding="5" cellspacing="0" align="center"
 
|+'''Unterlagen'''
 
|-
 
! style="background:#efefef;" | Link
 
! style="background:#efefef;" | Typ
 
! style="background:#efefef;" | Anmerkung
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/getstart.pdf Getting Started]
 
| pdf
 
| Einführung
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/math.pdf Mathematics]
 
| pdf
 
| Mathematische Anwendung
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/graphg.pdf Graphics]
 
| pdf
 
| Erstellung von Graphiken
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/data_analysis.pdf Data Analysis]
 
| pdf
 
| Datenanalyse
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/matlab_prog.pdf Programming]
 
| pdf
 
| Programmieren mit Matlab
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/programming_tips.pdf Programming Tips]
 
| pdf
 
| Programmier Tipps
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/ode_suite.pdf ODE-Suite]
 
| pdf
 
| Gewöhnliche Differentialgleichungen
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/matlab_env.pdf Development Environment]
 
| pdf
 
| Matlab Umgebung
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/build_gui.pdf Building GUIs]
 
| pdf
 
| Graphische Benutzeroberfl]chen
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/refbook.pdf Matlab Reference A - E]
 
| pdf
 
| Referenzbook, Volume 1, A - E
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/refbook2.pdf Matlab Reference F - O]
 
| pdf
 
| Referenzbook, Volume 2, F - O
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/refbook3.pdf Matlab Reference P - Z]
 
| pdf
 
| Referenzbook, Volume 3, P - Z
 
|-
 
| [http://itp.tugraz.at/LV/kernbich/AppSoft-1/MatlabBooks/apiext.pdf Application Program Interface]
 
| pdf
 
| Externes Interface zu Matlab
 
|-
 
|}
 
   
 
== Matlab Tips ==
 
== Matlab Tips ==

Version vom 4. Februar 2006, 11:26 Uhr

MATLAB ist eine kommerzielle mathematische Software der Firma Mathworks zur Lösung diverser mathematischer Probleme und zur grafischen Darstellung der Ergebnisse. Durch die vereinfachte, mathematisch orientierte Syntax der MATLAB-Skriptsprache und die umfangreichen Funktionsbibliotheken für Statistik, Signalverarbeitung, Bildverarbeitung u.v.m. ist die Erstellung entsprechender Programme wesentlich einfacher möglich als z.B. unter C. MATLAB dient im Gegensatz zu Computeralgebrasystemen nicht der symbolischen, sondern primär der zahlenmäßigen Lösung von Problemen.


Matlab Hilfe

Für die Benutzung von Matlab gibt es eine Reihe interessanten Hilfen. Diese setzen sich zusammen aus Matlab Dokumenten im HTML-Format, aus Matlab Dokumenten im PDF-Format und aus den Vorlesungsunterlagen.


Matlab Tips

Automatisches Speichern der Plots im EPS format

In diesem Beispiel wird der aktuele Plot unter sinus.eps gepeichert. Die Grafik kann ohne Probleme in latex dokumente eingebunden werden.


t=linspace(0,2*pi);
y=sin(t);

figure(1);
hold on;
	p1=plot(t,y);
	ax1=gca;
	set(ax1,'YLim',[-1.1,1.1]);
	set(ax1,'XLim',[0,2*pi]);
	
	le1=legend(p1,'Sin(t)',1);
	xl1=xlabel('t');
	yl1=ylabel('f(t)');
	grid on;
hold off;

print -deps2 -tiff -r300 sinus

Schliessen aller Plotfenster

Nach dem Ausführen eines Matlab Scripts bleiben die Plotfenster geöffnet, und es kann lästig sein sie einzeln mit dem Mausclick zu beenden. Zum schliessen aller Plotfenster gibt es den Befehl:

  close all;

Diese Zeile am besten am Anfang des Matlab scripts einfügen. Auf

   clear all;

sollte auch nicht vergessen werden. ('clear all;' löscht die Variablen vom letzten Scriptdurchlauf.)

Starten von C/C++ Funktionen aus Matlab

Für numerisch aufwendige Berechnungen, bei denen "for" schleifen benutzt werden müssen, sind in C geschriebene programme um ein vielfaches schneller. Es könnte sinnvoll sein die Auswertung und graphische presentation mit Plots in Matlab zu schreiben, und die eigentliche Berechnung als C - Funktion, die vom Matlab script gestartet wird. Hier ist ein Beispielprogramm: CausMatlabStarten
Hier noch ein besseres Beispielprojekt: TravelingSalesmanProjekt
Genaueres ist in der online Matlab- Hilfe zu finden.

Nichtlineares Fitten mit Berücksichtigung der Messfehler

Fitten bedeutet meistens, dass man viele fehlerbehaftete (ungenaue) Messwerte hat, diese in einem zweidimensionalen Diagramm einträgt, und eine Kurwe so durchlegt, dass sie möglichst gut zu den Messwerten passt. Die Kurwe wird mit der Fitfunktion erzeugt. Die Fitfunktion ist ein Mathematisches Modell, das die Messung erklären soll. Die Fitfunktion wird an die Messdaten angepasst indem ihre Parameter berechnet werden. Eine bessere Erklärung gibt es hier: Methode_der_kleinsten_Quadrate
Ein universeler Algorithmus für nichtlineares Fitten ist der Levenberg-Marquardt Algorithmus Hier ist eine Implementierung des Algorithmus in Matlab beschrieben: Levenberg-Marquardt-mit-Matlab
Sie ist sehr einfach zu benutzen und dürfte für die Auswertung von Messdaten für Protokolle nützlich sein. In der Impelentierung wird auch das symbolische Rechnen (so wie es Mathematica kann) unter Matlab demonstriert.

Matlab und EMACS

Informationen zum diesem Thema sind unter Emacs#EMACS und Matlab zu finden.


--Golubkov 00:58, 14 Jul 2005 (CEST)