title: Define different bounds for a multidimentional stochastic variable in pymc
body: <p>I'm having an issue with defining bounds for a multidimentional stochastic variable.
  Here is a dummy exemple to explain my problem.</p>
  
  <p>If I want to have a 3 dimension discrete uniform between [0,100]</p>
  
  <pre><code>import pymc as mc
  from numpy import empty
  
  truth = mc.DiscreteUniform("bin1", lower=0, upper=100, value=[50,50,50], size=3)
  
  @mc.deterministic(plot=False)
  def unfold(truth=truth):
      out = empty(3)
      for r in xrange(3):
          out[r] = truth[r]
      return out
  
  data = [5, 10, 30]
  unfolded = mc.Poisson('unfolded', mu=unfold, value=data, observed=True, size=3)
  model = mc.Model([unfolded, unfold, truth])                             
  mcmc = mc.MCMC( model )
  mcmc.use_step_method(mc.AdaptiveMetropolis, truth)
  mcmc.sample(10000,1000,10)
  </code></pre>
  
  <p>this will sample a DiscreteUniform for 3 bins with the same range for each bin (between 0 and 100).</p>
  
  <p>Now, I tried several things to define different range for each bin, but can not succeed. I tried arrays of DiscreteUniform and arrays of bounds (upper,lower), but they obviously does not work.</p>
  
  <p>Does anyone ahs any idea how to define different range for the various bins of a stochastic variable?</p>