Matlab: Unterschied zwischen den Versionen

Aus Physik
Zur Navigation springen Zur Suche springen
Zeile 4: Zeile 4:
 
== Matlab Hilfe ==
 
== Matlab Hilfe ==
   
  +
Für die Benutzung von Matlab gibt es eine Reihe interessanten Hilfen. Diese setzen sich zusammen aus
{| border="1" cellpadding="5" cellspacing="0" align="center"
 
  +
[[Matlab_Dokumentation#Matlab_Dokument_im_HTML-Format|Matlab Dokumenten im HTML-Format]],
|+'''Unterlagen'''
 
  +
aus
|-
 
  +
[[Matlab_Dokumentation#Matlab_Dokument_im_PDF-Format|Matlab Dokumenten im PDF-Format]]
! style="background:#efefef;" | Link
 
  +
und aus den Vorlesungsunterlagen.
! style="background:#efefef;" | Typ
 
! style="background:#efefef;" | Anmerkung
 
|-
 
| [http://itp.tugraz.at/matlab/techdoc/ref/ref.html Reference]
 
| html
 
| Übersicht über alle Basisbefehle in Matlab
 
|-
 
| [http://itp.tugraz.at/matlab/techdoc/learn_matlab/learn_matlab.html Learning Matlab]
 
| html
 
| Einstieg zum Lernen
 
|-
 
| [http://itp.tugraz.at/matlab/techdoc/math/math.html Mathematics]
 
| html
 
| Mathematik
 
|-
 
| [http://itp.tugraz.at/matlab/techdoc/creating_plots/creating_plots.html Creating Plots]
 
| html
 
| Erzeugung von Plots und Graphiken
 
|-
 
| [http://itp.tugraz.at/matlab/techdoc/visualize/visualize.html Visualize]
 
| html
 
| Erzeugung von 3-D Graphiken
 
|-
 
| [http://itp.tugraz.at/matlab/techdoc/data_analysis/data_analysis.html Data Analysis]
 
| html
 
| Daten Analyse
 
|-
 
| [http://itp.tugraz.at/matlab/techdoc/matlab_prog/matlab_prog.html Matlab Programming]
 
| html
 
| Programmieren mit Matlab
 
|-
 
| [http://itp.tugraz.at/matlab/techdoc/matlab_env/matlab_env.html Matlab Environment]
 
| html
 
| Matlab Umgebung und Oberfläche
 
|-
 
| [http://itp.tugraz.at/matlab/techdoc/creating_guis/creating_guis.html Creating GUIs]
 
| html
 
| Erzeugung von Graphischen Benutzer Interfaces
 
|-
 
| [http://itp.tugraz.at/matlab/techdoc/apiref/apiref.html External Interface Reference]
 
| html
 
| Externe Referenz
 
|-
 
| [http://itp.tugraz.at/matlab/techdoc/matlab_external/ Matlab External]
 
| html
 
| Externe Interfaces
 
|-
 
|}
 
   
 
== Matlab Books ==
 
== Matlab Books ==

Version vom 4. Februar 2006, 11:03 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 Books

Eine Reihe von Matlab Dokumentationen steht auch im pdf-Format zur Verfügung.

Unterlagen
Link Typ Anmerkung
Getting Started pdf Einführung
Mathematics pdf Mathematische Anwendung
Graphics pdf Erstellung von Graphiken
Data Analysis pdf Datenanalyse
Programming pdf Programmieren mit Matlab
Programming Tips pdf Programmier Tipps
ODE-Suite pdf Gewöhnliche Differentialgleichungen
Development Environment pdf Matlab Umgebung
Building GUIs pdf Graphische Benutzeroberfl]chen
Matlab Reference A - E pdf Referenzbook, Volume 1, A - E
Matlab Reference F - O pdf Referenzbook, Volume 2, F - O
Matlab Reference P - Z pdf Referenzbook, Volume 3, P - Z
Application Program Interface pdf Externes Interface zu Matlab

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)