sig
type data
type kind = Nvector_custom.kind
type t = Nvector_array.ARRAY_NVECTOR.data Nvector_custom.t
val array_nvec_ops :
Nvector_array.ARRAY_NVECTOR.data Nvector_custom.nvector_ops
val make :
?context:Sundials.Context.t ->
int -> float -> Nvector_array.ARRAY_NVECTOR.t
val wrap :
?context:Sundials.Context.t ->
?with_fused_ops:bool ->
Nvector_array.ARRAY_NVECTOR.data -> Nvector_array.ARRAY_NVECTOR.t
val unwrap :
Nvector_array.ARRAY_NVECTOR.t -> Nvector_array.ARRAY_NVECTOR.data
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_scale_add_multi_vector_array:bool ->
?with_linear_combination_vector_array:bool ->
Nvector_array.ARRAY_NVECTOR.t -> unit
module Any :
sig
type Nvector.gdata += Arr of Nvector_array.ARRAY_NVECTOR.data
val wrap :
?context:Sundials.Context.t ->
?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_scale_add_multi_vector_array:bool ->
?with_linear_combination_vector_array:bool ->
Nvector_array.ARRAY_NVECTOR.data -> Nvector.any
end
module Ops :
sig
type t = t
val clone : t -> t
val linearsum : float -> t -> float -> t -> t -> unit
val const : float -> t -> unit
val prod : t -> t -> t -> unit
val div : t -> t -> t -> unit
val scale : float -> t -> t -> unit
val abs : t -> t -> unit
val inv : t -> t -> unit
val addconst : t -> float -> t -> unit
val dotprod : t -> t -> float
val maxnorm : t -> float
val wrmsnorm : t -> t -> float
val min : t -> float
val compare : float -> t -> t -> unit
val invtest : t -> t -> bool
val wl2norm : t -> t -> float
val l1norm : t -> float
val wrmsnormmask : t -> t -> t -> float
val constrmask : t -> t -> t -> bool
val minquotient : t -> t -> float
val space : t -> int * int
val getlength : t -> int
val print : ?logfile:Sundials.Logfile.t -> t -> unit
val linearcombination : Sundials.RealArray.t -> t array -> t -> unit
val scaleaddmulti :
Sundials.RealArray.t -> t -> t array -> t array -> unit
val dotprodmulti : t -> t array -> Sundials.RealArray.t -> unit
val linearsumvectorarray :
float -> t array -> float -> t array -> t array -> unit
val scalevectorarray :
Sundials.RealArray.t -> t array -> t array -> unit
val constvectorarray : float -> t array -> unit
val wrmsnormvectorarray :
t array -> t array -> Sundials.RealArray.t -> unit
val wrmsnormmaskvectorarray :
t array -> t array -> t -> Sundials.RealArray.t -> unit
val scaleaddmultivectorarray :
Sundials.RealArray.t ->
t array -> t array array -> t array array -> unit
val linearcombinationvectorarray :
Sundials.RealArray.t -> t array array -> t array -> unit
module Local :
sig
val dotprod : t -> t -> float
val maxnorm : t -> float
val min : t -> float
val l1norm : t -> float
val invtest : t -> t -> bool
val constrmask : t -> t -> t -> bool
val minquotient : t -> t -> float
val wsqrsum : t -> t -> float
val wsqrsummask : t -> t -> t -> float
val dotprodmulti : t -> t array -> Sundials.RealArray.t -> unit
val dotprodmulti_allreduce : t -> Sundials.RealArray.t -> unit
end
end
module DataOps :
sig
type t = data
val clone : t -> t
val linearsum : float -> t -> float -> t -> t -> unit
val const : float -> t -> unit
val prod : t -> t -> t -> unit
val div : t -> t -> t -> unit
val scale : float -> t -> t -> unit
val abs : t -> t -> unit
val inv : t -> t -> unit
val addconst : t -> float -> t -> unit
val dotprod : t -> t -> float
val maxnorm : t -> float
val wrmsnorm : t -> t -> float
val min : t -> float
val compare : float -> t -> t -> unit
val invtest : t -> t -> bool
val wl2norm : t -> t -> float
val l1norm : t -> float
val wrmsnormmask : t -> t -> t -> float
val constrmask : t -> t -> t -> bool
val minquotient : t -> t -> float
val space : t -> int * int
val getlength : t -> int
val print : ?logfile:Sundials.Logfile.t -> t -> unit
val linearcombination : Sundials.RealArray.t -> t array -> t -> unit
val scaleaddmulti :
Sundials.RealArray.t -> t -> t array -> t array -> unit
val dotprodmulti : t -> t array -> Sundials.RealArray.t -> unit
val linearsumvectorarray :
float -> t array -> float -> t array -> t array -> unit
val scalevectorarray :
Sundials.RealArray.t -> t array -> t array -> unit
val constvectorarray : float -> t array -> unit
val wrmsnormvectorarray :
t array -> t array -> Sundials.RealArray.t -> unit
val wrmsnormmaskvectorarray :
t array -> t array -> t -> Sundials.RealArray.t -> unit
val scaleaddmultivectorarray :
Sundials.RealArray.t ->
t array -> t array array -> t array array -> unit
val linearcombinationvectorarray :
Sundials.RealArray.t -> t array array -> t array -> unit
module Local :
sig
val dotprod : t -> t -> float
val maxnorm : t -> float
val min : t -> float
val l1norm : t -> float
val invtest : t -> t -> bool
val constrmask : t -> t -> t -> bool
val minquotient : t -> t -> float
val wsqrsum : t -> t -> float
val wsqrsummask : t -> t -> t -> float
val dotprodmulti : t -> t array -> Sundials.RealArray.t -> unit
val dotprodmulti_allreduce : t -> Sundials.RealArray.t -> unit
end
end
end