Skip to main content
`Ctrl`+`K`

# VecScatterPetscToFFTW

Copies a PETSc vector to the vector that goes into `MATFFTW` calls.

## Synopsis

    #include "petscmat.h"
    #include "petscvec.h"
    PetscErrorCode VecScatterPetscToFFTW(Mat A, Vec x, Vec y)

Collective

## Input Parameters

- A - FFTW matrix

- x - the PETSc vector

## Output Parameter

- y - the FFTW vector

## Note

For real parallel FFT, FFTW requires insertion of extra space at the end of last dimension. This required even when one is not doing in-place transform. The last dimension size must be changed to 2*(dim[last]/2+1) to accommodate these extra zeros. This routine does that job by scattering operation.

## See Also

Matrices, `Mat`, `MATFFTW`, `VecScatterFFTWToPetsc()`, `MatCreateVecsFFTW()`

## Level

intermediate

## Location

src/mat/impls/fft/fftw/fftw.c

## Examples

src/snes/tutorials/ex7.c

## Implementations

VecScatterPetscToFFTW_FFTW() in src/mat/impls/fft/fftw/fftw.c

Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages