Commit 94e76272ce046b35d56d73dfea91be1e0304baca

Authored by knodlseder
1 parent 8f066a1f

update for release 00-04-05

1 -This is the first public release of the GammaLib.  
2 \ No newline at end of file 1 \ No newline at end of file
  2 +New Features and Important Changes in GammaLib 00-04-05
  3 +
  4 +Author(s) : Juergen Knoedlseder
  5 +
  6 +January 31, 2011
  7 +
  8 +
  9 +1. Introduction
  10 +---------------
  11 +This document briefly summarizes module by module the most important changes
  12 +made since the last release of GammaLib.
  13 +
  14 +
  15 +2. Configuration
  16 +-----------------
  17 +The GammaLib configuration procedure has been improved. Now, installation
  18 +follows the standard GNU procedure
  19 +> ./configure
  20 +> make
  21 +> make check
  22 +> make install
  23 +
  24 +swig is no longer required to create python bindings. The corresponding wraper
  25 +files are now shipped with the code and automatically recognised by the
  26 +configuration script.
  27 +
  28 +Remove the --with-cfitsio-lib-dir option, as this is not GNU standard. Use
  29 +LDFLAGS='-L/...' and CPPFLAGS='-I/...' instead to specify the corresponding
  30 +directories.
  31 +
  32 +Configure does not halt anymore if cfitsio and/or readline do not exist. A
  33 +summary of the GammaLib configuration is dumped at the end of configuration
  34 +to the screen.
  35 +
  36 +The autogen.sh script is now removed from the release.
  37 +
  38 +
  39 +2. Application module
  40 +---------------------
  41 +None
  42 +
  43 +
  44 +3. FITS I/O Interface
  45 +---------------------
  46 +None
  47 +
  48 +
  49 +4. Linear algebra module
  50 +------------------------
  51 +None
  52 +
  53 +
  54 +5. Model module
  55 +---------------
  56 +The general structure of a model has been considerably reworked.
  57 +
  58 +GModel is now an abstract base class for any kind of model. Before it was an
  59 +implemented class that only handled factorized sky models.
  60 +
  61 +The original GModel class has been renamed to GModelSky and has also been made
  62 +an abstract base class. Two derived classes have been added that provide now
  63 +the implementations of factorized sky models: GModelPointSource for point
  64 +sources, and GModelDiffuseSource for diffuse models.
  65 +
  66 +An additional abstract base class named GModelData has been added to provide
  67 +the interface for general data models.
  68 +
  69 +Registry classes have been added that allow to register new model components,
  70 +even if they are not linked into GammaLib. Support has been added that these
  71 +registries are used for reading model information from an XML file. Thus, new
  72 +models can now be linked externally to GammaLib and will be automatically
  73 +recognised.
  74 +
  75 +
  76 +6. Numerics module
  77 +------------------
  78 +None
  79 +
  80 +
  81 +7. Observation module
  82 +---------------------
  83 +None
  84 +
  85 +
  86 +8. Optimization module
  87 +----------------------
  88 +None
  89 +
  90 +
  91 +9. Sky module
  92 +-------------
  93 +None
  94 +
  95 +
  96 +10. Support module
  97 +------------------
  98 +None
  99 +
  100 +
  101 +11. XML module
  102 +--------------
  103 +None
  104 +
  105 +
  106 +12. Multi-wavelength interface
  107 +------------------------------
  108 +None
  109 +
  110 +
  111 +13. Fermi-LAT interface
  112 +-----------------------
  113 +None
  114 +
  115 +
  116 +14. CTA interface
  117 +-----------------
  118 +Added a radial acceptance model named GCTAModelRadialAcceptance as a derived
  119 +class of the abstract GModelData class. This model provides a representation
  120 +of the CTA radial acceptance that is factorised in a radial function and a
  121 +spectral function.
  122 +
  123 +An abstract radial acceptance function base class GCTAModelRadial has been
  124 +added, as well as a corresponding registry GCTAModelRadialRegistry. This allows
  125 +now to define arbitrary radial acceptance models for CTA.
  126 +
  127 +As a first dummy model, a Gaussian (in offset squared) radial acceptance model
  128 +has been implemented in GCTAModelRadialGauss. The model also supports the mc()
  129 +for simulating CTA background events.
  130 +
  131 +
1 -This is GammaLib version 0.4.4  
2 -============================== 1 +GammaLib information
  2 +====================
  3 +Version: 00-04-05 (January 31, 2011)
  4 +Author: Juergen Knodlseder (knodlseder@cesr.fr)
