Eigen-unsupported  5.0.1-dev
 
Loading...
Searching...
No Matches
SpecialFunctions
1// This file is part of Eigen, a lightweight C++ template library
2// for linear algebra.
3//
4// Copyright (C) 2016 Gael Guennebaud <g.gael@free.fr>
5//
6// This Source Code Form is subject to the terms of the Mozilla
7// Public License v. 2.0. If a copy of the MPL was not distributed
8// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9
10#ifndef EIGEN_SPECIALFUNCTIONS_MODULE_H
11#define EIGEN_SPECIALFUNCTIONS_MODULE_H
12
13#include <math.h>
14
15#include "../../Eigen/Core"
16
17#include "../../Eigen/src/Core/util/DisableStupidWarnings.h"
18
19namespace Eigen {
20
21/**
22 * \defgroup SpecialFunctions_Module Special math functions module
23 *
24 * This module features additional coefficient-wise math functions available
25 * within the numext:: namespace for the scalar version, and as method and/or free
26 * functions of Array. Those include:
27 *
28 * - erf
29 * - erfc
30 * - lgamma
31 * - igamma
32 * - igamma_der_a
33 * - gamma_sample_der_alpha
34 * - igammac
35 * - digamma
36 * - ndtri
37 * - polygamma
38 * - zeta
39 * - betainc
40 *
41 * Bessel Functions
42 * - bessel_i0
43 * - bessel_i0e
44 * - bessel_i1
45 * - bessel_i1e
46 * - bessel_j0
47 * - bessel_j1
48 * - bessel_k0
49 * - bessel_k0e
50 * - bessel_k1
51 * - bessel_k1e
52 * - bessel_y0
53 * - bessel_y1
54 *
55 * \code
56 * #include <unsupported/Eigen/SpecialFunctions>
57 * \endcode
58 */
59//@{
60
61} // namespace Eigen
62
63// IWYU pragma: begin_exports
64#include "src/SpecialFunctions/BesselFunctionsImpl.h"
65#include "src/SpecialFunctions/BesselFunctionsBFloat16.h"
66#include "src/SpecialFunctions/BesselFunctionsHalf.h"
67#include "src/SpecialFunctions/BesselFunctionsPacketMath.h"
68#include "src/SpecialFunctions/BesselFunctionsFunctors.h"
69#include "src/SpecialFunctions/BesselFunctionsArrayAPI.h"
70#include "src/SpecialFunctions/SpecialFunctionsImpl.h"
71#if defined(EIGEN_HIPCC)
72#include "src/SpecialFunctions/HipVectorCompatibility.h"
73#endif
74#include "src/SpecialFunctions/SpecialFunctionsBFloat16.h"
75#include "src/SpecialFunctions/SpecialFunctionsHalf.h"
76#include "src/SpecialFunctions/SpecialFunctionsPacketMath.h"
77#include "src/SpecialFunctions/SpecialFunctionsFunctors.h"
78#include "src/SpecialFunctions/SpecialFunctionsArrayAPI.h"
79
80#if defined EIGEN_VECTORIZE_AVX512
81#include "src/SpecialFunctions/arch/AVX/BesselFunctions.h"
82#include "src/SpecialFunctions/arch/AVX/SpecialFunctions.h"
83#include "src/SpecialFunctions/arch/AVX512/BesselFunctions.h"
84#include "src/SpecialFunctions/arch/AVX512/SpecialFunctions.h"
85#elif defined EIGEN_VECTORIZE_AVX
86#include "src/SpecialFunctions/arch/AVX/BesselFunctions.h"
87#include "src/SpecialFunctions/arch/AVX/SpecialFunctions.h"
88#elif defined EIGEN_VECTORIZE_NEON
89#include "src/SpecialFunctions/arch/NEON/BesselFunctions.h"
90#include "src/SpecialFunctions/arch/NEON/SpecialFunctions.h"
91#endif
92
93#if defined EIGEN_VECTORIZE_GPU
94#include "src/SpecialFunctions/arch/GPU/SpecialFunctions.h"
95#endif
96// IWYU pragma: end_exports
97
98namespace Eigen {
99//@}
100}
101
102#include "../../Eigen/src/Core/util/ReenableStupidWarnings.h"
103
104#endif // EIGEN_SPECIALFUNCTIONS_MODULE_H