viva_glyph/vector

Vector - Minimal vector operations

Only operations NOT in gleam_community_maths. For distance/norm/cosine, use viva_glyph/metrics.

Types

N-dimensional vector

pub type Vector =
  List(Float)

Values

pub fn add(a: List(Float), b: List(Float)) -> List(Float)

Add vectors

pub fn dimension(v: List(Float)) -> Int

Get dimension

pub fn distance_squared(a: List(Float), b: List(Float)) -> Float

Squared distance (faster, no sqrt)

pub fn scale(v: List(Float), s: Float) -> List(Float)

Scale by scalar

pub fn subtract(a: List(Float), b: List(Float)) -> List(Float)

Subtract: a - b

pub fn zeros(dim: Int) -> List(Float)

Create zero vector

Search Document