Commit 94e76272ce046b35d56d73dfea91be1e0304baca
1 parent
8f066a1f
update for release 00-04-05
Showing
4 changed files
with
271 additions
and
25 deletions
NEWS
| 1 | -This is the first public release of the GammaLib. | |
| 2 | 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 | + | ... | ... |
README
| 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 | 7 | License information |
| 6 | -------------------- | |
| 7 | - | |
| 8 | +=================== | |
| 8 | 9 | To be written ... |
| 9 | 10 | |
| 10 | 11 | |
| 11 | 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 | 17 | What is the GammaLib anyway? |
| 18 | ----------------------------- | |
| 19 | - | |
| 18 | +============================ | |
| 20 | 19 | The GammaLib is a vesatile toolbox for the high-level analysis of |
| 21 | 20 | astronomical gamma-ray data. It is implemented as a C++ library |
| 22 | 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 | |
| 31 | 30 | |
| 32 | 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 | 158 | To report or search for bugs, please use the GammaLib Bug Tracker at |
| 42 | 159 | https://sourceforge.net/tracker/?group_id=282143&atid=1196795. |
| 43 | 160 | |
| 44 | 161 | |
| 45 | 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 | 172 | Contact |
| 55 | -------- | |
| 56 | - | |
| 173 | +======= | |
| 57 | 174 | To get in touch with the GammaLib developers and to contribute to the |
| 58 | 175 | project please contact Juergen Knoedlseder <knodlseder@cesr.fr>. | ... | ... |
configure.ac
| ... | ... | @@ -5,12 +5,12 @@ |
| 5 | 5 | # |
| 6 | 6 | # GammaLib is free software; you can redistribute it and/or modify it |
| 7 | 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 | 9 | # later version. |
| 10 | 10 | # |
| 11 | 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 | 14 | AC_CONFIG_SRCDIR([src/support/GTools.cpp]) |
| 15 | 15 | AC_CONFIG_MACRO_DIR([m4]) |
| 16 | 16 | AM_INIT_AUTOMAKE([gnu no-dependencies]) | ... | ... |
gammalib.pc.in