GenericPacketMathFunctionsFwd.h
Go to the documentation of this file.
1 // This file is part of Eigen, a lightweight C++ template library
2 // for linear algebra.
3 //
4 // Copyright (C) 2019 Gael Guennebaud <gael.guennebaud@inria.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_ARCH_GENERIC_PACKET_MATH_FUNCTIONS_FWD_H
11 #define EIGEN_ARCH_GENERIC_PACKET_MATH_FUNCTIONS_FWD_H
12 
13 namespace Eigen {
14 namespace internal {
15 
16 // Forward declarations of the generic math functions
17 // implemented in GenericPacketMathFunctions.h
18 // This is needed to workaround a circular dependency.
19 
20 /***************************************************************************
21  * Some generic implementations to be used by implementors
22 ***************************************************************************/
23 
27 template<typename Packet> EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC
28 Packet pfrexp_generic(const Packet& a, Packet& exponent);
29 
30 // Extracts the biased exponent value from Packet p, and casts the results to
31 // a floating-point Packet type. Used by pfrexp_generic. Override this if
32 // there is no unpacket_traits<Packet>::integer_packet.
33 template<typename Packet> EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC
35 
39 template<typename Packet> EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC
40 Packet pldexp_generic(const Packet& a, const Packet& exponent);
41 
43 template <typename Packet>
46 Packet plog_float(const Packet _x);
47 
49 template <typename Packet>
52 Packet plog2_float(const Packet _x);
53 
55 template <typename Packet>
58 Packet plog_double(const Packet _x);
59 
61 template <typename Packet>
64 Packet plog2_double(const Packet _x);
65 
67 template<typename Packet>
69 
71 template<typename Packet>
73 
75 template <typename Packet>
78 Packet pexp_float(const Packet _x);
79 
81 template <typename Packet>
84 Packet pexp_double(const Packet _x);
85 
87 template<typename Packet>
90 Packet psin_float(const Packet& x);
91 
93 template<typename Packet>
96 Packet pcos_float(const Packet& x);
97 
99 template<typename Packet>
102 Packet psqrt_complex(const Packet& a);
103 
104 template <typename Packet, int N> struct ppolevl;
105 
106 
107 } // end namespace internal
108 } // end namespace Eigen
109 
110 #endif // EIGEN_ARCH_GENERIC_PACKET_MATH_FUNCTIONS_FWD_H
EIGEN_DEVICE_FUNC
#define EIGEN_DEVICE_FUNC
Definition: Macros.h:976
Eigen
Namespace containing all symbols from the Eigen library.
Definition: jet.h:637
x
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
Definition: gnuplot_common_settings.hh:12
Eigen::internal::pexp_float
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED Packet pexp_float(const Packet _x)
Definition: GenericPacketMathFunctions.h:439
Eigen::internal::plog_float
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED Packet plog_float(const Packet _x)
Definition: GenericPacketMathFunctions.h:254
Eigen::internal::plog_double
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED Packet plog_double(const Packet _x)
Definition: GenericPacketMathFunctions.h:375
Eigen::internal::plog2_float
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED Packet plog2_float(const Packet _x)
Definition: GenericPacketMathFunctions.h:262
Eigen::internal::psqrt_complex
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED Packet psqrt_complex(const Packet &a)
Definition: GenericPacketMathFunctions.h:764
EIGEN_STRONG_INLINE
#define EIGEN_STRONG_INLINE
Definition: Macros.h:917
Eigen::Triplet< double >
a
ArrayXXi a
Definition: Array_initializer_list_23_cxx11.cpp:1
Eigen::internal::pcos_float
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED Packet pcos_float(const Packet &x)
Definition: GenericPacketMathFunctions.h:755
Eigen::internal::generic_plog1p
Packet generic_plog1p(const Packet &x)
Definition: GenericPacketMathFunctions.h:392
p
float * p
Definition: Tutorial_Map_using.cpp:9
Eigen::internal::psin_float
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED Packet psin_float(const Packet &x)
Definition: GenericPacketMathFunctions.h:747
Eigen::internal::plog2_double
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED Packet plog2_double(const Packet _x)
Definition: GenericPacketMathFunctions.h:383
EIGEN_UNUSED
#define EIGEN_UNUSED
Definition: Macros.h:1067
internal
Definition: BandTriangularSolver.h:13
Eigen::internal::pexp_double
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED Packet pexp_double(const Packet _x)
Definition: GenericPacketMathFunctions.h:490
Eigen::internal::pldexp_generic
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC Packet pldexp_generic(const Packet &a, const Packet &exponent)
Definition: GenericPacketMathFunctions.h:85
Eigen::internal::generic_expm1
Packet generic_expm1(const Packet &x)
Definition: GenericPacketMathFunctions.h:408
Eigen::internal::pfrexp_generic_get_biased_exponent
EIGEN_STRONG_INLINE Packet4d pfrexp_generic_get_biased_exponent(const Packet4d &a)
Definition: AVX/PacketMath.h:743
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS
#define EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS
Definition: Macros.h:985
Eigen::internal::pfrexp_generic
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC Packet pfrexp_generic(const Packet &a, Packet &exponent)
Definition: GenericPacketMathFunctions.h:40


gtsam
Author(s):
autogenerated on Sat Nov 16 2024 04:02:21