NEWS 4.09 KB
New Features and Important Changes in GammaLib 1.3.0.dev1

5 April 2017


1. Introduction
---------------
This document briefly summarizes module by module the most important changes
made since the last release of GammaLib.


2. Public interface modifications
---------------------------------
The following classes have been added:
- GWcsGLS
- GWcsSFL
- GModelSpectralSmoothBrokenPlaw

The following classes have been removed:
- ...

The following classes have been renamed:
- ...

The following methods have been added:
- GCTAResponseIrf::rspname
- GCTARoi::contains
- GCTAEdisp2D::fetch
- GEbounds::set
- GEnergies::set

The following methods have been removed:
- ...

The following methods have been renamed:
- ...

The arguments for the following methods have been changed:
- ...

The return value of the following methods has been changed:
- ...


3. Configuration
-----------------
The Python unit tests now raise exceptions instead of exiting with a non-
zero return code so that the user is not thrown out of Python after calling
gammalib.test() (#1983).

If the code originates from the Git repository the configuration now switches
to developer mode which implies that the Python bindings are always built.
This solves the problem that occured for developers that could not get rid
of existing Python wrappers, even if they modified the Python interface
(#1985).

The shared libraries needed by the Python wrappers are now copied into a
build/gammalib directory for unit testing instead of creating a symbolic
link since on shared VM file systems symbolic links may not work (#1987).


4. Application module
---------------------
None


5. Base module
--------------
None


6. FITS I/O Interface
---------------------
FITS image type conversion constructors have been added to convert a FITS
image of any type into a specific storage class (#1986).


7. Linear algebra module
------------------------
None


8. Model module
---------------
The GModelSpectralNodes class now throws an exception if the energy or
intensity of a node is set to a non-positive value (#990).

The GModelSpectralSmoothBrokenPlaw class that implements a smoothly broken
power law spectrum has been added (#1948).


9. Numerics module
------------------
None


10. Observation module
----------------------
A set() method has been added to GEbounds and GEnergies to allow converting
energy boundaries into an energy container and vice versa. In addition,
conversion constructors have been added (#1977).


11. Optimization module
-----------------------
None


12. Sky module
--------------
The GWcsGLS and GWcsSFL classes have been added to support the GLS and SFL
World Coordinate System projections (#1851).

The GWcs base class now also supports CD keywords instead of CDELT keywords
(#1951).


13. Support module
------------------
None


14. XML module
--------------
None


15. VO module
-------------
None


16. Xspec module
----------------
None


17. Test module
---------------
None


18. Multi-wavelength interface
------------------------------
None


19. Fermi-LAT interface
----------------------
None


20. CTA interface
-----------------
Correct the containment radius computation in GCTAPsf2D (#1876).

The GCTAResponseIrf::rspname method has been added that returns the name
of the response function (attribute m_rspname).

Do no longer interpret a CTA calibration database as a file path in the
GCTAResponseIrf::read() method (#1969).

Add GCTARoi::contains() method that checks whether an instrument direction
is contained within the region of interest.

Lazy loading of the energy dispersion in GCTAEdisp2D has been implemented by
adding a fetch() method to the class. Now the energy dispersion is only loaded
when needed, for example for function evaluation or Monte Carlo sampling (#1940).

The GCTAEdisp2D::compute_ebounds_src method now loops over the migration to
enhance the precision in the true energy boundaries that are returned by this
method. In addition, the validity range of the table is now stored in members
of the class, and a non-zero energy dispersion is only returned for valid
elements of the response table.


21. COMPTEL interface
---------------------
None