diff --git a/cscripts/Makefile.am b/cscripts/Makefile.am
index a4ebb5f..75e8860 100644
--- a/cscripts/Makefile.am
+++ b/cscripts/Makefile.am
@@ -175,7 +175,7 @@ testdata = $(top_srcdir)/test/data/crab.xml \
$(top_srcdir)/test/data/pntdef_maximal.dat \
$(top_srcdir)/test/data/models.txt \
$(top_srcdir)/test/data/tsmaps.txt \
- $(top_srcdir)/test/data/model_cube_background.xml \
+ $(top_srcdir)/test/data/model_cube_background1.xml \
$(top_srcdir)/test/data/model_cube_background2.xml \
$(top_srcdir)/test/data/crab_bkgcube.xml \
$(top_srcdir)/test/data/irf.root \
diff --git a/examples/make_ts_distributions.py b/examples/make_ts_distributions.py
index 8ae5132..8106502 100755
--- a/examples/make_ts_distributions.py
+++ b/examples/make_ts_distributions.py
@@ -111,11 +111,10 @@ def make_ts_distribution():
# Loop over energy bands. The energy bands are those that are also
# used for sensitivity computation.
- for ieng in range(20):
+ for ieng in range(18):
# Set energies
- loge = -1.7 + ieng * 0.2
- #emean = pow(10.0, loge)
+ loge = -1.3 + ieng * 0.2
emin = pow(10.0, loge-0.1)
emax = pow(10.0, loge+0.1)
if loge < 0:
diff --git a/test/data/crab.xml b/test/data/crab.xml
index b65f128..4a73e2b 100644
--- a/test/data/crab.xml
+++ b/test/data/crab.xml
@@ -11,14 +11,11 @@
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
diff --git a/test/data/crab_events.fits.gz b/test/data/crab_events.fits.gz
index 6449c61..1888505 100644
--- a/test/data/crab_events.fits.gz
+++ b/test/data/crab_events.fits.gz
diff --git a/test/data/model_cube_background.xml b/test/data/model_cube_background1.xml
index b76b9ce..5f055e5 100644
--- a/test/data/model_cube_background.xml
+++ b/test/data/model_cube_background1.xml
@@ -1,6 +1,6 @@
-
+
diff --git a/test/data/model_temporal_phasecurve.xml b/test/data/model_temporal_phasecurve.xml
index 2ad10b5..8d90994 100644
--- a/test/data/model_temporal_phasecurve.xml
+++ b/test/data/model_temporal_phasecurve.xml
@@ -12,7 +12,7 @@
-
+
diff --git a/test/data/models.txt b/test/data/models.txt
index 48de7d9..85dd9a2 100644
--- a/test/data/models.txt
+++ b/test/data/models.txt
@@ -1,2 +1,2 @@
-model_cube_background.xml
+model_cube_background1.xml
model_cube_background2.xml
diff --git a/test/test_cslightcrv.py b/test/test_cslightcrv.py
index c69b271..d2ee79e 100755
--- a/test/test_cslightcrv.py
+++ b/test/test_cslightcrv.py
@@ -76,8 +76,9 @@ class Test(test):
cmd = cslightcrv+' inobs="'+self._events+'"'+ \
' inmodel="'+self._model+'" srcname="Crab"'+ \
' caldb="'+self._caldb+'" irf="'+self._irf+'"'+ \
- ' tbinalg="LIN" tmin="MJD 51544.50" tmax="MJD 51544.53"'+ \
- ' tbins=3 method="3D" enumbins=0 emin=0.1 emax=100.0'+ \
+ ' tbinalg=LIN '+ \
+ ' tmin=2020-01-01T00:00:00 tmax=2020-01-01T00:30:00'+ \
+ ' tbins=3 method=3D enumbins=0 emin=0.1 emax=100.0'+ \
' outfile="lightcurve_cmd1.fits"'+ \
' logfile="cslightcrv_cmd1.log" chatter=1'
@@ -90,14 +91,15 @@ class Test(test):
'Check successful execution from command line')
# Check light curve
- self._check_light_curve('lightcurve_cmd1.fits', 3, 1.6e-16)
+ self._check_light_curve('lightcurve_cmd1.fits', 3)
# Setup cslightcrv command
cmd = cslightcrv+' inobs="events_that_do_not_exist.fits"'+ \
' inmodel="'+self._model+'" srcname="Crab"'+ \
' caldb="'+self._caldb+'" irf="'+self._irf+'"'+ \
- ' tbinalg="LIN" tmin="MJD 51544.50" tmax="MJD 51544.53"'+ \
- ' tbins=3 method="3D" enumbins=0 emin=0.1 emax=100.0'+ \
+ ' tbinalg=LIN '+ \
+ ' tmin=2020-01-01T00:00:00 tmax=2020-01-01T00:30:00'+ \
+ ' tbins=3 method=3D enumbins=0 emin=0.1 emax=100.0'+ \
' outfile="lightcurve_cmd1.fits"'+ \
' logfile="cslightcrv_cmd2.log" debug=yes'
@@ -124,8 +126,8 @@ class Test(test):
lcrv['caldb'] = self._caldb
lcrv['irf'] = self._irf
lcrv['tbinalg'] = 'LIN'
- lcrv['tmin'] = 'MJD 51544.50'
- lcrv['tmax'] = 'MJD 51544.53'
+ lcrv['tmin'] = '2020-01-01T00:00:00'
+ lcrv['tmax'] = '2020-01-01T00:30:00'
lcrv['tbins'] = 3
lcrv['method'] = '3D'
lcrv['enumbins'] = 0
@@ -142,14 +144,14 @@ class Test(test):
lcrv.save()
# Check light curve
- self._check_light_curve('cslightcrv_py1.fits', 3, 1.6e-16)
+ self._check_light_curve('cslightcrv_py1.fits', 3)
# Now use FILE as time bin algorithm. For this we need first to
# create an ASCII file. We use now 6 time bins. The ASCII file
# is saved into the file "lightcurve_py2.dat".
csv = gammalib.GCsv(2,2)
- tmin = 51544.50
- tdelta = 0.01
+ tmin = 58849.00
+ tdelta = 0.0104166
for i in range(csv.nrows()):
csv[i,0] = '%.5f' % (tmin + i * tdelta)
csv[i,1] = '%.5f' % (tmin + (i+1) * tdelta)
@@ -177,7 +179,7 @@ class Test(test):
lcrv.execute()
# Check light curve
- self._check_light_curve('cslightcrv_py2.fits', 2, 1.6e-16)
+ self._check_light_curve('cslightcrv_py2.fits', 2)
# Now we setup an observation container on input. We attached the
# model to the observation container so that cslightcrv should
@@ -206,7 +208,7 @@ class Test(test):
lcrv.execute()
# Check light curve
- self._check_light_curve('cslightcrv_py3.fits', 1, 1.6e-16)
+ self._check_light_curve('cslightcrv_py3.fits', 1)
# Binned cslightcrv
lcrv = cscripts.cslightcrv()
@@ -216,8 +218,8 @@ class Test(test):
lcrv['caldb'] = self._caldb
lcrv['irf'] = self._irf
lcrv['tbinalg'] = 'LIN'
- lcrv['tmin'] = 'MJD 51544.50'
- lcrv['tmax'] = 'MJD 51544.53'
+ lcrv['tmin'] = '2020-01-01T00:00:00'
+ lcrv['tmax'] = '2020-01-01T00:30:00'
lcrv['tbins'] = 2
lcrv['method'] = '3D'
lcrv['emin'] = 0.1
@@ -238,7 +240,7 @@ class Test(test):
lcrv.execute()
# Check light curve
- self._check_light_curve('cslightcrv_py4.fits', 2, 1.6e-16)
+ self._check_light_curve('cslightcrv_py4.fits', 2)
# cslightcrv with classical analysis
lcrv = cscripts.cslightcrv()
@@ -268,13 +270,13 @@ class Test(test):
lcrv.execute()
# Check light curve
- self._check_light_curve('cslightcrv_py5.fits', 2, 6.e-16)
+ self._check_light_curve('cslightcrv_py5.fits', 2)
# Return
return
# Check light curve result file
- def _check_light_curve(self, filename, bins,pref):
+ def _check_light_curve(self, filename, bins, prefactor=5.7e-16):
"""
Check light curve file
"""
@@ -304,13 +306,11 @@ class Test(test):
self.test_assert(table.contains(col),
'FITS file contains "'+col+'" column')
- # Check that table has been filled
- # Prefactor has right order of magnitude
+ # Check that the Prefactor has the right order of magnitude
for s in range(table.nrows()):
- self.test_value(table['Prefactor'][s], pref, 0.2*pref,
+ self.test_value(table['Prefactor'][s], prefactor, 0.2*prefactor,
'Check prefactor value')
-
# Close FITS file
fits.close()
diff --git a/test/test_csmodelmerge.py b/test/test_csmodelmerge.py
index d0a1d70..15af7a8 100755
--- a/test/test_csmodelmerge.py
+++ b/test/test_csmodelmerge.py
@@ -44,7 +44,7 @@ class Test(test):
# Set members
self._model1 = self._datadir + '/crab.xml'
- self._model2 = self._datadir + '/model_cube_background.xml'
+ self._model2 = self._datadir + '/model_cube_background1.xml'
self._model3 = self._datadir + '/model_cube_background*.xml'
self._model4 = '@' + self._datadir + '/models.txt'
diff --git a/test/test_csspec.py b/test/test_csspec.py
index a56b028..861cc0c 100755
--- a/test/test_csspec.py
+++ b/test/test_csspec.py
@@ -49,6 +49,7 @@ class Test(test):
self._psfcube = self._datadir + '/crab_psfcube.fits'
self._edispcube = self._datadir + '/crab_edispcube.fits'
self._bkgcube = self._datadir + '/crab_bkgcube.fits'
+ self._bkgmodel = self._datadir + '/crab_bkgcube.xml'
self._onoff_model = self._datadir + '/onoff_model.xml'
# Return
@@ -146,14 +147,14 @@ class Test(test):
# Check result file
self._check_result_file('csspec_py1.fits', 5)
- # Set-up binned csspec
+ # Set-up stacked csspec
spec = cscripts.csspec()
spec['inobs'] = self._inobs
spec['expcube'] = self._expcube
spec['psfcube'] = self._psfcube
spec['edispcube'] = self._edispcube
spec['bkgcube'] = self._bkgcube
- spec['inmodel'] = self._model
+ spec['inmodel'] = self._bkgmodel
spec['srcname'] = 'Crab'
spec['method'] = 'AUTO'
spec['ebinalg'] = 'LOG'
diff --git a/test/test_cstsdist.py b/test/test_cstsdist.py
index b019ea7..ca3524d 100755
--- a/test/test_cstsdist.py
+++ b/test/test_cstsdist.py
@@ -145,7 +145,7 @@ class Test(test):
return
# Check result file
- def _check_result_file(self, filename, ncols=11):
+ def _check_result_file(self, filename, ncols=9):
"""
Check result file
diff --git a/test/test_csworkflow.py b/test/test_csworkflow.py
index eeab642..dcab1c7 100755
--- a/test/test_csworkflow.py
+++ b/test/test_csworkflow.py
@@ -146,13 +146,11 @@ class Test(test):
self.test_value(models['Crab'][2].value(),
5.71055e-16, 1.0e-5, 'Crab prefactor')
self.test_value(models['Crab'][3].value(),
- -2.463392, 1.0e-5, 'Crab index')
- self.test_value(models['Background'][0].value(),
- 3.008828, 1.0e-5, 'Background model sigma')
- self.test_value(models['Background'][1].value(),
- 6.27131e-05, 1.0e-5, 'Background model prefactor')
- self.test_value(models['Background'][2].value(),
- -1.833184, 1.0e-5, 'Background model index')
+ -2.46174095362681, 1.0e-5, 'Crab index')
+ self.test_value(models['CTABackgroundModel'][0].value(),
+ 1.01831847752743, 1.0e-5, 'Background model prefactor')
+ self.test_value(models['CTABackgroundModel'][1].value(),
+ 0.00742512418279459, 1.0e-5, 'Background model index')
# Return
return
diff --git a/test/test_ctbin.py b/test/test_ctbin.py
index 5d0a65c..3163f58 100755
--- a/test/test_ctbin.py
+++ b/test/test_ctbin.py
@@ -87,7 +87,7 @@ class Test(test):
# Load counts cube and check content.
evt = gammalib.GCTAEventCube('cntmap_cmd1.fits')
- self._check_cube(evt, 5542)
+ self._check_cube(evt, 18483)
# Setup ctbin command
cmd = ctbin+' inobs="events_that_do_not_exist.fits"'+ \
@@ -115,7 +115,7 @@ class Test(test):
# Load counts cube and check content.
evt = gammalib.GCTAEventCube('cntmap_cmd3.fits')
- self._check_cube(evt, 890)
+ self._check_cube(evt, 3689)
# Check ctbin --help
self._check_help(ctbin)
@@ -174,15 +174,15 @@ class Test(test):
binning.run()
# Check content of observation container and counts cube
- self._check_observation(binning, 5542)
- self._check_cube(binning.cube(), 5542)
+ self._check_observation(binning, 18483)
+ self._check_cube(binning.cube(), 18483)
# Copy ctbin tool
cpy_bin = binning.copy()
# Check content of observation container and counts cube
- self._check_observation(cpy_bin, 5542)
- self._check_cube(cpy_bin.cube(), 5542)
+ self._check_observation(cpy_bin, 18483)
+ self._check_cube(cpy_bin.cube(), 18483)
# Run copy of ctbin tool again
cpy_bin['logfile'] = 'ctbin_py2.log'
@@ -201,7 +201,7 @@ class Test(test):
# Load counts cube and check content
evt = gammalib.GCTAEventCube('ctbin_py1.fits')
- self._check_cube(evt, 5542)
+ self._check_cube(evt, 18483)
# Now clear ctbin tool
binning.clear()
@@ -241,12 +241,12 @@ class Test(test):
# Check content of observation and cube (need multiplier=3 since
# three identical observations have been appended)
- self._check_observation(binning, 5542, multiplier=3)
- self._check_cube(binning.cube(), 5542, multiplier=3)
+ self._check_observation(binning, 18483, multiplier=3)
+ self._check_cube(binning.cube(), 18483, multiplier=3)
# Load counts cube and check content.
evt = gammalib.GCTAEventCube('ctbin_py3.fits')
- self._check_cube(evt, 5542, multiplier=3)
+ self._check_cube(evt, 18483, multiplier=3)
# And finally go for a fully Pythonic version with all parameters
# being specified in a dictionary
@@ -262,7 +262,7 @@ class Test(test):
# Load counts cube and check content
evt = gammalib.GCTAEventCube('ctbin_py4.fits')
- self._check_cube(evt, 5542)
+ self._check_cube(evt, 18483)
# Return
return
@@ -290,11 +290,11 @@ class Test(test):
'Check that the one observation is a CTA observation')
self.test_value(obs.ontime(), 1800.0*multiplier, 1.0e-6,
'Check ontime of observation')
- self.test_value(obs.livetime(), 1710.0*multiplier, 1.0e-6,
+ self.test_value(obs.livetime(), 1764.0*multiplier, 1.0e-6,
'Check livetime of observation')
self.test_value(pnt.dir().ra_deg(), 83.63, 1.0e-6,
'Check pointing Right Ascension of observation')
- self.test_value(pnt.dir().dec_deg(), 22.01, 1.0e-6,
+ self.test_value(pnt.dir().dec_deg(), 22.51, 1.0e-6,
'Check pointing Declination of observation')
# Test event cube
diff --git a/test/test_cterror.py b/test/test_cterror.py
index b83f81a..baf3b1d 100755
--- a/test/test_cterror.py
+++ b/test/test_cterror.py
@@ -263,26 +263,30 @@ class Test(test):
# If there are models in the container then check them
if nmodels > 0:
- self.test_value(models['Crab']['Prefactor'].value(), 1.58907e-16,
- 1.0e-3, 'Check fitted Crab Prefactor')
- self.test_value(models['Crab']['Prefactor'].error(), 0.0529105e-16,
- 1.0e-3, 'Check Crab Prefactor error')
- self.test_value(models['Crab']['Index'].value(), -2.43549,
- 1.0e-3, 'Check fitted Crab Index')
- self.test_value(models['Crab']['Index'].error(), 0.027804,
- 1.0e-3, 'Check Crab Index error')
- self.test_value(models['Background']['Prefactor'].value(), 61.6919e-6,
- 1.0e-3, 'Check fitted background Prefactor')
- self.test_value(models['Background']['Prefactor'].error(), 1.49438e-6,
- 1.0e-3, 'Check background Prefactor error')
- self.test_value(models['Background']['Index'].value(), -2.20535,
- 1.0e-3, 'Check fitted background Index')
- self.test_value(models['Background']['Index'].error(), 0.0113269,
- 1.0e-3, 'Check background Index error')
- self.test_value(models['Background']['Sigma'].value(), 3.04252,
- 1.0e-3, 'Check fitted background Sigma')
- self.test_value(models['Background']['Sigma'].error(), 0.0307008,
- 1.0e-3, 'Check background Sigma error')
+ self.test_value(models['Crab']['Prefactor'].value(),
+ 5.767533e-16, 1.0e-4 * 5.767533e-16,
+ 'Check fitted Crab Prefactor')
+ self.test_value(models['Crab']['Prefactor'].error(),
+ 1.011887e-17, 1.0e-4 * 1.011887e-17,
+ 'Check Crab Prefactor error')
+ self.test_value(models['Crab']['Index'].value(),
+ -2.462279, 1.0e-4 * 2.462279,
+ 'Check fitted Crab Index')
+ self.test_value(models['Crab']['Index'].error(),
+ 0.0148518, 1.0e-4 * 0.0148518,
+ 'Check Crab Index error')
+ self.test_value(models['CTABackgroundModel']['Prefactor'].value(),
+ 1.0197698, 1.0e-4 * 1.0197698,
+ 'Check fitted background Prefactor')
+ self.test_value(models['CTABackgroundModel']['Prefactor'].error(),
+ 0.013578, 1.0e-4 * 0.013578,
+ 'Check background Prefactor error')
+ self.test_value(models['CTABackgroundModel']['Index'].value(),
+ 0.00836407, 1.0e-4 * 0.00836407,
+ 'Check fitted background Index')
+ self.test_value(models['CTABackgroundModel']['Index'].error(),
+ 0.00811674, 1.0e-4 * 0.00811674,
+ 'Check background Index error')
# Return
return
diff --git a/test/test_ctlike.py b/test/test_ctlike.py
index fcc6c92..98b850b 100755
--- a/test/test_ctlike.py
+++ b/test/test_ctlike.py
@@ -253,26 +253,30 @@ class Test(test):
# If there are models in the container then check them
if nmodels > 0:
- self.test_value(models['Crab']['Prefactor'].value(), 1.58907e-16,
- 1.0e-3, 'Check fitted Crab Prefactor')
- self.test_value(models['Crab']['Prefactor'].error(), 0.0526982e-16,
- 1.0e-3, 'Check Crab Prefactor error')
- self.test_value(models['Crab']['Index'].value(), -2.43549,
- 1.0e-3, 'Check fitted Crab Index')
- self.test_value(models['Crab']['Index'].error(), 0.0248116,
- 1.0e-3, 'Check Crab Index error')
- self.test_value(models['Background']['Prefactor'].value(), 61.6919e-6,
- 1.0e-3, 'Check fitted background Prefactor')
- self.test_value(models['Background']['Prefactor'].error(), 1.49438e-6,
- 1.0e-3, 'Check background Prefactor error')
- self.test_value(models['Background']['Index'].value(), -2.20535,
- 1.0e-3, 'Check fitted background Index')
- self.test_value(models['Background']['Index'].error(), 0.0113269,
- 1.0e-3, 'Check background Index error')
- self.test_value(models['Background']['Sigma'].value(), 3.04252,
- 1.0e-3, 'Check fitted background Sigma')
- self.test_value(models['Background']['Sigma'].error(), 0.0307008,
- 1.0e-3, 'Check background Sigma error')
+ self.test_value(models['Crab']['Prefactor'].value(),
+ 5.767533e-16, 1.0e-4 * 5.767533e-16,
+ 'Check fitted Crab Prefactor')
+ self.test_value(models['Crab']['Prefactor'].error(),
+ 1.018351e-17, 1.0e-4 * 1.018351e-17,
+ 'Check Crab Prefactor error')
+ self.test_value(models['Crab']['Index'].value(),
+ -2.462279, 1.0e-4 * 2.462279,
+ 'Check fitted Crab Index')
+ self.test_value(models['Crab']['Index'].error(),
+ 0.0151608, 1.0e-4 * 0.0151608,
+ 'Check Crab Index error')
+ self.test_value(models['CTABackgroundModel']['Prefactor'].value(),
+ 1.0197698, 1.0e-4 * 1.0197698,
+ 'Check fitted background Prefactor')
+ self.test_value(models['CTABackgroundModel']['Prefactor'].error(),
+ 0.013578, 1.0e-4 * 0.013578,
+ 'Check background Prefactor error')
+ self.test_value(models['CTABackgroundModel']['Index'].value(),
+ 0.00836407, 1.0e-4 * 0.00836407,
+ 'Check fitted background Index')
+ self.test_value(models['CTABackgroundModel']['Index'].error(),
+ 0.00811674, 1.0e-4 * 0.00811674,
+ 'Check background Index error')
# Return
return
diff --git a/test/test_ctobssim.py b/test/test_ctobssim.py
index a21d35a..1b51ac9 100755
--- a/test/test_ctobssim.py
+++ b/test/test_ctobssim.py
@@ -90,7 +90,7 @@ class Test(test):
# Load counts cube and check content.
evt = gammalib.GCTAEventList('ctobssim_cmd1.fits')
- self._test_list(evt, 7105)
+ self._test_list(evt, 23822)
# Setup ctobssim command
cmd = ctobssim+' inmodel="model_that_does_not_exist.xml"'+ \
@@ -156,14 +156,14 @@ class Test(test):
# Check content of observation
self._test_observation(sim)
- self._test_list(sim.obs()[0].events(), 7105)
+ self._test_list(sim.obs()[0].events(), 23822)
# Save events
sim.save()
# Load counts cube and check content.
evt = gammalib.GCTAEventList('ctobssim_py1.fits')
- self._test_list(evt, 7105)
+ self._test_list(evt, 23822)
# Set-up observation container
pnts = [{'ra': 83.63, 'dec': 21.01},
@@ -191,10 +191,10 @@ class Test(test):
# Retrieve observation and check content
self._test_observation(sim, nobs=4, pnts=pnts)
- self._test_list(sim.obs()[0].events(), 6199)
- self._test_list(sim.obs()[1].events(), 6305)
- self._test_list(sim.obs()[2].events(), 6092)
- self._test_list(sim.obs()[3].events(), 6192)
+ self._test_list(sim.obs()[0].events(), 22904)
+ self._test_list(sim.obs()[1].events(), 23130)
+ self._test_list(sim.obs()[2].events(), 22672)
+ self._test_list(sim.obs()[3].events(), 22549)
# Save events
sim.save()
@@ -203,20 +203,20 @@ class Test(test):
obs = gammalib.GObservations('ctobssim_py2.xml')
# Retrieve observation and check content
- self._test_list(obs[0].events(), 6199)
- self._test_list(obs[1].events(), 6305)
- self._test_list(obs[2].events(), 6092)
- self._test_list(obs[3].events(), 6192)
+ self._test_list(obs[0].events(), 22904)
+ self._test_list(obs[1].events(), 23130)
+ self._test_list(obs[2].events(), 22672)
+ self._test_list(obs[3].events(), 22549)
# Copy ctobssim tool
cpy_sim = sim.copy()
# Retrieve observation and check content of copy
self._test_observation(cpy_sim, nobs=4, pnts=pnts)
- self._test_list(cpy_sim.obs()[0].events(), 6199)
- self._test_list(cpy_sim.obs()[1].events(), 6305)
- self._test_list(cpy_sim.obs()[2].events(), 6092)
- self._test_list(cpy_sim.obs()[3].events(), 6192)
+ self._test_list(cpy_sim.obs()[0].events(), 22904)
+ self._test_list(cpy_sim.obs()[1].events(), 23130)
+ self._test_list(cpy_sim.obs()[2].events(), 22672)
+ self._test_list(cpy_sim.obs()[3].events(), 22549)
# Execute copy of ctobssim tool again, now with a higher chatter
# level than before
@@ -230,10 +230,10 @@ class Test(test):
# Check result file
obs = gammalib.GObservations('ctobssim_py3.xml')
self.test_value(obs.size(), 4, 'Check for number of observations')
- self._test_list(obs[0].events(), 6199)
- self._test_list(obs[1].events(), 6305)
- self._test_list(obs[2].events(), 6092)
- self._test_list(obs[3].events(), 6192)
+ self._test_list(obs[0].events(), 22904)
+ self._test_list(obs[1].events(), 23130)
+ self._test_list(obs[2].events(), 22672)
+ self._test_list(obs[3].events(), 22549)
# Return
return
diff --git a/test/test_ctphase.py b/test/test_ctphase.py
index c4b5172..00f3cc2 100644
--- a/test/test_ctphase.py
+++ b/test/test_ctphase.py
@@ -149,7 +149,7 @@ class Test(test):
phase['inobs'] = self._events
phase['inmodel'] = 'NONE'
phase['srcname'] = 'NONE'
- phase['mjd'] = 51544.5
+ phase['mjd'] = 58849.0
phase['phase'] = 0.0
phase['f0'] = 1.0
phase['f1'] = 0.1
@@ -187,7 +187,7 @@ class Test(test):
phase['inobs'] = self._events
phase['inmodel'] = 'NONE'
phase['srcname'] = 'NONE'
- phase['mjd'] = 51500.0
+ phase['mjd'] = 58860.0
phase['phase'] = 0.0
phase['f0'] = 1.0
phase['f1'] = 0.1
@@ -252,7 +252,7 @@ class Test(test):
return
# Check result file
- def _check_result_file(self, filename, nevents=6141):
+ def _check_result_file(self, filename, nevents=22220):
"""
Check result file
diff --git a/test/test_ctprob.py b/test/test_ctprob.py
index 3c959b9..214772d 100755
--- a/test/test_ctprob.py
+++ b/test/test_ctprob.py
@@ -202,7 +202,7 @@ class Test(test):
return
# Check result file
- def _check_result_file(self, filename, nevents=6141):
+ def _check_result_file(self, filename, nevents=22220):
"""
Check result file
@@ -220,7 +220,7 @@ class Test(test):
self._check_events(events, nevents=nevents)
# Check that probability columns exist
- colname1 = 'PROB_Background'
+ colname1 = 'PROB_CTABackgroundModel'
colname2 = 'PROB_Crab'
self._check_column(filename, colname1)
self._check_column(filename, colname2)
@@ -232,7 +232,7 @@ class Test(test):
return
# Check observation and event list
- def _check_obs(self, obs, nobs=1, nevents=6141):
+ def _check_obs(self, obs, nobs=1, nevents=22220):
"""
Check observation and event list
@@ -257,7 +257,7 @@ class Test(test):
return
# Check events
- def _check_events(self, events, nevents=6141):
+ def _check_events(self, events, nevents=22220):
"""
Check event list
diff --git a/test/test_ctselect.py b/test/test_ctselect.py
index 9e0cd3a..a815996 100755
--- a/test/test_ctselect.py
+++ b/test/test_ctselect.py
@@ -72,8 +72,8 @@ class Test(test):
# Setup ctselect command
cmd = ctselect+' inobs="'+self._events+'"'+ \
' outobs="ctselect_cmd1.fits"'+ \
- ' ra=83.63 dec=22.01 rad=3.0'+ \
- ' tmin=500.0 tmax=1000.0'+ \
+ ' ra=83.63 dec=22.01 rad=2.0'+ \
+ ' tmin=2020-01-01T00:08:20 tmax=2020-01-01T00:16:40'+ \
' emin=0.2 emax=80.0'+ \
' logfile="ctselect_cmd1.log" chatter=1'
@@ -91,8 +91,8 @@ class Test(test):
# Setup ctselect command
cmd = ctselect+' inobs="event_file_that_does_not_exist.fits"'+ \
' outobs="ctselect_cmd2.fits"'+ \
- ' ra=83.63 dec=22.01 rad=3.0'+ \
- ' tmin=500.0 tmax=1000.0'+ \
+ ' ra=83.63 dec=22.01 rad=2.0'+ \
+ ' tmin=2020-01-01T00:08:20 tmax=2020-01-01T00:16:40'+ \
' emin=0.2 emax=80.0'+ \
' logfile="ctselect_cmd2.log" debug=yes chatter=1'
@@ -132,9 +132,9 @@ class Test(test):
select['inobs'] = self._events
select['ra'] = 83.63
select['dec'] = 22.01
- select['rad'] = 3
- select['tmin'] = 500.0
- select['tmax'] = 1000.0
+ select['rad'] = 2.0
+ select['tmin'] = '2020-01-01T00:08:20'
+ select['tmax'] = '2020-01-01T00:16:40'
select['emin'] = 0.2
select['emax'] = 80.0
select['outobs'] = 'ctselect_py1.fits'
@@ -181,7 +181,7 @@ class Test(test):
# to valid event selections, but since the maximum values are still
# 'NONE', no event selections should occur.
cpy_select['usepnt'] = True
- cpy_select['tmin'] = 500.0
+ cpy_select['tmin'] = '2020-01-01T00:08:20'
cpy_select['emin'] = 0.2
cpy_select['usethres'] = 'USER'
cpy_select['outobs'] = 'ctselect_py3.fits'
@@ -213,9 +213,9 @@ class Test(test):
select = ctools.ctselect(obs)
select['ra'] = 83.63
select['dec'] = 22.01
- select['rad'] = 3.0
- select['tmin'] = 500.0
- select['tmax'] = 1000.0
+ select['rad'] = 2.0
+ select['tmin'] = '2020-01-01T00:08:20'
+ select['tmax'] = '2020-01-01T00:16:40'
select['emin'] = 120.0
select['emax'] = 130.0
select['expr'] = 'DETX == 0'
@@ -236,9 +236,9 @@ class Test(test):
select['inobs'] = self._invalid_events
select['ra'] = 83.63
select['dec'] = 22.01
- select['rad'] = 3
- select['tmin'] = 500.0
- select['tmax'] = 1000.0
+ select['rad'] = 2.0
+ select['tmin'] = '2020-01-01T00:08:20'
+ select['tmax'] = '2020-01-01T00:16:40'
select['emin'] = 0.2
select['emax'] = 80.0
select['outobs'] = 'ctselect_py5.fits'
@@ -260,9 +260,9 @@ class Test(test):
select['inobs'] = self._events+'[EVENTS]'
select['ra'] = 83.63
select['dec'] = 22.01
- select['rad'] = 3.0
- select['tmin'] = 500.0
- select['tmax'] = 1000.0
+ select['rad'] = 2.0
+ select['tmin'] = '2020-01-01T00:08:20'
+ select['tmax'] = '2020-01-01T00:16:40'
select['emin'] = 0.2
select['emax'] = 0.0 # Signals that "emax" should be ignored
select['outobs'] = 'ctselect_py6.fits'
@@ -274,16 +274,16 @@ class Test(test):
select.execute()
# Check result file
- self._check_result_file('ctselect_py6.fits', nevents=595)
+ self._check_result_file('ctselect_py6.fits')
# Now ignore the "emin" value.
select = ctools.ctselect()
select['inobs'] = self._events+'[EVENTS]'
select['ra'] = 83.63
select['dec'] = 22.01
- select['rad'] = 3.0
- select['tmin'] = 500.0
- select['tmax'] = 1000.0
+ select['rad'] = 2.0
+ select['tmin'] = '2020-01-01T00:08:20'
+ select['tmax'] = '2020-01-01T00:16:40'
select['emin'] = 0.0 # Signals that "emin" should be ignored
select['emax'] = 80.0
select['outobs'] = 'ctselect_py7.fits'
@@ -295,7 +295,7 @@ class Test(test):
select.execute()
# Check result file
- self._check_result_file('ctselect_py7.fits', nevents=1684)
+ self._check_result_file('ctselect_py7.fits', nevents=4709)
# Now set "emin > emax"
select['emin'] = 150.0
@@ -318,9 +318,9 @@ class Test(test):
select['inobs'] = self._events
select['ra'] = 83.63
select['dec'] = 24.01
- select['rad'] = 5.0
- select['tmin'] = 500.0
- select['tmax'] = 1000.0
+ select['rad'] = 3.0
+ select['tmin'] = '2020-01-01T00:08:20'
+ select['tmax'] = '2020-01-01T00:16:40'
select['emin'] = 0.2
select['emax'] = 80.0
select['outobs'] = 'ctselect_py9.fits'
@@ -332,7 +332,8 @@ class Test(test):
select.execute()
# Check result file
- self._check_result_file('ctselect_py9.fits', nevents=466, dec=24.01)
+ self._check_result_file('ctselect_py9.fits', nevents=781, dec=24.01,
+ rad=1.5)
# Now put the RoI outside the existing RoI. This should leave to
# an empty event list.
@@ -348,14 +349,14 @@ class Test(test):
# Check result file
self._check_result_file('ctselect_py10.fits', nevents=0, dec=-22.01,
- rad=5.0)
+ rad=3.0)
# Now test phase cut
select = ctools.ctselect()
select['inobs'] = self._phased_events
select['ra'] = 83.63
select['dec'] = 22.01
- select['rad'] = 5.0
+ select['rad'] = 2.0
select['tmin'] = 'INDEF'
select['tmax'] = 'INDEF'
select['emin'] = 0.1
@@ -370,14 +371,14 @@ class Test(test):
select.execute()
# Check result file
- self._check_result_file('ctselect_py11.fits', nevents=1909, rad=5.0)
+ self._check_result_file('ctselect_py11.fits', nevents=1909)
- # Now test anoother phase cut
+ # Now test another phase cut
select = ctools.ctselect()
select['inobs'] = self._phased_events
select['ra'] = 83.63
select['dec'] = 22.01
- select['rad'] = 5.0
+ select['rad'] = 2.0
select['tmin'] = 'INDEF'
select['tmax'] = 'INDEF'
select['emin'] = 0.1
@@ -392,7 +393,7 @@ class Test(test):
select.execute()
# Check result file
- self._check_result_file('ctselect_py12.fits', nevents=1995, rad=5.0)
+ self._check_result_file('ctselect_py12.fits', nevents=1995)
# Test invalid minimum phase value
self.test_try('Test invalid minimum phase value')
@@ -482,7 +483,7 @@ class Test(test):
return
# Check result file
- def _check_result_file(self, filename, nevents=591, dec=22.01, rad=3.0):
+ def _check_result_file(self, filename, nevents=2307, dec=22.01, rad=2.0):
"""
Check result file
@@ -507,7 +508,7 @@ class Test(test):
return
# Check observation and event list
- def _check_obs(self, obs, nobs=1, nevents=591):
+ def _check_obs(self, obs, nobs=1, nevents=2307):
"""
Check observation and event list
@@ -532,7 +533,7 @@ class Test(test):
return
# Check events
- def _check_events(self, events, nevents=591, dec=22.01, rad=3.0):
+ def _check_events(self, events, nevents=2307, dec=22.01, rad=2.0):
"""
Check event list
diff --git a/test/test_ctulimit.py b/test/test_ctulimit.py
index eeabb6e..98f2aed 100755
--- a/test/test_ctulimit.py
+++ b/test/test_ctulimit.py
@@ -143,11 +143,11 @@ class Test(test):
ulimit.save()
# Check results
- self.test_value(ulimit.diff_ulimit(), 8.86803e-18, 1.0e-21,
+ self.test_value(ulimit.diff_ulimit(), 3.05020546110845e-17, 1.0e-21,
'Check differential upper limit')
- self.test_value(ulimit.flux_ulimit(), 6.10509e-12, 1.0e-16,
+ self.test_value(ulimit.flux_ulimit(), 2.07242046724517e-11, 1.0e-16,
'Check upper limit on photon flux')
- self.test_value(ulimit.eflux_ulimit(), 2.75669e-11, 1.0e-16,
+ self.test_value(ulimit.eflux_ulimit(), 9.20229587739368e-11, 1.0e-16,
'Check upper limit on energy flux')
# Check obs() method
@@ -161,19 +161,19 @@ class Test(test):
cpy_ulimit = ulimit.copy()
# Check results of copy
- self.test_value(cpy_ulimit.diff_ulimit(), 8.86803e-18, 1.0e-21,
+ self.test_value(cpy_ulimit.diff_ulimit(), 3.05020546110845e-17, 1.0e-21,
'Check differential upper limit')
- self.test_value(cpy_ulimit.flux_ulimit(), 6.10509e-12, 1.0e-16,
+ self.test_value(cpy_ulimit.flux_ulimit(), 2.07242046724517e-11, 1.0e-16,
'Check upper limit on photon flux')
- self.test_value(cpy_ulimit.eflux_ulimit(), 2.75669e-11, 1.0e-16,
+ self.test_value(cpy_ulimit.eflux_ulimit(), 9.20229587739368e-11, 1.0e-16,
'Check upper limit on energy flux')
# Check results
- self.test_value(cpy_ulimit.diff_ulimit(), 8.86803e-18, 1.0e-21,
+ self.test_value(cpy_ulimit.diff_ulimit(), 3.05020546110845e-17, 1.0e-21,
'Check differential upper limit')
- self.test_value(cpy_ulimit.flux_ulimit(), 6.10509e-12, 1.0e-16,
+ self.test_value(cpy_ulimit.flux_ulimit(), 2.07242046724517e-11, 1.0e-16,
'Check upper limit on photon flux')
- self.test_value(cpy_ulimit.eflux_ulimit(), 2.75669e-11, 1.0e-16,
+ self.test_value(cpy_ulimit.eflux_ulimit(), 9.20229587739368e-11, 1.0e-16,
'Check upper limit on energy flux')
# Now clear copy of ctulimit tool
@@ -208,11 +208,11 @@ class Test(test):
ulimit.execute()
# Check results
- self.test_value(ulimit.diff_ulimit(), 8.86803e-18, 1.0e-21,
+ self.test_value(ulimit.diff_ulimit(), 3.05020546110845e-17, 1.0e-21,
'Check differential upper limit')
- self.test_value(ulimit.flux_ulimit(), 6.10509e-12, 1.0e-16,
+ self.test_value(ulimit.flux_ulimit(), 2.07242046724517e-11, 1.0e-16,
'Check upper limit on photon flux')
- self.test_value(ulimit.eflux_ulimit(), 2.75669e-11, 1.0e-16,
+ self.test_value(ulimit.eflux_ulimit(), 9.20229587739368e-11, 1.0e-16,
'Check upper limit on energy flux')
# Test invalid model name
diff --git a/test/test_obsutils.py b/test/test_obsutils.py
index ec5ef80..cd74947 100755
--- a/test/test_obsutils.py
+++ b/test/test_obsutils.py
@@ -113,14 +113,14 @@ class Test(test):
# Check simulation results
self.test_value(res.size(), 1, 'Check number of observations')
self.test_value(res.models().size(), 2, 'Check number of models')
- self.test_value(res.nobserved(), 40, 'Check number of observed events')
+ self.test_value(res.nobserved(), 48, 'Check number of observed events')
self.test_value(res.npred(), 0.0, 'Check number of predicted events')
self.test_value(res[0].eventtype(), 'EventList', 'Check event type')
self.test_value(res[0].events().ebounds().emin().TeV(), 1.0,
'Check minimum energy')
self.test_value(res[0].events().ebounds().emax().TeV(), 10.0,
'Check minimum energy')
- self.test_value(res[0].events().number(), 40,
+ self.test_value(res[0].events().number(), 48,
'Check number of events in list')
# Check energy dispersion flag
@@ -144,7 +144,7 @@ class Test(test):
# Check simulation results
self.test_value(res.size(), 1, 'Check number of observations')
self.test_value(res.models().size(), 2, 'Check number of models')
- self.test_value(res.nobserved(), 40, 'Check number of observed events')
+ self.test_value(res.nobserved(), 48, 'Check number of observed events')
self.test_value(res.npred(), 0.0, 'Check number of predicted events')
self.test_value(res[0].eventtype(), 'CountsCube', 'Check event type')
self.test_value(res[0].events().ebounds().emin().TeV(), 1.0,
@@ -153,7 +153,7 @@ class Test(test):
'Check minimum energy')
self.test_value(res[0].events().ebounds().size(), 5,
'Check number of energy bins')
- self.test_value(res[0].events().number(), 40,
+ self.test_value(res[0].events().number(), 48,
'Check number of events in cube')
# Check energy dispersion flag
@@ -177,7 +177,7 @@ class Test(test):
# Check simulation results
self.test_value(res.size(), 1, 'Check number of observations')
self.test_value(res.models().size(), 2, 'Check number of models')
- self.test_value(res.nobserved(), 86, 'Check number of observed events')
+ self.test_value(res.nobserved(), 96, 'Check number of observed events')
self.test_value(res.npred(), 0.0, 'Check number of predicted events')
self.test_value(res[0].eventtype(), 'CountsCube', 'Check event type')
self.test_value(res[0].events().ebounds().emin().TeV(), 1.0,
@@ -186,7 +186,7 @@ class Test(test):
'Check minimum energy')
self.test_value(res[0].events().ebounds().size(), 5,
'Check number of energy bins')
- self.test_value(res[0].events().number(), 86,
+ self.test_value(res[0].events().number(), 96,
'Check number of events in cube')
# Check energy dispersion flag
@@ -211,7 +211,7 @@ class Test(test):
# Check simulation results
self.test_value(res.size(), 1, 'Check number of observations')
self.test_value(res.models().size(), 2, 'Check number of models')
- self.test_value(res.nobserved(), 82, 'Check number of observed events')
+ self.test_value(res.nobserved(), 98, 'Check number of observed events')
self.test_value(res.npred(), 0.0, 'Check number of predicted events')
self.test_value(res[0].eventtype(), 'CountsCube', 'Check event type')
self.test_value(res[0].events().ebounds().emin().TeV(), 1.0,
@@ -220,7 +220,7 @@ class Test(test):
'Check minimum energy')
self.test_value(res[0].events().ebounds().size(), 5,
'Check number of energy bins')
- self.test_value(res[0].events().number(), 82,
+ self.test_value(res[0].events().number(), 98,
'Check number of events in cube')
# Check energy dispersion flag
@@ -306,7 +306,7 @@ class Test(test):
# Check simulation results
self.test_value(res.size(), 1, 'Check number of observations')
self.test_value(res.models().size(), 2, 'Check number of models')
- self.test_value(res.nobserved(), 40, 'Check number of observed events')
+ self.test_value(res.nobserved(), 48, 'Check number of observed events')
self.test_value(res.npred(), 0.0, 'Check number of predicted events')
self.test_value(res[0].eventtype(), 'EventList', 'Check event type')
self.test_value(res[0].events().ebounds().emin().TeV(), 1.0,