3 5
4 6
5 License information 7 License information
6 --------------------  
7 - 8 +===================
8 To be written ... 9 To be written ...
9 10
10 11
11 What's new in this release? 12 What's new in this release?
12 ----------------------------  
13 -  
14 -See the file "NEWS". 13 +===========================
  14 +See the files "NEWS" and "ChangeLog".
15 15
16 16
17 What is the GammaLib anyway? 17 What is the GammaLib anyway?
18 -----------------------------  
19 - 18 +============================
20 The GammaLib is a vesatile toolbox for the high-level analysis of 19 The GammaLib is a vesatile toolbox for the high-level analysis of
21 astronomical gamma-ray data. It is implemented as a C++ library 20 astronomical gamma-ray data. It is implemented as a C++ library
22 that is fully scriptable in the Python scripting language. The library 21 that is fully scriptable in the Python scripting language. The library
@@ -30,29 +29,147 @@ data analysis framework that enables simultaneous multi-mission analysis. @@ -30,29 +29,147 @@ data analysis framework that enables simultaneous multi-mission analysis.
30 29
31 30
32 Web sites 31 Web sites
33 ---------- 32 +=========
  33 +http://gammalib.sourceforge.net - for documentation
  34 +https://sourceforge.net/projects/gammalib/ - for downloads
34 35
35 -http://gammalib.sourceforge.net  
36 36
  37 +Prerequisites
  38 +=============
  39 +GammaLib should compile on every modern Unix system without any need
  40 +to install other libraries.
37 41
38 -Bug reports  
39 ------------ 42 +To enable support for FITS file handling, however, the cfitsio library
  43 +from HEASARC needs to be installed. cfitsio can be downloaded from
  44 +http://heasarc.gsfc.nasa.gov/fitsio and detailed installation instructions
  45 +can be found there. If cfitsio does not already exist on your system,
  46 +we recommend installation of cfitsio in the default GammaLib install
  47 +directory as a shared library by typing:
  48 +
  49 + % ./configure --prefix=/usr/local/gamma
  50 + % make shared
  51 + % make install
  52 +
  53 +GammaLib can also benefit from the presence of the readline library
  54 +that provides line-editing and history capabilities for text input
  55 +(GammaLib offers however also full functionality without having
  56 +readline installed). readline can be downloaded from
  57 +http://ftp.gnu.org/gnu/readline/
  58 +
  59 +
  60 +Unix Installation
  61 +=================
  62 +To build and install GammaLib, simply type the following:
  63 +
  64 + % ./configure
  65 + % make
  66 + % make install
  67 +
  68 +By default GammaLib installs itself in /usr/local/gamma. If you need to
  69 +install GammaLib in a different location or in your home directory, use
  70 +the --prefix option to ./configure. For example:
  71 +
  72 + % ./configure --prefix=/home/yourname/projects
  73 + % make
  74 + % make install
  75 +
  76 +The file INSTALL details more about using configure. Also try
  77 +
  78 + % ./configure --help.
  79 +
  80 +
  81 +Macintosh OS X Installation
  82 +============================
  83 +GammaLib is known to work on various flavors of OS X. Follow the Unix
  84 +installation instructions above.
  85 +
  86 +
  87 +Solaris Installation
  88 +====================
  89 +GammaLib compiles on Solairs, but there is an issue with using it as a
  90 +shared library (see "Known problems" below).
  91 +
  92 +
  93 +Testing
  94 +=======
  95 +If you want to test GammaLib before installation, type the following:
  96 +
  97 + % make check
40 98
  99 +
  100 +Setting up your environment
  101 +===========================
  102 +Before using GammaLib you have to setup some environment variables.
  103 +Assuming that you have installed GammaLib in the default directory
  104 +/usr/local/gamma you need to add the following to your .bashrc or
  105 +$HOME/.profile script on a Linux machine:
  106 +
  107 + export PYTHONPATH=/usr/local/gamma/lib/python2.5/site-packages:$PYTHONPATH
  108 + export LD_LIBRARY_PATH=/usr/local/gamma/lib:$LD_LIBRARY_PATH
  109 +
  110 +Please adapt the Python version (python2.5 in this example) to the
  111 +version available on your machine.
  112 +
  113 +On Mac OS X you have to change LD_LIBRARY_PATH to DYLD_LIBRARY_PATH:
  114 +
  115 + export PYTHONPATH=/usr/local/gamma/lib/python2.5/site-packages:$PYTHONPATH
  116 + export DYLD_LIBRARY_PATH=/usr/local/gamma/lib:$DYLD_LIBRARY_PATH
  117 +
  118 +And if you use C shell or a variant, add the following to your
  119 +.cshrc or .tcshrc script:
  120 +
  121 + setenv PYTHONPATH /usr/local/gamma/lib/python2.5/site-packages:$PYTHONPATH
  122 + setenv LD_LIBRARY_PATH /usr/local/gamma/lib:$LD_LIBRARY_PATH
  123 +
  124 +
  125 +Getting started
  126 +===============
  127 +The easiest way to start with GammaLib is by using the python interface.
  128 +To start, type the following:
  129 +
  130 + % python
  131 + >>> from gammalib import *
  132 + >>> models=GModels()
  133 + >>> print models
  134 + === GModels ===
  135 + Number of models ..........: 0
  136 + Number of parameters ......: 0
  137 +
  138 +This examples allocates an empty GModels object that holds a collection
  139 +of models.
  140 +
  141 +For examples, inspect the test directory, and the test directories
  142 +of the instrument specific interfaces, e.g. inst/mwl/test, inst/lat/test,
  143 +and inst/cat/test.
  144 +
  145 +
  146 +Documentation
  147 +=============
  148 +The doc directory contains the most recent set of updated documentation
  149 +for this release. The documentation is available in PDF format.
  150 +
  151 +This is a development release and the documentation is largely, but
  152 +not entirely up to date. We are working on it. Please be patient or
  153 +volunteer to help.
  154 +
  155 +
  156 +Bug reports
  157 +===========
