5#include <metal_integer> 
   12constant 
float inf = metal::numeric_limits<float>::infinity();
 
  132  template <
typename T>
 
 
  146  template <
typename T>
 
 
  166  template <
typename T>
 
  168    return static_cast<T
>(
erf(
static_cast<float>(x)));
 
 
 
  173  template <
typename T>
 
  175    return static_cast<T
>(
erfinv(
static_cast<float>(x)));
 
 
 
  180  template <
typename T>
 
 
  192  template <
typename T>
 
  194    return static_cast<T
>(
expm1f(
static_cast<float>(x)));
 
 
 
  199  template <
typename T>
 
 
  242  template <
typename T>
 
 
  249  template <
typename T>
 
 
  256  template <
typename T>
 
 
  263  template <
typename T>
 
 
  270  template <
typename T>
 
 
  277  template <
typename T>
 
 
  284  template <
typename T>
 
 
  295  template <
typename T>
 
  298    return (x < 0) ? 1 - y : y;
 
 
 
  303  template <
typename T>
 
  305    return (x > T(0)) - (x < T(0));
 
 
 
  314  template <
typename T>
 
 
  328  template <
typename T>
 
 
  342  template <
typename T>
 
 
  349  template <
typename T>
 
 
  356  template <
typename T>
 
 
  363  template <
typename T>
 
  372    float t1 = tan_a * tanh_b;
 
  373    float denom = 1. + t1 * t1;
 
  374    return {(tan_a - tanh_b * t1) / denom, (tanh_b + tan_a * t1) / denom};
 
 
 
  379  template <
typename T>
 
  388    float t1 = tanh_a * tan_b;
 
  389    float denom = 1. + t1 * t1;
 
  390    return {(tanh_a + tan_b * t1) / denom, (tan_b - tanh_a * t1) / denom};
 
 
 
float erfinv(float a)
Definition erf.h:42
 
float erf(float a)
Definition erf.h:11
 
float expm1f(float a)
Definition expm1f.h:80
 
Definition unary_ops.h:15
 
uint8_t operator()(uint8_t x)
Definition unary_ops.h:21
 
uint32_t operator()(uint32_t x)
Definition unary_ops.h:29
 
T operator()(T x)
Definition unary_ops.h:17
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:41
 
bool operator()(bool x)
Definition unary_ops.h:37
 
uint64_t operator()(uint64_t x)
Definition unary_ops.h:33
 
uint16_t operator()(uint16_t x)
Definition unary_ops.h:25
 
Definition unary_ops.h:46
 
T operator()(T x)
Definition unary_ops.h:48
 
Definition unary_ops.h:53
 
T operator()(T x)
Definition unary_ops.h:55
 
Definition unary_ops.h:60
 
T operator()(T x)
Definition unary_ops.h:62
 
Definition unary_ops.h:67
 
T operator()(T x)
Definition unary_ops.h:69
 
Definition unary_ops.h:74
 
T operator()(T x)
Definition unary_ops.h:76
 
Definition unary_ops.h:81
 
T operator()(T x)
Definition unary_ops.h:83
 
Definition unary_ops.h:88
 
int16_t operator()(int16_t x)
Definition unary_ops.h:98
 
bool operator()(bool x)
Definition unary_ops.h:126
 
uint32_t operator()(uint32_t x)
Definition unary_ops.h:118
 
int8_t operator()(int8_t x)
Definition unary_ops.h:94
 
T operator()(T x)
Definition unary_ops.h:90
 
int64_t operator()(int64_t x)
Definition unary_ops.h:106
 
uint64_t operator()(uint64_t x)
Definition unary_ops.h:122
 
uint8_t operator()(uint8_t x)
Definition unary_ops.h:110
 
uint16_t operator()(uint16_t x)
Definition unary_ops.h:114
 
int32_t operator()(int32_t x)
Definition unary_ops.h:102
 
Definition unary_ops.h:159
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:160
 
Definition unary_ops.h:131
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:138
 
T operator()(T x)
Definition unary_ops.h:133
 
Definition unary_ops.h:145
 
T operator()(T x)
Definition unary_ops.h:147
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:152
 
Definition unary_ops.h:165
 
T operator()(T x)
Definition unary_ops.h:167
 
Definition unary_ops.h:172
 
T operator()(T x)
Definition unary_ops.h:174
 
Definition unary_ops.h:179
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:185
 
T operator()(T x)
Definition unary_ops.h:181
 
Definition unary_ops.h:191
 
T operator()(T x)
Definition unary_ops.h:193
 
Definition unary_ops.h:198
 
int8_t operator()(int8_t x)
Definition unary_ops.h:204
 
int16_t operator()(int16_t x)
Definition unary_ops.h:208
 
int32_t operator()(int32_t x)
Definition unary_ops.h:212
 
uint16_t operator()(uint16_t x)
Definition unary_ops.h:224
 
uint64_t operator()(uint64_t x)
Definition unary_ops.h:232
 
uint32_t operator()(uint32_t x)
Definition unary_ops.h:228
 
int64_t operator()(int64_t x)
Definition unary_ops.h:216
 
bool operator()(bool x)
Definition unary_ops.h:236
 
uint8_t operator()(uint8_t x)
Definition unary_ops.h:220
 
T operator()(T x)
Definition unary_ops.h:200
 
Definition unary_ops.h:255
 
T operator()(T x)
Definition unary_ops.h:257
 
Definition unary_ops.h:262
 
T operator()(T x)
Definition unary_ops.h:264
 
Definition unary_ops.h:248
 
T operator()(T x)
Definition unary_ops.h:250
 
Definition unary_ops.h:241
 
T operator()(T x)
Definition unary_ops.h:243
 
Definition unary_ops.h:269
 
T operator()(T x)
Definition unary_ops.h:271
 
Definition unary_ops.h:276
 
T operator()(T x)
Definition unary_ops.h:278
 
Definition unary_ops.h:283
 
T operator()(T x)
Definition unary_ops.h:285
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:289
 
Definition unary_ops.h:355
 
T operator()(T x)
Definition unary_ops.h:357
 
Definition unary_ops.h:294
 
T operator()(T x)
Definition unary_ops.h:296
 
Definition unary_ops.h:302
 
T operator()(T x)
Definition unary_ops.h:304
 
uint32_t operator()(uint32_t x)
Definition unary_ops.h:308
 
Definition unary_ops.h:313
 
T operator()(T x)
Definition unary_ops.h:315
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:320
 
Definition unary_ops.h:327
 
T operator()(T x)
Definition unary_ops.h:329
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:334
 
Definition unary_ops.h:348
 
T operator()(T x)
Definition unary_ops.h:350
 
Definition unary_ops.h:341
 
T operator()(T x)
Definition unary_ops.h:343
 
Definition unary_ops.h:362
 
T operator()(T x)
Definition unary_ops.h:364
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:369
 
Definition unary_ops.h:378
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:385
 
T operator()(T x)
Definition unary_ops.h:380
 
float imag
Definition complex.h:22
 
float real
Definition complex.h:21