#include "nr.h" void NR::cyclic(Vec_I_DP &a, Vec_I_DP &b, Vec_I_DP &c, const DP alpha, const DP beta, Vec_I_DP &r, Vec_O_DP &x) { int i; DP fact,gamma; int n=a.size(); if (n <= 2) nrerror("n too small in cyclic"); Vec_DP bb(n),u(n),z(n); gamma = -b[0]; bb[0]=b[0]-gamma; bb[n-1]=b[n-1]-alpha*beta/gamma; for (i=1;i