Ejemplo n.º 1
0
def test_random_state_gauss2d():
    """With given random state, the output value should stay the same.
    Test performs on 2D gaussian.
    """
    dlist = []
    motor1 = SynAxis(name='motor1')
    motor2 = SynAxis(name='motor2')
    for i in range(2):
        s = np.random.RandomState(0)
        noisy_det = Syn2DGauss('noisy_det', motor1, 'motor1', motor2, 'motor2',
                               center=(0, 0), Imax=1, noise='uniform',
                               sigma=1, noise_multiplier=0.1, random_state=s)
        noisy_det.trigger()
        d = noisy_det.read()['noisy_det']['value']
        dlist.append(d)
    assert dlist[0] == dlist[1]
Ejemplo n.º 2
0
def get_2d_det():
    """Create a new 2d detector

    Returns
    -------
    Syn2DGauss object
    """
    x = get_motor()
    y = get_motor()
    detname = 'det2d_' + unique_name()
    det = Syn2DGauss(detname, x, x.name, y, y.name,
                     center=(random.sample(range(-10, 10), 2)),
                     Imax=random.randrange(1, 10),
                     sigma=random.randrange(0, 5),
                     noise=random.choice(['poisson', 'uniform', None]),
                     noise_multiplier=random.random()*5)
    all_objects.add(det)
    return det