LinearDiffEq

scalation.dynamics.LinearDiffEq
class LinearDiffEq(a: MatrixD, y0: VectorD)

The LinearDiffEq class may be used for solving a system of linear differential equations that are ordinary and first-order with constant coefficients of the form d/dt y(t) = a * y(t) y(t) is the vector function of time and a is the coefficient matrix. The initial value vector y0 = y(0) must also be given. Note, higher-order differential equations may be converted to first-order by introducing additional variables. The above equation is the homogeneous case. Caveats: the following cases are not currently handled: (1) The non-homogeneous equation: d/dt y(t) = a * y(t) + f(t). (2) Complex or repeated eigenvalues.

Value parameters

a

the coefficient matrix

y0

the initial value vector

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

def eval(t: Double): VectorD

Evaluate the solution for y(t) at time t.

Evaluate the solution for y(t) at time t.

Value parameters

t

the time point

Attributes

def expV(v: VectorD): VectorD

Apply the exponential 'exp' function to each element of a vector.

Apply the exponential 'exp' function to each element of a vector.

Value parameters

v

the vector to apply the exp function to

Attributes

def printSol(): Unit

Print the solution to the differential equation.

Print the solution to the differential equation.

Attributes