58 references to AsDouble
System.Numerics.Tensors (49)
System\Numerics\Tensors\netcore\TensorPrimitives.Cbrt.cs (1)
42
return ExpOperator<double>.Invoke(LogOperator<double>.Invoke(x.
AsDouble
()) / Vector128.Create(3d)).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Ceiling.cs (1)
47
return Vector128.Ceiling(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.ConvertToInteger.cs (2)
49
Vector128.ConvertToInt64(x.
AsDouble
()).As<long, TTo>() :
50
Vector128.ConvertToUInt64(x.
AsDouble
()).As<ulong, TTo>();
System\Numerics\Tensors\netcore\TensorPrimitives.ConvertToIntegerNative.cs (2)
49
Vector128.ConvertToInt64Native(x.
AsDouble
()).As<long, TTo>() :
50
Vector128.ConvertToUInt64Native(x.
AsDouble
()).As<ulong, TTo>();
System\Numerics\Tensors\netcore\TensorPrimitives.Cos.cs (1)
81
return Vector128.Cos(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Cosh.cs (1)
93
Vector128<double> x = t.
AsDouble
();
System\Numerics\Tensors\netcore\TensorPrimitives.CosPi.cs (1)
64
return ApplyScalar<CosPiOperator<double>>(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.DegreesToRadians.cs (1)
44
return Vector128.DegreesToRadians(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Exp.cs (1)
54
return Vector128.Exp(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Floor.cs (1)
47
return Vector128.Floor(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.FusedMultiplyAdd.cs (3)
129
return Vector128.FusedMultiplyAdd(x.
AsDouble
(), y.
AsDouble
(), z.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Hypot.cs (2)
48
return Vector128.Hypot(x.
AsDouble
(), y.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.IndexOfMax.cs (3)
475
if (typeof(T) == typeof(double)) return Sse41.BlendVariable(left.
AsDouble
(), right.
AsDouble
(), (~mask).
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Lerp.cs (3)
108
return Vector128.Lerp(x.
AsDouble
(), y.
AsDouble
(), amount.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Log.cs (1)
110
return Vector128.Log(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Log2.cs (1)
56
return Vector128.Log2(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.MultiplyAddEstimate.cs (3)
152
return Vector128.MultiplyAddEstimate(x.
AsDouble
(), y.
AsDouble
(), z.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Pow.cs (2)
75
return ExpOperator<double>.Invoke(y.
AsDouble
() * LogOperator<double>.Invoke(x.
AsDouble
())).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.RadiansToDegrees.cs (1)
37
return Vector128.RadiansToDegrees(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Reciprocal.cs (4)
130
if (typeof(T) == typeof(double)) return Avx512F.VL.Reciprocal14(x.
AsDouble
()).As<double, T>();
146
if (typeof(T) == typeof(double)) return AdvSimd.Arm64.ReciprocalEstimate(x.
AsDouble
()).As<double, T>();
196
if (typeof(T) == typeof(double)) return Avx512F.VL.ReciprocalSqrt14(x.
AsDouble
()).As<double, T>();
212
if (typeof(T) == typeof(double)) return AdvSimd.Arm64.ReciprocalSquareRootEstimate(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Remainder.cs (1)
99
typeof(T) == typeof(double) ? x - (TruncateOperator<double>.Invoke((x / y).
AsDouble
()).As<double, T>() * y) :
System\Numerics\Tensors\netcore\TensorPrimitives.RootN.cs (1)
44
return ExpOperator<double>.Invoke(LogOperator<double>.Invoke(x.
AsDouble
()) / Vector128.Create((double)_n)).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Round.cs (4)
196
return Vector128.Round(x.
AsDouble
()).As<double, T>();
271
return AdvSimd.Arm64.RoundAwayFromZero(x.
AsDouble
()).As<double, T>();
275
return TruncateOperator<double>.Invoke(x.
AsDouble
() + CopySignOperator<double>.Invoke(Vector128.Create(0.49999999999999994), x.
AsDouble
())).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Sin.cs (1)
70
return Vector128.Sin(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Sinh.cs (1)
77
Vector128<double> x = t.
AsDouble
();
System\Numerics\Tensors\netcore\TensorPrimitives.SinPi.cs (1)
64
return ApplyScalar<SinPiOperator<double>>(x.
AsDouble
()).As<double, T>();
System\Numerics\Tensors\netcore\TensorPrimitives.Tan.cs (3)
77
return TanOperatorDouble.Invoke(x.
AsDouble
()).As<double, T>();
302
Vector128<double> result = (poly.AsUInt64() ^ (x.AsUInt64() & Vector128.Create(~SignMask))).
AsDouble
();
303
return Vector128.ConditionalSelect(Vector128.Equals(odd, Vector128<ulong>.Zero).
AsDouble
(),
System\Numerics\Tensors\netcore\TensorPrimitives.Tanh.cs (1)
83
Vector128<double> x = t.
AsDouble
();
System\Numerics\Tensors\netcore\TensorPrimitives.Truncate.cs (1)
45
return Vector128.Truncate(x.
AsDouble
()).As<double, T>();
System.Private.CoreLib (9)
src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector128.cs (9)
401
Vector128<double> result = Sse2.Subtract(upperBits.
AsDouble
(), Create(0x45300000_80100000).
AsDouble
()); // Compute in double precision: (upper - (2^84 + 2^63 + 2^52)) + lower
402
return Sse2.Add(result, lowerBits.
AsDouble
());
442
Vector128<double> result = Sse2.Subtract(upperBits.
AsDouble
(), Create(0x45300000_00100000UL).
AsDouble
()); // Compute in double precision: (upper - (2^84 + 2^52)) + lower
443
return Sse2.Add(result, lowerBits.
AsDouble
());
1882
return VectorMath.IsEvenIntegerDouble<Vector128<double>, Vector128<ulong>>(vector.
AsDouble
()).As<double, T>();
2009
return VectorMath.IsOddIntegerDouble<Vector128<double>, Vector128<ulong>>(vector.
AsDouble
()).As<double, T>();
3856
Unsafe.WriteUnaligned(ref address, source.
AsDouble
().ToScalar());