home *** CD-ROM | disk | FTP | other *** search
/ Education Sampler 1992 [NeXTSTEP] / Education_1992_Sampler.iso / SoundAndMusic / cmix / lib / resontest.c < prev    next >
C/C++ Source or Header  |  1991-02-21  |  510b  |  29 lines

  1. #define      PI2    6.2831853
  2. #include <math.h>
  3. #define SR 22050
  4. main()
  5. {
  6.     float a[10];
  7.     rsnset(100.,.1,0.,0.,a);
  8. }
  9.  
  10.  
  11. rsnset(cf,bw,scl,xinit,a)
  12. float cf,bw,scl,xinit,*a;
  13. {
  14.     double exp(),cos(),sqrt();
  15.     float c,temp;
  16.     if(!xinit) {
  17.         a[4] = 0;
  18.         a[3] = 0;
  19.         }
  20.     a[2] = exp(-PI2 * bw/SR);
  21.     temp = 1. - a[2];
  22.     c = a[2] + 1;
  23.     a[1] = 4. * a[2]/c * cos(PI2 * cf/SR);
  24. printf("%f %f\n",a[2],a[1]);
  25.     if(scl < 0) a[0] = 1;
  26.     if(scl) a[0] = sqrt(temp/c*(c*c-a[1]*a[1]));
  27.     if(!scl) a[0] = temp*sqrt(1.-a[1]*a[1]/(4.*a[2]));
  28. }
  29.