#include "nrutil.h" void cyclic(a,b,c,alpha,beta,r,x,n) float a[],alpha,b[],beta,c[],r[],x[]; unsigned long n; { void tridag(); unsigned long i; float fact,gamma,*bb,*u,*z; if (n <= 2) nrerror("n too small in cyclic"); bb=vector(1,n); u=vector(1,n); z=vector(1,n); gamma = -b[1]; bb[1]=b[1]-gamma; bb[n]=b[n]-alpha*beta/gamma; for (i=2;i