creating exponential data beyond scale object

    Jun 06 2006 | 3:46 am
    dear readers,
    I'd like to use the random object to select frequencies. Ideally, I would like to heavily favour the low and mid range, and have a reduced likelyhood of returning high frequecies - say 1000+.
    I've tried using the random number generator in conjunction with a scale object, with a exponential argument of 1.0003 or something such. The output, however, is very coarse, and I'm having difficulty achiving a smooth selection which favours the lower registers.
    If you can suggest some other methods to scale number series, please let me know.

    • Jun 06 2006 | 4:07 am
      Here's something you might try. Personally, I find the exponential mode of scale to be practically useless except for a few predefined tasks because it's hard to figure out the relationship. I have an abstraction called PM.Recurve for things like this that is basically
      inlet | scale Val1 Val2 0. 1. | pow 1. (adjustable) | scale 0. 1. Val1 Val2 | outlet
      For what you want, you might try:
      random 1000 | * 0.001 | pow 2. (skew towards bottom) | scale 0. 1. 24. 96. (set high and low midi notes of range) | round (optional) | mtof
      Peter McCulloch
    • Jun 06 2006 | 8:30 am
      You could use lp.shhh together with scale or lp.scampf. Lp.shhh produces random values in the range [0 .. 1] with zero granularity.
      More to the point would be to use lp.expo or similar. Expo gives you an exponential distribution, which seems to be what you're after.
      Lp.shhh and lp.scampf are in the free Litter Start Pack; lp.expo is part of the Litter Pro Bundle. I would attach a histogram or two to show what the distributions look like, but forum readers wouldn't see them.
      Best, Peter
      -------------- ------------- Peter Castine +--> Litter Power & Litter Bundle for Jitter
      iCE: Sequencing, Recording & |home | chez nous| Interface Building for |bei uns | i nostri| Max/MSP Extremely cool