scalation.dynamics

Integrator

trait Integrator extends Error

The Integrator trait provides a template for writing numerical integrators (e.g., Runge-Kutta (RK4) or Dormand-Prince (DOPRI)) to produce trajectories for first-order Ordinary Differential Equations (ODE's). The ODE is of the form:

d/dt y(t) = f(t, y) with initial condition y0 = y(t0)

If 'f' is a linear function of the form 'a(t) * y(t) + b(t)', then the ODE is linear, if 'a(t) = a' (i.e., a constant) the ODE has constant coefficients and if 'b(t) = 0' the ODE is homogeneous. Note this package provides a solver (not an integrator) as an option for linear, constant coefficient, homogeneous, first-order ODE.

See also

scalation.dynamics.LinearDiffEq.scala

Linear Supertypes
Error, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Integrator
  2. Error
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def integrate(f: Derivative, y0: Double, t: Double, t0: Double = 0.0, step: Double = defaultStepSize): Double

    Use numerical integration to compute the trajectory of an unknown, time- dependent function y(t) governed by a first-order ODE of the form y(t)' = f(t, y), i.

    Use numerical integration to compute the trajectory of an unknown, time- dependent function y(t) governed by a first-order ODE of the form y(t)' = f(t, y), i.e., the time derivative of y(t) equals f(t, y). The derivative function f(t, y) is integrated using a numerical integrator (e.g., Runge-Kutta) to return the value of y(t) at time t. The derivative function takes a scalar t and a scalar y.

    f

    the derivative function f(t, y)

    y0

    the intial value of the y-function at time t0, y0 = y(t0)

    t

    the time value at which to compute y(t)

    t0

    the initial time

    step

    the step size

  2. abstract def integrateVV(f: Array[DerivativeV], y0: VectorD, t: Double, t0: Double = 0.0, step: Double = defaultStepSize): VectorD

    Use numerical integration to compute the trajectory of an unknown, time- dependent vector function y(t) governed by a system of first-order ODEs of the form y(t)' = f(t, y).

    Use numerical integration to compute the trajectory of an unknown, time- dependent vector function y(t) governed by a system of first-order ODEs of the form y(t)' = f(t, y). The j-th derivative in the array of derivative functions, [f_j(t, y)], takes a scalar t and a vector y (note the other integrate methods take a scalar t and a scalar y.

    f

    the array of derivative functions [f_j(t, y)]

    y0

    the initial value vector, y0 = y(t0)

    t

    the time value at which to compute y(t)

    t0

    the initial time

    step

    the step size

Concrete 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. val defaultStepSize: Double

    The default step size for the t dimension

    The default step size for the t dimension

    Attributes
    protected
  7. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  9. var error: Double

    Estimate of the error in calculating y

    Estimate of the error in calculating y

    Attributes
    protected
  10. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. def flaw(method: String, message: String): Unit

    Show the flaw by printing the error message.

    Show the flaw by printing the error message.

    method

    the method where the error occurred

    message

    the error message

    Definition Classes
    Error
  12. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  13. def getError: Double

    Get the error estimate.

  14. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  15. def integrateV(f: Array[Derivative], y0: VectorD, t: Double, t0: Double = 0.0, step: Double = defaultStepSize): VectorD

    Apply the integrate method to each derivative to compute the trajectory of a time-dependent vector function y(t) governed by a separable system of Ordinary Differential Equations (ODE's) where [f_j(t, y_j)] is an array of derivative functions.

    Apply the integrate method to each derivative to compute the trajectory of a time-dependent vector function y(t) governed by a separable system of Ordinary Differential Equations (ODE's) where [f_j(t, y_j)] is an array of derivative functions. Each derivative function takes a scalar t and a scalar y_j = y(j).

    f

    the array of derivative functions [f_j(t, y_j)]

    y0

    the initial value vector, y0 = y(t0)

    t

    the time value at which to compute y(t)

    t0

    the initial time

    step

    the step size

  16. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  17. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  18. final def notify(): Unit

    Definition Classes
    AnyRef
  19. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  20. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  21. def toString(): String

    Definition Classes
    AnyRef → Any
  22. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Error

Inherited from AnyRef

Inherited from Any

Ungrouped