Steuerdatei fourier.gnuplot
#!/usr/bin/gnuplot #Die zu approximierende Rechteckfunktion f(x)=pi/4*(1-2*(((floor(x)%2)+2)%2)) #Die auftretenden Sinus-Summanden #mit ungeradem Index c(k,x)=sin((2*k-1)*pi*x)/(2*k-1) #Rekursive Definition der Partialsummen #der Fourier-Reihe fr(k,x)=(k==0)?0:fr(k-1,x)+c(k,x) #Koordinatenkreuz und andere Einstellungen set zeroaxis set samples 500 set key below set lmargin screen 0.07 #Stelle Ausgabe in EPS #(Encapsulated PostScipt) #ein und zeichne 4 Funktionen set term push set term post enh color lw 2 20 set output "fourier.eps" plot [-0.5:2.5] f(x) wi li lw 3,\ fr(1,x) ti "f_1(x)",\ fr(3,x) ti "f_3(x)",\ fr(7,x) ti "f_7(x)" unset output set term pop
Ausführen der Datei auf der Kommandozeile mit
gnuplot fourier.gnuplotoder durch Kopieren der einzelnen Befehle in einer laufenden GnuPlot-Sitzung. Wandle (das Vektorformat) EPS in (das Vektorformat) PDF
epstopdf fourier.eps
Quelltext latex-beispiel.tex
%Dokumententyp und Papierformat \documentclass[a5paper,landscape]{article} \usepackage[scale=0.9]{geometry} %Deutsch mit Umlauten und TrueType-Schrift \usepackage[latin1]{inputenc} \usepackage[ngerman]{babel} \usepackage[T1]{fontenc} \usepackage{lmodern} %Erweiterte Mathematikunterstützung \usepackage{amsmath} %Formatierung von Quellcode \usepackage{listings} %Einbinden von Bildern \usepackage{graphicx} %Mehrspaltiger Satz \usepackage{multicol} \begin{document} %Überschrift fett und etwas größer \textbf{\large Ein Beispiel zur Fourier--Reihe mit einem durch gnuplot erzeugten Graph.} %Obere Hälfte Formeln \begin{multicols}{2} Die Funktion \[ f(x)=\frac\pi4\cdot \begin{cases} \phantom{-}1&\text{ für }x\in(0,1],\\ -1&\text{ für }x\in(-1,0]. \end{cases} \] hat Periode $T=2$ und die Fourier--Reihe \[ r(x)=\frac{a_0}2 +\sum_{n=1}^\infty \left( a_n\,\cos(\pi n\,x) +b_n\,\sin(\pi n\,x) \right) \] mit Koeffizienten \begin{align*} a_n&=\int_{-1}^{1} f(x)\,\cos(\pi n\,x)\;d\!x=0,\\ b_n&=\int_{-1}^{1} f(x)\,\sin(\pi n\,x)\;d\!x = \begin{cases} \frac1n & n \text{ ungerade}\\ 0 & n \text{ gerade} \end{cases} \end{align*} \end{multicols} %Untere Hälfte Grafik \begin{minipage}{0.4\linewidth} \lstset{language=Gnuplot,frame=single,basicstyle=\scriptsize} \footnotesize \lstinputlisting{fourier.gnuplot} \end{minipage}% \begin{minipage}{0.6\linewidth} \includegraphics[angle=270,width=\the\textwidth]{fourier} \end{minipage} \end{document}
Übersetzen der Datei auf der Kommandozeile mit
latex latex-beispiel.tex dvips latex-beispiel.dvi ps2pdf latex-beispiel.psin PostScript und Portable Document Format oder direkter ohne Zwischenschritte
pdflatex latex-beispiel.tex