-
The convert() and set() methods now support time references given in the UTC time system. Using convert() one can now extract for example MJD in the UTC time system. All this needs still to be documented.
-
This required implementation of a leap_seconds() computation method. The leap second table is statically implement in the method and needs manual update when leap seconds are added.
-
…o GOptimizer base class. Further implemented GObservations::errors()
-
…daries. Also streamlined the interface to avoid passing parameter indices. We now pass parameter references.
-
…c_cast statements by static_cast.
-
The CTA response was refactored. GCTAResponse was renamed GCTAResponseIrf, and GCTAResponse became an abstract base class for all possible CTA response functions. GCTAResponseIrf derives from GCTAResponse. Also GCTAResponseCube derives from GCTAResponse. To make this work, the GObservation::response() method now returns a pointer instead of a reference. The interface definition is such that the pointer never can be NULL. The code has been adapted to comply to this new interface. Upon reading an XML file, GCTAObservation now determines the appropriate reponse type and calls its reader. If no response is specified in the XML file, GCTAResponseIrf will be used by default.
-
Event cube bins with a negative number of counts are excluded from the binned likelihood computation. This allows filtering of event bins.
-
When energy boundaries are read from a FITS file, the energy units are set according to the FITS header keyword. If no keyword is provided, units are set to keV. Upon writing, the energy units can be specified as an argument.
-
The unit set operator allows setting of energies using a syntax like: GEnergy eng; eng(1.0, "TeV");
-
The GEnergy::operator() allows to specify the energy unit as a string, and returns the energy value according to the string as double precision value.
-
The log10() method allows specifying the energy unit in setting the energy value. The log10erg() methods allow setting and retrieving and energy in log10 of ergs.
-
The GAMMALIB_CALDB environment variable is specific to GammaLib and does not allow for a transparent usage with ctools. This special things has thus been removed.
-
A precision of 1e-8 leads to an inacceptable increase of the computing time. A precision of 1e-6 should also to the job, although results are less accurate.
-
An offset has been observed in the fitted normalization of file function models that has been tracked down to an insufficient precision in the Npred integrator (see #1142). Numerical tests have shown that increasing the precision from 1e-5 to 1e-8 solve the issue.
-
Earlier gcc compilers do not allow creation of an instance in the return statement.
-
Before the print() method threw an exception if the root directory was not defined. Not it signals that the root directory is not defined an exits.
-
If energy dispersion is available, the analytical gradients are wrong as they are not integrated over the energy dispersion PDF. We thus switch to numerical gradients in this case, which works pretty easy. This is somehow a kluge, but not sure that integrating the analytical gradients numerically would at the end be faster.
-
Minor adjustments were needed to make the code compile.
-
Conflicts: inst/cta/include/GCTAResponse.hpp inst/cta/src/GCTAResponse.cpp
-
The energy integration has been implemented in the GModelSky::integrate_energy method. For that purpose, the GModelSky::edisp_kern class has been added to GModelSky that provides the kernel for the integration. The GResponse::src_ebounds method has been added to determine the true energy boundaries for a given observed event energy. The method is virtual in GResponse and always throws a "feature not implemented" exception. The method has then also been implemented in GCTAResponse to provide the true energy boundaries.
-
Now, GCaldb only reads the CALDB environment variable when needed. This allows changing the CALDB environment variable during runtime. Rename GCaldb::dir to GCaldb::rootdir.