"brownian" in RTC-lib


    Feb 16 2006 | 2:55 pm
    hi all,
    when I use "brownian 1 2 0.5" it supose to give me
    1's and 2's, right? but I'm getting only ones..
    this object works well with intergers? or I'm doing something wrong?

    • Feb 16 2006 | 5:47 pm
      On around Feb 16, 2006, at 15:55, bbarros said something like:
      > hi all,
      >
      > when I use "brownian 1 2 0.5" it supose to give me
      > 1's and 2's, right? but I'm getting only ones..
      You probably need to use explicit floats for all parameters, viz:
      [brownian 1. 2. 0.5]
      Otherwise you're in the integer domain and the output range is 1 2, which would explain your problem.
      But I don't know for sure. For Brownian motion I use lp.pfff from
      Litter Power. It's even a Starter Pack object. For more flexibility,
      there's lp.pvvv from Litter Pro.
      Caveat: the syntax is a little different from Gerhard's.
      Hope this helps,
      Peter
      -------------- http://www.bek.no/~pcastine/Litter/ --------------
      Peter Castine | ^
      | Litter Power & Litter Bundle for Jitter
      pcastine@gmx.net |
      pcastine@bek.no | iCE: Sequencing, Recording, and Interface Building
      4-15@kagi.com | for Max/MSP
      | Extremely cool
      | http://www.dspaudio.com
      | http://www.dspaudio.com/software/software.html
    • Feb 16 2006 | 7:09 pm
      "brownian 1 2 0.50" gives you *many, many* 1s and *very few* 2s. The
      higher you set the variation parameter the more 2s you will get.
      b.
      max v2;
      ________________________
    • Feb 16 2006 | 9:19 pm
      thanks peter and bernhard :)
      this object outputs random numbers excluding max,
      maybe it was not a good choice for that situation:
      so.. the solution to use "brownian" with intergers is to add 1 to the
      maximal value?
      thanks again,
      bernardo
    • Feb 16 2006 | 9:49 pm
      On around Feb 16, 2006, at 22:19, bbarros said something like:
      > so.. the solution to use "brownian" with intergers is to add 1 to the
      > maximal value?
      Well, the Brownian model doesn't really work with two integers anyway.
      The brownian abstraction is trying to simulate calculations in the real
      (float) domain by dividing the actual min/max into 65000 subdivisions.
      That won't fool a mathematician, but is probably good enough for a lot
      of uses in Max. If you're working with floats.
      I'm not sure what sort of an effect you're actually after.
      If you're looking for some kind of coin-flipper, perhaps with different
      probabilities for "heads" and "tails", you can build something
      following the examples from the early Max random objects tutorials. Or
      just take lp.bernie (Litter Starter Pack, URI below).
      If you want something else... well, you can probably also do it with
      Litter Power.
      Hope this helps -- Peter
      >
      -------------- http://www.bek.no/~pcastine/Litter/ --------------
      Peter Castine | ^
      | Litter Power & Litter Bundle for Jitter
      pcastine@gmx.net |
      pcastine@bek.no | iCE: Sequencing, Recording, and Interface Building
      4-15@kagi.com | for Max/MSP
      | Extremely cool
      | http://www.dspaudio.com
      | http://www.dspaudio.com/software/software.html
    • Feb 17 2006 | 10:24 am
      I am also not quite sure what you are after. The interesting thing
      about "brownian" is the fact that you can adjust the distance between
      choices. If you just want a stream of random numbers there are
      several max objects that serve this purpose: random, urn, drunk.
      RTC-lib and Litter give you many more options for generating events
      based on random operations.
      hth
      B.
      ________________________
    • Jan 23 2017 | 11:13 pm
      time to revive this thread!
      i need to redo [drunk] in floating point. how are random numbers or brownian distribution are calculated?
      i thought it was on the forum a few months back but i dont find it.
    • Jan 23 2017 | 11:28 pm
      is that correct:
      - you start at 0.5
      - then you create a random normalized float (lets just pretend there would be a max object called [noise] for this)
      - then you scale the random float down to the max motion distance the user entered
      - then you accumulate that to t-1
      - da capo
      right?
      and what about sign? random bool i guess?