view fvector.yeti @ 12:2afcb56f57b1

Add (rather clumsy) overlapping framer
author Chris Cannam
date Thu, 13 Dec 2012 16:21:07 +0000
parents 149d6911ca12
children 327dac3a8e1f
line wrap: on
line source
module fvector;

import java.util: Arrays;

zeros n = new double[n];
ones  n = (a = zeros n; for [0..n-1] do i: a[i] := 1.0 done; a);

vector l is list?<number> -> ~double[] =
   (arr = array(l);
    len = length arr;
    v = zeros len;
    for [0..len-1] do i: v[i] := arr[i] done;
    v);

arrayWrap a is ~double[] -> array<number> = array(a);

vectorLength v = length (arrayWrap v);

copyOfVector v is ~double[] -> ~double[] = Arrays#copyOf(v, length(arrayWrap v));

subVector v start len is ~double[] -> number -> number -> ~double[] = Arrays#copyOfRange(v, start, start + len);

{
zeros, ones, vector,
vectorLength,
copyOfVector, subVector,
}