This is cstable.c in view mode; [Download] [Up]
#include "lpc.h" stable(coef) double coef[]; { double b[NPOLE], a[NPOLE+1][NPOLE+1], rk[NPOLE]; int flag = 1; /* flag is TRUE */ int i, m, mm; for (i=0; i < NPOLE ;++i) b[i] = coef[i]; a[0][NPOLE] = 1.0; for (i=0; i < NPOLE ;++i) a[i+1][NPOLE] = b[i]; for (mm=0; mm < NPOLE ;++mm) { m = NPOLE - (mm + 1); rk[m] = a[m+1][m+1]; if (fabs(rk[m]) >= (double)(1.0) ) { flag = -1; /* flag is FALSE */ return(flag); } else for (i=0; i <= m; ++i) a[i][m] = (a[i][m+1] - rk[m]*a[m-i+1][m+1]) / (1.0 - pow(rk[m], (double) 2.0)); } return(flag); }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.