41 To report or search for bugs, please use the GammaLib Bug Tracker at 158 To report or search for bugs, please use the GammaLib Bug Tracker at
42 https://sourceforge.net/tracker/?group_id=282143&atid=1196795. 159 https://sourceforge.net/tracker/?group_id=282143&atid=1196795.
43 160
44 161
45 Known problems 162 Known problems
46 ---------------  
47 -  
48 -SWIG 1.3.33  
49 - The definition of the GTimes vector using std_vector.i leads to warnings  
50 - during creation of the C++ python wrapper using swig. These warnings are  
51 - however not preventing compilation of the code 163 +==============
  164 +Solaris
  165 + Although GammaLib compiles on Solaris using the Sun compiler, there are
  166 + problems with global symbols in the shared library that prevent the
  167 + model registry to work correctly. Furthermore, GammaLib is not able
  168 + to catch its own exceptions, which prevents the FITS interface to work
  169 + correctly. If GammaLib is linked statically
52 170
53 171
54 Contact 172 Contact
55 --------  
56 - 173 +=======
57 To get in touch with the GammaLib developers and to contribute to the 174 To get in touch with the GammaLib developers and to contribute to the
58 project please contact Juergen Knoedlseder <knodlseder@cesr.fr>. 175 project please contact Juergen Knoedlseder <knodlseder@cesr.fr>.
configure.ac
@@ -5,12 +5,12 @@ @@ -5,12 +5,12 @@
5 # 5 #
6 # GammaLib is free software; you can redistribute it and/or modify it 6 # GammaLib is free software; you can redistribute it and/or modify it
7 # under the terms of the GNU General Public License as published by the 7 # under the terms of the GNU General Public License as published by the
8 -# Free Software Foundation; either version 3, or (at your option) any 8 +# Free Software Foundation; either version 2, or (at your option) any
9 # later version. 9 # later version.
10 # 10 #
11 # Process this file with autoconf to produce a configure script 11 # Process this file with autoconf to produce a configure script
12 12
13 -AC_INIT([GammaLib], [0.4.4], [knodlseder@cesr.fr], [gammalib], [http://gammalib.sourceforge.net/]) 13 +AC_INIT([GammaLib], [0.4.5], [knodlseder@cesr.fr], [gammalib], [http://gammalib.sourceforge.net/])
14 AC_CONFIG_SRCDIR([src/support/GTools.cpp]) 14 AC_CONFIG_SRCDIR([src/support/GTools.cpp])
15 AC_CONFIG_MACRO_DIR([m4]) 15 AC_CONFIG_MACRO_DIR([m4])
16 AM_INIT_AUTOMAKE([gnu no-dependencies]) 16 AM_INIT_AUTOMAKE([gnu no-dependencies])
gammalib.pc.in
@@ -5,6 +5,6 @@ includedir=${prefix}/include @@ -5,6 +5,6 @@ includedir=${prefix}/include
5 5
6 Name: GammaLib 6 Name: GammaLib
7 Description: Versatile toolbox for analysis of astronomical gamma-ray data 7 Description: Versatile toolbox for analysis of astronomical gamma-ray data
8 -Version: 0.4 8 +Version: 0.4.5
9 Libs: -L${libdir} -lgamma @LIBS@ -lm 9 Libs: -L${libdir} -lgamma @LIBS@ -lm
10 Cflags: -I${includedir}/gammalib 10 Cflags: -I${includedir}/gammalib