Aardvark.Base


Vec<'T>

An n-dimensional generic vector that can be used for numerical computations when used with a double type parameter. Note that the vector acts as a facade structure to an arbitrarily sized data array. This makes it possible to easily store multiple such vectors in the same data array. For this reason, modifying the vector will change the referenced data array. All operations that do that are prefixed with "Set...", including setting the individual data elements of the vector.

Constructors

ConstructorDescription
new(data, origin, dim)
Signature: (data:'T [] * origin:int64 * dim:int64) -> unit
new(dim)
Signature: dim:int64 -> unit
new(items)
Signature: (items:'T []) -> unit

Instance members

Instance memberDescription
Copy()
Signature: unit -> Vec<'T>
Copy(element_fun)
Signature: element_fun:Func<'T,'T1> -> Vec<'T1>
CopyByIndex(element_index_fun)
Signature: element_index_fun:Func<'T,int64,'T1> -> Vec<'T1>
Dim
Signature: int64
Modifiers: abstract
GetEnumerator()
Signature: unit -> IEnumerator<'T>
Modifiers: abstract
GetValue(index)
Signature: index:int64 -> obj
Modifiers: abstract
InnerProduct(...)
Signature: (v1:Vec<'T1> * element_element1_productFun:Func<'T,'T1,'TProd> * bias:'TSum * sum_product_fun:Func<'TSum,'TProd,'TSum>) -> 'TSum
Type parameters: 'TSum, 'TProd
InnerProduct(...)
Signature: (v1:Vec<'T1> * element_element1_productFun:Func<'T,'T1,'TProd> * bias:'TSum * sum_product_fun:Func<'TSum,'TProd,'TSum> * sum_breakIfTrueFun:Func<'TSum,bool>) -> 'TSum
Type parameters: 'TSum, 'TProd
[()]
Signature: unit -> int64
Modifiers: abstract
Norm(bias, sum_element_fun)
Signature: (bias:'TSum * sum_element_fun:Func<'TSum,'T,'TSum>) -> 'TSum
Norm(...)
Signature: (bias:'TSum * sum_element_fun:Func<'TSum,'T,'TSum> * sum_breakIfTrueFun:Func<'TSum,bool>) -> 'TSum
Set(index, value)
Signature: (index:int64 * value:'T) -> unit
Set(s1)
Signature: s1:'T -> Vec<'T>
Set(element_fun)
Signature: element_fun:Func<'T,'T> -> Vec<'T>
Set(v1)
Signature: v1:Vec<'T> -> Vec<'T>
Set(v1, element1_fun)
Signature: (v1:Vec<'T1> * element1_fun:Func<'T1,'T>) -> Vec<'T>
Set(v1, element_element1_fun)
Signature: (v1:Vec<'T1> * element_element1_fun:Func<'T,'T1,'T>) -> Vec<'T>
Set(v1, v2, e1_e2_fun)
Signature: (v1:Vec<'T1> * v2:Vec<'T2> * e1_e2_fun:Func<'T1,'T2,'T>) -> Vec<'T>
Type parameters: 'T2
Set(v1, v2, v3, e1_e2_e3_fun)
Signature: (v1:Vec<'T1> * v2:Vec<'T2> * v3:Vec<'T3> * e1_e2_e3_fun:Func<'T1,'T2,'T3,'T>) -> Vec<'T>
Type parameters: 'T2, 'T3
SetByIndex(index_fun)
Signature: index_fun:Func<int64,'T> -> Vec<'T>
SetByIndex(v1, e1_index_fun)
Signature: (v1:Vec<'T1> * e1_index_fun:Func<'T1,int64,'T>) -> Vec<'T>
SetByIndex(v1, v2, e1_e2_index_fun)
Signature: (v1:Vec<'T1> * v2:Vec<'T2> * e1_e2_index_fun:Func<'T1,'T2,int64,'T>) -> Vec<'T>
Type parameters: 'T2
SetByIndex(...)
Signature: (v1:Vec<'T1> * v2:Vec<'T2> * v3:Vec<'T3> * e1_e2_e3_index_fun:Func<'T1,'T2,'T3,int64,'T>) -> Vec<'T>
Type parameters: 'T2, 'T3
SetValue(value, index)
Signature: (value:obj * index:int64) -> unit
Modifiers: abstract
Fork me on GitHub