New Features and Important Changes in ctools 1.7.0 13 December 2019 Introduction ------------ This document briefly summarizes the changes that have been made in this ctools release with respect to the precedent release. Configuration ------------- None Documentation ------------- None Python interface ---------------- None Support model ------------- None Base classes ------------ The headers in the log files created by cscripts that were derived from the ctools.cscript base class were repeated. This repetition was not present in the other base classes due to a reopening of the log file in those classes. The logic was changed so that the cscripts now behave like the ctools. A log file is not written by default in Python, the logFileOpen() method needs to be called for that. And the header is only written once in the log file (#3066). ctbin - CTA event binning ------------------------- None ctbkgcube - CTA background cube generation ------------------------------------------ None ctbutterfly - Generate butterfly diagrams ----------------------------------------- None ctcubemask - CTA cube filtering ------------------------------- None ctedispcube - CTA energy dispersion cube generation --------------------------------------------------- None cterror - Likelihood profile error computation ---------------------------------------------- None ctexpcube - CTA exposure cube generation ---------------------------------------- None ctfindvar - Variability search ------------------------------ None ctlike - Maximum likelihood fitting ----------------------------------- None ctmapcube - CTA map cube generation ----------------------------------- None ctmodel - CTA counts cube modelling ----------------------------------- None ctobssim - CTA observation simulation ------------------------------------- None ctphase - Event phase computation --------------------------------- None ctprob - Event probability computation -------------------------------------- None ctpsfcube - CTA point spread function cube generation ----------------------------------------------------- None ctselect - CTA event selection ------------------------------ None ctskymap - CTA sky mapping -------------------------- Added ctskymap::fits() method to allow access of FITS file object before saving the object to disk. This allows manipulation of ctskymap results without writing a FITS file (#2925). cttsmap - Generation of Test Statistic map ------------------------------------------ Remove response cache for test source before fitting the source (#2973). ctulimit - Compute upper limit ------------------------------ None support - Support classes ------------------------- None csbkgmodel - Generate background model for 3D analysis ------------------------------------------------------ None cscaldb - Inspect calibration database -------------------------------------- None csebins - Generate energy boundaries ------------------------------------ None csfindobs - Find IACT observations ---------------------------------- None csiactcopy - Copy IACT observations ----------------------------------- None csiactdata - Inspect IACT data store ------------------------------------ None csiactobs - Inspect IACT observation definition XML file -------------------------------------------------------- None cslightcrv - Generate light curve --------------------------------- None csmodelinfo - Return model information -------------------------------------- None csmodelmerge - Merge models --------------------------- None csmodelselect - Select models ----------------------------- None csmodelsois - Puts selected sources in diffuse model cube --------------------------------------------------------- None csobs2caldb - Generate calibration database entry for an IACT observation ------------------------------------------------------------------------- None csobsdef - Generate observation definition XML file --------------------------------------------------- None csobsinfo - Return observation definition information ----------------------------------------------------- None csobsselect - Select observations --------------------------------- None csphagen - Generate On/Off observations --------------------------------------- Setting the exclusion map via csphagen.exclusion_map(object=) will now actually use the exclusion map even if the "inexclusion" parameter is not set. Before, the only exclusion that would be used was the exclusion passed via the "inexclusion" "parameter. If re-running csphagen using the "inexclusion" parameter after setting the map with csphagen.exclusion_map() you should first call csphagen.exclusion_map(object=gammalib.GSkyRegionMap()). This makes the map empty and csphagen then checks the "inexclusion" "parameter (#2925). csphasecrv - Generate phase curve --------------------------------- None cspull - Generate pull distributions ------------------------------------ None csresmap - Generate residual map -------------------------------- None csresspec - Generate residual spectrum -------------------------------------- None csroot2caldb - Generates calibration database from ROOT file ------------------------------------------------------------ None cssens - Computes sensitivity curve ----------------------------------- Allow using spectral models without "Prefactor" parameter for sensitivity computation (#1889). csspec - Generates Spectral Energy Distribution ----------------------------------------------- None cssrcdetect - Detects sources in sky map ---------------------------------------- The using of a smoothing kernel in the _map_moments() method can lead to negative squared standard deviations that lead to an exception when the square root is taken. A filter was introduced that sets all small values of mean and std to zero, avoiding thus the exception. cstsdist - Computes Test Statistic distribution ----------------------------------------------- Allow using spectral models without "Prefactor" parameter for computation of TS distribution (#1889). cstsmapmerge - Merge Test Statistic maps ---------------------------------------- None cstsmapsplit - Prepare split Test Statistic computation ------------------------------------------------------- None csviscube - Generate visibility cube ------------------------------------ Moon contraints were added to compute a more accurate visibility cube. So far there are two constraints: - moonzenith, which specifies a minimum allow zenith angle for the Moon. In other words, if the Moon is higher in the sky than the specified zenith angle, the corresponding times are excluded from the visibility cube. - maxfli, which specifies the maximum fraction of lunar illumination. If the Moon has an illumination that is equal or larger than this fraction, the corresponding times are excluded from the visibility cube. (#3065). csworkflow - Execute workflow ----------------------------- None calutils - Calibration utilities -------------------------------- None ioutils - Input/Output utilities -------------------------------- None modutils - Model utilities -------------------------- Allow using spectral models without "Prefactor" parameter as test source in test_source() function. Add normalisation_parameter() function to retrieve spectral normalisation parameter from any model (#1889). mputils - Multiprocessing utilities ----------------------------------- None obsutils - Observation utilities -------------------------------- None Examples -------- The show_viscube.py script was added to display a visibility cube (#3065). The example scripts show_butterfly.py, show_spectrum.py, show_residuals.py and show_significance_distribution.py can now be run using objects that only exist in memory (#2925). caldb ----- None models ------ None