BIQUAD.py 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import os.path
  2. import numpy as np
  3. import itertools
  4. import Tools
  5. # Those patterns are used for tests and benchmarks.
  6. # For tests, there is the need to add tests for saturation
  7. def writeTests(config):
  8. NBSAMPLES=512 # 512 for stereo
  9. NUMSTAGES = 4
  10. samples=np.random.randn(NBSAMPLES)
  11. coefs=np.random.randn(NUMSTAGES*5)
  12. samples = Tools.normalize(samples)
  13. coefs = Tools.normalize(coefs)
  14. config.writeInput(1, samples,"Samples")
  15. config.writeInput(1, coefs,"Coefs")
  16. def generatePatterns():
  17. PATTERNDIR = os.path.join("Patterns","DSP","Filtering","BIQUAD","BIQUAD")
  18. PARAMDIR = os.path.join("Parameters","DSP","Filtering","BIQUAD","BIQUAD")
  19. configf64=Tools.Config(PATTERNDIR,PARAMDIR,"f64")
  20. configf32=Tools.Config(PATTERNDIR,PARAMDIR,"f32")
  21. configq31=Tools.Config(PATTERNDIR,PARAMDIR,"q31")
  22. configq15=Tools.Config(PATTERNDIR,PARAMDIR,"q15")
  23. #configq7=Tools.Config(PATTERNDIR,PARAMDIR,"q7")
  24. writeTests(configf32)
  25. writeTests(configq31)
  26. writeTests(configq15)
  27. writeTests(configf64)
  28. #writeTests(configq7)
  29. if __name__ == '__main__':
  30. generatePatterns()