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>
 
 
  291  template <
typename T>
 
 
  298  template <
typename T>
 
 
  309  template <
typename T>
 
  312    return (x < 0) ? 1 - y : y;
 
 
 
  317  template <
typename T>
 
  319    return (x > T(0)) - (x < T(0));
 
 
 
  336  template <
typename T>
 
 
  350  template <
typename T>
 
 
  364  template <
typename T>
 
 
  371  template <
typename T>
 
 
  378  template <
typename T>
 
 
  385  template <
typename T>
 
  394    float t1 = tan_a * tanh_b;
 
  395    float denom = 1. + t1 * t1;
 
  396    return {(tan_a - tanh_b * t1) / denom, (tanh_b + tan_a * t1) / denom};
 
 
 
  401  template <
typename T>
 
  410    float t1 = tanh_a * tan_b;
 
  411    float denom = 1. + t1 * t1;
 
  412    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:241
 
T operator()(T x)
Definition unary_ops.h:243
 
Definition unary_ops.h:262
 
T operator()(T x)
Definition unary_ops.h:264
 
Definition unary_ops.h:269
 
T operator()(T x)
Definition unary_ops.h:271
 
Definition unary_ops.h:255
 
T operator()(T x)
Definition unary_ops.h:257
 
Definition unary_ops.h:248
 
T operator()(T x)
Definition unary_ops.h:250
 
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
 
Definition unary_ops.h:290
 
T operator()(T x)
Definition unary_ops.h:292
 
Definition unary_ops.h:297
 
T operator()(T x)
Definition unary_ops.h:299
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:303
 
Definition unary_ops.h:377
 
T operator()(T x)
Definition unary_ops.h:379
 
Definition unary_ops.h:308
 
T operator()(T x)
Definition unary_ops.h:310
 
Definition unary_ops.h:316
 
T operator()(T x)
Definition unary_ops.h:318
 
uint32_t operator()(uint32_t x)
Definition unary_ops.h:322
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:326
 
Definition unary_ops.h:335
 
T operator()(T x)
Definition unary_ops.h:337
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:342
 
Definition unary_ops.h:349
 
T operator()(T x)
Definition unary_ops.h:351
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:356
 
Definition unary_ops.h:370
 
T operator()(T x)
Definition unary_ops.h:372
 
Definition unary_ops.h:363
 
T operator()(T x)
Definition unary_ops.h:365
 
Definition unary_ops.h:384
 
T operator()(T x)
Definition unary_ops.h:386
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:391
 
Definition unary_ops.h:400
 
complex64_t operator()(complex64_t x)
Definition unary_ops.h:407
 
T operator()(T x)
Definition unary_ops.h:402
 
float imag
Definition complex.h:22
 
float real
Definition complex.h:21