Commit 2b96192499af49da45c698a57183fb45e1ee6ae4

Authored by Jürgen Knödlseder
1 parent 9fcba47e

Create new development version 1.7.0.dev

ChangeLog
1 1 2019-05-29
2 2  
  3 + * Version 1.7.0 released
  4 + ========================
  5 +
  6 +
  7 +2019-05-29
  8 +
3 9 * Version 1.6.0 released
4 10 ========================
5 11  
... ...
1   -New Features and Important Changes in ctools 1.6.0
  1 +New Features and Important Changes in ctools 1.7.0
2 2  
3 3 29 May 2019
4 4  
... ... @@ -11,28 +11,17 @@ ctools release with respect to the precedent release.
11 11  
12 12 Configuration
13 13 -------------
14   -CTA background rates are now per ontime and not livetime. This makes the IRF
15   -background consistent with the cube background, and is also consistent with
16   -the open gamma data format (#2758).
17   -
18   -A Code Generator was added to the development directory that can be started
19   -using dev/codegen.py and that requires GammaLib to be installed. The code
20   -generator allows adding ctools and cscripts, including unit tests and code
21   -documentation, that are fully functional. The developer then only needs to
22   -fill the skeleton with the relevant code (#2709).
23   -
24   -Keep existing library path in installation script on Mac OS X (#2420).
  14 +None
25 15  
26 16  
27 17 Documentation
28 18 -------------
29   -Added documentation for analysing data of the H.E.S.S. public data release.
30   -A bunch of Jupyter notebooks were also added (#2712).
  19 +None
31 20  
32 21  
33 22 Python interface
34 23 ----------------
35   -ctools and cscripts can now be pickled from Python (#1938).
  24 +None
36 25  
37 26  
38 27 Support model
... ... @@ -42,75 +31,22 @@ None
42 31  
43 32 Base classes
44 33 ------------
45   -The set_obs_bounds() method was moved from the ctool class to the ctobservation
46   -class.
47   -
48   -The ctool base class now implements a log_parameters() method that overwrites
49   -the base class method and that logs a warning if the tool has an "edisp"
50   -parameter but the parameter is set to "no" (#2842).
51   -
52   -The ctool base class now loads the application parameters from the file provided
53   -in the "syspfiles" folder and updates parameter values using the file found in
54   -the user's "pfiles" folder, so that any change to the parameter file structure
55   -is handled transparently and no longer leads to an exception (#2513).
56   -
57   -The ctool::time_reference constant was removed since it is not required
58   -anymore. The time reference is now transparently handled by the tools, and
59   -if there is a choice, a "mjdref" parameter was added to the tools (#2054).
60   -
61   -The ctool::create_cta_obs() method now queries the optional "mjdref" parameter
62   -so that a MJD reference time can be specified by the tool. This functionality
63   -is now used by ctobssim (#2054).
64   -
65   -The ctools::get_gti() method now takes GTimeReference as argument to enable
66   -tools to retrieve Mission Elapsed Time (MET) in the time reference of the
67   -observation (#2054).
68   -
69   -The ctools::is_valid_filename() method was removed since the validity check
70   -of the filename is now done by the GApplicationPar class.
  34 +None
71 35  
72 36  
73 37 ctbin - CTA event binning
74 38 -------------------------
75   -Added the option to produce an individual counts cube for each event list in
76   -the input observation definition XML file. The option is enabled by setting
77   -the new hidden parameter "stack" to "no". The cube() method now has an optional
78   -index argument, providing access to the i'th counts cube that was produced.
79   -The cubes() method specifies the number of counts cubes that were produced.
80   -If no counts cube was produced, the cube() method now throws an exception
81   -(#2714).
82   -
83   -ctbin now accouts for varying energy thresholds when computing the weight
84   -array (#2685).
85   -
86   -Add hidden "nthreads" parameter to control parallel computations (#2421).
87   -
88   -Copy the time reference from the first input observation (#2054).
  39 +None
89 40  
90 41  
91 42 ctbkgcube - CTA background cube generation
92 43 ------------------------------------------
93   -The tool now required a counts cube on input, either specified via the
94   -ctbkgcube::cntcube() method or the "incube" parameter. This assures that the
95   -background cube has the same dimension as the counts cube. All spatial and
96   -spectral binning parameters were removed from the parameter file (#2763).
97   -
98   -Add ctbkgcube::cntcube() method so that a counts cube be specified as
99   -instance before running the tool. This avoids storing the counts cube on
100   -disk if the counts cube definition should be used to generate a background
101   -cube. In addition, the background cube values are now devided by the
102   -weight values of the counts cube since later, during model evaluation,
103   -the model is multiplied by the weight values. This makes sure that the
104   -normalisation is correct (#2685).
  44 +None
105 45  
106 46  
107 47 ctbutterfly - Generate butterfly diagrams
108 48 -----------------------------------------
109   -Add hidden "max_iter" parameter to allow control of the number of fit
110   -iterations.
111   -
112   -Add hidden "like_accuracy" parameter to allow control of the accuracy of
113   -the maximum log-likelikelihood value (#2662).
  49 +None
114 50  
115 51  
116 52 ctcubemask - CTA cube filtering
... ... @@ -125,13 +61,7 @@ None
125 61  
126 62 cterror - Likelihood profile error computation
127 63 ----------------------------------------------
128   -Add hidden "max_iter" parameter to allow control of the number of fit
129   -iterations.
130   -
131   -Add hidden "like_accuracy" parameter to allow control of the accuracy of
132   -the maximum log-likelikelihood value (#2662).
133   -
134   -Add hidden "nthreads" parameter to control parallel computations (#2421).
  64 +None
135 65  
136 66  
137 67 ctexpcube - CTA exposure cube generation
... ... @@ -141,19 +71,12 @@ None
141 71  
142 72 ctfindvar - Variability search
143 73 ------------------------------
144   -New: the ctfindvar tool searches for source variability using an On/Off method
145   -in the time domain (#2713).
  74 +None
146 75  
147 76  
148 77 ctlike - Maximum likelihood fitting
149 78 -----------------------------------
150   -Add hidden "max_iter" parameter to allow control of the number of fit
151   -iterations.
152   -
153   -Add hidden "like_accuracy" parameter to allow control of the accuracy of
154   -the maximum log-likelikelihood value (#2662).
155   -
156   -Add hidden "nthreads" parameter to control parallel computations (#2421).
  79 +None
157 80  
158 81  
159 82 ctmapcube - CTA map cube generation
... ... @@ -163,26 +86,12 @@ None
163 86  
164 87 ctmodel - CTA counts cube modelling
165 88 -----------------------------------
166   -When running ctmodel on a counts cube, and specifically a stacked count cube,
167   -the event bin weighting is taken into account in the model evaluation. This
168   -is needed to properly take into account the changing thresholds. No such
169   -weighting is done if the model is computed from an event list, since in that
170   -case the model is properly computed for each observation using the run-wise
171   -response (#2721).
172   -
173   -The tools now computes DETX and DETY for every event bin if they are not
174   -available so that model that rely on the existence of these parameters can
175   -be handled (#2694).
176   -
177   -Add hidden "nthreads" parameter to control parallel computations (#2421).
  89 +None
178 90  
179 91  
180 92 ctobssim - CTA observation simulation
181 93 -------------------------------------
182   -Add hidden "nthreads" parameter to control parallel computations (#2421).
183   -
184   -Add "mjdref" parameter to allow specification of the MJD reference time
185   -for the simulation (#2054).
  94 +None
186 95  
187 96  
188 97 ctphase - Event phase computation
... ... @@ -202,65 +111,22 @@ None
202 111  
203 112 ctselect - CTA event selection
204 113 ------------------------------
205   -Do no longer set missing energy and RoI boundaries in ctool::get_observations
206   -and ctool::setup_observations since this led to a problem in ctselect. For
207   -H.E.S.S. data, where the boundaries are not set, the boundaries were preset
208   -with the User parameters, which made event selection with the usepnt=no option
209   -impossible. It is not clear why the setting of missing boundaries was introduced
210   -but it looks like a dangerous thing to do. The setting has therefore been
211   -removed (#2686).
212   -
213   -Avoid an error in case that the RoI radius is identical to the existing RoI
214   -radius (#2682).
215   -
216   -Interpret MET specified by "tmin" and "tmax" parameters in the time reference
217   -of the input observations (#2054).
  114 +None
218 115  
219 116  
220 117 ctskymap - CTA sky mapping
221 118 --------------------------
222   -Fix an issue with artefacts for small roiradius values (#2839).
223   -
224   -Add exclusion_map() methods (#2725).
225   -
226   -Add the "inmap", "iterations" and "threshold" parameters. The hidden
227   -"inmap" parameter allows specifying a sky map file containing a "COUNTS"
228   -and "ACCEPTANCE" extension which avoids looping over event lists in an
229   -observation container. The "iterations" parameter allows the iterative
230   -determination of an exclusion map from the resulting significance map for
231   -the RING background method. The exclusion map will flag all pixels with
232   -significances above the "threshold" value so that they will be excluded
233   -in the subsequent RING background determination. Since this will impact
234   -the pixel significances, the procedure needs to be repeated a couple of
235   -times to stabilise (#2311).
236   -
237   -Accelerate the IRF and RING background methods. For the RING background
238   -method the computation is either performed using a FFT or using a direct
239   -computation. The FFT computation is faster, but assumed Euclidian
240   -distances for the sky map grid, the direct computation is slower, but
241   -accurately computes the distances between sky map pixels (#2309).
  119 +None
242 120  
243 121  
244 122 cttsmap - Generation of Test Statistic map
245 123 ------------------------------------------
246   -Add hidden "max_iter" parameter to allow control of the number of fit
247   -iterations.
248   -
249   -Add hidden "like_accuracy" parameter to allow control of the accuracy of
250   -the maximum log-likelikelihood value (#2662).
  124 +None
251 125  
252 126  
253 127 ctulimit - Compute upper limit
254 128 ------------------------------
255   -Add hidden "max_iter" parameter to allow control of the number of fit
256   -iterations.
257   -
258   -Add hidden "like_accuracy" parameter to allow control of the accuracy of
259   -the maximum log-likelikelihood value (#2662).
260   -
261   -Add "parname" parameter to allow upper limit computations also for a node
262   -function spectral model. In addition, it is now checked that the parameter
263   -values actually bracket the upper limit (#2233).
  129 +None
264 130  
265 131  
266 132 support - Support classes
... ... @@ -270,17 +136,7 @@ None
270 136  
271 137 csbkgmodel - Generate background model for 3D analysis
272 138 ------------------------------------------------------
273   -Three additional spatial models were added: LOOKUP which uses a 2D lookup table,
274   -PROFILE which uses an energy-independent profile, and POLYNOM which uses an
275   -energy-independent polynom of third order. The parameter "slufile" was added
276   -to allow specification of a lookup table file (#2878).
277   -
278   -A model named GAUSS(E) was added to implement an energy-dependent Gaussian
279   -spatial function (#2868).
280   -
281   -Introduced the script that generates a background for a 3D analysis. This
282   -script is particularly useful to generate a background model for the analysis
283   -of the H.E.S.S. public data release (#2694).
  139 +None
284 140  
285 141  
286 142 cscaldb - Inspect calibration database
... ... @@ -315,15 +171,7 @@ None
315 171  
316 172 cslightcrv - Generate light curve
317 173 ---------------------------------
318   -Add exclusion_map() methods (#2725)
319   -
320   -Add hidden "use_model_bkg" parameter for forwarding to csphagen.
321   -
322   -Add hidden "nthreads" parameter and implement parallelisation of light
323   -curve computation (#2421).
324   -
325   -Add hidden "mjdref" parameter for the specification of the MET reference
326   -(#2054).
  174 +None
327 175  
328 176  
329 177 csmodelinfo - Return model information
... ... @@ -348,76 +196,37 @@ None
348 196  
349 197 csobs2caldb - Generate calibration database entry for an IACT observation
350 198 -------------------------------------------------------------------------
351   -Change background template table name from "BGD" to "BKG" (#2343).
  199 +None
352 200  
353 201  
354 202 csobsdef - Generate observation definition XML file
355 203 ---------------------------------------------------
356   -Add hidden "mjdref" parameter for the specification of the MET reference
357   -(#2054).
  204 +None
358 205  
359 206  
360 207 csobsinfo - Return observation definition information
361 208 -----------------------------------------------------
362   -Add ras() and decs() methods (#2313)
  209 +None
363 210  
364 211  
365 212 csobsselect - Select observations
366 213 ---------------------------------
367   -Use time reference of input observations if time selection is given in MET
368   -(#2054).
  214 +None
369 215  
370 216  
371 217 csphagen - Generate On/Off observations
372 218 ---------------------------------------
373   -Add exclusion_map() methods (#2725)
374   -
375   -A "outmodel" parameter was added and the script now produces an appropriate
376   -background model for maximum likelihood model fitting. The script now also
377   -sets the appropriate fit statistic depending on the "use_model_bkg" parameter
378   -(#2711).
379   -
380   -The script now supports any kind of background model, not only IRF background
381   -models (#2710).
382   -
383   -Add hidden "use_model_bkg" parameter. By default the parameter is set to "yes",
384   -which means that the background model provided in the model container is used
385   -for the computation of the alpha parameter and the background rate, stored in
386   -the "BACKSCAL" column of the On spectrum and the "BACKRESP" column of the Off
387   -spectrum, respectively. If the parameter is set to "no" it is assumed that the
388   -background rate in the On and Off regions are the same, and the model background
389   -is not used. In that case, the "BACKSCAL" column gives the ratio of the solid
390   -angles between On and Off regions, and the "BACKRESP" column is set to the
391   -solid angle of the On region. The resulting data can only be fitted using the
392   -"WSTAT" statistic (#2659).
393   -
394   -Add hidden "nthreads" parameter and implement parallelisation of computations
395   -(#2421).
396   -
397   -The true number of energy bins is now computed using
398   - int(bins_per_decade * num_of_decades + 0.5)
399   -making sure in addition that the result is at least 1. This provides better
400   -control over the number of energy bins (#2490).
401   -
402   -The script now produces data that are compliant with Xspec. An Xspec howto
403   -tutorial was added to the user documentation (#2404).
  219 +None
404 220  
405 221  
406 222 csphasecrv - Generate phase curve
407 223 ---------------------------------
408   -Add exclusion_map() methods (#2725)
409   -
410   -Add hidden "nthreads" parameter and implement parallelisation of computations
411   -(#2421).
  224 +None
412 225  
413 226  
414 227 cspull - Generate pull distributions
415 228 ------------------------------------
416   -Add hidden "nthreads" parameter and implement parallelisation of computations
417   -(#2421).
418   -
419   -Add hidden "mjdref" parameter for the specification of the MET reference
420   -(#2054).
  229 +None
421 230  
422 231  
423 232 csresmap - Generate residual map
... ... @@ -427,67 +236,32 @@ None
427 236  
428 237 csresspec - Generate residual spectrum
429 238 --------------------------------------
430   -The script now also works for observation specific models. Stacking of
431   -residuals is now only performed after residual computation for each
432   -observation, so that stacking of observation specific models becomes
433   -possible (#2883).
434   -
435   -An exception occured when using a pre-computed model cube via the modcube
436   -parameter due to a bug in the code. This bug was fixed (#2448).
  239 +None
437 240  
438 241  
439 242 csroot2caldb - Generates calibration database from ROOT file
440 243 ------------------------------------------------------------
441   -Change energy dispersion energy axis name from "ETRUE" to "ENERG" (#2670).
442   -
443   -Change background template table name from "BGD" to "BKG" (#2343).
444   -
445   -The ROOT Python module is now imported in the run method and not globally so
446   -that no conflit arises with the "--help" option (#2652).
  244 +None
447 245  
448 246  
449 247 cssens - Computes sensitivity curve
450 248 -----------------------------------
451   -Add hidden "nthreads" parameter and implement parallelisation of computations
452   -(#2421).
  249 +None
453 250  
454 251  
455 252 csspec - Generates Spectral Energy Distribution
456 253 -----------------------------------------------
457   -Correctly propagate the instrument name for On/Off observations.
458   -
459   -The script no longer skips energy bins with zero counts (#2671).
460   -
461   -The full true energy range of the RMF is now used in an On/Off analysis to
462   -prevent cutting off the tails of the energy dispersion, which happened before
463   -when the script was used for the analysis of H.E.S.S. data (#2656).
464   -
465   -Add hidden "nthreads" parameter and implement parallelisation of computations
466   -(#2421).
467   -
468   -csspec now properly computes the Test Statistic for an On/Off analysis using
469   -the "wstat" statistic in the case that the input model definition XML file
470   -did not contain a background model (#2312).
471   -
472   -csspec now computes upper limits also for the NODES method by fixing all node
473   -intensities and varying each node until the log-likelihood increases by a
474   -certain amount (#2233).
  254 +None
475 255  
476 256  
477 257 cssrcdetect - Detects sources in sky map
478 258 ----------------------------------------
479   -The script was made more robust by optionally convolving the input sky map
480   -with a smoothing kernel with a specified correlation radius (options are a
481   -"DISK" or a "GAUSSIAN" kernel, default is now "DISK"). In addition, the mean
482   -and standard deviation of the pixel values are now computed locally over a
483   -given radius, controlled through the "avgrad" parameter. This accomodates for
484   -counts variations in the field of view (#2498).
  259 +None
485 260  
486 261  
487 262 cstsdist - Computes Test Statistic distribution
488 263 -----------------------------------------------
489   -Add hidden "nthreads" parameter and implement parallelisation of computations
490   -(#2421).
  264 +None
491 265  
492 266  
493 267 cstsmapmerge - Merge Test Statistic maps
... ... @@ -497,17 +271,12 @@ None
497 271  
498 272 cstsmapsplit - Prepare split Test Statistic computation
499 273 -------------------------------------------------------
500   -Add hidden "max_iter" parameter to allow control of the number of fit
501   -iterations.
502   -
503   -Add hidden "like_accuracy" parameter to allow control of the accuracy of
504   -the maximum log-likelikelihood value (#2662).
  274 +None
505 275  
506 276  
507 277 csviscube - Generate visibility cube
508 278 ------------------------------------
509   -Add hidden "mjdref" parameter for the specification of the MET reference
510   -(#2054).
  279 +None
511 280  
512 281  
513 282 csworkflow - Execute workflow
... ... @@ -532,21 +301,17 @@ None
532 301  
533 302 mputils - Multiprocessing utilities
534 303 -----------------------------------
535   -Introduce module (#2421).
  304 +None
536 305  
537 306  
538 307 obsutils - Observation utilities
539 308 --------------------------------
540   -Add "mjdref" parameter to set_obs() function (#2054).
  309 +None
541 310  
542 311  
543 312 Examples
544 313 --------
545   -Add show_significance_distribution.py example script (#2723)
546   -
547   -Handle zero model values for SUBVID method in show_response.py script (#2456).
548   -
549   -Added show_rmf.py script.
  314 +None
550 315  
551 316  
552 317 caldb
... ...
README.md
1 1 ctools information
2 2 ==================
3   -* Version: 1.6.0 (29 May 2019)
  3 +* Version: 1.7.0.dev (29 May 2019)
4 4 * Author: Juergen Knoedlseder (jurgen.knodlseder@irap.omp.eu)
5   -* GammaLib dependency: 1.6.0
  5 +* GammaLib dependency: 1.7.0.dev
6 6  
7 7 [![Build Status](https://cta-jenkins.irap.omp.eu/buildStatus/icon?job=ctools-integrate-os)](https://cta-jenkins.irap.omp.eu/job/ctools-integrate-os/)
8 8  
... ...
configure.ac
... ... @@ -28,7 +28,7 @@
28 28 #############################################################################
29 29 # Initialisation #
30 30 #############################################################################
31   -AC_INIT([ctools], [1.6.0], [jurgen.knodlseder@irap.omp.eu], [ctools])
  31 +AC_INIT([ctools], [1.7.0.dev], [jurgen.knodlseder@irap.omp.eu], [ctools])
32 32 AC_CONFIG_SRCDIR([src/ctselect/ctselect.cpp])
33 33 AC_CONFIG_MACRO_DIR([m4])
34 34 #AM_INIT_AUTOMAKE([gnu no-dependencies foreign])
... ...
dev/release.py
... ... @@ -2,7 +2,7 @@
2 2 # ==========================================================================
3 3 # ctools release manager
4 4 #
5   -# Copyright (C) 2016 Juergen Knoedlseder
  5 +# Copyright (C) 2016-2019 Juergen Knoedlseder
6 6 #
7 7 # This program is free software: you can redistribute it and/or modify
8 8 # it under the terms of the GNU General Public License as published by
... ... @@ -190,6 +190,8 @@ def check_version(version):
190 190 elif split[3][0:3] == 'dev':
191 191 if split[3][3:].isdigit():
192 192 check = True
  193 + else:
  194 + check = True
193 195  
194 196 # Return check
195 197 return check
... ...
doc/Doxyfile
... ... @@ -32,7 +32,7 @@ PROJECT_NAME = ctools
32 32 # This could be handy for archiving the generated documentation or
33 33 # if some version control system is used.
34 34  
35   -PROJECT_NUMBER = 1.6.0
  35 +PROJECT_NUMBER = 1.7.0.dev
36 36  
37 37 # Using the PROJECT_BRIEF tag one can provide an optional one line description
38 38 # for a project that appears at the top of each page and should give viewer
... ...
doc/source/conf.py
... ... @@ -75,10 +75,10 @@ copyright = u'2014-2019, ctools developers'
75 75 # built documents.
76 76 #
77 77 # The short X.Y version.
78   -version = '1.6'
  78 +version = '1.7'
79 79  
80 80 # The full version, including alpha/beta/rc tags.
81   -release = '1.6.0'
  81 +release = '1.7.0.dev'
82 82  
83 83 # The language for content autogenerated by Sphinx. Refer to documentation
84 84 # for a list of supported languages.
... ...
sonar-project.properties
1 1 # Required metadata
2 2 sonar.projectKey=ctools
3 3 sonar.projectName=ctools
4   -sonar.projectVersion=1.6.0
  4 +sonar.projectVersion=1.7.0.dev
5 5  
6 6 # Description
7 7 sonar.projectDescription="Cherenkov Telescope Array Science Analysis Software"
... ...