benchmarking
Module for preparing the benchmark test as used in Lubin et al. 2025.
- astroq.benchmarking.build_toy_model_from_paper(ns, hours_per_program=80, plot=False)[source]
Generate the nominal set of requests used for performance testing in Lubin et al. 2025.
- Parameters:
ns (int) – the number of slots needed to complete each of the single shot observations in program 6. In the paper we start with 12, and work down to increase complexity.
hours_per_program (float) – the total number of hours to allocate to each program. In the paper, this is 80 hours.
plot (bool) – True to create a simple plot of the requests’ locations on the sky.
- Returns:
a DataFrame with the request information, equivalent to the requests.csv file.
- Return type:
requests_data (pandas DataFrame)
- astroq.benchmarking.getDec(maxDec=90, minDec=-20)[source]
Randomly draw a declination from cosine i distribution between two values. The default min/max declination values are chosen based on favorable viewing from Hawaii.
- Parameters:
maxDec (float) – the maximum declination (degrees) to draw from
minDec (float) – the minimum declination (degrees) to draw from
- Returns:
the randomly drawn declination
- Return type:
dec (float)
- astroq.benchmarking.stars_in_program(program, total_hours)[source]
Determine how many stars should be in a program based on that program’s observing strategy and its awarded time.
- Parameters:
program (list) – a list containing the strategy of all stars in the program [tau_inter, t_exp [seconds], n_inter_max, n_intra_max]
total_hours (float) – the total number of hours to allocate to the program.
- Returns:
the number of stars to allocate to the program
- Return type:
n_stars (int)