PSPL Model Classes
PSPL
- class model.PSPL_PhotAstrom_noPar_Param1(*args, **kwargs)
Bases:
ModelClassABC,PSPL_PhotAstrom,PSPL_noParallax,PSPL_PhotAstromParam1PSPL model for astrometry and photometry - physical parameterization.
A Point Source Point Lens model for microlensing. This model uses a parameterization that depends on only physical quantities such as the lens mass and positions and proper motions of both the lens and source.
Note the attributes, RA (raL) and Dec (decL) are required if you are calculating a model with parallax.
- Attributes:
- mL: float
Mass of the lens (Msun)
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- beta: float
Angular distance between the lens and source on the plane of the sky (mas). Can be
positive (u0_amp > 0 when u0_hat[0] < 0) or
negative (u0_amp < 0 when u0_hat[0] > 0).
- dL: float
Distance from the observer to the lens (pc)
- dL_dS: float
Ratio of Distance from the obersver to the lens to Distance from the observer to the source
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muL_E: float
RA Lens proper motion (mas/yr)
- muL_N: float
Dec Lens proper motion (mas/yr)
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Dec Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Not supported on this object.
Get an array of the photometric amplifications at the input times.
get_astrometry(t[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
Get the astrometry of the source if the lens didn't exist.
Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Not supported on this object.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. No parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. No parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. No parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
PSPL Parallax
- class model.PSPL_PhotAstrom_Par_Param1(*args, **kwargs)
Bases:
ModelClassABC,PSPL_PhotAstrom,PSPL_Parallax,PSPL_PhotAstromParam1PSPL model for astrometry and photometry - physical parameterization.
A Point Source Point Lens model for microlensing. This model uses a parameterization that depends on only physical quantities such as the lens mass and positions and proper motions of both the lens and source.
Note the attributes, RA (raL) and Dec (decL) are required if you are calculating a model with parallax.
- Attributes:
- mL: float
Mass of the lens (Msun)
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- beta: float
Angular distance between the lens and source on the plane of the sky (mas). Can be
positive (u0_amp > 0 when u0_hat[0] < 0) or
negative (u0_amp < 0 when u0_hat[0] > 0).
- dL: float
Distance from the observer to the lens (pc)
- dL_dS: float
Ratio of Distance from the obersver to the lens to Distance from the observer to the source
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muL_E: float
RA Lens proper motion (mas/yr)
- muL_N: float
Dec Lens proper motion (mas/yr)
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Dec Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_LumLens_Par_Param1(*args, **kwargs)
Bases:
ModelClassABC,PSPL_PhotAstrom,PSPL_Parallax_LumLens,PSPL_PhotAstromParam1PSPL model for astrometry and photometry - physical parameterization.
A Point Source Point Lens model for microlensing. This model uses a parameterization that depends on only physical quantities such as the lens mass and positions and proper motions of both the lens and source.
Note the attributes, RA (raL) and Dec (decL) are required if you are calculating a model with parallax.
- Attributes:
- mL: float
Mass of the lens (Msun)
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- beta: float
Angular distance between the lens and source on the plane of the sky (mas). Can be
positive (u0_amp > 0 when u0_hat[0] < 0) or
negative (u0_amp < 0 when u0_hat[0] > 0).
- dL: float
Distance from the observer to the lens (pc)
- dL_dS: float
Ratio of Distance from the obersver to the lens to Distance from the observer to the source
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muL_E: float
RA Lens proper motion (mas/yr)
- muL_N: float
Dec Lens proper motion (mas/yr)
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Dec Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is assumed to be luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_LumLens_Par_Param2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_PhotAstrom,PSPL_Parallax_LumLens,PSPL_PhotAstromParam2PSPL model for photometry and astrometry – photom-like parameterization
Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time (days).
- thetaE: float
The size of the Einstein radius in (mas).
- piS: float
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_E: float
The microlensing parallax in the East direction in units of thetaE
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is assumed to be luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_LumLens_Par_Param4(*args, **kwargs)
Bases:
ModelClassABC,PSPL_PhotAstrom,PSPL_Parallax_LumLens,PSPL_PhotAstromParam4Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky. It is the same as PSPL_PhotAstromParam2 except it fits for baseline instead of source magnitude.
- Parameters:
- t0float
Time of photometric peak, as seen from Earth (MJD.DDD)
- u0_ampfloat
Angular distance between the source and the GEOMETRIC center of the lenses on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tEfloat
Einstein crossing time (days).
- thetaE:
The size of the Einstein radius in (mas).
- piSfloat
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_Efloat
The microlensing parallax in the East direction in units of thetaE
- piE_Nfloat
The microlensing parallax in the North direction in units of thetaE
- xS0_Efloat
R.A. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_Nfloat
Dec. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_Efloat
RA Source proper motion (mas/yr)
- muS_Nfloat
Dec Source proper motion (mas/yr)
- b_sffnumpy array or list
The ratio of the source flux to the total (source + neighbors + lenses). One for each filter.
\(b_sff = f_S / (f_S + f_L + f_N)\).
This must be passed in as a list or array, with one entry for each photometric filter.
- mag_basenumpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is assumed to be luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
PSPL_parallax2 / PSPL_multiphot_parallax
- class model.PSPL_PhotAstrom_Par_Param2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_PhotAstrom,PSPL_Parallax,PSPL_PhotAstromParam2PSPL model for photometry and astrometry – photom-like parameterization
Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time (days).
- thetaE: float
The size of the Einstein radius in (mas).
- piS: float
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_E: float
The microlensing parallax in the East direction in units of thetaE
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_noPar_Param2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_PhotAstrom,PSPL_noParallax,PSPL_PhotAstromParam2PSPL model for photometry and astrometry – photom-like parameterization
Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time (days).
- thetaE: float
The size of the Einstein radius in (mas).
- piS: float
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_E: float
The microlensing parallax in the East direction in units of thetaE
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Not supported on this object.
Get an array of the photometric amplifications at the input times.
get_astrometry(t[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
Get the astrometry of the source if the lens didn't exist.
Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Not supported on this object.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. No parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. No parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. No parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_Par_Param3(*args, **kwargs)
Bases:
ModelClassABC,PSPL_PhotAstrom,PSPL_Parallax,PSPL_PhotAstromParam3Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky. It is the same as PSPL_PhotAstromParam4 except it fits for log10(thetaE) instead of thetaE.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
- Attributes:
- t0float
Time of photometric peak, as seen from Earth (MJD.DDD)
- u0_ampfloat
Angular distance between the source and the GEOMETRIC center of the lenses on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tEfloat
Einstein crossing time (days).
- log10_thetaEfloat
The size of the Einstein radius in (mas).
- piSfloat
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_Efloat
The microlensing parallax in the East direction in units of thetaE
- piE_Nfloat
The microlensing parallax in the North direction in units of thetaE
- xS0_Efloat
R.A. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_Nfloat
Dec. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_Efloat
RA Source proper motion (mas/yr)
- muS_Nfloat
Dec Source proper motion (mas/yr)
- b_sffnumpy array or list
The ratio of the source flux to the total (source + neighbors + lenses). One for each filter.
\(b_sff = f_S / (f_S + f_L + f_N)\).
This must be passed in as a list or array, with one entry for each photometric filter.
- mag_basenumpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_Par_Param4(*args, **kwargs)
Bases:
ModelClassABC,PSPL_PhotAstrom,PSPL_Parallax,PSPL_PhotAstromParam4Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky. It is the same as PSPL_PhotAstromParam2 except it fits for baseline instead of source magnitude.
- Parameters:
- t0float
Time of photometric peak, as seen from Earth (MJD.DDD)
- u0_ampfloat
Angular distance between the source and the GEOMETRIC center of the lenses on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tEfloat
Einstein crossing time (days).
- thetaE:
The size of the Einstein radius in (mas).
- piSfloat
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_Efloat
The microlensing parallax in the East direction in units of thetaE
- piE_Nfloat
The microlensing parallax in the North direction in units of thetaE
- xS0_Efloat
R.A. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_Nfloat
Dec. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_Efloat
RA Source proper motion (mas/yr)
- muS_Nfloat
Dec Source proper motion (mas/yr)
- b_sffnumpy array or list
The ratio of the source flux to the total (source + neighbors + lenses). One for each filter.
\(b_sff = f_S / (f_S + f_L + f_N)\).
This must be passed in as a list or array, with one entry for each photometric filter.
- mag_basenumpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_noPar_Param4(*args, **kwargs)
Bases:
ModelClassABC,PSPL_PhotAstrom,PSPL_noParallax,PSPL_PhotAstromParam4Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky. It is the same as PSPL_PhotAstromParam2 except it fits for baseline instead of source magnitude.
- Parameters:
- t0float
Time of photometric peak, as seen from Earth (MJD.DDD)
- u0_ampfloat
Angular distance between the source and the GEOMETRIC center of the lenses on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tEfloat
Einstein crossing time (days).
- thetaE:
The size of the Einstein radius in (mas).
- piSfloat
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_Efloat
The microlensing parallax in the East direction in units of thetaE
- piE_Nfloat
The microlensing parallax in the North direction in units of thetaE
- xS0_Efloat
R.A. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_Nfloat
Dec. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_Efloat
RA Source proper motion (mas/yr)
- muS_Nfloat
Dec Source proper motion (mas/yr)
- b_sffnumpy array or list
The ratio of the source flux to the total (source + neighbors + lenses). One for each filter.
\(b_sff = f_S / (f_S + f_L + f_N)\).
This must be passed in as a list or array, with one entry for each photometric filter.
- mag_basenumpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Not supported on this object.
Get an array of the photometric amplifications at the input times.
get_astrometry(t[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
Get the astrometry of the source if the lens didn't exist.
Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Not supported on this object.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. No parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. No parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. No parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_Astrom_Par_Param4(*args, **kwargs)
Bases:
ModelClassABC,PSPL_Astrom,PSPL_Parallax,PSPL_AstromParam4Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky. It is the same as PSPL_PhotAstromParam2 except it fits for baseline instead of source magnitude.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time (days).
- thetaE: float
The size of the Einstein radius in (mas).
- piS: float
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_E: float
The microlensing parallax in the East direction in units of thetaE
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Dec Source proper motion (mas/yr)
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t_obs[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t_obs, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_Astrom_Par_Param3(*args, **kwargs)
Bases:
ModelClassABC,PSPL_Astrom,PSPL_Parallax,PSPL_AstromParam3Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky. It is the same as PSPL_PhotAstromParam3 except it fits only astrometry, no photometry.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time (days).
- log10_thetaE: float
The log of the Einstein radius log10(thetaE/mas).
- piS: float
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_E: float
The microlensing parallax in the East direction in units of thetaE
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Dec Source proper motion (mas/yr)
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t_obs[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t_obs, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
PSPL_phot
- class model.PSPL_Phot_noPar_Param1(*args, **kwargs)
Bases:
ModelClassABC,PSPL_Phot,PSPL_noParallax,PSPL_PhotParam1PSPL model for photometry only.
Point source point lens model for microlensing photometry only. This model includes the relative proper motion between the lens and the source. Parameters are reduced with the use of piRel (rather than dL and dS) and muRel (rather than muL and muS).
Note the attributes, RA (raL) and Dec (decL) are required if you are calculating a model with parallax.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. It can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time in days.
- piE_E: float
The microlensing parallax in the East direction in units of thetaE.
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Not supported on this object.
Get an array of the photometric amplifications at the input times.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
get_astrometry
get_astrometry_unlensed
get_centroid_shift
get_lens_astrometry
get_resolved_amplification
get_resolved_astrometry
log_likely_astrometry
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Not supported on this object.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. No parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. No parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. No parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_Phot_noPar_Param2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_Phot,PSPL_noParallax,PSPL_PhotParam2Point source point lens model for microlensing photometry only. This model includes the relative proper motion between the lens and the source. Parameters are reduced with the use of piRel (rather than dL and dS) and muRel (rather than muL and muS). Same as PSPL_PhotParam1, except fits for mag_base instead of mag_src.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. It can be positive (u0_amp > 0 when u0_hat[0] > 0) or negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time in days.
- piE_E: float
The microlensing parallax in the East direction in units of thetaE.
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_base: numpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Not supported on this object.
Get an array of the photometric amplifications at the input times.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
get_astrometry
get_astrometry_unlensed
get_centroid_shift
get_lens_astrometry
get_resolved_amplification
get_resolved_astrometry
log_likely_astrometry
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Not supported on this object.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. No parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. No parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. No parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
PSPL_phot_parallax / PSPL_phot_multiphot_parallax
- class model.PSPL_Phot_Par_Param1(*args, **kwargs)
Bases:
ModelClassABC,PSPL_Phot,PSPL_Parallax,PSPL_PhotParam1PSPL model for photometry only.
Point source point lens model for microlensing photometry only. This model includes the relative proper motion between the lens and the source. Parameters are reduced with the use of piRel (rather than dL and dS) and muRel (rather than muL and muS).
Note the attributes, RA (raL) and Dec (decL) are required if you are calculating a model with parallax.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. It can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time in days.
- piE_E: float
The microlensing parallax in the East direction in units of thetaE.
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
get_astrometry
get_astrometry_unlensed
get_centroid_shift
get_lens_astrometry
get_resolved_amplification
get_resolved_astrometry
log_likely_astrometry
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_Phot_Par_Param2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_Phot,PSPL_Parallax,PSPL_PhotParam2Point source point lens model for microlensing photometry only. This model includes the relative proper motion between the lens and the source. Parameters are reduced with the use of piRel (rather than dL and dS) and muRel (rather than muL and muS). Same as PSPL_PhotParam1, except fits for mag_base instead of mag_src.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. It can be positive (u0_amp > 0 when u0_hat[0] > 0) or negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time in days.
- piE_E: float
The microlensing parallax in the East direction in units of thetaE.
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_base: numpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
log_likely_photometry(t_obs, mag_obs, ...[, ...])Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
get_astrometry
get_astrometry_unlensed
get_centroid_shift
get_lens_astrometry
get_resolved_amplification
get_resolved_astrometry
log_likely_astrometry
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
PSPL Phot parallax with GP
- class model.PSPL_Phot_Par_GP_Param1(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_Phot,PSPL_Parallax,PSPL_GP_PhotParam1PSPL model for photometry only.
Point source point lens model for microlensing photometry only. This model includes the relative proper motion between the lens and the source. Parameters are reduced with the use of piRel (rather than dL and dS) and muRel (rather than muL and muS).
Note the attributes, RA (raL) and Dec (decL) are required if you are calculating a model with parallax.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. It can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time in days.
- piE_E: float
The microlensing parallax in the East direction in units of thetaE.
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
get_astrometry
get_astrometry_unlensed
get_centroid_shift
get_lens_astrometry
get_resolved_amplification
get_resolved_astrometry
log_likely_astrometry
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_Phot_Par_GP_Param2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_Phot,PSPL_Parallax,PSPL_GP_PhotParam2Point source point lens model for microlensing photometry only. This model includes the relative proper motion between the lens and the source. Parameters are reduced with the use of piRel (rather than dL and dS) and muRel (rather than muL and muS). Same as PSPL_PhotParam1, except fits for mag_base instead of mag_src.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. It can be positive (u0_amp > 0 when u0_hat[0] > 0) or negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time in days.
- piE_E: float
The microlensing parallax in the East direction in units of thetaE.
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_base: numpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
get_astrometry
get_astrometry_unlensed
get_centroid_shift
get_lens_astrometry
get_resolved_amplification
get_resolved_astrometry
log_likely_astrometry
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_Phot_Par_GP_Param1_2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_Phot,PSPL_Parallax,PSPL_GP_PhotParam1_2PSPL model for photometry only.
Point source point lens model for microlensing photometry only. This model includes the relative proper motion between the lens and the source. Parameters are reduced with the use of piRel (rather than dL and dS) and muRel (rather than muL and muS).
Note the attributes, RA (raL) and Dec (decL) are required if you are calculating a model with parallax.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. It can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time in days.
- piE_E: float
The microlensing parallax in the East direction in units of thetaE.
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
get_astrometry
get_astrometry_unlensed
get_centroid_shift
get_lens_astrometry
get_resolved_amplification
get_resolved_astrometry
log_likely_astrometry
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_Phot_Par_GP_Param2_2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_Phot,PSPL_Parallax,PSPL_GP_PhotParam2_2Point source point lens model for microlensing photometry only. This model includes the relative proper motion between the lens and the source. Parameters are reduced with the use of piRel (rather than dL and dS) and muRel (rather than muL and muS). Same as PSPL_PhotParam1, except fits for mag_base instead of mag_src.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. It can be positive (u0_amp > 0 when u0_hat[0] > 0) or negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time in days.
- piE_E: float
The microlensing parallax in the East direction in units of thetaE.
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_base: numpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
get_astrometry
get_astrometry_unlensed
get_centroid_shift
get_lens_astrometry
get_resolved_amplification
get_resolved_astrometry
log_likely_astrometry
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
PSPL Phot, no parallax with GP
- class model.PSPL_Phot_noPar_GP_Param1(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_Phot,PSPL_noParallax,PSPL_GP_PhotParam1PSPL model for photometry only.
Point source point lens model for microlensing photometry only. This model includes the relative proper motion between the lens and the source. Parameters are reduced with the use of piRel (rather than dL and dS) and muRel (rather than muL and muS).
Note the attributes, RA (raL) and Dec (decL) are required if you are calculating a model with parallax.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. It can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time in days.
- piE_E: float
The microlensing parallax in the East direction in units of thetaE.
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Not supported on this object.
Get an array of the photometric amplifications at the input times.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
get_astrometry
get_astrometry_unlensed
get_centroid_shift
get_lens_astrometry
get_resolved_amplification
get_resolved_astrometry
log_likely_astrometry
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Not supported on this object.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. No parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. No parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. No parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_Phot_noPar_GP_Param2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_Phot,PSPL_noParallax,PSPL_GP_PhotParam2Point source point lens model for microlensing photometry only. This model includes the relative proper motion between the lens and the source. Parameters are reduced with the use of piRel (rather than dL and dS) and muRel (rather than muL and muS). Same as PSPL_PhotParam1, except fits for mag_base instead of mag_src.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. It can be positive (u0_amp > 0 when u0_hat[0] > 0) or negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time in days.
- piE_E: float
The microlensing parallax in the East direction in units of thetaE.
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_base: numpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Not supported on this object.
Get an array of the photometric amplifications at the input times.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
get_astrometry
get_astrometry_unlensed
get_centroid_shift
get_lens_astrometry
get_resolved_amplification
get_resolved_astrometry
log_likely_astrometry
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Not supported on this object.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. No parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. No parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. No parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
PSPL PhotAstrom, parallax with GP
- class model.PSPL_PhotAstrom_Par_GP_Param1(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_PhotAstrom,PSPL_Parallax,PSPL_GP_PhotAstromParam1PSPL model for astrometry and photometry - physical parameterization.
A Point Source Point Lens model for microlensing. This model uses a parameterization that depends on only physical quantities such as the lens mass and positions and proper motions of both the lens and source.
Note the attributes, RA (raL) and Dec (decL) are required if you are calculating a model with parallax.
- Attributes:
- mL: float
Mass of the lens (Msun)
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- beta: float
Angular distance between the lens and source on the plane of the sky (mas). Can be
positive (u0_amp > 0 when u0_hat[0] < 0) or
negative (u0_amp < 0 when u0_hat[0] > 0).
- dL: float
Distance from the observer to the lens (pc)
- dL_dS: float
Ratio of Distance from the obersver to the lens to Distance from the observer to the source
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muL_E: float
RA Lens proper motion (mas/yr)
- muL_N: float
Dec Lens proper motion (mas/yr)
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Dec Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_Par_GP_Param2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_PhotAstrom,PSPL_Parallax,PSPL_GP_PhotAstromParam2PSPL model for photometry and astrometry – photom-like parameterization
Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time (days).
- thetaE: float
The size of the Einstein radius in (mas).
- piS: float
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_E: float
The microlensing parallax in the East direction in units of thetaE
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_Par_GP_Param3(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_PhotAstrom,PSPL_Parallax,PSPL_GP_PhotAstromParam3Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky. It is the same as PSPL_PhotAstromParam4 except it fits for log10(thetaE) instead of thetaE.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
- Attributes:
- t0float
Time of photometric peak, as seen from Earth (MJD.DDD)
- u0_ampfloat
Angular distance between the source and the GEOMETRIC center of the lenses on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tEfloat
Einstein crossing time (days).
- log10_thetaEfloat
The size of the Einstein radius in (mas).
- piSfloat
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_Efloat
The microlensing parallax in the East direction in units of thetaE
- piE_Nfloat
The microlensing parallax in the North direction in units of thetaE
- xS0_Efloat
R.A. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_Nfloat
Dec. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_Efloat
RA Source proper motion (mas/yr)
- muS_Nfloat
Dec Source proper motion (mas/yr)
- b_sffnumpy array or list
The ratio of the source flux to the total (source + neighbors + lenses). One for each filter.
\(b_sff = f_S / (f_S + f_L + f_N)\).
This must be passed in as a list or array, with one entry for each photometric filter.
- mag_basenumpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_Par_GP_Param4(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_PhotAstrom,PSPL_Parallax,PSPL_GP_PhotAstromParam4Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky. It is the same as PSPL_PhotAstromParam2 except it fits for baseline instead of source magnitude.
- Parameters:
- t0float
Time of photometric peak, as seen from Earth (MJD.DDD)
- u0_ampfloat
Angular distance between the source and the GEOMETRIC center of the lenses on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tEfloat
Einstein crossing time (days).
- thetaE:
The size of the Einstein radius in (mas).
- piSfloat
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_Efloat
The microlensing parallax in the East direction in units of thetaE
- piE_Nfloat
The microlensing parallax in the North direction in units of thetaE
- xS0_Efloat
R.A. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_Nfloat
Dec. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_Efloat
RA Source proper motion (mas/yr)
- muS_Nfloat
Dec Source proper motion (mas/yr)
- b_sffnumpy array or list
The ratio of the source flux to the total (source + neighbors + lenses). One for each filter.
\(b_sff = f_S / (f_S + f_L + f_N)\).
This must be passed in as a list or array, with one entry for each photometric filter.
- mag_basenumpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_Par_LumLens_GP_Param1(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_PhotAstrom,PSPL_Parallax_LumLens,PSPL_GP_PhotAstromParam1PSPL model for astrometry and photometry - physical parameterization.
A Point Source Point Lens model for microlensing. This model uses a parameterization that depends on only physical quantities such as the lens mass and positions and proper motions of both the lens and source.
Note the attributes, RA (raL) and Dec (decL) are required if you are calculating a model with parallax.
- Attributes:
- mL: float
Mass of the lens (Msun)
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- beta: float
Angular distance between the lens and source on the plane of the sky (mas). Can be
positive (u0_amp > 0 when u0_hat[0] < 0) or
negative (u0_amp < 0 when u0_hat[0] > 0).
- dL: float
Distance from the observer to the lens (pc)
- dL_dS: float
Ratio of Distance from the obersver to the lens to Distance from the observer to the source
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muL_E: float
RA Lens proper motion (mas/yr)
- muL_N: float
Dec Lens proper motion (mas/yr)
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Dec Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is assumed to be luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_Par_LumLens_GP_Param2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_PhotAstrom,PSPL_Parallax_LumLens,PSPL_GP_PhotAstromParam2PSPL model for photometry and astrometry – photom-like parameterization
Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time (days).
- thetaE: float
The size of the Einstein radius in (mas).
- piS: float
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_E: float
The microlensing parallax in the East direction in units of thetaE
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is assumed to be luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_Par_LumLens_GP_Param3(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_PhotAstrom,PSPL_Parallax_LumLens,PSPL_GP_PhotAstromParam3Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky. It is the same as PSPL_PhotAstromParam4 except it fits for log10(thetaE) instead of thetaE.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
- Attributes:
- t0float
Time of photometric peak, as seen from Earth (MJD.DDD)
- u0_ampfloat
Angular distance between the source and the GEOMETRIC center of the lenses on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tEfloat
Einstein crossing time (days).
- log10_thetaEfloat
The size of the Einstein radius in (mas).
- piSfloat
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_Efloat
The microlensing parallax in the East direction in units of thetaE
- piE_Nfloat
The microlensing parallax in the North direction in units of thetaE
- xS0_Efloat
R.A. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_Nfloat
Dec. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_Efloat
RA Source proper motion (mas/yr)
- muS_Nfloat
Dec Source proper motion (mas/yr)
- b_sffnumpy array or list
The ratio of the source flux to the total (source + neighbors + lenses). One for each filter.
\(b_sff = f_S / (f_S + f_L + f_N)\).
This must be passed in as a list or array, with one entry for each photometric filter.
- mag_basenumpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is assumed to be luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_Par_LumLens_GP_Param4(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_PhotAstrom,PSPL_Parallax_LumLens,PSPL_GP_PhotAstromParam4Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky. It is the same as PSPL_PhotAstromParam2 except it fits for baseline instead of source magnitude.
- Parameters:
- t0float
Time of photometric peak, as seen from Earth (MJD.DDD)
- u0_ampfloat
Angular distance between the source and the GEOMETRIC center of the lenses on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tEfloat
Einstein crossing time (days).
- thetaE:
The size of the Einstein radius in (mas).
- piSfloat
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_Efloat
The microlensing parallax in the East direction in units of thetaE
- piE_Nfloat
The microlensing parallax in the North direction in units of thetaE
- xS0_Efloat
R.A. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_Nfloat
Dec. of source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_Efloat
RA Source proper motion (mas/yr)
- muS_Nfloat
Dec Source proper motion (mas/yr)
- b_sffnumpy array or list
The ratio of the source flux to the total (source + neighbors + lenses). One for each filter.
\(b_sff = f_S / (f_S + f_L + f_N)\).
This must be passed in as a list or array, with one entry for each photometric filter.
- mag_basenumpy array or list
Photometric magnitude of the base. This must be passed in as a list or array, with one entry for each photometric filter.
Notes
Note
Required parameters if calculating with parallax
raL: Right ascension of the lens in decimal degrees.
decL: Declination of the lens in decimal degrees.
obsLocation: The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
Get an array of the photometric amplifications at the input times.
get_astrometry(t_obs[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_astrometry_unlensed(t_obs)Get the astrometry of the source if the lens didn't exist.
get_centroid_shift(t[, ast_filt_idx])Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
get_geoproj_ast_params(t0par[, plot])Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_geoproj_params(t0par[, plot])Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par.
get_lens_astrometry(t_obs)Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
get_resolved_astrometry(t_obs)Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
set_observer_location
start
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Get piE_ecliptic, the microlensing parallax vector in the ecliptic coorindate system.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. Parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t_obs, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is assumed to be luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t_obs)
Get the astrometry of the source if the lens didn’t exist. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t, ast_filt_idx=0)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. Parallax is included and the lens is luminous. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_geoproj_ast_params(t0par, plot=False)
Get the astrometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- xS0E_gfloat
The East-component of source position vector on the sky, in the geocentric-projected frame.
- xS0N_gfloat
The North-component of source position vector on the sky, in the geocentric-projected frame.
- muSE_gfloat
The East-component of source proper motion vector, in the geocentric-projected frame.
- muSN_gfloat
The North-component of source proper motion vector, in the geocentric-projected frame.
- get_geoproj_params(t0par, plot=False)
Get the photometric microlensing model parameters in the geocentric-projected coordinate system, which just applies a rectalinear position and velocity offset into the geocentric frame at time t0par. Note, this is not a true geocentric frame. It is only geocentric at time t0par. However, this is a common convention for photometry-only microlens models in the literature. The benefits of the geocentric-projected frame is that the t0_{geoProj} can more closely match the observed peak in the light curve.
- Parameters:
- t0parfloat
Time in MJD at which to convert into the geocentric frame.
- Returns:
- t0_gfloat
The time (in MJD) of closest approach between the lens and source in the geocentric-projected frame.
- u0_gfloat
The distance (in thetaE) at closest approach in the geocentric-projected frame.
- tE_gfloat
The Einsten crossing time (in MJD) in the geocentric-projected frame.
- piEE_gfloat
The East-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the East-component of the relative proper motion vector between the source and lens
- piEN_gfloat
The North-component of the microlensing parallax vector, in the geocentric-projected frame. This also indicates the North-component of the relative proper motion vector between the source and lens
- get_lens_astrometry(t_obs)
Get the astrometry for the foreground lens at the input times. Parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. Parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t_obs)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. Parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
PSPL PhotAstrom, no parallax with GP
- class model.PSPL_PhotAstrom_noPar_GP_Param1(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_PhotAstrom,PSPL_noParallax,PSPL_GP_PhotAstromParam1PSPL model for astrometry and photometry - physical parameterization.
A Point Source Point Lens model for microlensing. This model uses a parameterization that depends on only physical quantities such as the lens mass and positions and proper motions of both the lens and source.
Note the attributes, RA (raL) and Dec (decL) are required if you are calculating a model with parallax.
- Attributes:
- mL: float
Mass of the lens (Msun)
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- beta: float
Angular distance between the lens and source on the plane of the sky (mas). Can be
positive (u0_amp > 0 when u0_hat[0] < 0) or
negative (u0_amp < 0 when u0_hat[0] > 0).
- dL: float
Distance from the observer to the lens (pc)
- dL_dS: float
Ratio of Distance from the obersver to the lens to Distance from the observer to the source
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muL_E: float
RA Lens proper motion (mas/yr)
- muL_N: float
Dec Lens proper motion (mas/yr)
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Dec Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Not supported on this object.
Get an array of the photometric amplifications at the input times.
get_astrometry(t[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
Get the astrometry of the source if the lens didn't exist.
Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Not supported on this object.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. No parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. No parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. No parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.
- class model.PSPL_PhotAstrom_noPar_GP_Param2(*args, **kwargs)
Bases:
ModelClassABC,PSPL_GP,PSPL_PhotAstrom,PSPL_noParallax,PSPL_GP_PhotAstromParam2PSPL model for photometry and astrometry – photom-like parameterization
Point Source Point Lens model for microlensing. This model includes proper motions of the source and the source position on the sky.
- Attributes:
- t0: float
Time (MJD.DDD) of closest projected approach between source and lens as seen in heliocentric coordinates. This should be close, but not exactly aligned with the photometric peak, as seen from Earth or a Solar System satellite.
- u0_amp: float
Angular distance between the lens and source on the plane of the sky at closest approach in units of thetaE. Can be
positive (u0_amp > 0 when u0_hat[0] > 0) or
negative (u0_amp < 0 when u0_hat[0] < 0).
- tE: float
Einstein crossing time (days).
- thetaE: float
The size of the Einstein radius in (mas).
- piS: float
Amplitude of the parallax (1AU/dS) of the source. (mas)
- piE_E: float
The microlensing parallax in the East direction in units of thetaE
- piE_N: float
The microlensing parallax in the North direction in units of thetaE
- xS0_E: float
RA Source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- xS0_N: float
Dec source position on sky at t = t0 (arcsec) in an arbitrary ref. frame.
- muS_E: float
RA Source proper motion (mas/yr)
- muS_N: float
Source proper motion (mas/yr)
- b_sff: numpy array or list
The ratio of the source flux to the total (source + neighbors + lens) \(b_sff = f_S / (f_S + f_L + f_N)\). This must be passed in as a list or array, with one entry for each photometric filter.
- mag_src: numpy array or list
Photometric magnitude of the source. This must be passed in as a list or array, with one entry for each photometric filter.
- raL: float, optional
Right ascension of the lens in decimal degrees.
- decL: float, optional
Declination of the lens in decimal degrees.
- obsLocation: str, optional
The observers location (def=’earth’) such as ‘jwst’ or ‘spitzer’.
Methods
animate(tE, time_steps, frame_time, name, ...)Produces animation of microlensing event.
Not supported on this object.
Get an array of the photometric amplifications at the input times.
get_astrometry(t[, ast_filt_idx])Get the astrometry of the unresolved (observed) position of the lensed source at the input times.
Get the astrometry of the source if the lens didn't exist.
Get the centroid shift (in mas) at the input times.
get_chi2_astrometry(t_obs, x_obs, y_obs, ...)Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
get_chi2_photometry(t_obs, mag_obs, mag_err_obs)Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
Get the astrometry for the foreground lens at the input times.
get_lnL_constant(err_obs)Get the natural log of the constant normalization terms of the likelihood.
get_log_det_covariance(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
get_photometry(t[, filt_idx, print_warning])Get the predicted photomety at the specified times for the specified photometric filter or data set.
get_photometry_with_gp(t_obs, mag_obs, ...)Returns photometry with GP noise added in.
Get the photometric amplification term at a set of times, t for both the plus and minus images.
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus.
log_likely_astrometry(t_obs, x_obs, y_obs, ...)Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_astrometry_each(t_obs, x_obs, ...)Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets.
log_likely_photometry(t_obs, mag_obs, ...[, ...])For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set.
log_likely_photometry_each(t_obs, mag_obs, ...)Get the natural log of the likelihood for the input photometric data in the specified filter or data sets.
- animate(tE, time_steps, frame_time, name, size, zoom, astrometry)
Produces animation of microlensing event. This function takes the PSPL and makes an animation, the input variables are as follows
- Parameters:
- tE:
- number of einstein crossings times before/after the peak you want the animation to plot
e.g tE = 2 => graph will go from -2 tE to 2 tE
- time_steps:
number of time steps before/after peak, so total number of time steps will be 2 times this value
- frame_time:
times in ms of each frame in the animation
- name: string
the animation will be saved as name.html
- size: list
[horizontal, vertical] cm’s
- zoom:
# of einstein radii plotted in vertical direction
- calc_piE_ecliptic()
Not supported on this object.
- get_amplification(t)
Get an array of the photometric amplifications at the input times. No parallax is included.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_astrometry(t, ast_filt_idx=0)
Get the astrometry of the unresolved (observed) position of the lensed source at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- get_astrometry_unlensed(t)
Get the astrometry of the source if the lens didn’t exist. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- xS_unlensednumpy array, dtype=float, shape = [len(t), 2]
The unlensed positions of the source in arcseconds.
- get_centroid_shift(t)
Get the centroid shift (in mas) at the input times. The centroid shift is the difference between the lensed, unresolved position and the intrinsic position of the source. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_chi2_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the chi^2 value for this model given input astrometry data and uncertainties for the specified astrometric data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
The index of the astrometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and astrometric data.
- get_chi2_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get chi^2 values for the model and input photometric data in the specified photometric filter or data set.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- chi2array_like
List of chi^2 values from the model and photometric data.
- get_lens_astrometry(t)
Get the astrometry for the foreground lens at the input times. No parallax is included. The returned array is in arcsec and has a shape of [len(t), 2] where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- get_lnL_constant(err_obs)
Get the natural log of the constant normalization terms of the likelihood.
\[-0.5 * \ln{2 \pi \sigma_{obs}^2}\]- Parameters:
- err_obsarray_like
List of the uncertainties.
- Returns:
- List of ln(likelihood constants).
- get_log_det_covariance(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- get_photometry(t, filt_idx=0, print_warning=True)
Get the predicted photomety at the specified times for the specified photometric filter or data set.
- Parameters:
- tarray_like
List of times in MJD for the observations.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t.
- Other Parameters:
- print_warningbool, optional
Print a warning in the rare case that the magnitude exceeds a zeropoint of 30 and conversions result in NaN returned.
- get_photometry_with_gp(t_obs, mag_obs, mag_err_obs, filt_index=0, t_pred=None)
Returns photometry with GP noise added in.
Note
This will throw an error if this is a filter with use_gp_phot[filt_index] = False.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations. These times are used as input to the GP. If t_pred is not specified, then t_pred = t_obs.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. These values are used as input to the GP. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- t_predarray_like, optional
List of times in MJD on which to evalute the model. If t_pred is not specified, then t_pred = t_obs.
- Returns:
- mag_modelarray_like
Magnitude of the unresolved microlensing event at t_obs.
- get_resolved_amplification(t)
Get the photometric amplification term at a set of times, t for both the plus and minus images. No parallax is included. The returned tuple has two entries: (A_plus, A_minus), each with len(t) arrays.
- Parameters:
- tarray_like
Array of times in MJD.DDD
- get_resolved_astrometry(t)
Get the relative RA and Dec astrometry for each of the two source images, which we label plus and minus. No parallax is included. The returned tuple has two entries: (xS_plus, xS_minus), each with [len(t), 2] arrays where the second dimension includes [RA, Dec] positions in arcsec.
- Parameters:
- tarray_like
Time (in MJD).
- Returns:
- (xS_plus, xS_minus)tuple of numpy arrays
xS_plus is the vector position of the plus image in arcsec with shape = [len(t), 2]
xS_minus is the vector position of the plus image in arcsec with shape = [len(t), 2]
- log_likely_astrometry(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the summed natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Lfloat
The ln(likelihood) summed over all astrometric measurements.
- log_likely_astrometry_each(t_obs, x_obs, y_obs, x_err_obs, y_err_obs, ast_filt_idx=0)
Get the natural log of the likelihood for the input astrometric data in the specified filter or data sets. Note, this function eturns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- x_obsarray_like
List of relative R.A. astrometric positions on the sky in arcsec. Length must match t_obs.
- y_obsarray_like
List of relative Dec. astrometric positions on the sky in arcsec. Length must match t_obs.
- x_err_obsarray_like
List of relative R.A. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- y_err_obsarray_like
List of relative Dec. astrometric positional errors on the sky in arcsec. Length must match t_obs.
- ast_filt_idxint, optional
Index of the astrometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each astrometric measurement.
- log_likely_photometry(t_obs, mag_obs, mag_err_obs, filt_index=0)
For models that include a Gaussian Process, get the summed natural log of the likelihood for the input photometric data for the specified filter or data set. Note, this function returns the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Lfloat
ln(likelihood) summed over the photometric measurement
Note
The GP will only be used for filters where use_gp_phot[filt_index] = True.
- log_likely_photometry_each(t_obs, mag_obs, mag_err_obs, filt_index=0)
Get the natural log of the likelihood for the input photometric data in the specified filter or data sets. Note, this function returns a list and it is the full ln(likelihood), including the normalization constant.
- Parameters:
- t_obsarray_like
List of times in MJD for the observations.
- mag_obsarray_like
List of observed photometric measurements of the microlensing event in magnitudes. Length must be the same as t_obs.
- mag_obs_errarray_like
List of observed photometric uncertainties of the microlensing event in magnitudes. Length must be the same as t_obs.
- filt_idxint, optional
Index of the photometric filter or data set.
- Returns:
- ln_Larray_like
List of ln(likelihood) for each photometric measurement.