13#ifndef EIGEN_MATH_FUNCTIONS_ZVECTOR_H
14#define EIGEN_MATH_FUNCTIONS_ZVECTOR_H
17#include "../../InternalHeaderCheck.h"
23EIGEN_DOUBLE_PACKET_FUNCTION(atanh, Packet2d)
24EIGEN_DOUBLE_PACKET_FUNCTION(log, Packet2d)
25EIGEN_DOUBLE_PACKET_FUNCTION(log2, Packet2d)
26EIGEN_DOUBLE_PACKET_FUNCTION(tanh, Packet2d)
28EIGEN_FLOAT_PACKET_FUNCTION(atanh, Packet4f)
29EIGEN_FLOAT_PACKET_FUNCTION(log, Packet4f)
30EIGEN_FLOAT_PACKET_FUNCTION(log2, Packet4f)
32EIGEN_GENERIC_PACKET_FUNCTION(atan, Packet2d)
33EIGEN_GENERIC_PACKET_FUNCTION(atan, Packet4f)
34EIGEN_GENERIC_PACKET_FUNCTION(exp2, Packet2d)
35EIGEN_GENERIC_PACKET_FUNCTION(exp2, Packet4f)
37EIGEN_DOUBLE_PACKET_FUNCTION(exp, Packet2d)
38EIGEN_FLOAT_PACKET_FUNCTION(exp, Packet4f)
41EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet2d psqrt<Packet2d>(
const Packet2d& x) {
46EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet4f psqrt<Packet4f>(
const Packet4f& x) {
51EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet2d prsqrt<Packet2d>(
const Packet2d& x) {
52 return pset1<Packet2d>(1.0) / psqrt<Packet2d>(x);
56EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet4f prsqrt<Packet4f>(
const Packet4f& x) {
57 return pset1<Packet4f>(1.0) / psqrt<Packet4f>(x);
62EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet4f ptanh<Packet4f>(
const Packet4f& x) {
63 return ptanh_float(x);