module Nvector_many:sig
..end
The standard many-vector nvectors of Sundials.
typedata =
Nvector.any Sundials.ROArray.t * int
The data in underlying nvectors is exposed as an array of wrapped values paired with the sum of their lengths.
type
kind
Represents the internal layout of a many-vector nvector.
typet =
(data, kind) Nvector.t
The type of many-vector nvectors.
type
Nvector.gdata +=
| |
Many of |
Generic wrapper for Nvector_many.data
.
val wrap : ?context:Sundials.Context.t ->
Nvector.any Sundials.ROArray.t -> t
Creates a many-vector nvector from an array of generic nvectors.
val unwrap : t -> data
Aliases Nvector.unwrap
.
val length : t -> int
Returns the sum of the lengths of the component nvectors.
val num_subvectors : t -> int
Returns the number of subectors in the array.
val enable : ?with_fused_ops:bool ->
?with_linear_combination:bool ->
?with_scale_add_multi:bool ->
?with_dot_prod_multi:bool ->
?with_linear_sum_vector_array:bool ->
?with_scale_vector_array:bool ->
?with_const_vector_array:bool ->
?with_wrms_norm_vector_array:bool ->
?with_wrms_norm_mask_vector_array:bool ->
?with_dot_prod_multi_local:bool -> t -> unit
Selectively enable or disable fused and array operations.
The with_fused_ops
argument enables or disables all such operations.
module Ops:Nvector.NVECTOR_OPS
with type t = t
Underlying nvector operations on many-vector nvectors.
module DataOps:Nvector.NVECTOR_OPS
with type t = data
Nvector operations implemented in OCaml on many-vector payloads.
module Any:sig
..end
A generic nvector interface to many-vector nvectors.