def test_density_input(): mc = MonteCarlo() with assert_raises(ValueError) as exception: mc([-1, 2, 3, 4], lambda x: 0) with assert_raises(TypeError) as exception: mc([1.1, 2, 3, 4], lambda x: 0) densities = [[0],[0,0,0,0]] for density in densities: with assert_raises(ValueError) as exception: mc.random_move(density)
def test_particle_number_is_conserved(): mc = MonteCarlo() density = random_integers(100, size=100) n = sum(density) n_new = sum(mc.random_move(density)) assert_equal(n,n_new,"particle number not conserved")
def test_fails_for_non_integer_densities(): mc = MonteCarlo() with assert_raises(TypeError) as exception: mc.random_move([1.0, 2, 3, 4])
def test_handles_zero_densities(): mc = MonteCarlo() densities = [[0],[0,0,0,0]] for density in densities: with assert_raises(ValueError) as exception: mc.random_move(density)
def test_fails_for_negative_densities(): mc = MonteCarlo() with assert_raises(ValueError) as exception: mc.random_move([-1, 2, 3, 4])