Fix "in bank" panels
On the dashboard several panels show results based on which injections are "in bank", determined by mass and spin boundaries. But this is broken for anything other than GstLAL AllSky, and I don't like the idea of having to manually update it for other searches. A few ideas to fix this:
Do something similar to how the main analysis dashboard chooses a FAR trials factor, ie using a cgi script based on the analysis / database name
- set up a cgi script to take in the analysis name or database name as input
- based on that, determine what the bank bounds are (ie "jacob" or "edward" in the name --> allsky bounds, "alice" or "ew" in the name --> early warning bounds, etc)
- return some strings to be used in queries, eg for AllSky
(("sim_mass1" < 3.0 AND "sim_mass2" < 3.0 )
OR
("sim_mass1" + "sim_mass2" <= 400 AND "sim_mass1" >= 3.0 AND "sim_spin1z" < 0.99 AND "sim_spin1z" > -0.99 AND "sim_mass2" < 3.0 AND "sim_mass1" / "sim_mass2" <= 20)
OR
("sim_mass1" + "sim_mass2" <= 400 AND "sim_mass1" >= 3.0 AND "sim_spin1z" < 0.99 AND "sim_spin1z" > -0.99 AND "sim_mass2" >= 3.0 AND "sim_spin2z" < 0.99 AND "sim_spin2z" > -0.99 AND "injchi_p" < 0.001 AND "sim_mass1" / "sim_mass2" <= 20)))
The downside of this is "guessing" bank bounds based on database names which may not work outside of production where database names aren't determinate. The other option that I could think of is to have a section in the config for users to define bank bounds at test suite start up, then add a target to the Makefile to generate a grafana dashboard template with these "in bank" strings defined as variables to be used in queries. Users could then upload that dashboard template to Grafana to use for their own test suite dashboard.
Both options might be good to explore or may go hand in hand.