cannam@95: cannam@95: cannam@95: Column-major Format - FFTW 3.3.3 cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95:
cannam@95: cannam@95: cannam@95:

cannam@95: Next: , cannam@95: Previous: Row-major Format, cannam@95: Up: Multi-dimensional Array Format cannam@95:


cannam@95:
cannam@95: cannam@95:

3.2.2 Column-major Format

cannam@95: cannam@95:

cannam@95: Readers from the Fortran world are used to arrays stored in cannam@95: column-major order (sometimes called “Fortran order”). This is cannam@95: essentially the exact opposite of row-major order in that, here, the cannam@95: first dimension's index varies most quickly. cannam@95: cannam@95:

If you have an array stored in column-major order and wish to cannam@95: transform it using FFTW, it is quite easy to do. When creating the cannam@95: plan, simply pass the dimensions of the array to the planner in cannam@95: reverse order. For example, if your array is a rank three cannam@95: N x M x L matrix in column-major order, you should pass the cannam@95: dimensions of the array as if it were an L x M x N matrix cannam@95: (which it is, from the perspective of FFTW). This is done for you cannam@95: automatically by the FFTW legacy-Fortran interface cannam@95: (see Calling FFTW from Legacy Fortran), but you must do it cannam@95: manually with the modern Fortran interface (see Reversing array dimensions). cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: