.. _descriptor-precision-domain: descriptor ============================= Creates a descriptor for the templated precision and forward domain with configuration values. This routine belongs to the ``oneapi::mkl::dft`` namespace. .. contents:: :local: :depth: 1 Description *********** This constructor initializes members to default values and throws an ``std::runtime_exception`` in the case that it fails. Note that the precision and domain are determined via templating. This function allocates memory for the descriptor data structure and instantiates it with all the default configuration settings for the precision, forward domain, and dimensions of the transform. This function does not perform any significant computational work such as computation of twiddle factors. The function ``descriptor::commit`` does this work after the function ``descriptor::set_value`` has set values of all necessary parameters. The interface supports a single ``MKL_LONG`` input for 1-D transforms, and an ``std::vector`` for N-D transforms. API *** Syntax ------ .. code-block:: cpp namespace oneapi::mkl::dft{ descriptor desc (dimension) } .. code-block:: cpp namespace oneapi::mkl::dft{ descriptor desc ({dim1, dim2, ...}) } Include Files ------------- - ``oneapi/mkl/dfti.hpp`` Template Parameters ------------------- .. list-table:: :header-rows: 1 * - Name - Type - Description * - PRECISION - ``mkl::dft::Precision`` - ``mkl::dft::Precision::SINGLE`` or ``mkl::dft::Precision::DOUBLE`` are supported precisions. Double precision has limited GPU support and full CPU and Host support. * - DOMAIN - ``mkl::dft::Domain`` - ``mkl::dft::Domain::REAL`` or ``mkl::dft::Domain::COMPLEX`` are supported forward domains. Input Parameters: 1-Dimensional ------------------------------- .. list-table:: :header-rows: 1 * - Name - Type - Description * - dimension - MKL_LONG - Dimension of the transform 1-D transform. Input Parameters: N-Dimensional ------------------------------- .. list-table:: :header-rows: 1 * - Name - Type - Description * - dimensions - ``std::vector`` - Dimensions of the transform.