# Bumps 0.8.1 documentation

## initpop - Population initialization routines

`lhs_init` | Latin Hypercube Sampling
`cov_init` | Initialize N sets of random variables from a gaussian model.

Population initialization routines.

To start the analysis an initial population is required. This will be an array of size M x N, where M is the number of dimensions in the fitting problem and N is the number of Markov chains.

Two functions are provided:

1. lhs_init(N, bounds) returns a latin hypercube sampling, which tests every parameter at each of N levels.

2. cov_init(N, x, cov) returns a Gaussian sample along the ellipse defined by the covariance matrix, cov. Covariance defaults to diag(dx) if dx is provided as a parameter, or to I if it is not.

Additional options are random box: rand(M, N) or random scatter: randn(M, N).

bumps.dream.initpop.cov_init(N, x, cov=None, dx=None)

  Initialize N sets of random variables from a gaussian model.

  The center is at x with an uncertainty ellipse specified by the 1-sigma independent uncertainty values dx or the full covariance matrix uncertainty cov.

  For example, create an initial population for 20 sequences for a model with local minimum x with covariance matrix C:

      pop = cov_init(cov=C, x=x, N=20)

bumps.dream.initpop.lhs_init(N, bounds)

  Latin Hypercube Sampling

  Returns an array whose columns each have N samples from equally spaced bins between bounds=(xmin, xmax) for the column. DREAM bounds objects, with bounds.low and bounds.high can be used as well.

  Note: Indefinite ranges are not supported.