Exemplo n.º 1
0
def test_source_trajectory_with_parallax():
    to = 0.28
    tE = 35.6
    uo = 0.1
    piEN = 0.1
    piEE = -0.97

    Parameters = collections.namedtuple('parameters',
                                        ['to', 'uo', 'tE', 'piEN', 'piEE'])
    parameters = Parameters(to, uo, tE, piEN, piEE)

    telescope = mock.MagicMock()
    telescope.lightcurve_flux = np.array([[0, 1, 1], [42, 6, 6]])
    telescope.deltas_positions = np.array([[1, 2], [3, 4]])
    event = _create_event()
    event.telescopes[0] = telescope
    Model = microlmodels.create_model('PSPL', event, parallax=['Annual', 0])

    source_X, source_Y, dseparation = Model.source_trajectory(
        telescope, to, uo, tE, parameters)

    assert len(source_X) == len(source_Y) == 2

    tau = (telescope.lightcurve_flux[:, 0] - to) / tE
    piE = np.array([piEN, piEE])

    delta_tau, delta_beta = microlparallax.compute_parallax_curvature(
        piE, telescope.deltas_positions)

    tau += delta_tau
    beta = uo + delta_beta

    assert np.allclose(source_X, tau)  # rotation of alpha
    assert np.allclose(source_Y, beta)
Exemplo n.º 2
0
def test_compute_parallax_curvature():
    delta_positions = np.array([[1, 2], [3, 4]])
    piE = np.array([0.1, 1.8])

    delta_tau, delta_beta = microlparallax.compute_parallax_curvature(
        piE, delta_positions)

    assert len(delta_tau) == 2
    assert len(delta_beta) == 2
    assert np.allclose(
        delta_tau,
        (piE[0] * delta_positions[0] + piE[1] *
         delta_positions[1]))  # scalar product, geocentric point of view (-)
    assert np.allclose(
        delta_beta, (piE[0] * delta_positions[1] - piE[1] * delta_positions[0]
                     ))  # vectorial product, geocentric point of view (-)
Exemplo n.º 3
0
def test_compute_parallax_curvature():

    event = _create_event()
    event.telescopes[0].location = 'Earth'
    event.telescopes[0].altitude = 0
    event.telescopes[0].longitude = 0
    event.telescopes[0].latitude = 0


    parallax_model = ['Full', 1664.51]
    parallax = microlparallax.MLParallaxes(event, parallax_model)


    parallax.parallax_combination(event.telescopes[0])
    piE = [0.5,0.5]
    curvature  = microlparallax.compute_parallax_curvature(piE,event.telescopes[0].deltas_positions)

    dtau = piE[0]* event.telescopes[0].deltas_positions[0]+piE[1]* event.telescopes[0].deltas_positions[1]
    du = piE[1]* event.telescopes[0].deltas_positions[0]-piE[0]* event.telescopes[0].deltas_positions[1]
    np.allclose([dtau,du],curvature)
Exemplo n.º 4
0
def test_compute_parallax_curvature():

    event = _create_event()
    event.telescopes[0].location = 'Earth'
    event.telescopes[0].altitude = 0
    event.telescopes[0].longitude = 0
    event.telescopes[0].latitude = 0


    parallax_model = ['Full', 1664.51]
    parallax = microlparallax.MLParallaxes(event, parallax_model)


    parallax.parallax_combination(event.telescopes[0])
    piE = [0.5,0.5]
    curvature  = microlparallax.compute_parallax_curvature(piE,event.telescopes[0].deltas_positions)

    dtau = piE[0]* event.telescopes[0].deltas_positions[0]+piE[1]* event.telescopes[0].deltas_positions[1]
    du = piE[1]* event.telescopes[0].deltas_positions[0]-piE[0]* event.telescopes[0].deltas_positions[1]
    np.allclose([dtau,du],curvature)