Freitag, 27. Februar 2009

Array Indizierung: Matlab vs. C

Hat man ein zweidimensionales Array (Matrix) in Matlab, so wird dieses, wenn man eine mex-Funktion schreiben will, Spalte für Spalte durchgearbeitet. In normalen C-Code jedoch wird ein solches Array zeilenweise durchgearbeitet. Ist ganz nützlich zu wissen wenn man sich wundert warum der gleiche Code des mex-Files als DLL komische Dinge tut.

Ein wirklich guter Thread dazu im Mathworks Newsreader.

Donnerstag, 26. Februar 2009

Matlab mit Latex, eine Liste.

Der Mathworks Fileexchange bietet ein Menge interessanter Dinge, ich hab mal ein paar Sachen für Matlab zusammen mit Latex rausgesucht. Das meiste hab ich nicht probiert, aber möchte ich für später mal festhalten:
  • M-code LaTeX Package: Damit kann man Matlab-Skripte für Latex aufbereiten, um diese in ein Latex-Dokument einzubinden.
  • Figure-Legenden in Latex: Thread im Newsreader in dem beschrieben wird, wie man die Plotlegenden auch mit dem integrierten Latex-Interpreter setzen kann.
  • PGF und Matfig2PGF: PGF ist ist Makro-Paket für Latex, mit dem man Grafiken erzeugen kann. Zusammen mit dem Matfig2PGF-Skript kann man Matlab-Figures in das Format exportieren, dabei wird dann alles (Beschriftunge, Ticks, etc.) in Latex gesetzt. Die Figures passen dann perfekt in das Dokument.
  • Matrix2Latex GUI: dieses Skript wandelt Matrizen in eine Latex-Tabelle.
  • TeX Editor: das is ein cooles Teil: man kann da Latex-Formeln eintippen und das GUI zeigt sie online von Latex interpretiert an. Ist wohl für Formeln innerhalb von Matlab gedacht, aber hey: das kann man auch gebrauchen wenn man Formeln so für Latex braucht.
  • SETAXES: nettes Skript das Figures mit Latex interpretierten xy-Ticks versieht und sogar Pfeilspitzen an die Achsen macht.
  • Format Tick Labels: im Prinzip gleiche Aufgabe wie SETAXES, war ein Pick of the Week von Mathworks.
  • figure to latex: Wandelt auch Figures in entsprechende Latex-Files um, auch hier werden die Beschriftungen etc. in Latex gesetzt.
  • latex_table: so ähnlich wie Matrix2Latex, etwas einfacher wohl.

Mit Matlab Formeln für Latex erzeugen.

Noch nicht selbst getestet, aber das klingt äußerst interessant:
Link zu Mathworks

Hier wird beschrieben wie man mit Latexsyms Formeln in Matlab erstellt und diese dann in die entsprechende Latex-Anweisungen wandelt. Aber einfach mal selber gucken.

Sonntag, 8. Februar 2009

Hilfe für Latex-Tabellen.

Wenn man keine Lust hat Latex-Tabellen von Hand oder mit eingebauten Editoren zu schreiben, sollte man sich an Calc2Latex wenden. Das ist ein nettes kleines Makro für Calc von Openoffice und wandelt Calc-Tabellen in Latex-Tabellen um. Die Installation ist hier beschrieben. Man kann dann sogar ansagen wie man die Tabelle so gestaltet haben möchte, Caption und Label natürlich auch.

Für Excel gibts das wohl auch, hier heißt es xls2tex. Hab ich mangels Excel nicht probieren können, aber die Seite beschreibt wie es geht.

Schnell bessere PDFs aus MATLAB erzeugen.

Das MATLAB-Skript "print_pdf" von Oliver Woodford, das auf dem MATLAB File Exchange Server zu finden ist, erzeugt relativ problemlos PDFs aus MATLAB-Figures. Dabei behebt es auch das nervige Problem mit gestrichelten Plots. Ausprobieren lohnt sich.

Man muss allerdings Ghostscript installiert haben. Das Skript funktioniert sofort mit englischsprachigen Windows-Systemen, auf meinem deutschen XP musste ich den Pfad zu Ghostscript etwas anpassen. Im Skript selber ist die Stelle aber mit einem Kommentar verknüpft, der auch beschreibt wie man den Pfad anzugeben hat.