1 instantiation of ReadOnlyTensorSpan
System.Numerics.Tensors (1)
System\Numerics\Tensors\netcore\ReadOnlyTensorSpan.cs (1)
641public static implicit operator ReadOnlyTensorSpan<T>(T[]? array) => new ReadOnlyTensorSpan<T>(array);
908 references to ReadOnlyTensorSpan
System.Numerics.Tensors (908)
System\Numerics\Tensors\netcore\IReadOnlyTensor.cs (8)
65/// <returns>The converted <see cref="ReadOnlyTensorSpan{T}"/>.</returns> 66ReadOnlyTensorSpan<T> AsReadOnlyTensorSpan(); 72/// <returns>The converted <see cref="ReadOnlyTensorSpan{T}"/>.</returns> 73ReadOnlyTensorSpan<T> AsReadOnlyTensorSpan(params scoped ReadOnlySpan<nint> start); 79/// <returns>The converted <see cref="ReadOnlyTensorSpan{T}"/>.</returns> 80ReadOnlyTensorSpan<T> AsReadOnlyTensorSpan(params scoped ReadOnlySpan<NIndex> startIndex); 86/// <returns>The converted <see cref="ReadOnlyTensorSpan{T}"/>.</returns> 87ReadOnlyTensorSpan<T> AsReadOnlyTensorSpan(params scoped ReadOnlySpan<NRange> range);
System\Numerics\Tensors\netcore\ReadOnlyTensorSpan.cs (27)
109/// Creates a new <see cref="ReadOnlyTensorSpan{T}"/> over the provided <see cref="ReadOnlySpan{T}"/>. The new <see cref="ReadOnlyTensorSpan{T}"/> will 116/// Creates a new <see cref="ReadOnlyTensorSpan{T}"/> over the provided <see cref="Span{T}"/> using the specified lengths and strides. 139/// Creates a new <see cref="ReadOnlyTensorSpan{T}"/> over the provided <see cref="Array"/>. The new <see cref="ReadOnlyTensorSpan{T}"/> will 156/// Creates a new <see cref="ReadOnlyTensorSpan{T}"/> over the provided <see cref="Array"/> using the specified start offsets, lengths, and strides. 204/// Creates a new <see cref="ReadOnlyTensorSpan{T}"/> over the provided <see cref="Array"/> using the specified start offsets, lengths, and strides. 370public ReadOnlyTensorSpan<T> this[params scoped ReadOnlySpan<NRange> ranges] 413public static bool operator !=(ReadOnlyTensorSpan<T> left, ReadOnlyTensorSpan<T> right) => !(left == right); 419public static bool operator ==(ReadOnlyTensorSpan<T> left, ReadOnlyTensorSpan<T> right) => 452public static ReadOnlyTensorSpan<T> Empty => default; 461public static ReadOnlyTensorSpan<T> CastUp<TDerived>(ReadOnlyTensorSpan<TDerived> items) where TDerived : class?, T 469/// <summary>Enumerates the elements of a <see cref="ReadOnlyTensorSpan{T}"/>.</summary> 473private readonly ReadOnlyTensorSpan<T> _span; 482internal Enumerator(ReadOnlyTensorSpan<T> span) 562ReadOnlyTensorSpan<T> srcSlice = Tensor.LazyBroadcast(this, tempLengths); 618ReadOnlyTensorSpan<T> srcSlice = Tensor.LazyBroadcast(this, tempLengths); 641public static implicit operator ReadOnlyTensorSpan<T>(T[]? array) => new ReadOnlyTensorSpan<T>(array); 655public ReadOnlyTensorSpan<T> Slice(params scoped ReadOnlySpan<NIndex> indexes) 669/// <returns>A <see cref="ReadOnlyTensorSpan{T}"/> based on the provided <paramref name="lengths"/>.</returns> 670internal ReadOnlyTensorSpan<T> Slice(scoped ReadOnlySpan<nint> lengths) 684/// <returns>A <see cref="ReadOnlyTensorSpan{T}"/> based on the provided <paramref name="ranges"/>.</returns> 686public ReadOnlyTensorSpan<T> Slice(params scoped ReadOnlySpan<NRange> ranges) 691ReadOnlyTensorSpan<T> toReturn;
System\Numerics\Tensors\netcore\Tensor.cs (14)
383public static implicit operator ReadOnlyTensorSpan<T>(Tensor<T> value) => new ReadOnlyTensorSpan<T>(ref MemoryMarshal.GetArrayDataReference(value._values), value._lengths, value._strides, value.FlattenedLength); 413/// Converts this <see cref="Tensor{T}"/> to a <see cref="ReadOnlyTensorSpan{T}"/> pointing to the same backing memory."/> 415/// <returns><see cref="ReadOnlyTensorSpan{T}"/></returns> 416public ReadOnlyTensorSpan<T> AsReadOnlyTensorSpan() => new ReadOnlyTensorSpan<T>(ref MemoryMarshal.GetArrayDataReference(_values), _lengths, _strides, _flattenedLength); 419/// Converts this <see cref="Tensor{T}"/> to a <see cref="ReadOnlyTensorSpan{T}"/> pointing to the same backing memory based on the provided ranges."/> 421/// <param name="start">The ranges you want in the <see cref="ReadOnlyTensorSpan{T}"/></param> 423public ReadOnlyTensorSpan<T> AsReadOnlyTensorSpan(params scoped ReadOnlySpan<NRange> start) => AsTensorSpan().Slice(start); 426/// Converts this <see cref="Tensor{T}"/> to a <see cref="ReadOnlyTensorSpan{T}"/> pointing to the same backing memory based on the provided start locations."/> 428/// <param name="start">The start locations you want in the <see cref="ReadOnlyTensorSpan{T}"/></param> 430public ReadOnlyTensorSpan<T> AsReadOnlyTensorSpan(params scoped ReadOnlySpan<nint> start) => Slice(start); 433/// Converts this <see cref="Tensor{T}"/> to a <see cref="ReadOnlyTensorSpan{T}"/> pointing to the same backing memory based on the provided start indexes."/> 435/// <param name="startIndex">The start indexes you want in the <see cref="ReadOnlyTensorSpan{T}"/></param> 437public ReadOnlyTensorSpan<T> AsReadOnlyTensorSpan(params scoped ReadOnlySpan<NIndex> startIndex) => AsTensorSpan().Slice(startIndex); 670((ReadOnlyTensorSpan<T>)AsTensorSpan()).ToString(sb, maximumLengths);
System\Numerics\Tensors\netcore\TensorExtensions.cs (844)
34public static ReadOnlyTensorSpan<T> AsReadOnlyTensorSpan<T>(this T[]? array, params scoped ReadOnlySpan<nint> lengths) => new(array, 0, lengths, default); 54public static T Average<T>(scoped in ReadOnlyTensorSpan<T> x) 68public static Tensor<T> Broadcast<T>(scoped in ReadOnlyTensorSpan<T> source, scoped in ReadOnlyTensorSpan<T> lengthsSource) 80public static Tensor<T> Broadcast<T>(scoped in ReadOnlyTensorSpan<T> source, scoped ReadOnlySpan<nint> lengths) 84ReadOnlyTensorSpan<T> intermediate = LazyBroadcast(source, newSize); 103ReadOnlyTensorSpan<T> intermediate = LazyBroadcast(source, newSize); 118ReadOnlyTensorSpan<T> intermediate = LazyBroadcast(source, newSize); 127public static void BroadcastTo<T>(in this ReadOnlyTensorSpan<T> source, in TensorSpan<T> destination) 133ReadOnlyTensorSpan<T> intermediate = LazyBroadcast(source, newSize); 189internal static ReadOnlyTensorSpan<T> LazyBroadcast<T>(in ReadOnlyTensorSpan<T> input, ReadOnlySpan<nint> shape) 447/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> for equality. If the shapes are not the same, the tensors are broadcasted to the smallest broadcastable size 450/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 451/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 453public static Tensor<bool> Equals<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 472/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> for equality. If the shapes are not the same, the tensors are broadcasted to the smallest broadcastable size 475/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 476/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 479public static ref readonly TensorSpan<bool> Equals<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<bool> destination) 528/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> for equality. If the shapes are not the same, the tensors are broadcasted to the smallest broadcastable size 531/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 534public static Tensor<bool> Equals<T>(in ReadOnlyTensorSpan<T> x, T y) 543/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> for equality. If the shapes are not the same, the tensors are broadcasted to the smallest broadcastable size 546/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 550public static ref readonly TensorSpan<bool> Equals<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<bool> destination) 586/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="x"/> are equal to <paramref name="y"/>. 590/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 591/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 593public static bool EqualsAll<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 598ReadOnlyTensorSpan<T> broadcastedLeft = LazyBroadcast(x, newSize); 599ReadOnlyTensorSpan<T> broadcastedRight = LazyBroadcast(y, newSize); 630/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="x"/> are equal to <paramref name="y"/>. 634/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 635/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 637public static bool EqualsAll<T>(in ReadOnlyTensorSpan<T> x, T y) 671/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="x"/> are equal to <paramref name="y"/>. 675/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 676/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 678public static bool EqualsAny<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 682ReadOnlyTensorSpan<T> broadcastedLeft = LazyBroadcast(x, newSize); 683ReadOnlyTensorSpan<T> broadcastedRight = LazyBroadcast(y, newSize); 714/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="x"/> are equal to <paramref name="y"/>. 718/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 721public static bool EqualsAny<T>(in ReadOnlyTensorSpan<T> x, T y) 760public static ref readonly TensorSpan<T> FilteredUpdate<T>(in this TensorSpan<T> tensor, scoped in ReadOnlyTensorSpan<bool> filter, T value) 786public static ref readonly TensorSpan<T> FilteredUpdate<T>(in this TensorSpan<T> tensor, scoped in ReadOnlyTensorSpan<bool> filter, scoped in ReadOnlyTensorSpan<T> values) 812/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see which elements of <paramref name="x"/> are greater than <paramref name="y"/>. 817/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 818/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 821public static Tensor<bool> GreaterThan<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 840/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see which elements of <paramref name="x"/> are greater than <paramref name="y"/>. 845/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 846/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 850public static ref readonly TensorSpan<bool> GreaterThan<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<bool> destination) 899/// Compares the elements of a <see cref="ReadOnlyTensorSpan{T}"/> to see which elements are greater than <paramref name="y"/>. 903/// <param name="x"><see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 907public static Tensor<bool> GreaterThan<T>(in ReadOnlyTensorSpan<T> x, T y) 916/// Compares the elements of a <see cref="ReadOnlyTensorSpan{T}"/> to see which elements are greater than <paramref name="y"/>. 920/// <param name="x"><see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 925public static ref readonly TensorSpan<bool> GreaterThan<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<bool> destination) 963/// <param name="x"><see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 967public static Tensor<bool> GreaterThan<T>(T x, in ReadOnlyTensorSpan<T> y) 980/// <param name="x"><see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 985public static ref readonly TensorSpan<bool> GreaterThan<T>(T x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<bool> destination) 1021/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see which elements of <paramref name="x"/> are greater than or equal to <paramref name="y"/>. 1026/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1027/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1030public static Tensor<bool> GreaterThanOrEqual<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 1049/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see which elements of <paramref name="x"/> are greater than or equal to <paramref name="y"/>. 1054/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1055/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1059public static ref readonly TensorSpan<bool> GreaterThanOrEqual<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<bool> destination) 1108/// Compares the elements of a <see cref="ReadOnlyTensorSpan{T}"/> to see which elements are greater than or equal to <paramref name="y"/>. 1112/// <param name="x"><see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1116public static Tensor<bool> GreaterThanOrEqual<T>(in ReadOnlyTensorSpan<T> x, T y) 1125/// Compares the elements of a <see cref="ReadOnlyTensorSpan{T}"/> to see which elements are greater than or equal to <paramref name="y"/>. 1129/// <param name="x"><see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1134public static ref readonly TensorSpan<bool> GreaterThanOrEqual<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<bool> destination) 1172/// <param name="x"><see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1176public static Tensor<bool> GreaterThanOrEqual<T>(T x, in ReadOnlyTensorSpan<T> y) 1189/// <param name="x"><see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1194public static ref readonly TensorSpan<bool> GreaterThanOrEqual<T>(T x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<bool> destination) 1230/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="x"/> are greater than <paramref name="y"/>. 1234/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1235/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 1237public static bool GreaterThanAny<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 1241ReadOnlyTensorSpan<T> broadcastedLeft = LazyBroadcast(x, newSize); 1242ReadOnlyTensorSpan<T> broadcastedRight = LazyBroadcast(y, newSize); 1273/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="x"/> are greater than <paramref name="y"/>. 1277/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1280public static bool GreaterThanAny<T>(in ReadOnlyTensorSpan<T> x, T y) 1312/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="y"/> are greater than <paramref name="x"/>. 1316/// <param name="y">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1319public static bool GreaterThanAny<T>(T x, in ReadOnlyTensorSpan<T> y) 1353/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="x"/> are greater than <paramref name="y"/>. 1357/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1358/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 1360public static bool GreaterThanOrEqualAny<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 1364ReadOnlyTensorSpan<T> broadcastedLeft = LazyBroadcast(x, newSize); 1365ReadOnlyTensorSpan<T> broadcastedRight = LazyBroadcast(y, newSize); 1396/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="x"/> are greater than <paramref name="y"/>. 1400/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1403public static bool GreaterThanOrEqualAny<T>(in ReadOnlyTensorSpan<T> x, T y) 1435/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="y"/> are greater than <paramref name="x"/>. 1439/// <param name="y">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1442public static bool GreaterThanOrEqualAny<T>(T x, in ReadOnlyTensorSpan<T> y) 1476/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="x"/> are greater than <paramref name="y"/>. 1480/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1481/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 1483public static bool GreaterThanAll<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 1488ReadOnlyTensorSpan<T> broadcastedLeft = LazyBroadcast(x, newSize); 1489ReadOnlyTensorSpan<T> broadcastedRight = LazyBroadcast(y, newSize); 1520/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="x"/> are greater than <paramref name="y"/>. 1524/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1525/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 1527public static bool GreaterThanAll<T>(in ReadOnlyTensorSpan<T> x, T y) 1559/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="y"/> are greater than <paramref name="y"/>. 1563/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1564/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 1566public static bool GreaterThanAll<T>(T x, in ReadOnlyTensorSpan<T> y) 1600/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="x"/> are greater than <paramref name="y"/>. 1604/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1605/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 1607public static bool GreaterThanOrEqualAll<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 1612ReadOnlyTensorSpan<T> broadcastedLeft = LazyBroadcast(x, newSize); 1613ReadOnlyTensorSpan<T> broadcastedRight = LazyBroadcast(y, newSize); 1644/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="x"/> are greater than <paramref name="y"/>. 1648/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1649/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 1651public static bool GreaterThanOrEqualAll<T>(in ReadOnlyTensorSpan<T> x, T y) 1683/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="y"/> are greater than <paramref name="y"/>. 1687/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1688/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 1690public static bool GreaterThanOrEqualAll<T>(T x, in ReadOnlyTensorSpan<T> y) 1724/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see which elements of <paramref name="x"/> are less than <paramref name="y"/>. 1729/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1730/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1733public static Tensor<bool> LessThan<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 1752/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see which elements of <paramref name="x"/> are less than <paramref name="y"/>. 1757/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1758/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1762public static ref readonly TensorSpan<bool> LessThan<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<bool> destination) 1819public static Tensor<bool> LessThan<T>(in ReadOnlyTensorSpan<T> x, T y) 1837public static ref readonly TensorSpan<bool> LessThan<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<bool> destination) 1879public static Tensor<bool> LessThan<T>(T x, in ReadOnlyTensorSpan<T> y) 1897public static ref readonly TensorSpan<bool> LessThan<T>(T x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<bool> destination) 1933/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see which elements of <paramref name="x"/> are less than <paramref name="y"/>. 1938/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1939/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1942public static Tensor<bool> LessThanOrEqual<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 1961/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see which elements of <paramref name="x"/> are less than <paramref name="y"/>. 1966/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1967/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 1971public static ref readonly TensorSpan<bool> LessThanOrEqual<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<bool> destination) 2028public static Tensor<bool> LessThanOrEqual<T>(in ReadOnlyTensorSpan<T> x, T y) 2046public static ref readonly TensorSpan<bool> LessThanOrEqual<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<bool> destination) 2088public static Tensor<bool> LessThanOrEqual<T>(T x, in ReadOnlyTensorSpan<T> y) 2106public static ref readonly TensorSpan<bool> LessThanOrEqual<T>(T x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<bool> destination) 2142/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="x"/> are less than <paramref name="y"/>. 2146/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 2147/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 2149public static bool LessThanAny<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 2154ReadOnlyTensorSpan<T> broadcastedLeft = LazyBroadcast(x, newSize); 2155ReadOnlyTensorSpan<T> broadcastedRight = LazyBroadcast(y, newSize); 2186/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="x"/> are less than <paramref name="y"/>. 2190/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 2193public static bool LessThanAny<T>(in ReadOnlyTensorSpan<T> x, T y) 2225/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="y"/> are less than <paramref name="y"/>. 2232public static bool LessThanAny<T>(T x, in ReadOnlyTensorSpan<T> y) 2266/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="x"/> are less than <paramref name="y"/>. 2270/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 2271/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 2273public static bool LessThanOrEqualAny<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 2278ReadOnlyTensorSpan<T> broadcastedLeft = LazyBroadcast(x, newSize); 2279ReadOnlyTensorSpan<T> broadcastedRight = LazyBroadcast(y, newSize); 2310/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="x"/> are less than <paramref name="y"/>. 2314/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 2317public static bool LessThanOrEqualAny<T>(in ReadOnlyTensorSpan<T> x, T y) 2349/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if any elements of <paramref name="y"/> are less than <paramref name="y"/>. 2356public static bool LessThanOrEqualAny<T>(T x, in ReadOnlyTensorSpan<T> y) 2390/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="x"/> are less than <paramref name="y"/>. 2394/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 2395/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 2397public static bool LessThanAll<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 2401ReadOnlyTensorSpan<T> broadcastedLeft = LazyBroadcast(x, newSize); 2402ReadOnlyTensorSpan<T> broadcastedRight = LazyBroadcast(y, newSize); 2433/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="x"/> are less than <paramref name="y"/>. 2437/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 2440public static bool LessThanAll<T>(in ReadOnlyTensorSpan<T> x, T y) 2472/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="y"/> are less than <paramref name="x"/>. 2479public static bool LessThanAll<T>(T x, in ReadOnlyTensorSpan<T> y) 2513/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="x"/> are less than <paramref name="y"/>. 2517/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 2518/// <param name="y">Second <see cref="ReadOnlyTensorSpan{T}"/> to compare against.</param> 2520public static bool LessThanOrEqualAll<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 2524ReadOnlyTensorSpan<T> broadcastedLeft = LazyBroadcast(x, newSize); 2525ReadOnlyTensorSpan<T> broadcastedRight = LazyBroadcast(y, newSize); 2556/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="x"/> are less than <paramref name="y"/>. 2560/// <param name="x">First <see cref="ReadOnlyTensorSpan{T}"/> to compare.</param> 2563public static bool LessThanOrEqualAll<T>(in ReadOnlyTensorSpan<T> x, T y) 2595/// Compares the elements of two <see cref="ReadOnlyTensorSpan{T}"/> to see if all elements of <paramref name="y"/> are less than <paramref name="x"/>. 2602public static bool LessThanOrEqualAll<T>(T x, in ReadOnlyTensorSpan<T> y) 2869public static ReadOnlyTensorSpan<T> Reshape<T>(in this ReadOnlyTensorSpan<T> tensor, params scoped ReadOnlySpan<nint> lengths) 2927ReadOnlyTensorSpan<T> output = new ReadOnlyTensorSpan<T>(ref tensor._reference, arrLengths, strides, tensor._shape._memoryLength); 2990/// <param name="tensor">Input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 2992public static void ResizeTo<T>(scoped in ReadOnlyTensorSpan<T> tensor, in TensorSpan<T> destination) 3008public static Tensor<T> Reverse<T>(in ReadOnlyTensorSpan<T> tensor) 3022public static Tensor<T> ReverseDimension<T>(in ReadOnlyTensorSpan<T> tensor, int dimension) 3035public static ref readonly TensorSpan<T> Reverse<T>(scoped in ReadOnlyTensorSpan<T> tensor, in TensorSpan<T> destination) 3047public static ref readonly TensorSpan<T> ReverseDimension<T>(scoped in ReadOnlyTensorSpan<T> tensor, in TensorSpan<T> destination, int dimension) 3093ReadOnlyTensorSpan<T> islice = tensor.Slice(tensor.Lengths); 3118public static bool SequenceEqual<T>(this scoped in TensorSpan<T> tensor, scoped in ReadOnlyTensorSpan<T> other) 3130public static bool SequenceEqual<T>(this scoped in ReadOnlyTensorSpan<T> tensor, scoped in ReadOnlyTensorSpan<T> other) 3147public static Tensor<T> SetSlice<T>(this Tensor<T> tensor, in ReadOnlyTensorSpan<T> values, params ReadOnlySpan<NRange> ranges) 3160public static ref readonly TensorSpan<T> SetSlice<T>(this in TensorSpan<T> tensor, scoped in ReadOnlyTensorSpan<T> values, params scoped ReadOnlySpan<NRange> ranges) 3192public static Tensor<T>[] Split<T>(scoped in ReadOnlyTensorSpan<T> tensor, int splitCount, nint dimension) 3239ReadOnlyTensorSpan<T> islice = tensor.Slice(tensor.Lengths); 3378/// <param name="tensor">The <see cref="ReadOnlyTensorSpan{T}"/> to remove all dimensions of length 1.</param> 3379public static ReadOnlyTensorSpan<T> Squeeze<T>(in this ReadOnlyTensorSpan<T> tensor) 3388/// <param name="tensor">The <see cref="ReadOnlyTensorSpan{T}"/> to remove dimension of length 1.</param> 3390public static ReadOnlyTensorSpan<T> SqueezeDimension<T>(in this ReadOnlyTensorSpan<T> tensor, int dimension) 3514public static T StdDev<T>(in ReadOnlyTensorSpan<T> x) 3535((ReadOnlyTensorSpan<T>)tensor).ToString(maximumLengths); 3538/// Creates a <see cref="string"/> representation of the <see cref="ReadOnlyTensorSpan{T}"/>."/> 3541/// <param name="tensor">The <see cref="ReadOnlyTensorSpan{T}"/> you want to represent as a string.</param> 3543public static string ToString<T>(this in ReadOnlyTensorSpan<T> tensor, params ReadOnlySpan<nint> maximumLengths) 3550internal static void ToString<T>(this in ReadOnlyTensorSpan<T> tensor, StringBuilder sb, params ReadOnlySpan<nint> maximumLengths) 3574var sp = new ReadOnlyTensorSpan<T>(ref Unsafe.Add(ref tensor._reference, TensorSpanHelpers.ComputeLinearIndex(curIndexes, tensor.Strides, tensor.Lengths)), [tensor.Lengths[tensor.Rank - 1]], [1], tensor.Lengths[tensor.Rank - 1]); 3594public static string ToString<T>(this Tensor<T> tensor, params ReadOnlySpan<nint> maximumLengths) => ((ReadOnlyTensorSpan<T>)tensor).ToString(maximumLengths); 3628return TryBroadcastTo((ReadOnlyTensorSpan<T>)tensor, destination); 3639return TryBroadcastTo((ReadOnlyTensorSpan<T>)tensor, destination); 3646/// <param name="tensor">Input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 3648public static bool TryBroadcastTo<T>(in this ReadOnlyTensorSpan<T> tensor, in TensorSpan<T> destination) 3740/// <param name="tensor">The <see cref="ReadOnlyTensorSpan{T}"/> to add a dimension of length 1.</param> 3742public static ReadOnlyTensorSpan<T> Unsqueeze<T>(in this ReadOnlyTensorSpan<T> tensor, int dimension) 3780/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the abs of.</param> 3781public static Tensor<T> Abs<T>(in ReadOnlyTensorSpan<T> x) 3790/// Takes the absolute value of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 3794public static ref readonly TensorSpan<T> Abs<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 3805/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 3806public static Tensor<T> Acos<T>(in ReadOnlyTensorSpan<T> x) 3819public static ref readonly TensorSpan<T> Acos<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 3828/// Takes the inverse hyperbolic cosine of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 3830/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 3831public static Tensor<T> Acosh<T>(in ReadOnlyTensorSpan<T> x) 3844public static ref readonly TensorSpan<T> Acosh<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 3855/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 3856public static Tensor<T> AcosPi<T>(in ReadOnlyTensorSpan<T> x) 3867/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 3869public static ref readonly TensorSpan<T> AcosPi<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 3880/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> of values to add.</param> 3881/// <param name="y">The second <see cref="ReadOnlyTensorSpan{T}"/> of values to add.</param> 3882public static Tensor<T> Add<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 3902/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> of values to add.</param> 3904public static Tensor<T> Add<T>(in ReadOnlyTensorSpan<T> x, T y) 3913/// Adds each element of <paramref name="x"/> to each element of <paramref name="y"/> and returns a new <see cref="ReadOnlyTensorSpan{T}"/> with the result. 3915/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> of values to add.</param> 3916/// <param name="y">The second <see cref="ReadOnlyTensorSpan{T}"/> of values to add.</param> 3918public static ref readonly TensorSpan<T> Add<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 3927/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> of values to add.</param> 3930public static ref readonly TensorSpan<T> Add<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 3939/// Takes the inverse sin of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 3941/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 3942public static Tensor<T> Asin<T>(in ReadOnlyTensorSpan<T> x) 3951/// Takes the inverse sin of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 3953/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 3955public static ref readonly TensorSpan<T> Asin<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 3964/// Takes the inverse hyperbolic sine of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 3966/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 3967public static Tensor<T> Asinh<T>(in ReadOnlyTensorSpan<T> x) 3976/// Takes the inverse hyperbolic sine of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 3978/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 3980public static ref readonly TensorSpan<T> Asinh<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 3989/// Takes the inverse hyperbolic sine divided by pi of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 3991/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 3992public static Tensor<T> AsinPi<T>(in ReadOnlyTensorSpan<T> x) 4001/// Takes the inverse hyperbolic sine divided by pi of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4003/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 4005public static ref readonly TensorSpan<T> AsinPi<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4014/// Takes the arc tangent of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4016/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/></param> 4017public static Tensor<T> Atan<T>(in ReadOnlyTensorSpan<T> x) 4026/// Takes the arc tangent of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4028/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/></param> 4030public static ref readonly TensorSpan<T> Atan<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4039/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4041/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4042/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4043public static Tensor<T> Atan2<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 4061/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4063/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4064/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4066public static ref readonly TensorSpan<T> Atan2<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 4073/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4075/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4076/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4077public static Tensor<T> Atan2<T>(in ReadOnlyTensorSpan<T> x, T y) 4087/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4089/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4090/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4092public static ref readonly TensorSpan<T> Atan2<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 4099/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4101/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4102/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4103public static Tensor<T> Atan2<T>(T x, in ReadOnlyTensorSpan<T> y) 4113/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4115/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4116/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4118public static ref readonly TensorSpan<T> Atan2<T>(T x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 4127/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/>, divides each element by pi, and returns a new <see cref="Tensor{T}"/> with the result. 4129/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4130/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4131public static Tensor<T> Atan2Pi<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 4149/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/>, divides each element by pi, and returns a new <see cref="TensorSpan{T}"/> with the result. 4151/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4152/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4154public static ref readonly TensorSpan<T> Atan2Pi<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 4161/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/>, divides each element by pi, and returns a new <see cref="TensorSpan{T}"/> with the result. 4163/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4164/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4165public static Tensor<T> Atan2Pi<T>(in ReadOnlyTensorSpan<T> x, T y) 4175/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/>, divides each element by pi, and returns a new <see cref="TensorSpan{T}"/> with the result. 4177/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4178/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4180public static ref readonly TensorSpan<T> Atan2Pi<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 4187/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/>, divides each element by pi, and returns a new <see cref="TensorSpan{T}"/> with the result. 4189/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4190/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4191public static Tensor<T> Atan2Pi<T>(T x, in ReadOnlyTensorSpan<T> y) 4201/// Takes the arc tangent of the two input <see cref="ReadOnlyTensorSpan{T}"/>, divides each element by pi, and returns a new <see cref="TensorSpan{T}"/> with the result. 4203/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4204/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4206public static ref readonly TensorSpan<T> Atan2Pi<T>(T x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 4216/// Takes the inverse hyperbolic tangent of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4218/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4219public static Tensor<T> Atanh<T>(in ReadOnlyTensorSpan<T> x) 4228/// Takes the inverse hyperbolic tangent of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4230/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4232public static ref readonly TensorSpan<T> Atanh<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4241/// Takes the inverse hyperbolic tangent divided by pi of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4243/// <param name="x">The input<see cref="ReadOnlyTensorSpan{T}"/>.</param> 4244public static Tensor<T> AtanPi<T>(in ReadOnlyTensorSpan<T> x) 4253/// Takes the inverse hyperbolic tangent divided by pi of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4255/// <param name="x">The input<see cref="ReadOnlyTensorSpan{T}"/>.</param> 4257public static ref readonly TensorSpan<T> AtanPi<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4266/// Computes the element-wise bitwise and of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4268/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4269/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4270public static Tensor<T> BitwiseAnd<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 4288/// Computes the element-wise bitwise and of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4290/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4291/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4293public static ref readonly TensorSpan<T> BitwiseAnd<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 4300/// Computes the element-wise bitwise and of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4302/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4304public static Tensor<T> BitwiseAnd<T>(in ReadOnlyTensorSpan<T> x, T y) 4314/// Computes the element-wise bitwise and of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4316/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4319public static ref readonly TensorSpan<T> BitwiseAnd<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 4328/// Computes the element-wise bitwise of of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4330/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4331/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4332public static Tensor<T> BitwiseOr<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 4350/// Computes the element-wise bitwise of of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4352/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4353/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4355public static ref readonly TensorSpan<T> BitwiseOr<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 4362/// Computes the element-wise bitwise or of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4364/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4366public static Tensor<T> BitwiseOr<T>(in ReadOnlyTensorSpan<T> x, T y) 4376/// Computes the element-wise bitwise or of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4378/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4381public static ref readonly TensorSpan<T> BitwiseOr<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 4390/// Computes the element-wise cube root of the input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4392/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4393public static Tensor<T> Cbrt<T>(in ReadOnlyTensorSpan<T> x) 4402/// Computes the element-wise cube root of the input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4404/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4406public static ref readonly TensorSpan<T> Cbrt<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4415/// Computes the element-wise ceiling of the input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4417/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4418public static Tensor<T> Ceiling<T>(in ReadOnlyTensorSpan<T> x) 4427/// Computes the element-wise ceiling of the input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4429/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4431public static ref readonly TensorSpan<T> Ceiling<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4440/// Copies <paramref name="source"/> to a new <see cref="ReadOnlyTensorSpan{TTO}"/> converting each <typeparamref name="TFrom"/> 4443/// <param name="source">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4444public static Tensor<TTo> ConvertChecked<TFrom, TTo>(in ReadOnlyTensorSpan<TFrom> source) 4460public static ref readonly TensorSpan<TTo> ConvertChecked<TFrom, TTo>(scoped in ReadOnlyTensorSpan<TFrom> source, in TensorSpan<TTo> destination) 4470/// Copies <paramref name="source"/> to a new <see cref="ReadOnlyTensorSpan{TTO}"/> converting each <typeparamref name="TFrom"/> 4473/// <param name="source">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4474public static Tensor<TTo> ConvertSaturating<TFrom, TTo>(in ReadOnlyTensorSpan<TFrom> source) 4490public static ref readonly TensorSpan<TTo> ConvertSaturating<TFrom, TTo>(scoped in ReadOnlyTensorSpan<TFrom> source, in TensorSpan<TTo> destination) 4500/// Copies <paramref name="source"/> to a new <see cref="ReadOnlyTensorSpan{TTO}"/> converting each <typeparamref name="TFrom"/> 4503/// <param name="source">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4504public static Tensor<TTo> ConvertTruncating<TFrom, TTo>(in ReadOnlyTensorSpan<TFrom> source) 4520public static ref readonly TensorSpan<TTo> ConvertTruncating<TFrom, TTo>(scoped in ReadOnlyTensorSpan<TFrom> source, in TensorSpan<TTo> destination) 4532/// <param name="x">Input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4534public static Tensor<T> CopySign<T>(in ReadOnlyTensorSpan<T> x, T sign) 4546/// <param name="x">Input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4547/// <param name="sign">The <see cref="ReadOnlyTensorSpan{T}"/> with the associated signs.</param> 4548public static Tensor<T> CopySign<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> sign) 4568/// <param name="x">Input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4571public static ref readonly TensorSpan<T> CopySign<T>(scoped in ReadOnlyTensorSpan<T> x, T sign, in TensorSpan<T> destination) 4580/// <param name="x">Input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4581/// <param name="sign">The <see cref="ReadOnlyTensorSpan{T}"/> with the associated signs.</param> 4583public static ref readonly TensorSpan<T> CopySign<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> sign, in TensorSpan<T> destination) 4592/// Takes the cosine of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4594/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the cosine of.</param> 4595public static Tensor<T> Cos<T>(in ReadOnlyTensorSpan<T> x) 4604/// Takes the cosine of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4606/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the cosine of.</param> 4608public static ref readonly TensorSpan<T> Cos<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4617/// Takes the hyperbolic cosine of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 4619/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the cosine of.</param> 4620public static Tensor<T> Cosh<T>(in ReadOnlyTensorSpan<T> x) 4629/// Takes the hyperbolic cosine of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 4631/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the cosine of.</param> 4633public static ref readonly TensorSpan<T> Cosh<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4644/// <param name="x">The first <see cref="ReadOnlyTensorSpan{T}"/></param> 4645/// <param name="y">The second <see cref="ReadOnlyTensorSpan{T}"/></param> 4646public static Tensor<T> CosineSimilarity<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 4673/// <param name="x">The first <see cref="ReadOnlyTensorSpan{T}"/></param> 4674/// <param name="y">The second <see cref="ReadOnlyTensorSpan{T}"/></param> 4676public static ref readonly TensorSpan<T> CosineSimilarity<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 4724/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/></param> 4737public static Tensor<T> CosPi<T>(in ReadOnlyTensorSpan<T> x) 4746/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/></param> 4760public static ref readonly TensorSpan<T> CosPi<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4771/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4772public static Tensor<T> DegreesToRadians<T>(in ReadOnlyTensorSpan<T> x) 4783/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4785public static ref readonly TensorSpan<T> DegreesToRadians<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4796/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4797/// <param name="y">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4798public static T Distance<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y) 4809/// <param name="x">Input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4811public static Tensor<T> Divide<T>(in ReadOnlyTensorSpan<T> x, T y) 4823/// <param name="y">The <see cref="ReadOnlyTensorSpan{T}"/> divisor.</param> 4824public static Tensor<T> Divide<T>(T x, in ReadOnlyTensorSpan<T> y) 4834/// a new <see cref="ReadOnlyTensorSpan{T}"/> with the result. 4836/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to be divided.</param> 4837/// <param name="y">The <see cref="ReadOnlyTensorSpan{T}"/> divisor.</param> 4838public static Tensor<T> Divide<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 4858/// <param name="x">Input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4861public static ref readonly TensorSpan<T> Divide<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 4871/// <param name="y">The <see cref="ReadOnlyTensorSpan{T}"/> divisor.</param> 4873public static ref readonly TensorSpan<T> Divide<T>(T x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 4883/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to be divided.</param> 4884/// <param name="y">The <see cref="ReadOnlyTensorSpan{T}"/> divisor.</param> 4886public static ref readonly TensorSpan<T> Divide<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 4897/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4898/// <param name="y">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4899public static T Dot<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 4910/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4911public static Tensor<T> Exp<T>(in ReadOnlyTensorSpan<T> x) 4922/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4924public static ref readonly TensorSpan<T> Exp<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4935/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4936public static Tensor<T> Exp10<T>(in ReadOnlyTensorSpan<T> x) 4947/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4949public static ref readonly TensorSpan<T> Exp10<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4958/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4959public static Tensor<T> Exp10M1<T>(in ReadOnlyTensorSpan<T> x) 4968/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4970public static ref readonly TensorSpan<T> Exp10M1<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 4979/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4980public static Tensor<T> Exp2<T>(in ReadOnlyTensorSpan<T> x) 4989/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 4991public static ref readonly TensorSpan<T> Exp2<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 5000/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5001public static Tensor<T> Exp2M1<T>(in ReadOnlyTensorSpan<T> x) 5010/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5012public static ref readonly TensorSpan<T> Exp2M1<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 5021/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5022public static Tensor<T> ExpM1<T>(in ReadOnlyTensorSpan<T> x) 5031/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5033public static ref readonly TensorSpan<T> ExpM1<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 5042/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5043public static Tensor<T> Floor<T>(in ReadOnlyTensorSpan<T> x) 5052/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5054public static ref readonly TensorSpan<T> Floor<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 5066/// <param name="x">Left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5067/// <param name="y">Right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5068public static Tensor<T> Hypot<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5089/// <param name="x">Left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5090/// <param name="y">Right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5092public static ref readonly TensorSpan<T> Hypot<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5102/// <param name="x">Left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5103/// <param name="y">Right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5104public static Tensor<T> Ieee754Remainder<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5123/// <param name="x">Left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5124/// <param name="y">Right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5126public static ref readonly TensorSpan<T> Ieee754Remainder<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5133/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5134/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5135public static Tensor<T> Ieee754Remainder<T>(in ReadOnlyTensorSpan<T> x, T y) 5145/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5146/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5148public static ref readonly TensorSpan<T> Ieee754Remainder<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 5155/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5156/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5157public static Tensor<T> Ieee754Remainder<T>(T x, in ReadOnlyTensorSpan<T> y) 5167/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5168/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5170public static ref readonly TensorSpan<T> Ieee754Remainder<T>(T x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5179/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5180public static Tensor<int> ILogB<T>(in ReadOnlyTensorSpan<T> x) 5189/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5191public static ref readonly TensorSpan<int> ILogB<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<int> destination) 5200/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5201public static int IndexOfMax<T>(scoped in ReadOnlyTensorSpan<T> x) 5211/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5212public static int IndexOfMaxMagnitude<T>(scoped in ReadOnlyTensorSpan<T> x) 5222/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5223public static int IndexOfMin<T>(scoped in ReadOnlyTensorSpan<T> x) 5235/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5236public static int IndexOfMinMagnitude<T>(scoped in ReadOnlyTensorSpan<T> x) 5248/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5249public static Tensor<T> LeadingZeroCount<T>(in ReadOnlyTensorSpan<T> x) 5260/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5262public static ref readonly TensorSpan<T> LeadingZeroCount<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 5271/// Takes the natural logarithm of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 5273/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the natural logarithm of.</param> 5274public static Tensor<T> Log<T>(in ReadOnlyTensorSpan<T> x) 5283/// Takes the natural logarithm of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 5285/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the natural logarithm of.</param> 5287public static ref readonly TensorSpan<T> Log<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 5296public static Tensor<T> Log<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5317public static ref readonly TensorSpan<T> Log<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5326public static Tensor<T> Log<T>(in ReadOnlyTensorSpan<T> x, T y) 5339public static ref readonly TensorSpan<T> Log<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 5348/// Takes the base 10 logarithm of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 5350/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the base 10 logarithm of.</param> 5351public static Tensor<T> Log10<T>(in ReadOnlyTensorSpan<T> x) 5360/// Takes the base 10 logarithm of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 5362/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the base 10 logarithm of.</param> 5364public static ref readonly TensorSpan<T> Log10<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 5373/// Takes the base 10 logarithm plus 1 of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 5375/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the base 10 logarithm of.</param> 5376public static Tensor<T> Log10P1<T>(in ReadOnlyTensorSpan<T> x) 5385/// Takes the base 10 logarithm plus 1 of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 5387/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the base 10 logarithm of.</param> 5389public static ref readonly TensorSpan<T> Log10P1<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 5398/// Takes the base 2 logarithm of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 5400/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the base 2 logarithm of.</param> 5401public static Tensor<T> Log2<T>(in ReadOnlyTensorSpan<T> x) 5410/// Takes the base 2 logarithm of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 5412/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the base 2 logarithm of.</param> 5414public static ref readonly TensorSpan<T> Log2<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 5423/// Takes the base 2 logarithm plus 1 of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 5425/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the base 2 logarithm of.</param> 5426public static Tensor<T> Log2P1<T>(in ReadOnlyTensorSpan<T> x) 5435/// Takes the base 2 logarithm plus 1 of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 5437/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the base 2 logarithm of.</param> 5439public static ref readonly TensorSpan<T> Log2P1<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 5448/// Takes the natural logarithm plus 1 of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 5450/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the natural logarithm of.</param> 5451public static Tensor<T> LogP1<T>(in ReadOnlyTensorSpan<T> x) 5460/// Takes the natural logarithm plus 1 of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 5462/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the natural logarithm of.</param> 5464public static ref readonly TensorSpan<T> LogP1<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 5473/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>..</param> 5474public static T Max<T>(scoped in ReadOnlyTensorSpan<T> x) 5483public static Tensor<T> Max<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5504public static ref readonly TensorSpan<T> Max<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5513public static Tensor<T> Max<T>(in ReadOnlyTensorSpan<T> x, T y) 5525public static ref readonly TensorSpan<T> Max<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 5534/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>..</param> 5535public static T MaxMagnitude<T>(scoped in ReadOnlyTensorSpan<T> x) 5544public static Tensor<T> MaxMagnitude<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5565public static ref readonly TensorSpan<T> MaxMagnitude<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5574public static Tensor<T> MaxMagnitude<T>(in ReadOnlyTensorSpan<T> x, T y) 5586public static ref readonly TensorSpan<T> MaxMagnitude<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 5595/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>..</param> 5596public static T MaxMagnitudeNumber<T>(scoped in ReadOnlyTensorSpan<T> x) 5605public static Tensor<T> MaxMagnitudeNumber<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5626public static ref readonly TensorSpan<T> MaxMagnitudeNumber<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5635public static Tensor<T> MaxMagnitudeNumber<T>(in ReadOnlyTensorSpan<T> x, T y) 5647public static ref readonly TensorSpan<T> MaxMagnitudeNumber<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 5656/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>..</param> 5657public static T MaxNumber<T>(scoped in ReadOnlyTensorSpan<T> x) 5666public static Tensor<T> MaxNumber<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5687public static ref readonly TensorSpan<T> MaxNumber<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5696public static Tensor<T> MaxNumber<T>(in ReadOnlyTensorSpan<T> x, T y) 5708public static ref readonly TensorSpan<T> MaxNumber<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 5717/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5718public static T Min<T>(scoped in ReadOnlyTensorSpan<T> x) 5727public static Tensor<T> Min<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5748public static ref readonly TensorSpan<T> Min<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5757public static Tensor<T> Min<T>(in ReadOnlyTensorSpan<T> x, T y) 5769public static ref readonly TensorSpan<T> Min<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 5778/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 5779public static T MinMagnitude<T>(scoped in ReadOnlyTensorSpan<T> x) 5788public static Tensor<T> MinMagnitude<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5809public static ref readonly TensorSpan<T> MinMagnitude<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5818public static Tensor<T> MinMagnitude<T>(in ReadOnlyTensorSpan<T> x, T y) 5830public static ref readonly TensorSpan<T> MinMagnitude<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 5839/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>..</param> 5840public static T MinMagnitudeNumber<T>(scoped in ReadOnlyTensorSpan<T> x) 5849public static Tensor<T> MinMagnitudeNumber<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5870public static ref readonly TensorSpan<T> MinMagnitudeNumber<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5879public static Tensor<T> MinMagnitudeNumber<T>(in ReadOnlyTensorSpan<T> x, T y) 5891public static ref readonly TensorSpan<T> MinMagnitudeNumber<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 5901public static T MinNumber<T>(scoped in ReadOnlyTensorSpan<T> x) 5910public static Tensor<T> MinNumber<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5931public static ref readonly TensorSpan<T> MinNumber<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 5940public static Tensor<T> MinNumber<T>(in ReadOnlyTensorSpan<T> x, T y) 5952public static ref readonly TensorSpan<T> MinNumber<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 5963/// <param name="x">Input <see cref="ReadOnlyTensorSpan{T}"/></param> 5965public static Tensor<T> Multiply<T>(in ReadOnlyTensorSpan<T> x, T y) 5969Multiply((ReadOnlyTensorSpan<T>)x, y, output); 5977/// <param name="x">Left <see cref="ReadOnlyTensorSpan{T}"/> for multiplication.</param> 5978/// <param name="y">Right <see cref="ReadOnlyTensorSpan{T}"/> for multiplication.</param> 5979public static Tensor<T> Multiply<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 5992Multiply((ReadOnlyTensorSpan<T>)x, y, output); 5999/// <param name="x">Input <see cref="ReadOnlyTensorSpan{T}"/></param> 6002public static ref readonly TensorSpan<T> Multiply<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 6015/// <param name="x">Left <see cref="ReadOnlyTensorSpan{T}"/> for multiplication.</param> 6016/// <param name="y">Right <see cref="ReadOnlyTensorSpan{T}"/> for multiplication.</param> 6018public static ref readonly TensorSpan<T> Multiply<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 6027/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/></param> 6028public static Tensor<T> Negate<T>(in ReadOnlyTensorSpan<T> x) 6037/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/></param> 6039public static ref readonly TensorSpan<T> Negate<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6048/// Takes the norm of the <see cref="ReadOnlyTensorSpan{T}"/> and returns the result. 6050/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the norm of.</param> 6051public static T Norm<T>(scoped in ReadOnlyTensorSpan<T> x) 6060/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/></param> 6061public static Tensor<T> OnesComplement<T>(in ReadOnlyTensorSpan<T> x) 6070/// <param name="y">The <see cref="ReadOnlyTensorSpan{T}"/></param> 6072public static ref readonly TensorSpan<T> OnesComplement<T>(scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 6081/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/></param> 6082public static Tensor<T> PopCount<T>(in ReadOnlyTensorSpan<T> x) 6091/// <param name="y">The <see cref="ReadOnlyTensorSpan{T}"/></param> 6093public static ref readonly TensorSpan<T> PopCount<T>(scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 6102/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6103/// <param name="y">The second input <see cref="ReadOnlyTensorSpan{T}"/></param> 6104public static Tensor<T> Pow<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 6122/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6123/// <param name="y">The second input <see cref="ReadOnlyTensorSpan{T}"/></param> 6125public static ref readonly TensorSpan<T> Pow<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 6132/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6134public static Tensor<T> Pow<T>(in ReadOnlyTensorSpan<T> x, T y) 6144/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6145/// <param name="y">The second input <see cref="ReadOnlyTensorSpan{T}"/></param> 6147public static ref readonly TensorSpan<T> Pow<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 6154/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6156public static Tensor<T> Pow<T>(T x, in ReadOnlyTensorSpan<T> y) 6166/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6167/// <param name="y">The second input <see cref="ReadOnlyTensorSpan{T}"/></param> 6169public static ref readonly TensorSpan<T> Pow<T>(T x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 6178/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6179public static T Product<T>(scoped in ReadOnlyTensorSpan<T> x) 6188/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6189public static Tensor<T> RadiansToDegrees<T>(in ReadOnlyTensorSpan<T> x) 6198/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6200public static ref readonly TensorSpan<T> RadiansToDegrees<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6209/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6210public static Tensor<T> Reciprocal<T>(in ReadOnlyTensorSpan<T> x) 6219/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6221public static ref readonly TensorSpan<T> Reciprocal<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6232public static Tensor<T> RootN<T>(in ReadOnlyTensorSpan<T> x, int n) 6244public static ref readonly TensorSpan<T> RootN<T>(scoped in ReadOnlyTensorSpan<T> x, int n, in TensorSpan<T> destination) 6262public static Tensor<T> RotateLeft<T>(in ReadOnlyTensorSpan<T> x, int rotateAmount) 6275public static ref readonly TensorSpan<T> RotateLeft<T>(scoped in ReadOnlyTensorSpan<T> x, int rotateAmount, in TensorSpan<T> destination) 6293public static Tensor<T> RotateRight<T>(in ReadOnlyTensorSpan<T> x, int rotateAmount) 6306public static ref readonly TensorSpan<T> RotateRight<T>(scoped in ReadOnlyTensorSpan<T> x, int rotateAmount, in TensorSpan<T> destination) 6321/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6322public static Tensor<T> Round<T>(in ReadOnlyTensorSpan<T> x) 6331/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6333public static ref readonly TensorSpan<T> Round<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6340/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6343public static Tensor<T> Round<T>(in ReadOnlyTensorSpan<T> x, int digits, MidpointRounding mode) 6352/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6356public static ref readonly TensorSpan<T> Round<T>(scoped in ReadOnlyTensorSpan<T> x, int digits, MidpointRounding mode, in TensorSpan<T> destination) 6369/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6371public static Tensor<T> Round<T>(in ReadOnlyTensorSpan<T> x, int digits) 6380/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6383public static ref readonly TensorSpan<T> Round<T>(scoped in ReadOnlyTensorSpan<T> x, int digits, in TensorSpan<T> destination) 6396/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6398public static Tensor<T> Round<T>(in ReadOnlyTensorSpan<T> x, MidpointRounding mode) 6407/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6410public static ref readonly TensorSpan<T> Round<T>(scoped in ReadOnlyTensorSpan<T> x, MidpointRounding mode, in TensorSpan<T> destination) 6425/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6426public static Tensor<T> Sigmoid<T>(in ReadOnlyTensorSpan<T> x) 6435/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6437public static ref readonly TensorSpan<T> Sigmoid<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6446/// Takes the sin of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 6448/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6449public static Tensor<T> Sin<T>(in ReadOnlyTensorSpan<T> x) 6458/// Takes the sin of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 6460/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6462public static ref readonly TensorSpan<T> Sin<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6471/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6472public static Tensor<T> Sinh<T>(in ReadOnlyTensorSpan<T> x) 6481/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6483public static ref readonly TensorSpan<T> Sinh<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6492/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6493public static Tensor<T> SinPi<T>(in ReadOnlyTensorSpan<T> x) 6502/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6504public static ref readonly TensorSpan<T> SinPi<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6513/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6514public static Tensor<T> SoftMax<T>(in ReadOnlyTensorSpan<T> x) 6523/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6525public static ref readonly TensorSpan<T> SoftMax<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6534/// Takes the square root of each element of the <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 6536/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the square root of.</param> 6537public static Tensor<T> Sqrt<T>(in ReadOnlyTensorSpan<T> x) 6548/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the square root of.</param> 6550public static ref readonly TensorSpan<T> Sqrt<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6561/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6563public static Tensor<T> Subtract<T>(in ReadOnlyTensorSpan<T> x, T y) 6575/// <param name="y">The <see cref="ReadOnlyTensorSpan{T}"/> of values to subtract.</param> 6576public static Tensor<T> Subtract<T>(T x, in ReadOnlyTensorSpan<T> y) 6587/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> with values to be subtracted from.</param> 6588/// <param name="y">The <see cref="ReadOnlyTensorSpan{T}"/> with values to subtract.</param> 6589public static Tensor<T> Subtract<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 6609/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> with values to be subtracted from.</param> 6612public static ref readonly TensorSpan<T> Subtract<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 6622/// <param name="y">The <see cref="ReadOnlyTensorSpan{T}"/> values to subtract.</param> 6624public static ref readonly TensorSpan<T> Subtract<T>(T x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 6633/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> of values to be subtracted from.</param> 6634/// <param name="y">The <see cref="ReadOnlyTensorSpan{T}"/>of values to subtract.</param> 6636public static ref readonly TensorSpan<T> Subtract<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 6649public static T Sum<T>(scoped in ReadOnlyTensorSpan<T> x) 6662internal static T SumOfSquares<T>(scoped in ReadOnlyTensorSpan<T> x) 6671/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6672public static Tensor<T> Tan<T>(in ReadOnlyTensorSpan<T> x) 6681/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6683public static ref readonly TensorSpan<T> Tan<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6692/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6693public static Tensor<T> Tanh<T>(in ReadOnlyTensorSpan<T> x) 6702/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6704public static ref readonly TensorSpan<T> Tanh<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6713/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6714public static Tensor<T> TanPi<T>(in ReadOnlyTensorSpan<T> x) 6723/// <param name="x">The <see cref="ReadOnlyTensorSpan{T}"/> to take the sin of.</param> 6725public static ref readonly TensorSpan<T> TanPi<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6734/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6735public static Tensor<T> TrailingZeroCount<T>(in ReadOnlyTensorSpan<T> x) 6744/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6746public static ref readonly TensorSpan<T> TrailingZeroCount<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6755/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6756public static Tensor<T> Truncate<T>(in ReadOnlyTensorSpan<T> x) 6765/// <param name="x">The input <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6767public static ref readonly TensorSpan<T> Truncate<T>(scoped in ReadOnlyTensorSpan<T> x, in TensorSpan<T> destination) 6776/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6777/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6778public static Tensor<T> Xor<T>(in ReadOnlyTensorSpan<T> x, in ReadOnlyTensorSpan<T> y) 6796/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6797/// <param name="y">The right <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6799public static ref readonly TensorSpan<T> Xor<T>(scoped in ReadOnlyTensorSpan<T> x, scoped in ReadOnlyTensorSpan<T> y, in TensorSpan<T> destination) 6806/// Computes the element-wise Xor of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="Tensor{T}"/> with the result. 6808/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6810public static Tensor<T> Xor<T>(in ReadOnlyTensorSpan<T> x, T y) 6819/// Computes the element-wise Xor of the two input <see cref="ReadOnlyTensorSpan{T}"/> and returns a new <see cref="TensorSpan{T}"/> with the result. 6821/// <param name="x">The left <see cref="ReadOnlyTensorSpan{T}"/>.</param> 6824public static ref readonly TensorSpan<T> Xor<T>(scoped in ReadOnlyTensorSpan<T> x, T y, in TensorSpan<T> destination) 6869private static T TensorPrimitivesHelperSpanInTOut<T>(scoped in ReadOnlyTensorSpan<T> input, PerformCalculationSpanInTOut<T> performCalculation) 6888private static T TensorPrimitivesHelperTwoSpanInTOut<T>(scoped in ReadOnlyTensorSpan<T> left, scoped in ReadOnlyTensorSpan<T> right, PerformCalculationTwoSpanInTOut<T> performCalculation) 6920private static ref readonly TensorSpan<TOut> TensorPrimitivesHelperSpanInSpanOut<TIn, TOut>(scoped in ReadOnlyTensorSpan<TIn> input, in TensorSpan<TOut> destination, PerformCalculationSpanInSpanOut<TIn, TOut> performCalculation) 6974private static ref readonly TensorSpan<T> TensorPrimitivesHelperSpanInTInSpanOut<T>(scoped in ReadOnlyTensorSpan<T> input, T value, in TensorSpan<T> destination, PerformCalculationSpanInTInSpanOut<T> performCalculation) 7026private static ref readonly TensorSpan<T> TensorPrimitivesHelperTInSpanInSpanOut<T>(T value, scoped in ReadOnlyTensorSpan<T> input, in TensorSpan<T> destination, PerformCalculationTInSpanInSpanOut<T> performCalculation) 7078private static ref readonly TensorSpan<T> TensorPrimitivesHelperTwoSpanInSpanOut<T>(scoped in ReadOnlyTensorSpan<T> left, scoped in ReadOnlyTensorSpan<T> right, in TensorSpan<T> destination, PerformCalculationTwoSpanInSpanOut<T> performCalculation) 7101ReadOnlyTensorSpan<T> broadcastedLeft = Tensor.LazyBroadcast(left, newSize); 7102ReadOnlyTensorSpan<T> broadcastedRight = Tensor.LazyBroadcast(right, newSize);
System\Numerics\Tensors\netcore\TensorHelpers.cs (6)
18public static nint CountTrueElements(scoped in ReadOnlyTensorSpan<bool> filter) 89internal static bool IsUnderlyingStorageSameSize<T>(scoped in ReadOnlyTensorSpan<T> tensor1, scoped in ReadOnlyTensorSpan<T> tensor2) 95internal static bool AreLengthsTheSame<T>(scoped in ReadOnlyTensorSpan<T> tensor1, scoped in ReadOnlyTensorSpan<T> tensor2) 101internal static bool IsContiguousAndDense<T>(scoped in ReadOnlyTensorSpan<T> tensor)
System\Numerics\Tensors\netcore\TensorSpan.cs (6)
591ReadOnlyTensorSpan<T> srcSlice = Tensor.LazyBroadcast(this, tempLengths); 645ReadOnlyTensorSpan<T> srcSlice = Tensor.LazyBroadcast(this, tempLengths); 670/// Implicitly converts a <see cref="TensorSpan{T}"/> to a <see cref="ReadOnlyTensorSpan{T}"/> 672public static implicit operator ReadOnlyTensorSpan<T>(TensorSpan<T> span) => 703/// <returns>A <see cref="ReadOnlyTensorSpan{T}"/> based on the provided <paramref name="lengths"/>.</returns> 718/// <returns>A <see cref="ReadOnlyTensorSpan{T}"/> based on the provided <paramref name="ranges"/>.</returns>
System\Numerics\Tensors\netcore\TensorSpanDebugView.cs (1)
21public TensorSpanDebugView(ReadOnlyTensorSpan<T> span)
System\Numerics\Tensors\netcore\TensorSpanHelpers.cs (2)
15internal static bool AreShapesTheSame<T>(ReadOnlyTensorSpan<T> tensor1, ReadOnlyTensorSpan<T> tensor2)