Two extreme scenarios for post-S5 running have been explored for two extremes in assumptions about supernova waveform strength. The first scenario is the default baseline which maximizes speed to transatlantic coincidence for both ELIGO/Virgo+ and AdLIGO/AdVirgo running. The second scenario instead increases supernova coverage by staggering Virgo running/commissioning to cover gaps in H1/L1 running. Five intervals spanning 10 years from October 2007 to September 2017 have been treated separately.
The pessimistic assumption for supernova waveform strength is based on the presentation by Patrice Hello on H1/H2/L1/G1 sensitivity to Zwerger-Muller waveforms, using a representative waveform from that collection. The optimistic assumption merely multiplies that waveform strength by 10, giving a hundredfold increase in energy radiated.
A crude model of the galactic distribution of supernova events has been used: a thin disk of radius 10 kpc and an exponential distribution along the perpendicular direction, with scale height of 100 pc. The Sun has been placed at a radius of 8.5 kpc from the galactic center on the mid-plane of the disk. The average supernova rate is taken to be once per 30 years in that disk.
The efficiency for the waveform has been taken to be a simple sigmoid function in log(hrss) which is converted to a reversed sigmoid in log(dist). The form is effic = 1 / [1+(dist/dist50)**alpha] where dist50 is the distance at which one has 50% efficiency for detection and alpha is an exponent that determines the sharpness of the transition from unity to zero efficiency. I have chosen alpha = 3.2, which gives a ratio of dist50/dist90 = 2, qualitatively consistent with Patrice's efficiencies and with other broadband efficiency curves I've seen. (Choosing a much larger alpha gives a sharper cutoff and generally lowers average efficiency for fixed dist50.) Duty factors have been assumed for the different interferometers in keeping with past experience.
The fortran program used for this simulation can be found here, along with the detailed output files from the pessimistic and optimistic runs. More details on model assumptions can be found in the program code.
The table below gives the executive summary in the form of cumulative probabilities at the ends of intervals for detecting or missing a supernova, where detection here can be by a single IFO in coincidence with a neutrino trigger (taken to have 100% efficiency). Although three significant digits are shown here for some probabilities, the systematic uncertainties in the modeling are, of course, more significant.
| Cumulative probabilities to detect / miss* supernovae | ||||
| Pessimistic waveform | Optimistic waveform | |||
| Interval | Max speed | Max coverage | Max speed | Max coverage |
| Oct 2007 - Dec 2007 | 0.000 / 0.008 | 0.001 / 0.007 | 0.002 / 0.006 | 0.007 / 0.001 |
| Jan 2008 - May 2009 | 0.006 / 0.048 | 0.013 / 0.041 | 0.035 / 0.019 | 0.051 / 0.003 |
| Jun 2009 - Jan 2011 | 0.059 / 0.046 | 0.062 / 0.043 | 0.087 / 0.018 | 0.102 / 0.003 |
| Feb 2011 - Jan 2015 | 0.083 / 0.134 | 0.152 / 0.065 | 0.194 / 0.023 | 0.213 / 0.004 |
| Feb 2015 - Sep 2017 | 0.161 / 0.123 | 0.224 / 0.060 | 0.262 / 0.021 | 0.280 / 0.004 |
Observations:
*The cumulative "detect probability" refers to detecting any supernova. The cumulative "miss probability" refers to missing all supernovae that occur. The former increases with time, but the latter can decrease with time.
Two Extreme Scenarios (back to text)
* Scenario 1 - Maximize speed to triple-coincidence H1E/L1E/V1P
* Oct 2007 - Dec 2007 G1
* Jan 2008 - May 2009 H2W + G1
* Jun 2009 - Jan 2011 H1E + L1E + H2 + V1P
* Feb 2011 - Jan 2015 G1H
* Feb 2015 - Sep 2017 H1A + H2A + L1A + V1A
* Scenario 2 - Minimize blindness for 3 most sensitive interferometers
* Oct 2007 - Dec 2007 V1 + G1
* Jan 2008 - May 2009 V1 + H2W + G1
* Jun 2009 - Jan 2011 H1E + L1E + H2
* Feb 2011 - Jan 2015 V1P + G1H
* Feb 2015 - Sep 2017 H1A + H2A + L1A
* Definitions of IFO labels:
* H1 = H1 at S5 sensitivity with 85% duty factor
* H2 = H2 at S5 sensitivity with 85% duty factor
* L1 = L1 at S5 sensitivity with 85% duty factor
* G1 = G1 at S5 sensitivity with 95% duty factor
* V1 = V1 at S5 sensitivity with 85% duty factor
* H2W = H2 at S5 sensitivity with 70% duty factor (astroWatch)
* H1E = H1 at optimistic Eligo sensitivity (=H1/2) with 85% duty factor
* L1E = L1 at optimistic Eligo sensitivity (=L1/2) with 85% duty factor
* V1P = V1 at Virgo+ sensitivity (taken optimistically to be same as H1E/L1E) with 85% duty factor
* G1H = G1 with high-frequency option (taken optimistically to be same as H2 for supernovae) with 90% duty factor
* H1A = H1 at Advanced LIGO sensitivity (taken optimistically to be H1/15)
* H2A = H2 at Advanced LIGO sensitivity (taken optimistically to be H1/15)
* L1A = L1 at Advanced LIGO sensitivity (taken optimistically to be L1/15)
* V1A = V1 at Advanced Virgo sensitivity (taken optimistically to be H1A)
Pessimistic Scenario (back to text)
Assuming pessimistic waveform strengths
IFO 1: H1 - H1 at S5 sensitivity
-> SN range(50%) = 9.1 kpc and duty factor = 0.85 -> Efficiency = 0.404
IFO 2: H2 - H2 at S5 sensitivity
-> SN range(50%) = 4.9 kpc and duty factor = 0.85 -> Efficiency = 0.183
IFO 3: L1 - L1 at S5 sensitivity
-> SN range(50%) = 9.1 kpc and duty factor = 0.85 -> Efficiency = 0.404
IFO 4: G1 - G1 at S5 sensitivity
-> SN range(50%) = 0.6 kpc and duty factor = 0.95 -> Efficiency = 0.006
IFO 5: V1 - V1 at S5 sensitivity
-> SN range(50%) = 4.0 kpc and duty factor = 0.85 -> Efficiency = 0.136
IFO 6: H2W - H2 (astroWatch) at S5 sensitivity with 60% duty factor
-> SN range(50%) = 4.9 kpc and duty factor = 0.60 -> Efficiency = 0.129
IFO 7: H1E - H1 at ELIGO sensitivity
-> SN range(50%) = 18.2 kpc and duty factor = 0.85 -> Efficiency = 0.702
IFO 8: L1E - L1 at ELIGO sensitivity
-> SN range(50%) = 18.2 kpc and duty factor = 0.85 -> Efficiency = 0.702
IFO 9: V1P - V1 at VIRGO+ sensitivity (taken same as ELIGO)
-> SN range(50%) = 18.2 kpc and duty factor = 0.85 -> Efficiency = 0.702
IFO 10: G1H - G1 in high-frequency configuration
-> SN range(50%) = 4.9 kpc and duty factor = 0.95 -> Efficiency = 0.205
IFO 11: H1A - H1 at Advanced LIGO sensitivity
-> SN range(50%) = 136.5 kpc and duty factor = 0.85 -> Efficiency = 0.850
IFO 12: H2A - H2 at Advanced LIGO sensitivity
-> SN range(50%) = 136.5 kpc and duty factor = 0.85 -> Efficiency = 0.850
IFO 13: L1A - L1 at Advanced LIGO sensitivity
-> SN range(50%) = 136.5 kpc and duty factor = 0.85 -> Efficiency = 0.850
IFO 14: V1A - V1 at Advanced Virgo sensitivity
-> SN range(50%) = 136.5 kpc and duty factor = 0.85 -> Efficiency = 0.850
Results for scenario 1: Minimize time to ELIGO and ADLIGO/ADVirgo
Interval 1: Oct 2007 - Dec 2007
Probability of supernova occurrence = 0.0083 cum. prob = 0.0083
IFOs active: G1
SN effics: 0.006
Effic to completely miss SN = 0.994
Effic to catch SN with at least one IFO=0.006
Prob to completely miss SN = 0.008
Prob to catch SN with at least one IFO =0.000
Cum prob to miss SN = 0.008
Cum prob to catch SN = 0.000
Interval 2: Jan 2008 - May 2009
Probability of supernova occurrence = 0.0461 cum. prob = 0.0540
IFOs active: H2W G1
SN effics: 0.129 0.006
Effic to completely miss SN = 0.865
Effic to catch SN with at least one IFO=0.135
Prob to completely miss SN = 0.040
Prob to catch SN with at least one IFO =0.006
Cum prob to miss SN = 0.048
Cum prob to catch SN = 0.006
Interval 3: Jun 2009 - Jan 2011
Probability of supernova occurrence = 0.0540 cum. prob = 0.1052
IFOs active: H1E L1E H2 V1P
SN effics: 0.702 0.702 0.183 0.702
Effic to completely miss SN = 0.022
Effic to catch SN with at least one IFO=0.978
Prob to completely miss SN = 0.001
Prob to catch SN with at least one IFO =0.053
Cum prob to miss SN = 0.046
Cum prob to catch SN = 0.059
Interval 4: Feb 2011 - Jan 2015
Probability of supernova occurrence = 0.1248 cum. prob = 0.2169
IFOs active: G1H
SN effics: 0.205
Effic to completely miss SN = 0.795
Effic to catch SN with at least one IFO=0.205
Prob to completely miss SN = 0.099
Prob to catch SN with at least one IFO =0.026
Cum prob to miss SN = 0.134
Cum prob to catch SN = 0.083
Interval 5: Feb 2015 - Sep 2017
Probability of supernova occurrence = 0.0851 cum. prob = 0.2835
IFOs active: H1A H2A L1A V1A
SN effics: 0.850 0.850 0.850 0.850
Effic to completely miss SN = 0.001
Effic to catch SN with at least one IFO=0.999
Prob to completely miss SN = 0.000
Prob to catch SN with at least one IFO =0.085
Cum prob to miss SN = 0.123
Cum prob to catch SN = 0.161
Results for scenario 2: Maximize supernova coverage
Interval 1: Oct 2007 - Dec 2007
Probability of supernova occurrence = 0.0083 cum. prob = 0.0083
IFOs active: V1 G1
SN effics: 0.136 0.006
Effic to completely miss SN = 0.858
Effic to catch SN with at least one IFO=0.142
Prob to completely miss SN = 0.007
Prob to catch SN with at least one IFO =0.001
Cum prob to miss SN = 0.007
Cum prob to catch SN = 0.001
Interval 2: Jan 2008 - May 2009
Probability of supernova occurrence = 0.0461 cum. prob = 0.0540
IFOs active: V1 H2W G1
SN effics: 0.136 0.129 0.006
Effic to completely miss SN = 0.747
Effic to catch SN with at least one IFO=0.253
Prob to completely miss SN = 0.034
Prob to catch SN with at least one IFO =0.012
Cum prob to miss SN = 0.041
Cum prob to catch SN = 0.013
Interval 3: Jun 2009 - Jan 2011
Probability of supernova occurrence = 0.0540 cum. prob = 0.1052
IFOs active: H1E L1E H2
SN effics: 0.702 0.702 0.183
Effic to completely miss SN = 0.072
Effic to catch SN with at least one IFO=0.928
Prob to completely miss SN = 0.004
Prob to catch SN with at least one IFO =0.050
Cum prob to miss SN = 0.043
Cum prob to catch SN = 0.062
Interval 4: Feb 2011 - Jan 2015
Probability of supernova occurrence = 0.1248 cum. prob = 0.2169
IFOs active: V1P G1H
SN effics: 0.702 0.205
Effic to completely miss SN = 0.237
Effic to catch SN with at least one IFO=0.763
Prob to completely miss SN = 0.030
Prob to catch SN with at least one IFO =0.095
Cum prob to miss SN = 0.065
Cum prob to catch SN = 0.152
Interval 5: Feb 2015 - Sep 2017
Probability of supernova occurrence = 0.0851 cum. prob = 0.2835
IFOs active: H1A H2A L1A
SN effics: 0.850 0.850 0.850
Effic to completely miss SN = 0.003
Effic to catch SN with at least one IFO=0.997
Prob to completely miss SN = 0.000
Prob to catch SN with at least one IFO =0.085
Cum prob to miss SN = 0.060
Cum prob to catch SN = 0.224
Optimistic Scanerio (back to text)
Assuming optimistic waveform strengths
IFO 1: H1 - H1 at S5 sensitivity
-> SN range(50%) = 91.0 kpc and duty factor = 0.85 -> Efficiency = 0.849
IFO 2: H2 - H2 at S5 sensitivity
-> SN range(50%) = 49.0 kpc and duty factor = 0.85 -> Efficiency = 0.841
IFO 3: L1 - L1 at S5 sensitivity
-> SN range(50%) = 91.0 kpc and duty factor = 0.85 -> Efficiency = 0.849
IFO 4: G1 - G1 at S5 sensitivity
-> SN range(50%) = 6.0 kpc and duty factor = 0.95 -> Efficiency = 0.270
IFO 5: V1 - V1 at S5 sensitivity
-> SN range(50%) = 40.0 kpc and duty factor = 0.85 -> Efficiency = 0.833
IFO 6: H2W - H2 (astroWatch) at S5 sensitivity with 60% duty factor
-> SN range(50%) = 49.0 kpc and duty factor = 0.60 -> Efficiency = 0.594
IFO 7: H1E - H1 at ELIGO sensitivity
-> SN range(50%) = 182.0 kpc and duty factor = 0.85 -> Efficiency = 0.850
IFO 8: L1E - L1 at ELIGO sensitivity
-> SN range(50%) = 182.0 kpc and duty factor = 0.85 -> Efficiency = 0.850
IFO 9: V1P - V1 at VIRGO+ sensitivity (taken same as ELIGO)
-> SN range(50%) = 182.0 kpc and duty factor = 0.85 -> Efficiency = 0.850
IFO 10: G1H - G1 in high-frequency configuration
-> SN range(50%) = 49.0 kpc and duty factor = 0.95 -> Efficiency = 0.940
IFO 11: H1A - H1 at Advanced LIGO sensitivity
-> SN range(50%) = 1365.0 kpc and duty factor = 0.85 -> Efficiency = 0.850
IFO 12: H2A - H2 at Advanced LIGO sensitivity
-> SN range(50%) = 1365.0 kpc and duty factor = 0.85 -> Efficiency = 0.850
IFO 13: L1A - L1 at Advanced LIGO sensitivity
-> SN range(50%) = 1365.0 kpc and duty factor = 0.85 -> Efficiency = 0.850
IFO 14: V1A - V1 at Advanced Virgo sensitivity
-> SN range(50%) = 1365.0 kpc and duty factor = 0.85 -> Efficiency = 0.850
Results for scenario 1: Minimize time to ELIGO and ADLIGO/ADVirgo
Interval 1: Oct 2007 - Dec 2007
Probability of supernova occurrence = 0.0083 cum. prob = 0.0083
IFOs active: G1
SN effics: 0.270
Effic to completely miss SN = 0.730
Effic to catch SN with at least one IFO=0.270
Prob to completely miss SN = 0.006
Prob to catch SN with at least one IFO =0.002
Cum prob to miss SN = 0.006
Cum prob to catch SN = 0.002
Interval 2: Jan 2008 - May 2009
Probability of supernova occurrence = 0.0461 cum. prob = 0.0540
IFOs active: H2W G1
SN effics: 0.594 0.270
Effic to completely miss SN = 0.297
Effic to catch SN with at least one IFO=0.703
Prob to completely miss SN = 0.014
Prob to catch SN with at least one IFO =0.032
Cum prob to miss SN = 0.019
Cum prob to catch SN = 0.035
Interval 3: Jun 2009 - Jan 2011
Probability of supernova occurrence = 0.0540 cum. prob = 0.1052
IFOs active: H1E L1E H2 V1P
SN effics: 0.850 0.850 0.841 0.850
Effic to completely miss SN = 0.001
Effic to catch SN with at least one IFO=0.999
Prob to completely miss SN = 0.000
Prob to catch SN with at least one IFO =0.054
Cum prob to miss SN = 0.018
Cum prob to catch SN = 0.087
Interval 4: Feb 2011 - Jan 2015
Probability of supernova occurrence = 0.1248 cum. prob = 0.2169
IFOs active: G1H
SN effics: 0.940
Effic to completely miss SN = 0.060
Effic to catch SN with at least one IFO=0.940
Prob to completely miss SN = 0.007
Prob to catch SN with at least one IFO =0.117
Cum prob to miss SN = 0.023
Cum prob to catch SN = 0.194
Interval 5: Feb 2015 - Sep 2017
Probability of supernova occurrence = 0.0851 cum. prob = 0.2835
IFOs active: H1A H2A L1A V1A
SN effics: 0.850 0.850 0.850 0.850
Effic to completely miss SN = 0.001
Effic to catch SN with at least one IFO=0.999
Prob to completely miss SN = 0.000
Prob to catch SN with at least one IFO =0.085
Cum prob to miss SN = 0.021
Cum prob to catch SN = 0.262
Results for scenario 2: Maximize supernova coverage
Interval 1: Oct 2007 - Dec 2007
Probability of supernova occurrence = 0.0083 cum. prob = 0.0083
IFOs active: V1 G1
SN effics: 0.833 0.270
Effic to completely miss SN = 0.122
Effic to catch SN with at least one IFO=0.878
Prob to completely miss SN = 0.001
Prob to catch SN with at least one IFO =0.007
Cum prob to miss SN = 0.001
Cum prob to catch SN = 0.007
Interval 2: Jan 2008 - May 2009
Probability of supernova occurrence = 0.0461 cum. prob = 0.0540
IFOs active: V1 H2W G1
SN effics: 0.833 0.594 0.270
Effic to completely miss SN = 0.049
Effic to catch SN with at least one IFO=0.951
Prob to completely miss SN = 0.002
Prob to catch SN with at least one IFO =0.044
Cum prob to miss SN = 0.003
Cum prob to catch SN = 0.051
Interval 3: Jun 2009 - Jan 2011
Probability of supernova occurrence = 0.0540 cum. prob = 0.1052
IFOs active: H1E L1E H2
SN effics: 0.850 0.850 0.841
Effic to completely miss SN = 0.004
Effic to catch SN with at least one IFO=0.996
Prob to completely miss SN = 0.000
Prob to catch SN with at least one IFO =0.054
Cum prob to miss SN = 0.003
Cum prob to catch SN = 0.102
Interval 4: Feb 2011 - Jan 2015
Probability of supernova occurrence = 0.1248 cum. prob = 0.2169
IFOs active: V1P G1H
SN effics: 0.850 0.940
Effic to completely miss SN = 0.009
Effic to catch SN with at least one IFO=0.991
Prob to completely miss SN = 0.001
Prob to catch SN with at least one IFO =0.124
Cum prob to miss SN = 0.004
Cum prob to catch SN = 0.213
Interval 5: Feb 2015 - Sep 2017
Probability of supernova occurrence = 0.0851 cum. prob = 0.2835
IFOs active: H1A H2A L1A
SN effics: 0.850 0.850 0.850
Effic to completely miss SN = 0.003
Effic to catch SN with at least one IFO=0.997
Prob to completely miss SN = 0.000
Prob to catch SN with at least one IFO =0.085
Cum prob to miss SN = 0.004
Cum prob to catch SN = 0.280
Fortran Program (back to text)
* Program to compare probabilities of detection under different
* run planning scenarios for the 10-year period Oct 2007 - Sept 2017
* Scenario 1 - Maximize speed to triple-coincidence H1E/L1E/V1P
* Oct 2007 - Dec 2007 G1
* Jan 2008 - May 2009 H2W + G1
* Jun 2009 - Jan 2011 H1E + L1E + H2 + V1P
* Feb 2011 - Jan 2015 G1H
* Feb 2015 - Sep 2017 H1A + H2A + L1A + V1A
* Scenario 2 - Minimize blindness for 3 most sensitive interferometers
* Oct 2007 - Dec 2007 V1 + G1
* Jan 2008 - May 2009 V1 + H2W + G1
* Jun 2009 - Jan 2011 H1E + L1E + H2
* Feb 2011 - Jan 2015 V1P + G1H
* Feb 2015 - Sep 2017 H1A + H2A + L1A
* Definitions of IFO labels:
* H1 = H1 at S5 sensitivity with 85% duty factor
* H2 = H2 at S5 sensitivity with 85% duty factor
* L1 = L1 at S5 sensitivity with 85% duty factor
* G1 = G1 at S5 sensitivity with 95% duty factor
* V1 = V1 at S5 sensitivity with 85% duty factor
* H2W = H2 at S5 sensitivity with 70% duty factor (astroWatch)
* H1E = H1 at optimistic Eligo sensitivity (=H1/2) with 85% duty factor
* L1E = L1 at optimistic Eligo sensitivity (=L1/2) with 85% duty factor
* V1P = V1 at Virgo+ sensitivity (taken optimistically to be same as H1E/L1E) with 85% duty factor
* G1H = G1 with high-frequency option (taken optimistically to be same as H2 for supernovae) with 90% duty factor
* H1A = H1 at Advanced LIGO sensitivity (taken optimistically to be H1/15)
* H2A = H2 at Advanced LIGO sensitivity (taken optimistically to be H1/15)
* L1A = L1 at Advanced LIGO sensitivity (taken optimistically to be L1/15)
* V1A = V1 at Advanced Virgo sensitivity (taken optimistically to be H1A)
implicit none
integer NMAX_SCENARIO, NMAX_INTERVAL, NMAX_IFOTYPE
parameter (NMAX_SCENARIO=10, NMAX_INTERVAL=10, NMAX_IFOTYPE=15)
integer nifo_interval_scenario(NMAX_INTERVAL,NMAX_SCENARIO)
character*3 label_ifo_interval_scenario(NMAX_IFOTYPE,
+ NMAX_INTERVAL,NMAX_SCENARIO)
integer index_ifo_interval_scenario(NMAX_IFOTYPE,
+ NMAX_INTERVAL,NMAX_SCENARIO)
character*60 label_interval(NMAX_INTERVAL)
character*60 label_scenario(NMAX_SCENARIO)
integer nmonth_interval(NMAX_INTERVAL)
double precision probsn_interval(NMAX_INTERVAL)
double precision cumprobsn_interval(NMAX_INTERVAL)
double precision probmiss,probcatch,cumprobmiss,cumprobcatch
integer model
double precision range,range50,rgalaxy,rsun,effic,height
logical test,optimistic
double precision getSNeffic
integer nscenario, nifotype, ifotype, ninterval, interval, index,
+ scenario, ifo, nifo
character*3 ifo_label(NMAX_IFOTYPE),label
character*60 ifo_description(NMAX_IFOTYPE)
double precision ifo_sn_range50_kpc(NMAX_IFOTYPE)
double precision ifo_cbc_range_mpc(NMAX_IFOTYPE)
double precision ifo_dutyfactor(NMAX_IFOTYPE)
double precision efficSNifo(NMAX_IFOTYPE),efficmiss,efficcatch
*00000000111111111122222222223333333333444444444455555555556666666666777
*23456789012345678901234567890123456789012345678901234567890123456789012
* IFO definitions
* Note: range50 values for H1 and H2 taken from Patrice's seminar numbers as follows:
*
* Patrice quotes H2 hrss_50% = 4.29E-22 and hrss_90% = 6.70E-22 with 90% (optimal orientation) r90 = 7 kpc
*
* To get r50 with average orientation, I use r50 = 7 kpc / sqrt(5) * (6.70/4.29) = 4.9 kpc
*
*
* Patrice quotes H1 hrss_50% = 2.30E-22 and hrss_90% = 4.10E-22
*
* To get r50 with average orientation, I use r50 = 4.9 kpc * (4.29/2.30) = 9.1 kpc
*
*
* Patrice quotes L1 hrss_50% = 2.88E-22 and hrss_90% = 3.13E-22
*
* But the fitted curve is suspect. So I will just take r50 to be the saem as for H1 = 9.1 kpc
*
*
* Patrice quotes G1 r90 = 0.9 kpc (optimal orientation)
*
* I will scale from H2 to get r50 = 4.9 kpc * (0.9/7) = 0.6 kpc
*
* I will assume V1 is comparable to H2 for supernovae
nifotype = 1
ifo_label(nifotype) = "H1"
ifo_description(nifotype) = "H1 at S5 sensitivity"
ifo_sn_range50_kpc(nifotype) = 9.1
ifo_cbc_range_mpc(nifotype) = 15.
ifo_dutyfactor(nifotype) = 0.85
nifotype = nifotype + 1
ifo_label(nifotype) = "H2"
ifo_description(nifotype) = "H2 at S5 sensitivity"
ifo_sn_range50_kpc(nifotype) = 4.9
ifo_cbc_range_mpc(nifotype) = 7.
ifo_dutyfactor(nifotype) = 0.85
nifotype = nifotype + 1
ifo_label(nifotype) = "L1"
ifo_description(nifotype) = "L1 at S5 sensitivity"
ifo_sn_range50_kpc(nifotype) = 9.1
ifo_cbc_range_mpc(nifotype) = 15.
ifo_dutyfactor(nifotype) = 0.85
nifotype = nifotype + 1
ifo_label(nifotype) = "G1"
ifo_description(nifotype) = "G1 at S5 sensitivity"
ifo_sn_range50_kpc(nifotype) = 0.6
ifo_cbc_range_mpc(nifotype) = 1.3
ifo_dutyfactor(nifotype) = 0.95
nifotype = nifotype + 1
ifo_label(nifotype) = "V1"
ifo_description(nifotype) = "V1 at S5 sensitivity"
ifo_sn_range50_kpc(nifotype) = 4.
ifo_cbc_range_mpc(nifotype) = 3.5
ifo_dutyfactor(nifotype) = 0.85
nifotype = nifotype + 1
ifo_label(nifotype) = "H2W"
ifo_description(nifotype)
+ = "H2 (astroWatch) at S5 sensitivity with 60% duty factor"
ifo_sn_range50_kpc(nifotype) = 4.9
ifo_cbc_range_mpc(nifotype) = 7.
ifo_dutyfactor(nifotype) = 0.60
nifotype = nifotype + 1
ifo_label(nifotype) = "H1E"
ifo_description(nifotype) = "H1 at ELIGO sensitivity"
ifo_sn_range50_kpc(nifotype) = 18.2
ifo_cbc_range_mpc(nifotype) = 30.
ifo_dutyfactor(nifotype) = 0.85
nifotype = nifotype + 1
ifo_label(nifotype) = "L1E"
ifo_description(nifotype) = "L1 at ELIGO sensitivity"
ifo_sn_range50_kpc(nifotype) = 18.2
ifo_cbc_range_mpc(nifotype) = 30.
ifo_dutyfactor(nifotype) = 0.85
nifotype = nifotype + 1
ifo_label(nifotype) = "V1P"
ifo_description(nifotype)
+ = "V1 at VIRGO+ sensitivity (taken same as ELIGO)"
ifo_sn_range50_kpc(nifotype) = 18.2
ifo_cbc_range_mpc(nifotype) = 30.
ifo_dutyfactor(nifotype) = 0.85
nifotype = nifotype + 1
ifo_label(nifotype) = "G1H"
ifo_description(nifotype) = "G1 in high-frequency configuration"
ifo_sn_range50_kpc(nifotype) = 4.9
ifo_cbc_range_mpc(nifotype) = 1.3
ifo_dutyfactor(nifotype) = 0.95
nifotype = nifotype + 1
ifo_label(nifotype) = "H1A"
ifo_description(nifotype) = "H1 at Advanced LIGO sensitivity"
ifo_sn_range50_kpc(nifotype) = 136.5
ifo_cbc_range_mpc(nifotype) = 225.
ifo_dutyfactor(nifotype) = 0.85
nifotype = nifotype + 1
ifo_label(nifotype) = "H2A"
ifo_description(nifotype) = "H2 at Advanced LIGO sensitivity"
ifo_sn_range50_kpc(nifotype) = 136.5
ifo_cbc_range_mpc(nifotype) = 225.
ifo_dutyfactor(nifotype) = 0.85
nifotype = nifotype + 1
ifo_label(nifotype) = "L1A"
ifo_description(nifotype) = "L1 at Advanced LIGO sensitivity"
ifo_sn_range50_kpc(nifotype) = 136.5
ifo_cbc_range_mpc(nifotype) = 225.
ifo_dutyfactor(nifotype) = 0.85
nifotype = nifotype + 1
ifo_label(nifotype) = "V1A"
ifo_description(nifotype) = "V1 at Advanced Virgo sensitivity"
ifo_sn_range50_kpc(nifotype) = 136.5
ifo_cbc_range_mpc(nifotype) = 225.
ifo_dutyfactor(nifotype) = 0.85
* Set optimistic true/false (do/don't scale up range50 by factor of 10)
* optimistic = .true.
optimistic = .false.
if (optimistic) then
do ifo = 1, nifotype
ifo_sn_range50_kpc(ifo) = ifo_sn_range50_kpc(ifo) * 10.
enddo
write(6,*)' Assuming optimistic waveform strengths'
else
write(6,*)' Assuming pessimistic waveform strengths'
endif
*00000000111111111122222222223333333333444444444455555555556666666666777
*23456789012345678901234567890123456789012345678901234567890123456789012
* Define scenarios and intervals
nscenario = 2
label_scenario(1) = "Minimize time to ELIGO and ADLIGO/ADVirgo"
label_scenario(2) = "Maximize supernova coverage"
ninterval = 1
nmonth_interval(ninterval) = 3
label_interval(ninterval) = "Oct 2007 - Dec 2007"
nifo_interval_scenario(ninterval,1) = 1
label_ifo_interval_scenario(1,ninterval,1) = "G1"
nifo_interval_scenario(ninterval,2) = 2
label_ifo_interval_scenario(1,ninterval,2) = "V1"
label_ifo_interval_scenario(2,ninterval,2) = "G1"
ninterval = ninterval + 1
nmonth_interval(ninterval) = 17
label_interval(ninterval) = "Jan 2008 - May 2009"
nifo_interval_scenario(ninterval,1) = 2
label_ifo_interval_scenario(1,ninterval,1) = "H2W"
label_ifo_interval_scenario(2,ninterval,1) = "G1"
nifo_interval_scenario(ninterval,2) = 3
label_ifo_interval_scenario(1,ninterval,2) = "V1"
label_ifo_interval_scenario(2,ninterval,2) = "H2W"
label_ifo_interval_scenario(3,ninterval,2) = "G1"
ninterval = ninterval + 1
nmonth_interval(ninterval) = 20
label_interval(ninterval) = "Jun 2009 - Jan 2011"
nifo_interval_scenario(ninterval,1) = 4
label_ifo_interval_scenario(1,ninterval,1) = "H1E"
label_ifo_interval_scenario(2,ninterval,1) = "L1E"
label_ifo_interval_scenario(3,ninterval,1) = "H2"
label_ifo_interval_scenario(4,ninterval,1) = "V1P"
nifo_interval_scenario(ninterval,2) = 3
label_ifo_interval_scenario(1,ninterval,2) = "H1E"
label_ifo_interval_scenario(2,ninterval,2) = "L1E"
label_ifo_interval_scenario(3,ninterval,2) = "H2"
ninterval = ninterval + 1
nmonth_interval(ninterval) = 48
label_interval(ninterval) = "Feb 2011 - Jan 2015"
nifo_interval_scenario(ninterval,1) = 1
label_ifo_interval_scenario(1,ninterval,1) = "G1H"
nifo_interval_scenario(ninterval,2) = 2
label_ifo_interval_scenario(1,ninterval,2) = "V1P"
label_ifo_interval_scenario(2,ninterval,2) = "G1H"
ninterval = ninterval + 1
nmonth_interval(ninterval) = 32
label_interval(ninterval) = "Feb 2015 - Sep 2017"
nifo_interval_scenario(ninterval,1) = 4
label_ifo_interval_scenario(1,ninterval,1) = "H1A"
label_ifo_interval_scenario(2,ninterval,1) = "H2A"
label_ifo_interval_scenario(3,ninterval,1) = "L1A"
label_ifo_interval_scenario(4,ninterval,1) = "V1A"
nifo_interval_scenario(ninterval,2) = 3
label_ifo_interval_scenario(1,ninterval,2) = "H1A"
label_ifo_interval_scenario(2,ninterval,2) = "H2A"
label_ifo_interval_scenario(3,ninterval,2) = "L1A"
* Obtain probabilities for supernova occurrence in the intervals
do interval = 1, ninterval
probsn_interval(interval) = 1.-exp(-nmonth_interval(interval)
+ /12./30.)
if (interval.eq.1) then
cumprobsn_interval(interval)
+ = probsn_interval(interval)
else
cumprobsn_interval(interval)
+ = 1.-(1.-cumprobsn_interval(interval-1))
+ *(1.-probsn_interval(interval))
endif
enddo
* Convert IFO labels to integer indices (why didn't I use TCL?)
do scenario = 1, nscenario
do interval = 1, ninterval
do ifo = 1, nifo_interval_scenario(interval,scenario)
label
+ = label_ifo_interval_scenario(ifo,interval,scenario)
index = 0
do ifotype = 1, nifotype
if (label.eq.ifo_label(ifotype))then
index = ifotype
endif
enddo
if (index.le.0) then
write(6,*)"Error: did not find label",label
stop
endif
index_ifo_interval_scenario(ifo,interval,scenario)
+ = index
enddo
enddo
enddo
* Compute supernova detection efficiencies for each IFO
model = 3
rgalaxy = 10.
height = 0.1
rsun = 8.5
do ifo = 1, nifotype
range50 = ifo_sn_range50_kpc(ifo)
efficSNifo(ifo) = getSNeffic(model,range50,rgalaxy,height,rsun)
+ *ifo_dutyfactor(ifo)
write(6,8)ifo,ifo_label(ifo),
+ ifo_description(ifo),ifo_sn_range50_kpc(ifo),
+ ifo_dutyfactor(ifo),efficSNifo(ifo)
8 format('IFO ',i2,': ',a3,' - ',a60/
+ ' -> SN range(50%) = ',f6.1,
+ ' kpc and duty factor = ',f4.2,' -> Efficiency = ',f5.3)
enddo
*********** Compute probabilities for detecting / missing supernovae
* Loop over scenarios
do scenario = 1, nscenario
write(6,10) scenario,label_scenario(scenario)
10 format(/"Results for scenario",i2,": ",a60)
* Loop over intervals
cumprobcatch = 0.
cumprobmiss = 0.
do interval = 1, ninterval
* Write out detector-independent info
write(6,15) interval,label_interval(interval),
+ probsn_interval(interval),
+ cumprobsn_interval(interval)
15 format(/" Interval",i2,": ",a60/
+ " Probability of supernova occurrence = ",f6.4,
+ " cum. prob = ",f6.4)
* Write out detector configuration
nifo = nifo_interval_scenario(interval,scenario)
write(6,16) (label_ifo_interval_scenario(ifo,interval,
+ scenario),ifo=1,nifo)
16 format(" IFOs active: ",10(1x,a3,2x))
write(6,17) (efficSNifo(index_ifo_interval_scenario(
+ ifo,interval,scenario)),ifo=1,nifo)
17 format(" SN effics: ",10(f5.3,1x))
* Compute and write out probabilities for detecting / missing supernovae
efficmiss = 1.
do ifo = 1, nifo
index = index_ifo_interval_scenario(ifo,interval,
+ scenario)
efficmiss = efficmiss * (1.-efficSNifo(index))
enddo
efficcatch = 1.-efficmiss
write(6,18) efficmiss,efficcatch
18 format(' Effic to completely miss SN = ',f5.3/
+ ' Effic to catch SN with at least one IFO=',f5.3)
probmiss = efficmiss * probsn_interval(interval)
probcatch = efficcatch * probsn_interval(interval)
write(6,19) probmiss,probcatch
19 format(' Prob to completely miss SN = ',f5.3/
+ ' Prob to catch SN with at least one IFO =',f5.3)
if (interval.eq.1) then
cumprobcatch = probcatch
else
cumprobcatch = 1. - (1.-cumprobcatch)*(1.-probcatch)
endif
cumprobmiss = cumprobsn_interval(interval)-cumprobcatch
write(6,20) cumprobmiss,cumprobcatch
20 format(' Cum prob to miss SN = ',f5.3/
+ ' Cum prob to catch SN = ',f5.3)
enddo
enddo
*00000000111111111122222222223333333333444444444455555555556666666666777
*23456789012345678901234567890123456789012345678901234567890123456789012
test = .false.
if(test)then
model = 3
if (model.eq.1) then
100 write(6,*)'Give range, Rgal, Rsun (kpc):'
read(5,*)range,rgalaxy,rsun
if (range.lt.0.) stop
effic = getSNeffic(model,range,rgalaxy,1.e-6,rsun)
write(6,*)'Efficiency=',effic
goto 100
else if(model.eq.2) then
200 write(6,*)'Give range, Rgal, H, Rsun (kpc):'
read(5,*)range,rgalaxy,height,rsun
if (range.lt.0.) stop
effic = getSNeffic(model,range,rgalaxy,height,rsun)
write(6,*)'Efficiency=',effic
goto 200
else if(model.eq.3) then
300 write(6,*)'Give range50, Rgal, H, Rsun (kpc):'
read(5,*)range50,rgalaxy,height,rsun
if (range.lt.0.) stop
effic = getSNeffic(model,range50,rgalaxy,height,rsun)
write(6,*)'Efficiency=',effic
goto 300
endif
endif
stop
end
*00000000111111111122222222223333333333444444444455555555556666666666777
*23456789012345678901234567890123456789012345678901234567890123456789012
double precision function
+ getSNeffic(model,range,rgalaxy,height,rsun)
* Function to return efficiency of detection for given range,
* galaxy radius, distance of sun from galaxy center, and various models:
*
* model = 1 Simple circle overlap (thin-disk approximation) - hard range cutoff
* model = 2 Put in exponential height above disk plane - hard range cutoff
* model = 3 Same as 2, but with sigmoid range cutoff
* Notes:
*
* For models 1-2 range is a hard cutoff with 100% efficiency for smaller r
* and zero efficiency beyond it, while for model 3 range is the distance of
* 50% efficiency
* height is not used for model 1
* Default parameters to use in simulation: (stellar disk)
*
* Galaxy radius = 10 kpc
* Scale height = 0.1 kpc
* Distance of sun from galactic center = 8.5 kpc
implicit none
integer model,model_eff
double precision range, rgalaxy, height, rsun
integer i, n
double precision effic,r,phi,twopi,x,y,z,diffsq,rangesq
double precision xsun,ysun,zsun,range50,diff,eff
double precision sigmoid
real seed/123456.789/,dummy,rndm
save seed
* Initialize random number generator
call rdmin(seed)
rangesq = range**2
xsun = rsun
ysun = 0.
zsun = 0.
twopi = 2.*acos(-1.)
if (model.eq.1) then
effic = 0.0
n = 1000000
do i = 1, n
r = sqrt(rndm(dummy))*rgalaxy
phi = twopi*rndm(dummy)
x = r*cos(phi)
y = r*sin(phi)
diffsq = (x-xsun)**2 + (y-ysun)**2
if (i.le.10)then
write(6,*)'r,phi,x,y,diffsq=',r,phi,x,y,diffsq
endif
if (diffsq.lt.rangesq)then
effic = effic + 1.
endif
enddo
else if(model.eq.2)then
effic = 0.0
n = 1000000
do i = 1, n
r = sqrt(rndm(dummy))*rgalaxy
phi = twopi*rndm(dummy)
x = r*cos(phi)
y = r*sin(phi)
z = -height*log(rndm(dummy))
diffsq = (x-xsun)**2 + (y-ysun)**2
+ +(z-zsun)**2
if (i.le.10)then
write(6,*)'r,phi,x,y,z,diffsq=',
+ r,phi,x,y,z,diffsq
endif
if (diffsq.lt.rangesq)then
effic = effic + 1.
endif
enddo
else if(model.eq.3)then
effic = 0.0
n = 1000000
do i = 1, n
r = sqrt(rndm(dummy))*rgalaxy
phi = twopi*rndm(dummy)
x = r*cos(phi)
y = r*sin(phi)
z = -height*log(rndm(dummy))
diffsq = (x-xsun)**2 + (y-ysun)**2
+ +(z-zsun)**2
diff = sqrt(diffsq)
eff = sigmoid(diff,range)
effic = effic + eff
if (i.le.-1)then
write(6,*)'r,phi,x,y,z,diffsq,eff=',
+ r,phi,x,y,z,diffsq,eff
endif
enddo
else
write(6,*)'Invalid model:',model
stop
endif
effic = effic / n
getSNeffic = effic
call rdmout(seed)
return
end
*00000000111111111122222222223333333333444444444455555555556666666666777
*23456789012345678901234567890123456789012345678901234567890123456789012
double precision function sigmoid(r,r50)
* sigmoid model of detection efficiency
* r = distance to source
* r50 = distance of 50% efficiency
implicit none
double precision r,r50
double precision exponent,effic
* h90/h50 = 1.01 -> exponent = 221. (sharp cutoff)
* exponent = 221.
* h90/h50 = 3 -> exponent = 2.0
* exponent = 2.
* h90/h50 = 2 -> exponent = 3.2 --> Use this as default
exponent = 3.2
* h90/h50 = 10 -> exponent = 0.95 (loosey-goosey)
* exponent = 0.95
effic = 1./(1.+(r/r50)**exponent)
sigmoid = effic
return
end
K. Riles - June 28, 2007