Source code for test_microlmagnification

# -*- coding: utf-8 -*-
"""
Created on Thu May 19 17:02:33 2016

@author: ebachelet
"""

import numpy as np

from pyLIMA import microlmagnification
from pyLIMA import microlmodels

[docs]def test_impact_parameter(): tau = np.array([1]) uo = np.array([2]) impact_param = microlmagnification.impact_parameter(tau, uo) assert impact_param == np.sqrt(5)
[docs]def test_amplification_PSPL(): tau = np.array([1]) uo = np.array([0]) magnification = microlmagnification.amplification_PSPL(tau, uo) assert np.allclose(magnification, np.array([1.34164079]))
[docs]def test_Jacobian_amplification_PSPL(): tau = np.array([1]) uo = np.array([0]) magnification = microlmagnification.Jacobian_amplification_PSPL(tau, uo)[0] impact_parameter = microlmagnification.Jacobian_amplification_PSPL(tau, uo)[1] assert np.allclose(magnification, np.array([1.34164079])) assert np.allclose(impact_parameter, 1)
[docs]def test_amplification_FSPL_one_point(): tau = np.array([0.001]) uo = np.array([0] * len(tau)) rho = 0.01 gamma = 0.5 yoo_table = microlmodels.yoo_table magnification = microlmagnification.amplification_FSPL(tau, uo, rho, gamma, yoo_table) assert np.allclose(magnification, np.array([216.97028636]))
[docs]def test_Jacobian_amplification_FSPL(): tau = np.array([0.001]) uo = np.array([0] * len(tau)) rho = 0.01 gamma = 0.5 yoo_table = microlmodels.yoo_table magnification = microlmagnification.Jacobian_amplification_FSPL(tau, uo, rho, gamma, yoo_table)[0] impact_parameter = microlmagnification.Jacobian_amplification_FSPL(tau, uo, rho, gamma, yoo_table)[1] assert np.allclose(magnification, np.array([216.97028636])) assert np.allclose(impact_parameter, 0.001)
[docs]def test_amplification_FSPL_two_points(): tau = np.array([0.001, 0.002]) uo = np.array([0] * len(tau)) rho = 0.01 gamma = 0.5 yoo_table = microlmodels.yoo_table magnification = microlmagnification.amplification_FSPL(tau, uo, rho, gamma, yoo_table) assert np.allclose(magnification, np.array([216.97028636, 214.44622417]))
[docs]def test_amplification_USBL(): s = np.array([1.0]) q = 0.02 xs = np.array([0.5]) ys = np.array([0.5]) rho = 0.0033 tol = 0.001 reltol = 0.001 magnification = microlmagnification.amplification_USBL(s,q,xs,ys,rho)[0] assert np.abs(magnification- 1.6311724868)<tol
[docs]def test_amplification_PSBL(): s = np.array([1.0]) q = 0.02 xs = np.array([0.5]) ys = np.array([0.5]) magnification = microlmagnification.amplification_PSBL(s,q,xs,ys) assert np.allclose(magnification, np.array([1.63109244]))
[docs]def test_amplification_FSPL_for_Lyrae(): tau = np.array([0.001]) uo = np.array([0] * len(tau)) rho = 0.01 gamma = 0.5 yoo_table = microlmodels.yoo_table magnification = microlmagnification.amplification_FSPL(tau, uo, rho, gamma, yoo_table) assert np.allclose(magnification, np.array([216.97028636]))