annotate src/fftw-3.3.3/doc/html/Calling-FFTW-from-Legacy-Fortran.html @ 83:ae30d91d2ffe

Replace these with versions built using an older toolset (so as to avoid ABI compatibilities when linking on Ubuntu 14.04 for packaging purposes)
author Chris Cannam
date Fri, 07 Feb 2020 11:51:13 +0000
parents 37bf6b4a2645
children
rev   line source
Chris@10 1 <html lang="en">
Chris@10 2 <head>
Chris@10 3 <title>Calling FFTW from Legacy Fortran - FFTW 3.3.3</title>
Chris@10 4 <meta http-equiv="Content-Type" content="text/html">
Chris@10 5 <meta name="description" content="FFTW 3.3.3">
Chris@10 6 <meta name="generator" content="makeinfo 4.13">
Chris@10 7 <link title="Top" rel="start" href="index.html#Top">
Chris@10 8 <link rel="prev" href="Calling-FFTW-from-Modern-Fortran.html#Calling-FFTW-from-Modern-Fortran" title="Calling FFTW from Modern Fortran">
Chris@10 9 <link rel="next" href="Upgrading-from-FFTW-version-2.html#Upgrading-from-FFTW-version-2" title="Upgrading from FFTW version 2">
Chris@10 10 <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
Chris@10 11 <!--
Chris@10 12 This manual is for FFTW
Chris@10 13 (version 3.3.3, 25 November 2012).
Chris@10 14
Chris@10 15 Copyright (C) 2003 Matteo Frigo.
Chris@10 16
Chris@10 17 Copyright (C) 2003 Massachusetts Institute of Technology.
Chris@10 18
Chris@10 19 Permission is granted to make and distribute verbatim copies of
Chris@10 20 this manual provided the copyright notice and this permission
Chris@10 21 notice are preserved on all copies.
Chris@10 22
Chris@10 23 Permission is granted to copy and distribute modified versions of
Chris@10 24 this manual under the conditions for verbatim copying, provided
Chris@10 25 that the entire resulting derived work is distributed under the
Chris@10 26 terms of a permission notice identical to this one.
Chris@10 27
Chris@10 28 Permission is granted to copy and distribute translations of this
Chris@10 29 manual into another language, under the above conditions for
Chris@10 30 modified versions, except that this permission notice may be
Chris@10 31 stated in a translation approved by the Free Software Foundation.
Chris@10 32 -->
Chris@10 33 <meta http-equiv="Content-Style-Type" content="text/css">
Chris@10 34 <style type="text/css"><!--
Chris@10 35 pre.display { font-family:inherit }
Chris@10 36 pre.format { font-family:inherit }
Chris@10 37 pre.smalldisplay { font-family:inherit; font-size:smaller }
Chris@10 38 pre.smallformat { font-family:inherit; font-size:smaller }
Chris@10 39 pre.smallexample { font-size:smaller }
Chris@10 40 pre.smalllisp { font-size:smaller }
Chris@10 41 span.sc { font-variant:small-caps }
Chris@10 42 span.roman { font-family:serif; font-weight:normal; }
Chris@10 43 span.sansserif { font-family:sans-serif; font-weight:normal; }
Chris@10 44 --></style>
Chris@10 45 </head>
Chris@10 46 <body>
Chris@10 47 <div class="node">
Chris@10 48 <a name="Calling-FFTW-from-Legacy-Fortran"></a>
Chris@10 49 <p>
Chris@10 50 Next:&nbsp;<a rel="next" accesskey="n" href="Upgrading-from-FFTW-version-2.html#Upgrading-from-FFTW-version-2">Upgrading from FFTW version 2</a>,
Chris@10 51 Previous:&nbsp;<a rel="previous" accesskey="p" href="Calling-FFTW-from-Modern-Fortran.html#Calling-FFTW-from-Modern-Fortran">Calling FFTW from Modern Fortran</a>,
Chris@10 52 Up:&nbsp;<a rel="up" accesskey="u" href="index.html#Top">Top</a>
Chris@10 53 <hr>
Chris@10 54 </div>
Chris@10 55
Chris@10 56 <h2 class="chapter">8 Calling FFTW from Legacy Fortran</h2>
Chris@10 57
Chris@10 58 <p><a name="index-Fortran-interface-577"></a>
Chris@10 59 This chapter describes the interface to FFTW callable by Fortran code
Chris@10 60 in older compilers not supporting the Fortran 2003 C interoperability
Chris@10 61 features (see <a href="Calling-FFTW-from-Modern-Fortran.html#Calling-FFTW-from-Modern-Fortran">Calling FFTW from Modern Fortran</a>). This interface
Chris@10 62 has the major disadvantage that it is not type-checked, so if you
Chris@10 63 mistake the argument types or ordering then your program will not have
Chris@10 64 any compiler errors, and will likely crash at runtime. So, greater
Chris@10 65 care is needed. Also, technically interfacing older Fortran versions
Chris@10 66 to C is nonstandard, but in practice we have found that the techniques
Chris@10 67 used in this chapter have worked with all known Fortran compilers for
Chris@10 68 many years.
Chris@10 69
Chris@10 70 <p>The legacy Fortran interface differs from the C interface only in the
Chris@10 71 prefix (&lsquo;<samp><span class="samp">dfftw_</span></samp>&rsquo; instead of &lsquo;<samp><span class="samp">fftw_</span></samp>&rsquo; in double precision) and
Chris@10 72 a few other minor details. This Fortran interface is included in the
Chris@10 73 FFTW libraries by default, unless a Fortran compiler isn't found on
Chris@10 74 your system or <code>--disable-fortran</code> is included in the
Chris@10 75 <code>configure</code> flags. We assume here that the reader is already
Chris@10 76 familiar with the usage of FFTW in C, as described elsewhere in this
Chris@10 77 manual.
Chris@10 78
Chris@10 79 <p>The MPI parallel interface to FFTW is <em>not</em> currently available
Chris@10 80 to legacy Fortran.
Chris@10 81
Chris@10 82 <ul class="menu">
Chris@10 83 <li><a accesskey="1" href="Fortran_002dinterface-routines.html#Fortran_002dinterface-routines">Fortran-interface routines</a>
Chris@10 84 <li><a accesskey="2" href="FFTW-Constants-in-Fortran.html#FFTW-Constants-in-Fortran">FFTW Constants in Fortran</a>
Chris@10 85 <li><a accesskey="3" href="FFTW-Execution-in-Fortran.html#FFTW-Execution-in-Fortran">FFTW Execution in Fortran</a>
Chris@10 86 <li><a accesskey="4" href="Fortran-Examples.html#Fortran-Examples">Fortran Examples</a>
Chris@10 87 <li><a accesskey="5" href="Wisdom-of-Fortran_003f.html#Wisdom-of-Fortran_003f">Wisdom of Fortran?</a>
Chris@10 88 </ul>
Chris@10 89
Chris@10 90 <!-- -->
Chris@10 91 </body></html>
Chris@10 92