sig
  type ordering =
    Sundials_LinearSolver_impl.Superlumt.ordering =
      Natural
    | MinDegreeProd
    | MinDegreeSum
    | ColAmd
  val make :
    ?context:Sundials.Context.t ->
    ?ordering:Sundials_LinearSolver.Direct.Superlumt.ordering ->
    nthreads:int ->
    ([> Nvector_serial.kind ] as 'a) Nvector.serial ->
    ('s, 'a) Sundials.Matrix.sparse ->
    ('Sundials.Matrix.Sparse.t, 'a, [ `Dls | `Slu ])
    Sundials_LinearSolver.serial_t
  val set_ordering :
    ('Sundials.Matrix.Sparse.t, [> Nvector_serial.kind ], [> `Slu ])
    Sundials_LinearSolver.serial_t ->
    Sundials_LinearSolver.Direct.Superlumt.ordering -> unit
end