gravelamps.lensing.millilensing

Millilensing Model Agnostic Functions

Following are functions performing calculations for a mililensing system using a phenomenological model-agnostic approach reliant only on the lensing observables.

Written by Ania Liu 2022

Routines

gather_parameter_lists

Gathers lens parameters into lists

get_lens_parameters

Generates required parameters based on waveform arguments

frequency_to_dimensionless_frequency

Conversion from frequencies to dimensionless frequencies in model agnostic fashion

amplification_factor

Computs the amplification factor for the given parameters

Functions

gather_parameter_lists(lens_parameters, parameters)

Gathers lens parameters into lists

get_lens_parameters(waveform_arguments)

Generates required parameters based on waveform arguments

frequency_to_dimensionless_frequency(frequency_array)

Conversion of frequencies to dimensionless frequencies in model agnostic fashion

amplification_factor(frequency_array, ...)

Computes the amplification factor for the given parameters.

Module Contents

gravelamps.lensing.millilensing.gather_parameter_lists(lens_parameters, parameters)

Gathers lens parameters into lists

This gathers the image times, lumionsity distances, and morse phases of the individual millisignals into lists of each of these for management. This is done in time ordering

Parameters:
lens_parameterslist of strings

Every lensing observable that is needed for the total millilensing signal

parametersdict

Contains values for each of the specified parameters above

Returns:
image_timeslist of floats

Image time delay values as compared to first image

luminosity_distanceslist of floats

Luminosity distances to millisignals

phaseslist of floats

Phases of each millisignal

gravelamps.lensing.millilensing.get_lens_parameters(waveform_arguments)

Generates required parameters based on waveform arguments

The waveform arguments specify a number of signals, this will generate the required parameter names for each millisignal — each needs a luminosty distance, time delay, and phase. The first signal requires only the phase. It’s luminosity distance is in the main parameter list, and time delays are measured relative to the first image.

Parameters:
waveform_arugmentsdict

Contains arguments for the waveform generation

Returns:
lens_parameterslist of strings

Every lensing observable that is needed for the total millilensing signal

gravelamps.lensing.millilensing.frequency_to_dimensionless_frequency(frequency_array)

Conversion of frequencies to dimensionless frequencies in model agnostic fashion

Parameters:
frequency_arrayArray of floats

Frequencies of interest

Returns:
dimensionless_frequency_arrayArray of floats

Dimensionless form of the input frequencies from model agnostic conversion

gravelamps.lensing.millilensing.amplification_factor(frequency_array, number_of_images, image_times, luminosity_distances, morse_phases)

Computes the amplification factor for the given parameters.

The total amplification of a millilensing signal is given as the individual amplifications from each image (or millisignal) contributing. The number of these must be specified and lensing observables given for each of the images in question.

Parameters:
frequency_arrayArray of floats

Frequencies to be amplified

number_of_imagesfloat

The total number of millisignals that comprise the total amplification

image_timesArray of floats

Time delays between millisignals relative to the first image

luminosity_distancefloat

Luminosity distance to the source

luminosity_distancesArray of floats

Effective luminosity distances of the signals

morse_phasesArray of floats

Morse factor of each millisignal

Returns:
amplification_factor_arrayArray of floats

Values of the amplification factor over the specified frequencies