微分可能なビュー

@frozen
public struct DifferentiableView
extension Array.DifferentiableView: Differentiable
where Element: Differentiable
extension Array.DifferentiableView: EuclideanDifferentiable
where Element: EuclideanDifferentiable
extension Array.DifferentiableView: Equatable
where Element: Differentiable & Equatable
extension Array.DifferentiableView: ExpressibleByArrayLiteral
where Element: Differentiable
extension Array.DifferentiableView: CustomStringConvertible
where Element: Differentiable
extension Array.DifferentiableView: AdditiveArithmetic
where Element: AdditiveArithmetic & Differentiable
extension Array.DifferentiableView: _KeyPathIterableBase
where Element: Differentiable
extension Array.DifferentiableView: KeyPathIterable
where Element: Differentiable
extension Array.DifferentiableView: ElementaryFunctions
where Element: Differentiable & ElementaryFunctions
extension Array.DifferentiableView:
  BidirectionalCollection,
  Collection,
  MutableCollection,
  RandomAccessCollection,
  RangeReplaceableCollection,
  Sequence
where Element: Differentiable
extension Array.DifferentiableView: VectorProtocol
where Element: Differentiable & VectorProtocol
extension Array.DifferentiableView: PointwiseMultiplicative
where Element: Differentiable & PointwiseMultiplicative

配列をElementの微分可能な積多様体としてそれ自体をcount回乗算したものとして見る。

`Element`: `Differentiable` で利用可能
`Element`: `EuclideanDifferentiable` で利用可能
`Element`: `Differentiable` および `Equatable` で利用可能
  • 宣言

    public static func == (
      lhs: Array.DifferentiableView,
      rhs: Array.DifferentiableView
    ) -> Bool
`Element`: `Differentiable` で利用可能
`Element`: `AdditiveArithmetic` および `Differentiable` で利用可能
  • 宣言

    public static var zero: Array.DifferentiableView { get }
  • 宣言

    public static func + (
      lhs: Array.DifferentiableView,
      rhs: Array.DifferentiableView
    ) -> Array.DifferentiableView
  • 宣言

    public static func - (
      lhs: Array.DifferentiableView,
      rhs: Array.DifferentiableView
    ) -> Array.DifferentiableView
  • 宣言

    public subscript(index: Int) -> Element { get }
`Element`: `Differentiable` で利用可能
`Element`: `Differentiable` および `ElementaryFunctions` で利用可能
  • xの平方根。

    実数型の場合、 xが負の場合、結果は.nanになります。複合型の場合、負の実軸に分岐カットがあります。

    宣言

    public static func sqrt(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの余弦。ラジアン単位の角度として解釈されます。

    宣言

    public static func cos(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xのサイン。ラジアン単位の角度として解釈されます。

    宣言

    public static func sin(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xのタンジェント。ラジアン単位の角度として解釈されます。

    宣言

    public static func tan(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの逆余弦 (ラジアン単位)。

    宣言

    public static func acos(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの逆サイン (ラジアン単位)。

    宣言

    public static func asin(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの逆タンジェント (ラジアン単位)。

    宣言

    public static func atan(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの双曲線余弦。

    宣言

    public static func cosh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの双曲線正弦。

    宣言

    public static func sinh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの双曲線正接。

    宣言

    public static func tanh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの逆双曲線余弦。

    宣言

    public static func acosh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの逆双曲線正弦。

    宣言

    public static func asinh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの逆双曲線正接。

    宣言

    public static func atanh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xまたはe**xに適用される指数関数。

    宣言

    public static func exp(_ x: `Self`) -> Array<Element>.DifferentiableView
  • 2 のx乗。

    宣言

    public static func exp2(_ x: `Self`) -> Array<Element>.DifferentiableView
  • 10 のx乗です。

    宣言

    public static func exp10(_ x: `Self`) -> Array<Element>.DifferentiableView
  • exp(x) - 1ゼロに近い精度を維持するように評価されます。

    宣言

    public static func expm1(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの自然対数。

    宣言

    public static func log(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの底 2 の対数。

    宣言

    public static func log2(_ x: `Self`) -> Array<Element>.DifferentiableView
  • xの 10 を底とする対数。

    宣言

    public static func log10(_ x: `Self`) -> Array<Element>.DifferentiableView
  • log(1 + x)ゼロに近い精度を維持するように評価されます。

    宣言

    public static func log1p(_ x: `Self`) -> Array<Element>.DifferentiableView
  • exp(y log(x))中間精度を失うことなく計算されます。

    実数型の場合、 xが負の場合、 y整数値であっても結果は NaN になります。複合型の場合、負の実軸に分岐カットがあります。

    宣言

    public static func pow(_ x: `Self`, _ y: `Self`) -> Array<Element>.DifferentiableView
  • xn乗。

    xnコピーの積。

    宣言

    public static func pow(_ x: `Self`, _ n: Int) -> Array<Element>.DifferentiableView
  • xn乗根。

    実数型の場合、 xが負でnが偶数の場合、結果は NaN になります。複合型の場合、負の実軸に沿って分岐が存在します。

    宣言

    public static func root(_ x: `Self`, _ n: Int) -> Array<Element>.DifferentiableView
`Element`: `Differentiable` で利用可能
`Element`: `Differentiable` および `VectorProtocol` で利用可能
`Element`: `Differentiable` および `PointwiseMultiplicative` で利用可能
  • 宣言

    public static var one: `Self` { get }
  • 宣言

    public var reciprocal: `Self` { get }
  • 宣言

    public static func .* (lhs: `Self`, rhs: `Self`) -> Array<Element>.DifferentiableView
  • 宣言

    public static func .*= (lhs: inout `Self`, rhs: `Self`)