This is gen17.c in view mode; [Download] [Up]
#include "../H/ugens.h"
gen17(gen)
register struct gen *gen;
/* Computes transfer function using Chebyshev polynomials
First argument (after number) is the index value for
which the function will create the harmonics specified by the following
arguments. */
{
int i,j;
float Tn,Tn1,Tn2,x,d,*f;
d=(float)(gen->size/2-.5);
for(i=0; i<gen->size; i++) {
x=(i/d-1.)/gen->pvals[0];
gen->array[i]=0;
Tn1=1;
Tn=x;
for (j=1; j<gen->nargs; j++) {
gen->array[i]=gen->pvals[j]*Tn+gen->array[i];
Tn2=Tn1;
Tn1=Tn;
Tn=2*Tn1*x-Tn2;
}
}
// fnscl(gen);
}
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.