(* State-space representation of a linear system in continuous time. *)
(* [a], [b], [c] and [d] are matrices. *)

open Arrays
open Cint
  
let hybrid state_space(n)(m)(r)(x0)(a)(b)(c)(d)(u) = y where
  rec
      x = vint(n)(const(n)(x0), sum(n)(mvproduct(n)(n)(a, x),
			               mvproduct(n)(m)(b, u)))
  and
      y = sum(r)(mvproduct(r)(n)(c, x), mvproduct(r)(m)(d, u))