Packages

o

scalation.calculus

Differential

object Differential

The Differential object contains functions for computing derivatives, partial derivatives, Laplacians, gradient vectors, Hessian matrices and Jacobian matrices.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Differential
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type FunctionV2S = (VectorD) ⇒ Double
  2. type FunctionV2V = (VectorD) ⇒ VectorD
  3. type FunctionV_2S = (VectoD) ⇒ Double
  4. type FunctionV_2V = (VectoD) ⇒ VectoD
  5. type FunctionsV = Array[FunctionV2S]

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def derivative(f: FunctionS2S, x: Double): Double

    Estimate the derivative of the scalar-to-scalar function 'f' at 'x' using a 2-sided method (central difference).

    Estimate the derivative of the scalar-to-scalar function 'f' at 'x' using a 2-sided method (central difference). Approximate the tangent line at '(x, f(x))' with the secant line through points '(x-h, f(x-h))' and '(x+h, f(x+h))'. Tends to be MORE ACCURATE than the 1-sided method. Although a noun, 'derivative' was chosen over the verb 'differentiate'.

    f

    the function whose derivative is sought

    x

    the point (scalar) at which to estimate the derivative

    See also

    www.math.montana.edu/frankw/ccp/modeling/continuous/heatflow2/firstder.htm

  7. def derivative1(f: FunctionS2S, x: Double): Double

    Estimate the derivative of the scalar-to-scalar function 'f' at 'x' using a 1-sided method (forward difference).

    Estimate the derivative of the scalar-to-scalar function 'f' at 'x' using a 1-sided method (forward difference). Approximate the tangent line at '(x, f(x))' with the secant line through points '(x, f(x))' and '(x+h, f(x+h))'.

    f

    the function whose derivative is sought

    x

    the point (scalar) at which to estimate the derivative

  8. def derivative2(f: FunctionS2S, x: Double): Double

    Estimate the second derivative of the scalar-to-scalar function 'f' at 'x' using the central difference formula for second derivatives.

    Estimate the second derivative of the scalar-to-scalar function 'f' at 'x' using the central difference formula for second derivatives.

    f

    the function whose second derivative is sought

    x

    the point (scalar) at which to estimate the derivative

  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  11. def fdiffernce(f: FunctionS2S, x: Double): Double

    Estimate the finite difference of the scalar-to-scalar function 'f' at 'x' using a 1-sided method (forward difference).

    Estimate the finite difference of the scalar-to-scalar function 'f' at 'x' using a 1-sided method (forward difference). May work better than the derivative for noisy functions.

    f

    the function whose derivative is sought

    x

    the point (scalar) at which to estimate the finite difference

  12. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  14. def gradient(f: FunctionV2S, x: VectorD): VectorD

    Estimate the gradient of the vector-to-scalar function 'f' at point 'x' returning a value for the partial derivative for each dimension of 'x'.

    Estimate the gradient of the vector-to-scalar function 'f' at point 'x' returning a value for the partial derivative for each dimension of 'x'.

    f

    the function whose gradient is sought

    x

    the point (vector) at which to estimate the gradient

  15. def gradientD(d: FunctionsV, x: VectorD): VectorD

    Compute the gradient of the vector-to-scalar function 'f' using partial derivative functions evaluated at point 'x.' Return a value for the partial derivative for each dimension of the vector 'x.'

    Compute the gradient of the vector-to-scalar function 'f' using partial derivative functions evaluated at point 'x.' Return a value for the partial derivative for each dimension of the vector 'x.'

    d

    the array of partial derivative functions

    x

    the point (vector) at which to compute the gradient

  16. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  17. def hessian(f: FunctionV2S, x: VectorD): MatrixD

    Estimate the Hessian of the vector-to-scalar function 'f' at point 'x' returning a matrix of second partial derivative.

    Estimate the Hessian of the vector-to-scalar function 'f' at point 'x' returning a matrix of second partial derivative.

    f

    the function whose Hessian is sought

    x

    the point (vector) at which to estimate the Hessian

  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. def jacobian(f: FunctionsV, x: VectorD): MatrixD

    Compute the Jacobian matrix for a vector-valued function represented as an array of scalar-valued functions.

    Compute the Jacobian matrix for a vector-valued function represented as an array of scalar-valued functions. The 'i'th row in the matrix is the gradient of the 'i'th function.

    f

    the array of functions whose Jacobian is sought

    x

    the point (vector) at which to estimate the Jacobian

  20. def laplacian(f: FunctionV2S, x: VectorD): Double

    Estimate the Laplacian of the vector-to-scalar function 'f' at point 'x' returning the sum of the pure second partial derivatives.

    Estimate the Laplacian of the vector-to-scalar function 'f' at point 'x' returning the sum of the pure second partial derivatives.

    f

    the function whose Hessian is sought

    x

    the point (vector) at which to estimate the Hessian

  21. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  22. final def notify(): Unit
    Definition Classes
    AnyRef
  23. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  24. def partial(i: Int)(f: FunctionV2S, x: VectorD): Double

    Estimate the 'i'th partial derivative of the vector-to-scalar function 'f' at point 'x' returning the value for the partial derivative for dimension 'i'.

    Estimate the 'i'th partial derivative of the vector-to-scalar function 'f' at point 'x' returning the value for the partial derivative for dimension 'i'.

    i

    the dimension to compute the partial derivative on

    f

    the function whose partial derivative is sought

    x

    the point (vector) at which to estimate the partial derivative

  25. def partial2(i: Int, j: Int)(f: FunctionV2S, x: VectorD): Double

    Estimate the '(i,j)'th second partial derivative of the vector-to-scalar function 'f' at point 'x' returning the value for the second partial derivative for dimensions '(i, j)'.

    Estimate the '(i,j)'th second partial derivative of the vector-to-scalar function 'f' at point 'x' returning the value for the second partial derivative for dimensions '(i, j)'. If 'i = j', the second partial derivative is called "pure", otherwise it is a "cross" second partial derivative.

    i

    the first dimension to compute the second partial derivative on

    j

    the second dimension to compute the second partial derivative on

    f

    the function whose second partial derivative is sought

    x

    the point (vector) at which to estimate the second partial derivative

    See also

    www.uio.no/studier/emner/matnat/math/MAT-INF1100/h07/undervisningsmateriale/kap7.pdf

  26. def resetH(step: Double): Unit

    Reset the step size from its default step size to one more suitable for your function.

    Reset the step size from its default step size to one more suitable for your function. A heuristic for the central difference method is to let 'h = max (|x|,1) * (machine-epsilon)^(1/3)' For double precision, the machine-epsilon is about 1E-16.

    step

    the new step size to reset h to

    See also

    www.karenkopecky.net/Teaching/eco613614/Notes_NumericalDifferentiation.pdf

  27. def resetHR(largeStep: Double): Unit

    Reset the large step size from its default step size to one more suitable for your function.

    Reset the large step size from its default step size to one more suitable for your function.

    largeStep

    the new large step size to reset hl to

  28. def slope(f: FunctionV2S, x: VectorD, n: Int = 0): VectorD

    Compute the slope of the vector-to-scalar function 'f' defined on mixed real/integer vectors.

    Compute the slope of the vector-to-scalar function 'f' defined on mixed real/integer vectors.

    f

    the function whose slope is sought

    x

    the point (vector) at which to estimate the slope

    n

    the number of dimensions that are real-valued (rest are integers)

  29. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  30. def toString(): String
    Definition Classes
    AnyRef → Any
  31. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  33. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  34. def Δ(f: FunctionS2S)(x: Double): Double
  35. def Η(f: FunctionV2S, x: VectorD): MatrixD
  36. def Ј(f: FunctionsV, x: VectorD): MatrixD
  37. def (f: FunctionS2S)(x: Double): Double
  38. def ⅮⅮ(f: FunctionS2S, x: Double): Double
  39. def (i: Int)(f: FunctionV2S, x: VectorD): Double
  40. def ∂∂(i: Int, j: Int)(f: FunctionV2S, x: VectorD): Double
  41. def (f: FunctionV2S, x: VectorD): Double
  42. def (f: FunctionV2S, x: VectorD): VectorD
  43. def ∇*(d: FunctionsV, x: VectorD): VectorD

Inherited from AnyRef

Inherited from Any

Ungrouped