def independence_chain(T, T0, sigma=1.): nparmas = T.param.size T2 = Affine(subtype=T.subtype, flag2d=T.flag2d) T2.param = T0.param + sigma*np.random.normal(size=nparams) sigma_ = np.maximum(sigma, 1e-20) tmp = (T2.param/sigma_)**2-(T.param/sigma_)**2 r = np.exp(-.5*tmp.sum()) return T2, r
def random_walk(T, T0, sigma=1.): nparams = T.param.size T2 = Affine(subtype=T.subtype, flag2d=T.flag2d) T2.param = T.param + sigma*np.random.normal(size=nparams) return T2, 1.