module Nvector_openmp:sig..end
The OpenMP nvectors of Sundials (requires OpenMP).
typedata =Sundials.RealArray.t
OpenMP nvectors are based on bigarrays of floats.
typekind =[ `OpenMP | `Serial ]
Represents the internal layout of an OpenMP nvector. OpenMP nvectors can usually be used wherever serial nvectors can.
typet =(data, kind) Nvector.t
The type of OpenMP nvectors.
val make : ?context:Sundials.Context.t ->
?with_fused_ops:bool -> int -> int -> float -> tmake nthreads n iv creates a new OpenMP nvector with nthreads
threads and n elements inialized to iv.
The optional arguments permit to enable all the fused and array operations for a given nvector (they are disabled by default).
Config.NotImplementedBySundialsVersion Fused and array operations not available.val wrap : ?context:Sundials.Context.t ->
?with_fused_ops:bool -> int -> Sundials.RealArray.t -> twrap nthreads a creates a new OpenMP nvector with nthreads threads
over the elements of a.
The optional arguments permit to enable all the fused and array operations for a given nvector (they are disabled by default).
Config.NotImplementedBySundialsVersion Fused and array operations not available.val unwrap : t -> Sundials.RealArray.tAliases Nvector.unwrap.
val pp : Stdlib.Format.formatter -> t -> unitPretty-print an OpenMP nvector using the Format module.
val num_threads : t -> intReturns the number of threads used within an OpenMP nvector.
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 -> t -> unitSelectively enable or disable fused and array operations.
The with_fused_ops argument enables or disables all such operations.
Config.NotImplementedBySundialsVersion Fused and array operations not available.module Ops:Nvector.NVECTOR_OPSwith type t = t
Underlying nvector operations on OpenMP nvectors.
module Any:sig..end
A generic nvector interface to OpenMP nvectors.