def fInitialise(pRng): """ A function to initialise particles param: pRng[smctc.rng] A pointer to the random number generator which is to be used """ value = [0.0]*4 # cv_state value[0] = pRng.Normal(0,sqrt(var_s0)) # x_pos value[1] = pRng.Normal(0,sqrt(var_s0)) # y_pos value[2] = pRng.Normal(0,sqrt(var_u0)) # x_vel value[3] = pRng.Normal(0,sqrt(var_u0)) # y_vel return smctc.particle(value,logLikelihood(0,value))
def test_init_value(self): a = smctc.particle([1, 2.0], 2.3)
def test_init_copy(self): a = smctc.particle([1, 2.0], 2.3) b = smctc.particle(a)
def test_init_default(self): smctc.particle()
def fInitialise(pRng): value = [0.0] * 2 # state value[0] = pRng.Normal(0, 1) # pos value[1] = pRng.Normal(0, 1) # vel return smctc.particle(value, 1.0)
def test_DoMove(self): a = smctc.particle([1, 2.0], 2.3) mrng = smctc.rng() fmove = smctc.moveset(fInitialise, fMove) fmove.DoMove(0, a, mrng) self.assertAlmostEqual(a.GetLogWeight(), 2.4)
def test_set_value(self): a = smctc.particle([1, 2.0], 2.3) a.SetValue([1, 2.0]) self.assertEqual(a.GetValue(), [1, 2.0])
def test_set_log_weight(self): a = smctc.particle([1, 2.0], 2.3) a.SetLogWeight(2.3) self.assertEqual(a.GetLogWeight(), 2.3)