object DormandPrince extends Integrator
The DormandPrince
object provides a state-of-the-art numerical ODE solver.
Given an unknown, time-dependent function 'y(t)' governed by an Ordinary
Differential Equation (ODE) of the form
d/dt y(t) = f(t, y)
compute 'y(t)' using a (4,5)-order Dormand-Prince Integrator 'DOPRI'. Note:
the 'integrateV' method for a system of separable ODEs is mixed in from the
Integrator
trait.
- See also
http://adorio-research.org/wordpress/?p=6565
- Alphabetic
- By Inheritance
- DormandPrince
- Integrator
- Error
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val a21: Double
Butcher tableau @see http://en.wikipedia.org/wiki/Dormand–Prince_method
- val a31: Double
- val a32: Double
- val a41: Double
- val a42: Double
- val a43: Double
- val a51: Double
- val a52: Double
- val a53: Double
- val a54: Double
- val a61: Double
- val a62: Double
- val a63: Double
- val a64: Double
- val a65: Double
- val a71: Double
- val a72: Double
- val a73: Double
- val a74: Double
- val a75: Double
- val a76: Double
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val b1: Double
- val b1p: Double
- val b2: Double
- val b2p: Double
- val b3: Double
- val b3p: Double
- val b4: Double
- val b4p: Double
- val b5: Double
- val b5p: Double
- val b6: Double
- val b6p: Double
- val b7: Double
- val b7p: Double
- val c2: Double
- val c3: Double
- val c4: Double
- val c5: Double
- val c6: Double
- val c7: Double
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- val defaultStepSize: Double
The default step size for the t dimension
The default step size for the t dimension
- Attributes
- protected
- Definition Classes
- Integrator
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- val error: Double
Estimate of the error in calculating y
Estimate of the error in calculating y
- Attributes
- protected
- Definition Classes
- Integrator
- final def flaw(method: String, message: String): Unit
- Definition Classes
- Error
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def getError: Double
Get the error estimate.
Get the error estimate.
- Definition Classes
- Integrator
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def integrate(f: Derivative, y0: Double, t: Double, t0: Double = 0.0, step: Double = defaultStepSize): Double
Compute y(t) governed by a differential equation using numerical integration of the derivative function f(t, y) using a (4,5)-order Dormand-Prince method to return the value of y(t) at time t.
Compute y(t) governed by a differential equation using numerical integration of the derivative function f(t, y) using a (4,5)-order Dormand-Prince method to return the value of y(t) at time t.
- f
the derivative function f(t, y)
- y0
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 middle step size
- Definition Classes
- DormandPrince → Integrator
- def integrate2(f: Derivative, y0: Double, t: Double, hmin: Double, hmax: Double, t0: Double = 0.0, tol: Double = 1E-5, maxSteps: Int = 1000): Double
Compute y(t) governed by a differential equation using numerical integration of the derivative function f(t, y) using a (4,5)-order Dormand-Prince method to return the value of y(t) at time t.
Compute y(t) governed by a differential equation using numerical integration of the derivative function f(t, y) using a (4,5)-order Dormand-Prince method to return the value of y(t) at time t. The method provides more customization options.
- f
the derivative function f(t, y)
- y0
value of the y-function at time t0, y0 = y(t0)
- t
the time value at which to compute y(t)
- hmin
the minimum step size
- hmax
the maximum step size
- t0
the initial time
- tol
the tolerance
- maxSteps
the maximum number of steps
- 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
- Definition Classes
- Integrator
- def integrateVV(f: Array[DerivativeV], y0: VectorD, t: Double, t0: Double = 0.0, step: Double = defaultStepSize): VectorD
Compute y(t), a vector, governed by a system of differential equations using numerical integration of the derivative function f(t, y) using a (4,5)-order Dormand-Prince method to return the value of y(t) at time t.
Compute y(t), a vector, governed by a system of differential equations using numerical integration of the derivative function f(t, y) using a (4,5)-order Dormand-Prince method to return the value of y(t) at time t.
- f
the array of derivative functions [f(t, y)] where y is a vector
- y0
the 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
- Definition Classes
- DormandPrince → Integrator
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated