summaryrefslogtreecommitdiff
path: root/numpy/f2py/doc/apps.tex
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/f2py/doc/apps.tex')
-rw-r--r--numpy/f2py/doc/apps.tex71
1 files changed, 0 insertions, 71 deletions
diff --git a/numpy/f2py/doc/apps.tex b/numpy/f2py/doc/apps.tex
deleted file mode 100644
index 513c048bd..000000000
--- a/numpy/f2py/doc/apps.tex
+++ /dev/null
@@ -1,71 +0,0 @@
-
-\section{Applications}
-\label{sec:apps}
-
-
-\subsection{Example: wrapping C library \texttt{fftw}}
-\label{sec:wrapfftw}
-
-Here follows a simple example how to use \fpy to generate a wrapper
-for C functions. Let us create a FFT code using the functions in FFTW
-library. I'll assume that the library \texttt{fftw} is configured with
-\texttt{-{}-enable-shared} option.
-
-Here is the wrapper for the typical usage of FFTW:
-\begin{verbatim}
-/* File: wrap_dfftw.c */
-#include <dfftw.h>
-
-extern void dfftw_one(fftw_complex *in,fftw_complex *out,int *n) {
- fftw_plan p;
- p = fftw_create_plan(*n,FFTW_FORWARD,FFTW_ESTIMATE);
- fftw_one(p,in,out);
- fftw_destroy_plan(p);
-}
-\end{verbatim}
-and here follows the corresponding siganture file (created manually):
-\begin{verbatim}
-!%f90
-! File: fftw.f90
-module fftw
- interface
- subroutine dfftw_one(in,out,n)
- integer n
- complex*16 in(n),out(n)
- intent(out) out
- intent(hide) n
- end subroutine dfftw_one
- end interface
-end module fftw
-\end{verbatim}
-
-Now let us generate the Python C/API module with \fpy:
-\begin{verbatim}
-f2py fftw.f90
-\end{verbatim}
-and compile it
-\begin{verbatim}
-gcc -shared -I/numeric/include -I`f2py -I` -L/numeric/lib -ldfftw \
- -o fftwmodule.so -DNO_APPEND_FORTRAN fftwmodule.c wrap_dfftw.c
-\end{verbatim}
-
-In Python:
-\begin{verbatim}
->>> from Numeric import *
->>> from fftw import *
->>> print dfftw_one.__doc__
-Function signature:
- out = dfftw_one(in)
-Required arguments:
- in : input rank-1 array('D') with bounds (n)
-Return objects:
- out : rank-1 array('D') with bounds (n)
->>> print dfftw_one([1,2,3,4])
-[ 10.+0.j -2.+2.j -2.+0.j -2.-2.j]
->>>
-\end{verbatim}
-
-%%% Local Variables:
-%%% mode: latex
-%%% TeX-master: "f2py2e"
-%%% End: