DifferentiableView

@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

The view of an array as the differentiable product manifold of Element multiplied with itself count times.

  • The viewed array.

    Declaration

    public var base: [Element] { get set }
  • Creates a differentiable view of the given array.

    Declaration

    public init(_ base: [Element])
  • Declaration

    @derivative
    init(_: <<error type>>)
  • Declaration

    public typealias TangentVector =
      Array<Element.TangentVector>.DifferentiableView
  • Declaration

    public mutating mutating func move(along direction: TangentVector)
  • Declaration

    public static func == (
      lhs: Array.DifferentiableView,
      rhs: Array.DifferentiableView
    ) -> Bool
  • Declaration

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

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

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

    public subscript(index: Int) -> Element { get }
  • Declaration

    public typealias AllKeyPaths = [PartialKeyPath<Array.DifferentiableView>]
  • Declaration

    public var allKeyPaths: [PartialKeyPath<Array.DifferentiableView>] { get }
  • The square root of x.

    For real types, if x is negative the result is .nan. For complex types there is a branch cut on the negative real axis.

    Declaration

    public static func sqrt(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The cosine of x, interpreted as an angle in radians.

    Declaration

    public static func cos(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The sine of x, interpreted as an angle in radians.

    Declaration

    public static func sin(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The tangent of x, interpreted as an angle in radians.

    Declaration

    public static func tan(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The inverse cosine of x in radians.

    Declaration

    public static func acos(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The inverse sine of x in radians.

    Declaration

    public static func asin(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The inverse tangent of x in radians.

    Declaration

    public static func atan(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The hyperbolic cosine of x.

    Declaration

    public static func cosh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The hyperbolic sine of x.

    Declaration

    public static func sinh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The hyperbolic tangent of x.

    Declaration

    public static func tanh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The inverse hyperbolic cosine of x.

    Declaration

    public static func acosh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The inverse hyperbolic sine of x.

    Declaration

    public static func asinh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The inverse hyperbolic tangent of x.

    Declaration

    public static func atanh(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The exponential function applied to x, or e**x.

    Declaration

    public static func exp(_ x: `Self`) -> Array<Element>.DifferentiableView
  • Two raised to to power x.

    Declaration

    public static func exp2(_ x: `Self`) -> Array<Element>.DifferentiableView
  • Ten raised to to power x.

    Declaration

    public static func exp10(_ x: `Self`) -> Array<Element>.DifferentiableView
  • exp(x) - 1 evaluated so as to preserve accuracy close to zero.

    Declaration

    public static func expm1(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The natural logarithm of x.

    Declaration

    public static func log(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The base-two logarithm of x.

    Declaration

    public static func log2(_ x: `Self`) -> Array<Element>.DifferentiableView
  • The base-ten logarithm of x.

    Declaration

    public static func log10(_ x: `Self`) -> Array<Element>.DifferentiableView
  • log(1 + x) evaluated so as to preserve accuracy close to zero.

    Declaration

    public static func log1p(_ x: `Self`) -> Array<Element>.DifferentiableView
  • exp(y log(x)) computed without loss of intermediate precision.

    For real types, if x is negative the result is NaN, even if y has an integral value. For complex types, there is a branch cut on the negative real axis.

    Declaration

    public static func pow(_ x: `Self`, _ y: `Self`) -> Array<Element>.DifferentiableView
  • x raised to the nth power.

    The product of n copies of x.

    Declaration

    public static func pow(_ x: `Self`, _ n: Int) -> Array<Element>.DifferentiableView
  • The nth root of x.

    For real types, if x is negative and n is even, the result is NaN. For complex types, there is a branch cut along the negative real axis.

    Declaration

    public static func root(_ x: `Self`, _ n: Int) -> Array<Element>.DifferentiableView
  • one

    Declaration

    public static var one: `Self` { get }
  • Declaration

    public var reciprocal: `Self` { get }
  • Declaration

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

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