MulensModel.binarylens module

class MulensModel.binarylens.BinaryLens(parameters=None)

Bases: object

DEPRECATED

The BinaryLens class has been replaced with separate classes for each magnification method.

class MulensModel.binarylens.BinaryLensPointSourceWM95Magnification(**kwargs)

Bases: MulensModel.binarylens._BinaryLensPointSourceMagnification

Equations for calculating point-source–binary-lens magnification following the Witt & Mao 1995, ApJL, 447, L105 prescription assuming a POINT source.

Arguments :
trajectory: Trajectory

Including trajectory.parameters = ModelParameters

class MulensModel.binarylens.BinaryLensPointSourceVBBLMagnification(**kwargs)

Bases: MulensModel.binarylens._BinaryLensPointSourceMagnification

Equations for calculating point-source–binary-lens magnification using VBBL for point sources.

Arguments :
trajectory: Trajectory

Including trajectory.parameters = ModelParameters

class MulensModel.binarylens.BinaryLensPointSourceMagnification(**kwargs)

Bases: MulensModel.binarylens._BinaryLensPointSourceMagnification

Optimal class for calculation of point-source binary-lens magnification: it first tries VBBL and then switches to Witt & Mao 1995 if the former fails.

class MulensModel.binarylens.BinaryLensQuadrupoleMagnification(gamma=None, u_limb_darkening=None, **kwargs)

Bases: MulensModel.binarylens.BinaryLensPointSourceMagnification, MulensModel.binarylens._LimbDarkeningForMagnification, MulensModel.binarylens._FiniteSource

Magnification in quadrupole approximation of the binary-lens/finite-source event - based on Gould 2008 ApJ 681, 1593.

The origin of the coordinate system is at the center of mass and both masses are on X axis with higher mass at negative X; this means that the higher mass is at (X, Y)=(-s*q/(1+q), 0) and the lower mass is at (s/(1+q), 0).

Arguments :
trajectory: Trajectory

Including trajectory.parameters = ModelParameters

gamma: float

Linear limb-darkening coefficient in gamma convention.

class MulensModel.binarylens.BinaryLensHexadecapoleMagnification(all_approximations=False, **kwargs)

Bases: MulensModel.binarylens.BinaryLensQuadrupoleMagnification

Magnification in hexadecapole approximation of the binary-lens/finite-source event - based on Gould 2008 ApJ 681, 1593.

For coordinate system convention see BinaryLensQuadrupoleMagnification

Arguments :
trajectory: Trajectory

Including trajectory.parameters = ModelParameters

gamma: float

Linear limb-darkening coefficient in gamma convention.

all_approximations: boolean, optional

If True, return hexadecapole, quadrupole, and point source approximations. Default is *False.

class MulensModel.binarylens.BinaryLensVBBLMagnification(gamma=None, u_limb_darkening=None, accuracy=0.001, **kwargs)

Bases: MulensModel.binarylens._BinaryLensPointSourceMagnification, MulensModel.binarylens._LimbDarkeningForMagnification, MulensModel.binarylens._FiniteSource

Binary lens finite source magnification calculated using VBBL library that implements advanced contour integration algorithm presented by Bozza 2010 MNRAS, 408, 2188. See also VBBL website by Valerio Bozza.

For coordinate system convention see BinaryLensQuadrupoleMagnification

Arguments :
trajectory: Trajectory

Including trajectory.parameters = ModelParameters

gamma: float, optional

Linear limb-darkening coefficient in gamma convention.

u_limb_darkening: float, optional

Linear limb-darkening coefficient in u convention. Note that either gamma or u_limb_darkening can be set. If neither of them is provided then limb darkening is ignored.

accuracy: float, optional

Requested accuracy of the result.

class MulensModel.binarylens.BinaryLensAdaptiveContouringMagnification(gamma=None, u_limb_darkening=None, accuracy=0.1, ld_accuracy=0.001, **kwargs)

Bases: MulensModel.binarylens._BinaryLensPointSourceMagnification, MulensModel.binarylens._LimbDarkeningForMagnification, MulensModel.binarylens._FiniteSource

Binary lens finite source magnification calculated using Adaptive Contouring method by Dominik 2007 MNRAS, 377, 1679

See also AdaptiveContouring website by Martin Dominik

For coordinate system convention see point_source_magnification()

Arguments :
trajectory: Trajectory

Including trajectory.parameters = ModelParameters

gamma: float, optional

Linear limb-darkening coefficient in gamma convention.

u_limb_darkening: float

Linear limb-darkening coefficient in u convention. Note that either gamma or u_limb_darkening can be set. If neither of them is provided then limb darkening is ignored.

accuracy: float, optional

Requested accuracy of the result defined as the sum of the area of the squares that determine the contour line and the estimated total enclosed area (see sec. 4 of the paper). As M. Dominik states: “this vastly overestimates the fractional error, and a suitable value should be chosen by testing how its variation affects the final results - I recommend starting at acc = 0.1.” It significantly affects execution time.

ld_accuracy: float, optional

Requested limb-darkening accuracy. As M. Dominik states: ” Fractional uncertainty for the adaptive Simpson integration of the limb-darkening profile-related function during application of Green’s theorem.” It does not add execution time so can be set to very small value.