Skip to content

Commit 9f273f9

Browse files
committed
FFT tutorial documentation
1 parent f41d4d4 commit 9f273f9

File tree

2 files changed

+40
-0
lines changed

2 files changed

+40
-0
lines changed

Docs/source/FFT_Tutorial.rst

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
.. role:: cpp(code)
2+
:language: c++
3+
4+
.. role:: fortran(code)
5+
:language: fortran
6+
7+
.. _tutorials_fft:
8+
9+
FFT
10+
==========================
11+
12+
These tutorials demonstrate how to use the amrex::FFT classes to solve for and manipulate Fourier transform data.
13+
For more information on the amrex::FFT class refer to the AMReX documentation
14+
`here <https://amrex-codes.github.io/amrex/docs_html/FFT_Chapter.html>`_.
15+
16+
There are two FFT tutorials, ``Basic`` and ``Poisson``.
17+
18+
.. toctree::
19+
:maxdepth: 1
20+
21+
.. _section:fft_tutorial:fft_basic:
22+
23+
Basic
24+
--------------------------
25+
26+
The tutorial found in ``amrex-tutorials/ExampleCodes/FFT/Basic`` demonstrates how
27+
to take a forward FFT, manipulate or access the spectral data (in this example by copying the spectral
28+
data into a :cpp:`MultiFab` for plotfile visualziation) and then taking the inverse FFT.
29+
30+
.. _section:fft_tutorial:fft_pois:
31+
32+
Poisson
33+
--------------------------
34+
35+
This tutorial: ``amrex-tutorials/ExampleCodes/FFT/Poisson``
36+
solves a Poisson equation with periodic boundary conditions. It relies on the :cpp:`AMReX_FFT_Poisson.H`
37+
routines to solve the equation by using the ``forwardThenBackward`` function which takes the forward and inverse
38+
transform of the data with spectral data scaling in between as required by the Poisson equation.

Docs/source/index.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ sorted by the following categories:
4545
Conduit Mesh Blueprint for use with the ALPINE Ascent in situ visualization
4646
and analysis tool.
4747
- :ref:`EB<tutorials_eb>` -- Examples of embedded boundaries.
48+
- :ref:`FFT<tutorials_fft>` -- Demonstration on how to use the amrex::FFT class for forward/inverse FFT and data manipulation
4849
- :ref:`FFTW<tutorials_fftw>` -- FFTW and cuFFT single-rank tutorials.
4950
- :ref:`ForkJoin<tutorials_forkjoin>` -- Parallel execution and subgrouping of MPI ranks.
5051
- :ref:`GPU<tutorials_gpu>` -- Offload work to the GPUs using AMReX tools.
@@ -70,6 +71,7 @@ sorted by the following categories:
7071
Basic_Tutorial
7172
Blueprint_Tutorial
7273
EB_Tutorial
74+
FFT_Tutorial
7375
FFTW_Tutorial
7476
ForkJoin_Tutorial
7577
GPU_Tutorial

0 commit comments

Comments
 (0)