require "numru/ssl2"
include NumRu

narray = SSL2.with_narray?

n=5
nh=2
if narray then
  a = NArray.sfloat(n*(nh+1)-nh*(nh+1)/2)
else
  a = Array.new(n*(nh+1)-nh*(nh+1)/2)
end
a[0] = 10
a[1] = -3
a[2] = 10
ij = (nh+1)+nh/2-1
for i in 0..n-nh-1
  a[ij] = -6
  a[ij+1] = -3
  a[ij+2] = 10
  ij = ij+nh+1
end


m=n
nv=m
epst=1e-6
e,ev = SSL2.bseg(a,nh,m,nv,epst)


for i in 0..m-1
  printf("eigenvalue:  %7.4f\n",e[i])
  printf("eigenvector:  ")
  for j in 0..n-1
    if narray then
      printf("%7.4f  ",ev[j,i])
    else
      printf("%7.4f  ",ev[i][j])
    end
  end
  printf("\n")
end
