Commit d8bfe7c2c0f01861a4f1bd37c05c8d43ebd2834d
1 parent
2c9b9195
Update the Getting Started section of the User documentation
Showing
16 changed files
with
855 additions
and
763 deletions
doc/source/develop/git/index.rst
| ... | ... | @@ -33,14 +33,14 @@ Before you start |
| 33 | 33 | Make sure you configured your `Git <https://git-scm.com/>`_ using your user |
| 34 | 34 | name and e-mail address (you only need to do this once on your machine): |
| 35 | 35 | |
| 36 | -.. code-block:: sh | |
| 36 | +.. code-block:: bash | |
| 37 | 37 | |
| 38 | 38 | $ git config --global user.name "John Doe" |
| 39 | 39 | $ git config --global user.email johndoe@example.com |
| 40 | 40 | |
| 41 | 41 | In addition, you may need to add |
| 42 | 42 | |
| 43 | -.. code-block:: sh | |
| 43 | +.. code-block:: bash | |
| 44 | 44 | |
| 45 | 45 | $ git config --global http.sslverify "false" |
| 46 | 46 | |
| ... | ... | @@ -95,7 +95,7 @@ ownership. |
| 95 | 95 | |
| 96 | 96 | Now you can clone this fork using |
| 97 | 97 | |
| 98 | -.. code-block:: sh | |
| 98 | +.. code-block:: bash | |
| 99 | 99 | |
| 100 | 100 | $ git clone https://cta-gitlab.irap.omp.eu/[user]/ctools.git |
| 101 | 101 | |
| ... | ... | @@ -106,13 +106,13 @@ user name. |
| 106 | 106 | To keep in sync with the ctools repository you should add it as |
| 107 | 107 | a remote repository using |
| 108 | 108 | |
| 109 | -.. code-block:: sh | |
| 109 | +.. code-block:: bash | |
| 110 | 110 | |
| 111 | 111 | $ git remote add upstream https://cta-gitlab.irap.omp.eu/ctools/ctools.git |
| 112 | 112 | |
| 113 | 113 | You can then type |
| 114 | 114 | |
| 115 | -.. code-block:: sh | |
| 115 | +.. code-block:: bash | |
| 116 | 116 | |
| 117 | 117 | $ git pull upstream devel |
| 118 | 118 | |
| ... | ... | @@ -127,7 +127,7 @@ To work on a new feature or to correct a bug you should always create a new |
| 127 | 127 | branch. |
| 128 | 128 | You do this by typing |
| 129 | 129 | |
| 130 | -.. code-block:: sh | |
| 130 | +.. code-block:: bash | |
| 131 | 131 | |
| 132 | 132 | $ git checkout devel |
| 133 | 133 | $ git pull upstream devel |
| ... | ... | @@ -150,13 +150,13 @@ Once you have verified that the bug is correct you should commit your changes. |
| 150 | 150 | |
| 151 | 151 | First stage the files you want to commit: |
| 152 | 152 | |
| 153 | -.. code-block:: sh | |
| 153 | +.. code-block:: bash | |
| 154 | 154 | |
| 155 | 155 | $ git add src/ctselect/ctselect.cpp |
| 156 | 156 | |
| 157 | 157 | and then commit your change: |
| 158 | 158 | |
| 159 | -.. code-block:: sh | |
| 159 | +.. code-block:: bash | |
| 160 | 160 | |
| 161 | 161 | $ git commit -m "Corrected event selection in ctselect (#5783) |
| 162 | 162 | > |
| ... | ... | @@ -176,7 +176,7 @@ changes into your |
| 176 | 176 | repository. |
| 177 | 177 | You do this by typing |
| 178 | 178 | |
| 179 | -.. code-block:: sh | |
| 179 | +.. code-block:: bash | |
| 180 | 180 | |
| 181 | 181 | $ git push origin 5783-correct-event-selection |
| 182 | 182 | ... | ... |
doc/source/users/user_manual/getting.rst
| ... | ... | @@ -63,7 +63,7 @@ in an appropriate location (for example ``$HOME/builds``), and type |
| 63 | 63 | |
| 64 | 64 | .. code-block:: bash |
| 65 | 65 | |
| 66 | - $ tar xvfz gammalib-1.0.0.tar.gz | |
| 66 | + $ tar xvfz gammalib-1.1.0.tar.gz | |
| 67 | 67 | |
| 68 | 68 | (the ``$`` symbol indicates the console prompt and is not part of the |
| 69 | 69 | command that you should type in). |
| ... | ... | @@ -73,7 +73,7 @@ typing |
| 73 | 73 | |
| 74 | 74 | .. code-block:: bash |
| 75 | 75 | |
| 76 | - $ cd gammalib-1.0.0 | |
| 76 | + $ cd gammalib-1.1.0 | |
| 77 | 77 | $ ./configure |
| 78 | 78 | $ make |
| 79 | 79 | $ make check |
| ... | ... | @@ -135,7 +135,7 @@ an appropriate location (for example ``$HOME/builds``), and type |
| 135 | 135 | |
| 136 | 136 | .. code-block:: bash |
| 137 | 137 | |
| 138 | - $ tar xvfz ctools-1.0.0.tar.gz | |
| 138 | + $ tar xvfz ctools-1.1.0.tar.gz | |
| 139 | 139 | |
| 140 | 140 | (the ``$`` symbol indicates the console prompt and is not part of the |
| 141 | 141 | command that you should type in). |
| ... | ... | @@ -144,7 +144,7 @@ Step in the directory and build the ctools by typing |
| 144 | 144 | |
| 145 | 145 | .. code-block:: bash |
| 146 | 146 | |
| 147 | - $ cd ctools-1.0.0 | |
| 147 | + $ cd ctools-1.1.0 | |
| 148 | 148 | $ ./configure |
| 149 | 149 | $ make |
| 150 | 150 | |
| ... | ... | @@ -178,95 +178,61 @@ following output at the end of the unit testing: |
| 178 | 178 | |
| 179 | 179 | .. code-block:: bash |
| 180 | 180 | |
| 181 | - PASS: test_ctools.sh | |
| 182 | - PASS: test_cscripts.sh | |
| 183 | - PASS: test_python.py | |
| 184 | - make[4]: Nothing to be done for `all'. | |
| 185 | - ============================================================================ | |
| 186 | - Testsuite summary for ctools 1.0.0 | |
| 187 | - ============================================================================ | |
| 188 | - # TOTAL: 3 | |
| 189 | - # PASS: 3 | |
| 190 | - # SKIP: 0 | |
| 191 | - # XFAIL: 0 | |
| 192 | - # FAIL: 0 | |
| 193 | - # XPASS: 0 | |
| 194 | - # ERROR: 0 | |
| 195 | - ============================================================================ | |
| 181 | + PASS: test_python_ctools.sh | |
| 182 | + PASS: test_python_cscripts.sh | |
| 183 | + PASS: test_examples.py | |
| 184 | + ============================================================================ | |
| 185 | + Testsuite summary for ctools 1.1.0 | |
| 186 | + ============================================================================ | |
| 187 | + # TOTAL: 3 | |
| 188 | + # PASS: 3 | |
| 189 | + # SKIP: 0 | |
| 190 | + # XFAIL: 0 | |
| 191 | + # FAIL: 0 | |
| 192 | + # XPASS: 0 | |
| 193 | + # ERROR: 0 | |
| 194 | + ============================================================================ | |
| 196 | 195 | |
| 197 | 196 | For older automake version, you should see |
| 198 | 197 | |
| 199 | 198 | .. code-block:: bash |
| 200 | 199 | |
| 201 | - *************** | |
| 202 | - * Test ctools * | |
| 203 | - *************** | |
| 204 | - Test ctobssim: .. ok | |
| 205 | - Test ctskymap: .. ok | |
| 206 | - Test ctbin: .... ok | |
| 207 | - Test ctexpcube: .... ok | |
| 208 | - Test ctpsfcube: .... ok | |
| 209 | - Test ctbkgcube: ...... ok | |
| 210 | - Test ctmodel: ...... ok | |
| 211 | - Test ctselect: .. ok | |
| 212 | - Test ctlike: ...... ok | |
| 213 | - Test cttsmap: .. ok | |
| 214 | - Test ctcubemask: .. ok | |
| 215 | - Test ctbutterfly: .. ok | |
| 216 | - Test ctulimit: .. ok | |
| 217 | - Test cterror: .. ok | |
| 218 | - PASS: test_ctools.sh | |
| 219 | - | |
| 220 | - ***************** | |
| 221 | - * Test cscripts * | |
| 222 | - ***************** | |
| 223 | - Test csobsdef: .. ok | |
| 224 | - Test csobs2caldb: .. ok | |
| 225 | - Test csobsinfo: .. ok | |
| 226 | - Test csiactobs: .. ok | |
| 227 | - Test csmodelinfo: .. ok | |
| 228 | - Test csmodelmerge (space-separated): .. ok | |
| 229 | - Test csmodelmerge (comma-separated): .. ok | |
| 230 | - Test csmodelmerge (wildcard string): .. ok | |
| 231 | - Test csmodelmerge (ascii-file): .. ok | |
| 232 | - Test cstsmapmerge (comma-separated): .. ok | |
| 233 | - Test cstsmapmerge (space-separated): .. ok | |
| 234 | - Test cstsmapmerge (wildcard string): .. ok | |
| 235 | - Test cstsmapmerge (ascii-file): .. ok | |
| 236 | - Test cspull: .. ok | |
| 237 | - Test cssens: .. ok | |
| 238 | - Test cstsdist: .. ok | |
| 239 | - Test csresmap: .. ok | |
| 240 | - Test csspec (unbinned): .. ok | |
| 241 | - Test csspec (binned): .. ok | |
| 242 | - Test cslightcrv (unbinned): .. ok | |
| 243 | - Test cslightcrv (binned): .. ok | |
| 244 | - PASS: test_cscripts.sh | |
| 245 | - | |
| 246 | - *********************** | |
| 247 | - * ctools unit testing * | |
| 248 | - *********************** | |
| 249 | - Test ctobssim functionality: .......... ok | |
| 250 | - Test ctobssim on observation container: .... ok | |
| 251 | - Test ctselect functionality: ... ok | |
| 252 | - Test ctbin functionality: ... ok | |
| 253 | - Test ctlike functionality: ... ok | |
| 254 | - Test cttsmap functionality: ... ok | |
| 255 | - Test ctmodel functionality: ... ok | |
| 256 | - Test ctskymap functionality: ... ok | |
| 257 | - Test ctexpcube functionality: ... ok | |
| 258 | - Test ctpsfcube functionality: ... ok | |
| 259 | - Test ctbkgcube functionality: ... ok | |
| 260 | - Test ctcubemask functionality: ... ok | |
| 261 | - Test ctbutterfly functionality: ... ok | |
| 262 | - Test ctulimit functionality: ... ok | |
| 263 | - Test cterror functionality: ... ok | |
| 264 | - Test unbinned pipeline with FITS file saving: .... ok | |
| 265 | - Test unbinned in-memory pipeline: .... ok | |
| 266 | - PASS: test_python.py | |
| 267 | - ================== | |
| 268 | - All 3 tests passed | |
| 269 | - ================== | |
| 200 | + *********************** | |
| 201 | + * ctools unit testing * | |
| 202 | + *********************** | |
| 203 | + Test ctobssim on command line: ..... ok | |
| 204 | + Test ctobssim from Python: ................................................. ok | |
| 205 | + Test ctselect on command line: ....... ok | |
| 206 | + Test ctselect from Python: ..... ok | |
| 207 | + Test ctbin on command line: ..... ok | |
| 208 | + Test ctbin from Python: ............................................. ok | |
| 209 | + ... | |
| 210 | + PASS test_python_ctools.sh | |
| 211 | + | |
| 212 | + ************************* | |
| 213 | + * cscripts unit testing * | |
| 214 | + ************************* | |
| 215 | + Test cscaldb on command line: .. ok | |
| 216 | + Test cscaldb from Python: . ok | |
| 217 | + Test cslightcrv on command line: ............... ok | |
| 218 | + Test cslightcrv from Python: ................................................. ok | |
| 219 | + Test csmodelinfo on command line: ..... ok | |
| 220 | + Test csmodelinfo from Python: ..... ok | |
| 221 | + ... | |
| 222 | + PASS test_python_cscripts.sh | |
| 223 | + | |
| 224 | + ******************** | |
| 225 | + * Examples testing * | |
| 226 | + ******************** | |
| 227 | + Test generate_prod3_irfs.py: .. ok | |
| 228 | + Test make_pointings.py: ....... ok | |
| 229 | + Test make_spectrum.py: .. ok | |
| 230 | + Test make_ts_distributions.py: .. ok | |
| 231 | + ... | |
| 232 | + PASS test_examples.py | |
| 233 | + ================== | |
| 234 | + All 3 tests passed | |
| 235 | + ================== | |
| 270 | 236 | |
| 271 | 237 | The same detailed information is also available for the newer automake |
| 272 | 238 | versions, but there it is written in log files that you can find in the |
| ... | ... | @@ -274,9 +240,9 @@ versions, but there it is written in log files that you can find in the |
| 274 | 240 | |
| 275 | 241 | .. code-block:: bash |
| 276 | 242 | |
| 277 | - test_ctools.sh.log | |
| 278 | - test_cscripts.sh.log | |
| 279 | - test_python.py.log | |
| 243 | + test_python_ctools.sh.log | |
| 244 | + test_python_cscripts.sh.log | |
| 245 | + test_examples.py.log | |
| 280 | 246 | |
| 281 | 247 | If you do not see the same output, but a failure message, please check |
| 282 | 248 | first the :ref:`issues` section. If you cannot fix the problem, please | ... | ... |
doc/source/users/user_manual/getting_started/beyond_combine.rst
| ... | ... | @@ -12,7 +12,7 @@ in a single shot. |
| 12 | 12 | Here is an example that illustrates how to do that. |
| 13 | 13 | |
| 14 | 14 | Let's start with the simulation of two 30 min long observations of the Crab |
| 15 | -nebula, each offset by 0.5 deg from the nebula in opposite directions: | |
| 15 | +nebula, each offset by 0.5° from the nebula in opposite directions: | |
| 16 | 16 | |
| 17 | 17 | .. code-block:: bash |
| 18 | 18 | |
| ... | ... | @@ -79,11 +79,10 @@ ctools knows which instrument specific functions need to be called.** |
| 79 | 79 | .. note:: |
| 80 | 80 | |
| 81 | 81 | The instrument string for a CTA observation is obviously ``CTA``. |
| 82 | - In case that data from any existing Imaging Air Cherenkov Telescope | |
| 83 | - are provided in the correct format, the instrument strings | |
| 84 | - ``HESS``, ``MAGIC`` and ``VERITAS`` are also recognised. This opens | |
| 85 | - the obvious possibility to combine data from different | |
| 86 | - Imaging Air Cherenkov Telescope in a joint analysis. | |
| 82 | + In case that you want to analyse data from an existing Imaging Air | |
| 83 | + Cherenkov Telescope you can also set the instrument string to ``HESS``, | |
| 84 | + ``MAGIC``, or ``VERITAS``. You may also combine observations from different | |
| 85 | + telescopes for a joint analysis in an observation definition file. | |
| 87 | 86 | **Please recall that instrument strings are case sensitive.** |
| 88 | 87 | |
| 89 | 88 | Now you are ready to do a joint maximum likelihood analysis using |
| ... | ... | @@ -98,128 +97,127 @@ Now you are ready to do a joint maximum likelihood analysis using |
| 98 | 97 | Input model XML file [$CTOOLS/share/models/crab.xml] |
| 99 | 98 | Output model XML file [crab_results.xml] |
| 100 | 99 | |
| 101 | -Instead of providing an event list or a counts cube, you now provided the | |
| 100 | +Instead of providing an event list or a counts cube, you now provide the | |
| 102 | 101 | filename of the observation definition XML file (here ``obs.xml``) as input |
| 103 | 102 | parameter. :ref:`ctlike` recognises this format and automatically performs a |
| 104 | -joint analysis. To see the result of this you needed to specify the | |
| 105 | -``chatter=3`` parameter so that the chattiness is increased in the log | |
| 106 | -file: | |
| 103 | +joint maximum likelihood analysis. To see the result of this you needed to | |
| 104 | +specify the ``chatter=3`` parameter so that the chattiness is increased in | |
| 105 | +the log file: | |
| 107 | 106 | |
| 108 | -.. code-block:: xml | |
| 107 | +.. code-block:: none | |
| 109 | 108 | |
| 110 | - 2015-12-07T21:23:07: +==============+ | |
| 111 | - 2015-12-07T21:23:07: | Observations | | |
| 112 | - 2015-12-07T21:23:07: +==============+ | |
| 113 | - 2015-12-07T21:23:07: === GObservations === | |
| 114 | - 2015-12-07T21:23:07: Number of observations ....: 2 | |
| 115 | - 2015-12-07T21:23:07: Number of models ..........: 2 | |
| 116 | - 2015-12-07T21:23:07: Number of predicted events : 0 | |
| 117 | - 2015-12-07T21:23:07: === GCTAObservation === | |
| 118 | - 2015-12-07T21:23:07: Name ......................: Crab | |
| 119 | - 2015-12-07T21:23:07: Identifier ................: 00001 | |
| 120 | - 2015-12-07T21:23:07: Instrument ................: CTA | |
| 121 | - 2015-12-07T21:23:07: Event file ................: events1.fits | |
| 122 | - 2015-12-07T21:23:07: Event type ................: EventList | |
| 123 | - 2015-12-07T21:23:07: Statistics ................: Poisson | |
| 124 | - 2015-12-07T21:23:07: Ontime ....................: 1800 s | |
| 125 | - 2015-12-07T21:23:07: Livetime ..................: 1710 s | |
| 126 | - 2015-12-07T21:23:07: Deadtime correction .......: 0.95 | |
| 127 | - 2015-12-07T21:23:07: User energy range .........: undefined | |
| 128 | - 2015-12-07T21:23:07: === GCTAPointing === | |
| 129 | - 2015-12-07T21:23:07: Pointing direction ........: (RA,Dec)=(83.63,21.51) | |
| 130 | - 2015-12-07T21:23:07: === GCTAResponseIrf === | |
| 131 | - 2015-12-07T21:23:07: Caldb mission .............: cta | |
| 132 | - 2015-12-07T21:23:07: Caldb instrument ..........: prod2 | |
| 133 | - 2015-12-07T21:23:07: Response name .............: South_0.5h | |
| 134 | - 2015-12-07T21:23:07: Energy dispersion .........: Not used | |
| 135 | - 2015-12-07T21:23:07: Save energy range .........: undefined | |
| 136 | - 2015-12-07T21:23:07: === GCTAEventList === | |
| 137 | - 2015-12-07T21:23:07: Number of events ..........: 22593 | |
| 138 | - 2015-12-07T21:23:07: Time interval .............: 51544.5 - 51544.5 days | |
| 139 | - 2015-12-07T21:23:07: Energy interval ...........: 0.1 - 100 TeV | |
| 140 | - 2015-12-07T21:23:07: Region of interest ........: RA=83.63, DEC=21.51 [0,0] Radius=5 deg | |
| 141 | - 2015-12-07T21:23:07: === GCTAObservation === | |
| 142 | - 2015-12-07T21:23:07: Name ......................: Crab | |
| 143 | - 2015-12-07T21:23:07: Identifier ................: 00002 | |
| 144 | - 2015-12-07T21:23:07: Instrument ................: CTA | |
| 145 | - 2015-12-07T21:23:07: Event file ................: events2.fits | |
| 146 | - 2015-12-07T21:23:07: Event type ................: EventList | |
| 147 | - 2015-12-07T21:23:07: Statistics ................: Poisson | |
| 148 | - 2015-12-07T21:23:07: Ontime ....................: 1800 s | |
| 149 | - 2015-12-07T21:23:07: Livetime ..................: 1710 s | |
| 150 | - 2015-12-07T21:23:07: Deadtime correction .......: 0.95 | |
| 151 | - 2015-12-07T21:23:07: User energy range .........: undefined | |
| 152 | - 2015-12-07T21:23:07: === GCTAPointing === | |
| 153 | - 2015-12-07T21:23:07: Pointing direction ........: (RA,Dec)=(83.63,22.51) | |
| 154 | - 2015-12-07T21:23:07: === GCTAResponseIrf === | |
| 155 | - 2015-12-07T21:23:07: Caldb mission .............: cta | |
| 156 | - 2015-12-07T21:23:07: Caldb instrument ..........: prod2 | |
| 157 | - 2015-12-07T21:23:07: Response name .............: South_0.5h | |
| 158 | - 2015-12-07T21:23:07: Energy dispersion .........: Not used | |
| 159 | - 2015-12-07T21:23:07: Save energy range .........: undefined | |
| 160 | - 2015-12-07T21:23:07: === GCTAEventList === | |
| 161 | - 2015-12-07T21:23:07: Number of events ..........: 22529 | |
| 162 | - 2015-12-07T21:23:07: Time interval .............: 51544.5 - 51544.5 days | |
| 163 | - 2015-12-07T21:23:07: Energy interval ...........: 0.1 - 100 TeV | |
| 164 | - 2015-12-07T21:23:07: Region of interest ........: RA=83.63, DEC=22.51 [0,0] Radius=5 deg | |
| 165 | - ... | |
| 166 | - 2015-12-07T21:23:07: +=================================+ | |
| 167 | - 2015-12-07T21:23:07: | Maximum likelihood optimisation | | |
| 168 | - 2015-12-07T21:23:07: +=================================+ | |
| 169 | - 2015-12-07T21:23:07: >Iteration 0: -logL=304176.886, Lambda=1.0e-03 | |
| 170 | - 2015-12-07T21:23:08: >Iteration 1: -logL=304161.799, Lambda=1.0e-03, delta=15.088, max(|grad|)=12.922804 [Index:3] | |
| 171 | - 2015-12-07T21:23:08: >Iteration 2: -logL=304161.783, Lambda=1.0e-04, delta=0.015, max(|grad|)=0.098155 [Index:3] | |
| 172 | - 2015-12-07T21:23:08: >Iteration 3: -logL=304161.783, Lambda=1.0e-05, delta=0.000, max(|grad|)=0.000598 [Index:3] | |
| 109 | + 2016-06-29T19:14:38: +==============+ | |
| 110 | + 2016-06-29T19:14:38: | Observations | | |
| 111 | + 2016-06-29T19:14:38: +==============+ | |
| 112 | + 2016-06-29T19:14:38: === GObservations === | |
| 113 | + 2016-06-29T19:14:38: Number of observations ....: 2 | |
| 114 | + 2016-06-29T19:14:38: Number of models ..........: 2 | |
| 115 | + 2016-06-29T19:14:38: Number of observed events .: 46028 | |
| 116 | + 2016-06-29T19:14:38: Number of predicted events : 0 | |
| 117 | + 2016-06-29T19:14:38: === GCTAObservation === | |
| 118 | + 2016-06-29T19:14:38: Name ......................: Crab | |
| 119 | + 2016-06-29T19:14:38: Identifier ................: 00001 | |
| 120 | + 2016-06-29T19:14:38: Instrument ................: CTA | |
| 121 | + 2016-06-29T19:14:38: Event file ................: events1.fits | |
| 122 | + 2016-06-29T19:14:38: Event type ................: EventList | |
| 123 | + 2016-06-29T19:14:38: Statistics ................: Poisson | |
| 124 | + 2016-06-29T19:14:38: Ontime ....................: 1800 s | |
| 125 | + 2016-06-29T19:14:38: Livetime ..................: 1710 s | |
| 126 | + 2016-06-29T19:14:38: Deadtime correction .......: 0.95 | |
| 127 | + 2016-06-29T19:14:38: User energy range .........: undefined | |
| 128 | + 2016-06-29T19:14:38: === GCTAPointing === | |
| 129 | + 2016-06-29T19:14:38: Pointing direction ........: (RA,Dec)=(83.63,21.51) | |
| 130 | + 2016-06-29T19:14:38: === GCTAResponseIrf === | |
| 131 | + 2016-06-29T19:14:38: Caldb mission .............: cta | |
| 132 | + 2016-06-29T19:14:38: Caldb instrument ..........: prod2 | |
| 133 | + 2016-06-29T19:14:38: Response name .............: South_0.5h | |
| 134 | + 2016-06-29T19:14:38: Energy dispersion .........: Not used | |
| 135 | + 2016-06-29T19:14:38: Save energy range .........: undefined | |
| 136 | + 2016-06-29T19:14:38: === GCTAEventList === | |
| 137 | + 2016-06-29T19:14:38: Number of events ..........: 23014 (disposed in "events1.fits") | |
| 138 | + 2016-06-29T19:14:38: Time interval .............: 51544.5 - 51544.5 days | |
| 139 | + 2016-06-29T19:14:38: Energy interval ...........: 0.1 - 100 TeV | |
| 140 | + 2016-06-29T19:14:38: Region of interest ........: RA=83.63, DEC=21.51 [0,0] Radius=5 deg | |
| 141 | + 2016-06-29T19:14:38: === GCTAObservation === | |
| 142 | + 2016-06-29T19:14:38: Name ......................: Crab | |
| 143 | + 2016-06-29T19:14:38: Identifier ................: 00002 | |
| 144 | + 2016-06-29T19:14:38: Instrument ................: CTA | |
| 145 | + 2016-06-29T19:14:38: Event file ................: events2.fits | |
| 146 | + 2016-06-29T19:14:38: Event type ................: EventList | |
| 147 | + 2016-06-29T19:14:38: Statistics ................: Poisson | |
| 148 | + 2016-06-29T19:14:38: Ontime ....................: 1800 s | |
| 149 | + 2016-06-29T19:14:38: Livetime ..................: 1710 s | |
| 150 | + 2016-06-29T19:14:38: Deadtime correction .......: 0.95 | |
| 151 | + 2016-06-29T19:14:38: User energy range .........: undefined | |
| 152 | + 2016-06-29T19:14:38: === GCTAPointing === | |
| 153 | + 2016-06-29T19:14:38: Pointing direction ........: (RA,Dec)=(83.63,21.51) | |
| 154 | + 2016-06-29T19:14:38: === GCTAResponseIrf === | |
| 155 | + 2016-06-29T19:14:38: Caldb mission .............: cta | |
| 156 | + 2016-06-29T19:14:38: Caldb instrument ..........: prod2 | |
| 157 | + 2016-06-29T19:14:38: Response name .............: South_0.5h | |
| 158 | + 2016-06-29T19:14:38: Energy dispersion .........: Not used | |
| 159 | + 2016-06-29T19:14:38: Save energy range .........: undefined | |
| 160 | + 2016-06-29T19:14:38: === GCTAEventList === | |
| 161 | + 2016-06-29T19:14:38: Number of events ..........: 23014 (disposed in "events2.fits") | |
| 162 | + 2016-06-29T19:14:38: Time interval .............: 51544.5 - 51544.5 days | |
| 163 | + 2016-06-29T19:14:38: Energy interval ...........: 0.1 - 100 TeV | |
| 164 | + 2016-06-29T19:14:38: Region of interest ........: RA=83.63, DEC=21.51 [0,0] Radius=5 deg | |
| 165 | + 2016-06-29T19:14:38: | |
| 166 | + 2016-06-29T19:14:38: +=================================+ | |
| 167 | + 2016-06-29T19:14:38: | Maximum likelihood optimisation | | |
| 168 | + 2016-06-29T19:14:38: +=================================+ | |
| 169 | + 2016-06-29T19:14:38: >Iteration 0: -logL=309355.758, Lambda=1.0e-03 | |
| 170 | + 2016-06-29T19:14:38: >Iteration 1: -logL=309352.158, Lambda=1.0e-03, delta=3.600, max(|grad|)=7.976081 [Index:7] | |
| 171 | + 2016-06-29T19:14:38: >Iteration 2: -logL=309352.157, Lambda=1.0e-04, delta=0.001, max(|grad|)=0.033525 [Index:3] | |
| 173 | 172 | ... |
| 174 | - | |
| 175 | - 2015-12-07T21:23:08: +=========================================+ | |
| 176 | - 2015-12-07T21:23:08: | Maximum likelihood optimisation results | | |
| 177 | - 2015-12-07T21:23:08: +=========================================+ | |
| 178 | - 2015-12-07T21:23:08: === GOptimizerLM === | |
| 179 | - 2015-12-07T21:23:08: Optimized function value ..: 304161.783 | |
| 180 | - 2015-12-07T21:23:08: Absolute precision ........: 0.005 | |
| 181 | - 2015-12-07T21:23:08: Acceptable value decrease .: 2 | |
| 182 | - 2015-12-07T21:23:08: Optimization status .......: converged | |
| 183 | - 2015-12-07T21:23:08: Number of parameters ......: 10 | |
| 184 | - 2015-12-07T21:23:08: Number of free parameters .: 4 | |
| 185 | - 2015-12-07T21:23:08: Number of iterations ......: 3 | |
| 186 | - 2015-12-07T21:23:08: Lambda ....................: 1e-06 | |
| 187 | - 2015-12-07T21:23:08: Maximum log likelihood ....: -304161.783 | |
| 188 | - 2015-12-07T21:23:08: Observed events (Nobs) ...: 45122.000 | |
| 189 | - 2015-12-07T21:23:08: Predicted events (Npred) ..: 45122.000 (Nobs - Npred = 1.04131e-06) | |
| 190 | - 2015-12-07T21:23:08: === GModels === | |
| 191 | - 2015-12-07T21:23:08: Number of models ..........: 2 | |
| 192 | - 2015-12-07T21:23:08: Number of parameters ......: 10 | |
| 193 | - 2015-12-07T21:23:08: === GModelSky === | |
| 194 | - 2015-12-07T21:23:08: Name ......................: Crab | |
| 195 | - 2015-12-07T21:23:08: Instruments ...............: all | |
| 196 | - 2015-12-07T21:23:08: Instrument scale factors ..: unity | |
| 197 | - 2015-12-07T21:23:08: Observation identifiers ...: all | |
| 198 | - 2015-12-07T21:23:08: Model type ................: PointSource | |
| 199 | - 2015-12-07T21:23:08: Model components ..........: "SkyDirFunction" * "PowerLaw" * "Constant" | |
| 200 | - 2015-12-07T21:23:08: Number of parameters ......: 6 | |
| 201 | - 2015-12-07T21:23:08: Number of spatial par's ...: 2 | |
| 202 | - 2015-12-07T21:23:08: RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) | |
| 203 | - 2015-12-07T21:23:08: DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) | |
| 204 | - 2015-12-07T21:23:08: Number of spectral par's ..: 3 | |
| 205 | - 2015-12-07T21:23:08: Prefactor ................: 5.78382e-16 +/- 7.27218e-18 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 206 | - 2015-12-07T21:23:08: Index ....................: -2.5314 +/- 0.0112546 [-0,-5] (free,scale=-1,gradient) | |
| 207 | - 2015-12-07T21:23:08: PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 208 | - 2015-12-07T21:23:08: Number of temporal par's ..: 1 | |
| 209 | - 2015-12-07T21:23:08: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 210 | - 2015-12-07T21:23:08: === GCTAModelIrfBackground === | |
| 211 | - 2015-12-07T21:23:08: Name ......................: CTABackgroundModel | |
| 212 | - 2015-12-07T21:23:08: Instruments ...............: CTA | |
| 213 | - 2015-12-07T21:23:08: Instrument scale factors ..: unity | |
| 214 | - 2015-12-07T21:23:08: Observation identifiers ...: all | |
| 215 | - 2015-12-07T21:23:08: Model type ................: "PowerLaw" * "Constant" | |
| 216 | - 2015-12-07T21:23:08: Number of parameters ......: 4 | |
| 217 | - 2015-12-07T21:23:08: Number of spectral par's ..: 3 | |
| 218 | - 2015-12-07T21:23:08: Prefactor ................: 1.0008 +/- 0.00839192 [0.001,1000] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 219 | - 2015-12-07T21:23:08: Index ....................: 0.0102998 +/- 0.0051965 [-5,5] (free,scale=1,gradient) | |
| 220 | - 2015-12-07T21:23:08: PivotEnergy ..............: 1e+06 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 221 | - 2015-12-07T21:23:08: Number of temporal par's ..: 1 | |
| 222 | - 2015-12-07T21:23:08: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 173 | + 2016-06-29T19:14:38: +=========================================+ | |
| 174 | + 2016-06-29T19:14:38: | Maximum likelihood optimisation results | | |
| 175 | + 2016-06-29T19:14:38: +=========================================+ | |
| 176 | + 2016-06-29T19:14:38: === GOptimizerLM === | |
| 177 | + 2016-06-29T19:14:38: Optimized function value ..: 309352.157 | |
| 178 | + 2016-06-29T19:14:38: Absolute precision ........: 0.005 | |
| 179 | + 2016-06-29T19:14:38: Acceptable value decrease .: 2 | |
| 180 | + 2016-06-29T19:14:38: Optimization status .......: converged | |
| 181 | + 2016-06-29T19:14:38: Number of parameters ......: 10 | |
| 182 | + 2016-06-29T19:14:38: Number of free parameters .: 4 | |
| 183 | + 2016-06-29T19:14:38: Number of iterations ......: 2 | |
| 184 | + 2016-06-29T19:14:38: Lambda ....................: 1e-05 | |
| 185 | + 2016-06-29T19:14:38: Maximum log likelihood ....: -309352.157 | |
| 186 | + 2016-06-29T19:14:38: Observed events (Nobs) ...: 46028.000 | |
| 187 | + 2016-06-29T19:14:38: Predicted events (Npred) ..: 46027.996 (Nobs - Npred = 0.00423575) | |
| 188 | + 2016-06-29T19:14:38: === GModels === | |
| 189 | + 2016-06-29T19:14:38: Number of models ..........: 2 | |
| 190 | + 2016-06-29T19:14:38: Number of parameters ......: 10 | |
| 191 | + 2016-06-29T19:14:38: === GModelSky === | |
| 192 | + 2016-06-29T19:14:38: Name ......................: Crab | |
| 193 | + 2016-06-29T19:14:38: Instruments ...............: all | |
| 194 | + 2016-06-29T19:14:38: Instrument scale factors ..: unity | |
| 195 | + 2016-06-29T19:14:38: Observation identifiers ...: all | |
| 196 | + 2016-06-29T19:14:38: Model type ................: PointSource | |
| 197 | + 2016-06-29T19:14:38: Model components ..........: "SkyDirFunction" * "PowerLaw" * "Constant" | |
| 198 | + 2016-06-29T19:14:38: Number of parameters ......: 6 | |
| 199 | + 2016-06-29T19:14:38: Number of spatial par's ...: 2 | |
| 200 | + 2016-06-29T19:14:38: RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) | |
| 201 | + 2016-06-29T19:14:38: DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) | |
| 202 | + 2016-06-29T19:14:38: Number of spectral par's ..: 3 | |
| 203 | + 2016-06-29T19:14:38: Prefactor ................: 5.7909e-16 +/- 7.3315e-18 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 204 | + 2016-06-29T19:14:38: Index ....................: -2.47181 +/- 0.0109973 [-0,-5] (free,scale=-1,gradient) | |
| 205 | + 2016-06-29T19:14:38: PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 206 | + 2016-06-29T19:14:38: Number of temporal par's ..: 1 | |
| 207 | + 2016-06-29T19:14:38: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 208 | + 2016-06-29T19:14:38: === GCTAModelIrfBackground === | |
| 209 | + 2016-06-29T19:14:38: Name ......................: CTABackgroundModel | |
| 210 | + 2016-06-29T19:14:38: Instruments ...............: CTA | |
| 211 | + 2016-06-29T19:14:38: Instrument scale factors ..: unity | |
| 212 | + 2016-06-29T19:14:38: Observation identifiers ...: all | |
| 213 | + 2016-06-29T19:14:38: Model type ................: "PowerLaw" * "Constant" | |
| 214 | + 2016-06-29T19:14:38: Number of parameters ......: 4 | |
| 215 | + 2016-06-29T19:14:38: Number of spectral par's ..: 3 | |
| 216 | + 2016-06-29T19:14:38: Prefactor ................: 1.01608 +/- 0.0084739 [0.001,1000] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 217 | + 2016-06-29T19:14:38: Index ....................: 0.00524546 +/- 0.00516392 [-5,5] (free,scale=1,gradient) | |
| 218 | + 2016-06-29T19:14:38: PivotEnergy ..............: 1e+06 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 219 | + 2016-06-29T19:14:38: Number of temporal par's ..: 1 | |
| 220 | + 2016-06-29T19:14:38: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 223 | 221 | |
| 224 | 222 | The log file indicates that the fit converged quickly, the spectral |
| 225 | 223 | parameters of the Crab nebula have now been constrained using the events |
| ... | ... | @@ -233,7 +231,7 @@ data from multiple observations should be combined.** |
| 233 | 231 | |
| 234 | 232 | Combining observations is not limited to unbinned data (i.e. event lists) |
| 235 | 233 | but may also be applied to binned data (i.e. counts cubes). |
| 236 | -Using :ref:`ctbin` we can create counts cubes from both event lists which | |
| 234 | +Using :ref:`ctbin` you can create counts cubes from both event lists which | |
| 237 | 235 | may then be combined in an observation definition XML file: |
| 238 | 236 | |
| 239 | 237 | .. code-block:: xml | ... | ... |
doc/source/users/user_manual/getting_started/beyond_irf.rst
| ... | ... | @@ -3,17 +3,17 @@ |
| 3 | 3 | Connecting observations to dedicated instrument response functions |
| 4 | 4 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 5 | 5 | |
| 6 | -So far the same instrument response function has been used for all | |
| 7 | -observations in our analysis examples. | |
| 8 | -You may have recognised that we always specified the calibration database | |
| 9 | -``prod2`` and the instrument response function ``South_0.5h`` that | |
| 10 | -are shipped with ctools. | |
| 6 | +So far you used the same instrument response function for all observations. | |
| 7 | +You always specified the calibration database ``prod2`` and the instrument | |
| 8 | +response function ``South_0.5h`` that are shipped with ctools in all | |
| 9 | +examples. | |
| 11 | 10 | When combining multiple observations in a joint analysis you may however |
| 12 | 11 | need to specify dedicated instrument response functions for the |
| 13 | 12 | different observations. |
| 14 | 13 | |
| 15 | -Let's simulate two observations of the Crab nebula, one done with | |
| 16 | -the northern array and the other with the southern array: | |
| 14 | +To illustrate how you can do this, let's simulate two observations of the | |
| 15 | +Crab nebula, one done with the northern array and the other with the southern | |
| 16 | +array: | |
| 17 | 17 | |
| 18 | 18 | .. code-block:: bash |
| 19 | 19 | |
| ... | ... | @@ -70,26 +70,26 @@ option to get the output of the script on the console): |
| 70 | 70 | |
| 71 | 71 | .. code-block:: bash |
| 72 | 72 | |
| 73 | - $ cscaldb debug=yes | |
| 74 | - Parfile cscaldb.par not found. Create default parfile. | |
| 75 | - 2015-05-22T21:35:39: +============+ | |
| 76 | - 2015-05-22T21:35:39: | Parameters | | |
| 77 | - 2015-05-22T21:35:39: +============+ | |
| 78 | - 2015-05-22T21:35:39: chatter ...................: 2 | |
| 79 | - 2015-05-22T21:35:39: clobber ...................: yes | |
| 80 | - 2015-05-22T21:35:39: debug .....................: yes | |
| 81 | - 2015-05-22T21:35:39: mode ......................: ql | |
| 82 | - 2015-05-22T21:35:39: | |
| 83 | - 2015-05-22T21:35:39: +==============+ | |
| 84 | - 2015-05-22T21:35:39: | Mission: cta | | |
| 85 | - 2015-05-22T21:35:39: +==============+ | |
| 86 | - 2015-05-22T21:35:40: === Response functions in database "prod2" === | |
| 87 | - 2015-05-22T21:35:40: North_0.5h | |
| 88 | - 2015-05-22T21:35:40: North_50h | |
| 89 | - 2015-05-22T21:35:40: North_5h | |
| 90 | - 2015-05-22T21:35:40: South_0.5h | |
| 91 | - 2015-05-22T21:35:40: South_50h | |
| 92 | - 2015-05-22T21:35:40: South_5h | |
| 73 | + $ cscaldb debug=yes | |
| 74 | + 2016-06-29T20:09:44: +============+ | |
| 75 | + 2016-06-29T20:09:44: | Parameters | | |
| 76 | + 2016-06-29T20:09:44: +============+ | |
| 77 | + 2016-06-29T20:09:44: chatter ...................: 2 | |
| 78 | + 2016-06-29T20:09:44: clobber ...................: yes | |
| 79 | + 2016-06-29T20:09:44: debug .....................: yes | |
| 80 | + 2016-06-29T20:09:44: mode ......................: ql | |
| 81 | + 2016-06-29T20:09:44: logfile ...................: cscaldb.log | |
| 82 | + 2016-06-29T20:09:44: | |
| 83 | + 2016-06-29T20:09:44: +==============+ | |
| 84 | + 2016-06-29T20:09:44: | Mission: cta | | |
| 85 | + 2016-06-29T20:09:44: +==============+ | |
| 86 | + 2016-06-29T20:09:44: === Response functions in database "prod2" === | |
| 87 | + 2016-06-29T20:09:44: North_0.5h | |
| 88 | + 2016-06-29T20:09:44: North_50h | |
| 89 | + 2016-06-29T20:09:44: North_5h | |
| 90 | + 2016-06-29T20:09:44: South_0.5h | |
| 91 | + 2016-06-29T20:09:44: South_50h | |
| 92 | + 2016-06-29T20:09:44: South_5h | |
| 93 | 93 | |
| 94 | 94 | You will see that ctools ships with one database for the CTA observatory. |
| 95 | 95 | This is the ``prod2`` database. |
| ... | ... | @@ -101,7 +101,7 @@ You now jointly fit both observations using :ref:`ctlike`: |
| 101 | 101 | |
| 102 | 102 | .. code-block:: bash |
| 103 | 103 | |
| 104 | - $ ctlike chatter=3 | |
| 104 | + $ ctlike chatter=3 | |
| 105 | 105 | Input event list, counts cube or observation definition XML file [events.fits] obs_irf.xml |
| 106 | 106 | Input model XML file [$CTOOLS/share/models/crab.xml] |
| 107 | 107 | Output model XML file [crab_results.xml] |
| ... | ... | @@ -113,122 +113,95 @@ You will notice that each observation now has a specific response |
| 113 | 113 | function and that the filename of the response information differs for |
| 114 | 114 | both observations. |
| 115 | 115 | |
| 116 | -.. code-block:: xml | |
| 117 | - | |
| 118 | - 2015-12-07T22:22:18: +==============+ | |
| 119 | - 2015-12-07T22:22:18: | Observations | | |
| 120 | - 2015-12-07T22:22:18: +==============+ | |
| 121 | - 2015-12-07T22:22:18: === GObservations === | |
| 122 | - 2015-12-07T22:22:18: Number of observations ....: 2 | |
| 123 | - 2015-12-07T22:22:18: Number of models ..........: 2 | |
| 124 | - 2015-12-07T22:22:18: Number of predicted events : 0 | |
| 125 | - 2015-12-07T22:22:18: === GCTAObservation === | |
| 126 | - 2015-12-07T22:22:18: Name ......................: Crab | |
| 127 | - 2015-12-07T22:22:18: Identifier ................: 00001 | |
| 128 | - 2015-12-07T22:22:18: Instrument ................: CTA | |
| 129 | - 2015-12-07T22:22:18: Event file ................: north.fits | |
| 130 | - 2015-12-07T22:22:18: Event type ................: EventList | |
| 131 | - 2015-12-07T22:22:18: Statistics ................: Poisson | |
| 132 | - 2015-12-07T22:22:18: Ontime ....................: 1800 s | |
| 133 | - 2015-12-07T22:22:18: Livetime ..................: 1710 s | |
| 134 | - 2015-12-07T22:22:18: Deadtime correction .......: 0.95 | |
| 135 | - 2015-12-07T22:22:18: User energy range .........: undefined | |
| 136 | - 2015-12-07T22:22:18: === GCTAPointing === | |
| 137 | - 2015-12-07T22:22:18: Pointing direction ........: (RA,Dec)=(83.63,21.51) | |
| 138 | - 2015-12-07T22:22:18: === GCTAResponseIrf === | |
| 139 | - 2015-12-07T22:22:18: Caldb mission .............: cta | |
| 140 | - 2015-12-07T22:22:18: Caldb instrument ..........: prod2 | |
| 141 | - 2015-12-07T22:22:18: Response name .............: North_0.5h | |
| 142 | - 2015-12-07T22:22:18: Energy dispersion .........: Not used | |
| 143 | - 2015-12-07T22:22:18: Save energy range .........: undefined | |
| 144 | - 2015-12-07T22:22:18: === GCTAEventList === | |
| 145 | - 2015-12-07T22:22:18: Number of events ..........: 8469 | |
| 146 | - 2015-12-07T22:22:18: Time interval .............: 51544.5 - 51544.5 days | |
| 147 | - 2015-12-07T22:22:18: Energy interval ...........: 0.1 - 100 TeV | |
| 148 | - 2015-12-07T22:22:18: Region of interest ........: RA=83.63, DEC=21.51 [0,0] Radius=5 deg | |
| 149 | - 2015-12-07T22:22:18: === GCTAObservation === | |
| 150 | - 2015-12-07T22:22:18: Name ......................: Crab | |
| 151 | - 2015-12-07T22:22:18: Identifier ................: 00002 | |
| 152 | - 2015-12-07T22:22:18: Instrument ................: CTA | |
| 153 | - 2015-12-07T22:22:18: Event file ................: south.fits | |
| 154 | - 2015-12-07T22:22:18: Event type ................: EventList | |
| 155 | - 2015-12-07T22:22:18: Statistics ................: Poisson | |
| 156 | - 2015-12-07T22:22:18: Ontime ....................: 1800 s | |
| 157 | - 2015-12-07T22:22:18: Livetime ..................: 1710 s | |
| 158 | - 2015-12-07T22:22:18: Deadtime correction .......: 0.95 | |
| 159 | - 2015-12-07T22:22:18: User energy range .........: undefined | |
| 160 | - 2015-12-07T22:22:18: === GCTAPointing === | |
| 161 | - 2015-12-07T22:22:18: Pointing direction ........: (RA,Dec)=(83.63,22.51) | |
| 162 | - 2015-12-07T22:22:18: === GCTAResponseIrf === | |
| 163 | - 2015-12-07T22:22:18: Caldb mission .............: cta | |
| 164 | - 2015-12-07T22:22:18: Caldb instrument ..........: prod2 | |
| 165 | - 2015-12-07T22:22:18: Response name .............: South_0.5h | |
| 166 | - 2015-12-07T22:22:18: Energy dispersion .........: Not used | |
| 167 | - 2015-12-07T22:22:18: Save energy range .........: undefined | |
| 168 | - 2015-12-07T22:22:18: === GCTAEventList === | |
| 169 | - 2015-12-07T22:22:18: Number of events ..........: 22529 | |
| 170 | - 2015-12-07T22:22:18: Time interval .............: 51544.5 - 51544.5 days | |
| 171 | - 2015-12-07T22:22:18: Energy interval ...........: 0.1 - 100 TeV | |
| 172 | - 2015-12-07T22:22:18: Region of interest ........: RA=83.63, DEC=22.51 [0,0] Radius=5 deg | |
| 116 | +.. code-block:: none | |
| 117 | + | |
| 118 | + 2016-06-29T20:10:29: +==============+ | |
| 119 | + 2016-06-29T20:10:29: | Observations | | |
| 120 | + 2016-06-29T20:10:29: +==============+ | |
| 121 | + 2016-06-29T20:10:29: === GObservations === | |
| 122 | + 2016-06-29T20:10:29: Number of observations ....: 2 | |
| 123 | + 2016-06-29T20:10:29: Number of models ..........: 2 | |
| 124 | + 2016-06-29T20:10:29: Number of observed events .: 31270 | |
| 125 | + 2016-06-29T20:10:29: Number of predicted events : 0 | |
| 126 | + 2016-06-29T20:10:29: === GCTAObservation === | |
| 127 | + 2016-06-29T20:10:29: Name ......................: Crab | |
| 128 | + 2016-06-29T20:10:29: Identifier ................: 00001 | |
| 173 | 129 | ... |
| 174 | - 2015-12-07T22:22:18: +=================================+ | |
| 175 | - 2015-12-07T22:22:18: | Maximum likelihood optimisation | | |
| 176 | - 2015-12-07T22:22:18: +=================================+ | |
| 177 | - 2015-12-07T22:22:18: >Iteration 0: -logL=214691.468, Lambda=1.0e-03 | |
| 178 | - 2015-12-07T22:22:18: >Iteration 1: -logL=214679.380, Lambda=1.0e-03, delta=12.088, max(|grad|)=9.713100 [Index:3] | |
| 179 | - 2015-12-07T22:22:18: >Iteration 2: -logL=214679.365, Lambda=1.0e-04, delta=0.015, max(|grad|)=0.092975 [Index:3] | |
| 180 | - 2015-12-07T22:22:18: >Iteration 3: -logL=214679.365, Lambda=1.0e-05, delta=0.000, max(|grad|)=0.000749 [Index:3] | |
| 130 | + 2016-06-29T20:10:29: === GCTAResponseIrf === | |
| 131 | + 2016-06-29T20:10:29: Caldb mission .............: cta | |
| 132 | + 2016-06-29T20:10:29: Caldb instrument ..........: prod2 | |
| 133 | + 2016-06-29T20:10:29: Response name .............: North_0.5h | |
| 134 | + 2016-06-29T20:10:29: Energy dispersion .........: Not used | |
| 135 | + 2016-06-29T20:10:29: Save energy range .........: undefined | |
| 181 | 136 | ... |
| 182 | - 2015-12-07T22:22:18: +=========================================+ | |
| 183 | - 2015-12-07T22:22:18: | Maximum likelihood optimisation results | | |
| 184 | - 2015-12-07T22:22:18: +=========================================+ | |
| 185 | - 2015-12-07T22:22:18: === GOptimizerLM === | |
| 186 | - 2015-12-07T22:22:18: Optimized function value ..: 214679.365 | |
| 187 | - 2015-12-07T22:22:18: Absolute precision ........: 0.005 | |
| 188 | - 2015-12-07T22:22:18: Acceptable value decrease .: 2 | |
| 189 | - 2015-12-07T22:22:18: Optimization status .......: converged | |
| 190 | - 2015-12-07T22:22:18: Number of parameters ......: 10 | |
| 191 | - 2015-12-07T22:22:18: Number of free parameters .: 4 | |
| 192 | - 2015-12-07T22:22:18: Number of iterations ......: 3 | |
| 193 | - 2015-12-07T22:22:18: Lambda ....................: 1e-06 | |
| 194 | - 2015-12-07T22:22:18: Maximum log likelihood ....: -214679.365 | |
| 195 | - 2015-12-07T22:22:18: Observed events (Nobs) ...: 30998.000 | |
| 196 | - 2015-12-07T22:22:18: Predicted events (Npred) ..: 30998.000 (Nobs - Npred = 1.02755e-06) | |
| 197 | - 2015-12-07T22:22:18: === GModels === | |
| 198 | - 2015-12-07T22:22:18: Number of models ..........: 2 | |
| 199 | - 2015-12-07T22:22:18: Number of parameters ......: 10 | |
| 200 | - 2015-12-07T22:22:18: === GModelSky === | |
| 201 | - 2015-12-07T22:22:18: Name ......................: Crab | |
| 202 | - 2015-12-07T22:22:18: Instruments ...............: all | |
| 203 | - 2015-12-07T22:22:18: Instrument scale factors ..: unity | |
| 204 | - 2015-12-07T22:22:18: Observation identifiers ...: all | |
| 205 | - 2015-12-07T22:22:18: Model type ................: PointSource | |
| 206 | - 2015-12-07T22:22:18: Model components ..........: "SkyDirFunction" * "PowerLaw" * "Constant" | |
| 207 | - 2015-12-07T22:22:18: Number of parameters ......: 6 | |
| 208 | - 2015-12-07T22:22:18: Number of spatial par's ...: 2 | |
| 209 | - 2015-12-07T22:22:18: RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) | |
| 210 | - 2015-12-07T22:22:18: DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) | |
| 211 | - 2015-12-07T22:22:18: Number of spectral par's ..: 3 | |
| 212 | - 2015-12-07T22:22:18: Prefactor ................: 5.81237e-16 +/- 8.63534e-18 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 213 | - 2015-12-07T22:22:18: Index ....................: -2.53954 +/- 0.0137432 [-0,-5] (free,scale=-1,gradient) | |
| 214 | - 2015-12-07T22:22:18: PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 215 | - 2015-12-07T22:22:18: Number of temporal par's ..: 1 | |
| 216 | - 2015-12-07T22:22:18: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 217 | - 2015-12-07T22:22:18: === GCTAModelIrfBackground === | |
| 218 | - 2015-12-07T22:22:18: Name ......................: CTABackgroundModel | |
| 219 | - 2015-12-07T22:22:18: Instruments ...............: CTA | |
| 220 | - 2015-12-07T22:22:18: Instrument scale factors ..: unity | |
| 221 | - 2015-12-07T22:22:18: Observation identifiers ...: all | |
| 222 | - 2015-12-07T22:22:18: Model type ................: "PowerLaw" * "Constant" | |
| 223 | - 2015-12-07T22:22:18: Number of parameters ......: 4 | |
| 224 | - 2015-12-07T22:22:18: Number of spectral par's ..: 3 | |
| 225 | - 2015-12-07T22:22:18: Prefactor ................: 1.01067 +/- 0.0103997 [0.001,1000] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 226 | - 2015-12-07T22:22:18: Index ....................: 0.0135414 +/- 0.0064452 [-5,5] (free,scale=1,gradient) | |
| 227 | - 2015-12-07T22:22:18: PivotEnergy ..............: 1e+06 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 228 | - 2015-12-07T22:22:18: Number of temporal par's ..: 1 | |
| 229 | - 2015-12-07T22:22:18: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 230 | - | |
| 231 | -A more fine grained control over the response function can be achieved by | |
| 137 | + 2016-06-29T20:10:29: === GCTAObservation === | |
| 138 | + 2016-06-29T20:10:29: Name ......................: Crab | |
| 139 | + 2016-06-29T20:10:29: Identifier ................: 00002 | |
| 140 | + ... | |
| 141 | + 2016-06-29T20:10:29: === GCTAResponseIrf === | |
| 142 | + 2016-06-29T20:10:29: Caldb mission .............: cta | |
| 143 | + 2016-06-29T20:10:29: Caldb instrument ..........: prod2 | |
| 144 | + 2016-06-29T20:10:29: Response name .............: South_0.5h | |
| 145 | + 2016-06-29T20:10:29: Energy dispersion .........: Not used | |
| 146 | + 2016-06-29T20:10:29: Save energy range .........: undefined | |
| 147 | + ... | |
| 148 | + 2016-06-29T20:10:29: +=================================+ | |
| 149 | + 2016-06-29T20:10:29: | Maximum likelihood optimisation | | |
| 150 | + 2016-06-29T20:10:29: +=================================+ | |
| 151 | + 2016-06-29T20:10:30: >Iteration 0: -logL=216208.923, Lambda=1.0e-03 | |
| 152 | + 2016-06-29T20:10:30: >Iteration 1: -logL=216207.021, Lambda=1.0e-03, delta=1.902, max(|grad|)=4.436064 [Index:7] | |
| 153 | + 2016-06-29T20:10:30: >Iteration 2: -logL=216207.021, Lambda=1.0e-04, delta=0.001, max(|grad|)=0.012146 [Index:7] | |
| 154 | + ... | |
| 155 | + 2016-06-29T20:10:30: +=========================================+ | |
| 156 | + 2016-06-29T20:10:30: | Maximum likelihood optimisation results | | |
| 157 | + 2016-06-29T20:10:30: +=========================================+ | |
| 158 | + 2016-06-29T20:10:30: === GOptimizerLM === | |
| 159 | + 2016-06-29T20:10:30: Optimized function value ..: 216207.021 | |
| 160 | + 2016-06-29T20:10:30: Absolute precision ........: 0.005 | |
| 161 | + 2016-06-29T20:10:30: Acceptable value decrease .: 2 | |
| 162 | + 2016-06-29T20:10:30: Optimization status .......: converged | |
| 163 | + 2016-06-29T20:10:30: Number of parameters ......: 10 | |
| 164 | + 2016-06-29T20:10:30: Number of free parameters .: 4 | |
| 165 | + 2016-06-29T20:10:30: Number of iterations ......: 2 | |
| 166 | + 2016-06-29T20:10:30: Lambda ....................: 1e-05 | |
| 167 | + 2016-06-29T20:10:30: Maximum log likelihood ....: -216207.021 | |
| 168 | + 2016-06-29T20:10:30: Observed events (Nobs) ...: 31270.000 | |
| 169 | + 2016-06-29T20:10:30: Predicted events (Npred) ..: 31269.998 (Nobs - Npred = 0.00190254) | |
| 170 | + 2016-06-29T20:10:30: === GModels === | |
| 171 | + 2016-06-29T20:10:30: Number of models ..........: 2 | |
| 172 | + 2016-06-29T20:10:30: Number of parameters ......: 10 | |
| 173 | + 2016-06-29T20:10:30: === GModelSky === | |
| 174 | + 2016-06-29T20:10:30: Name ......................: Crab | |
| 175 | + 2016-06-29T20:10:30: Instruments ...............: all | |
| 176 | + 2016-06-29T20:10:30: Instrument scale factors ..: unity | |
| 177 | + 2016-06-29T20:10:30: Observation identifiers ...: all | |
| 178 | + 2016-06-29T20:10:30: Model type ................: PointSource | |
| 179 | + 2016-06-29T20:10:30: Model components ..........: "SkyDirFunction" * "PowerLaw" * "Constant" | |
| 180 | + 2016-06-29T20:10:30: Number of parameters ......: 6 | |
| 181 | + 2016-06-29T20:10:30: Number of spatial par's ...: 2 | |
| 182 | + 2016-06-29T20:10:30: RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) | |
| 183 | + 2016-06-29T20:10:30: DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) | |
| 184 | + 2016-06-29T20:10:30: Number of spectral par's ..: 3 | |
| 185 | + 2016-06-29T20:10:30: Prefactor ................: 5.7247e-16 +/- 8.64521e-18 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 186 | + 2016-06-29T20:10:30: Index ....................: -2.46519 +/- 0.013273 [-0,-5] (free,scale=-1,gradient) | |
| 187 | + 2016-06-29T20:10:30: PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 188 | + 2016-06-29T20:10:30: Number of temporal par's ..: 1 | |
| 189 | + 2016-06-29T20:10:30: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 190 | + 2016-06-29T20:10:30: === GCTAModelIrfBackground === | |
| 191 | + 2016-06-29T20:10:30: Name ......................: CTABackgroundModel | |
| 192 | + 2016-06-29T20:10:30: Instruments ...............: CTA | |
| 193 | + 2016-06-29T20:10:30: Instrument scale factors ..: unity | |
| 194 | + 2016-06-29T20:10:30: Observation identifiers ...: all | |
| 195 | + 2016-06-29T20:10:30: Model type ................: "PowerLaw" * "Constant" | |
| 196 | + 2016-06-29T20:10:30: Number of parameters ......: 4 | |
| 197 | + 2016-06-29T20:10:30: Number of spectral par's ..: 3 | |
| 198 | + 2016-06-29T20:10:30: Prefactor ................: 1.01522 +/- 0.0104442 [0.001,1000] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 199 | + 2016-06-29T20:10:30: Index ....................: 0.00802507 +/- 0.00643391 [-5,5] (free,scale=1,gradient) | |
| 200 | + 2016-06-29T20:10:30: PivotEnergy ..............: 1e+06 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 201 | + 2016-06-29T20:10:30: Number of temporal par's ..: 1 | |
| 202 | + 2016-06-29T20:10:30: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 203 | + | |
| 204 | +You can have a more fine grained control over the response function by | |
| 232 | 205 | specifying individual filenames for the various response components. |
| 233 | 206 | An example for an observation definition XML file is shown below. |
| 234 | 207 | This is definitely expert mode, to be used with utmost care. |
| ... | ... | @@ -265,12 +238,14 @@ file is given below: |
| 265 | 238 | <parameter name="CountsCube" file="cntcube1.fits"/> |
| 266 | 239 | <parameter name="ExposureCube" file="expcube1.fits"/> |
| 267 | 240 | <parameter name="PsfCube" file="psfcube1.fits"/> |
| 241 | + <parameter name="EdispCube" file="edispcube1.fits"/> | |
| 268 | 242 | <parameter name="BkgCube" file="bkgcube1.fits"/> |
| 269 | 243 | </observation> |
| 270 | 244 | <observation name="Crab" id="00002" instrument="CTA"> |
| 271 | 245 | <parameter name="CountsCube" file="cntcube2.fits"/> |
| 272 | 246 | <parameter name="ExposureCube" file="expcube2.fits"/> |
| 273 | 247 | <parameter name="PsfCube" file="psfcube2.fits"/> |
| 248 | + <parameter name="EdispCube" file="edispcube2.fits"/> | |
| 274 | 249 | <parameter name="BkgCube" file="bkgcube2.fits"/> |
| 275 | 250 | </observation> |
| 276 | 251 | </observation_list> | ... | ... |
doc/source/users/user_manual/getting_started/beyond_residual.rst
| ... | ... | @@ -48,8 +48,8 @@ The :ref:`csresmap` script is then used as follows: |
| 48 | 48 | Output residual map file [resmap.fits] |
| 49 | 49 | Residual map computation algorithm (SUB|SUBDIV|SUBDIVSQRT) [SUBDIV] |
| 50 | 50 | |
| 51 | -In our example, the map will cover a field of 4 x 4 degrees centred on the | |
| 52 | -Crab nebula at a pixel scale of 0.02 degrees per pixel. | |
| 51 | +In our example, the map will cover a field of 4° x 4° centred on the | |
| 52 | +Crab nebula at a pixel scale of 0.02° per pixel. | |
| 53 | 53 | The resulting residual map ``resmap.fits``, smoothed with a Gaussian |
| 54 | 54 | kernel of 3 pixels to enhance features, is shown in the following figure. |
| 55 | 55 | Obviously, the map is free from any significant residuals. |
| ... | ... | @@ -58,5 +58,5 @@ Obviously, the map is free from any significant residuals. |
| 58 | 58 | :height: 400px |
| 59 | 59 | :align: center |
| 60 | 60 | |
| 61 | - *Residual map of the Crab region* | |
| 61 | + *Residual map of the Crab nebula region* | |
| 62 | 62 | ... | ... |
doc/source/users/user_manual/getting_started/beyond_stacked.rst
| ... | ... | @@ -29,17 +29,20 @@ into a single counts cube: |
| 29 | 29 | Output counts cube file [cntcube.fits] |
| 30 | 30 | |
| 31 | 31 | You now have a stacked counts cube ``cntcube.fits`` on disk. |
| 32 | -Before you can use that counts cube in a maximum likelihood | |
| 33 | -analysis, you have to compute the instrument response and the | |
| 34 | -background model that are needed to describe the stacked data. | |
| 35 | - | |
| 36 | -For the former, you have to compute the total exposure for the stacked | |
| 37 | -cube (i.e. the sum of the effective areas for each observation multiplied | |
| 38 | -by the corresponding livetimes) and an effective point spread function | |
| 39 | -(i.e. the point spread function of the different observations weighted by | |
| 40 | -the corresponding exposures). | |
| 41 | -To get both informations you use the :ref:`ctexpcube` and | |
| 42 | -:ref:`ctpsfcube` tools: | |
| 32 | +Before you can use that counts cube in a maximum likelihood analysis, you have | |
| 33 | +to compute the instrument response function and the background model that is | |
| 34 | +needed for the analysis. | |
| 35 | + | |
| 36 | +For the instrument response function, you have to compute the total exposure | |
| 37 | +for the stacked cube (i.e. the sum of the effective areas for each observation | |
| 38 | +multiplied by the corresponding livetimes) and an effective point spread | |
| 39 | +function (i.e. the point spread function of the different observations | |
| 40 | +weighted by the corresponding exposures). | |
| 41 | +Optionally, you can also compute an effective energy dispersion (i.e. the | |
| 42 | +energy dispersion of the different observations weighted by the corresponding | |
| 43 | +exposures). | |
| 44 | +To get these informations you use the :ref:`ctexpcube`, :ref:`ctpsfcube` and | |
| 45 | +:ref:`ctedispcube` tools: | |
| 43 | 46 | |
| 44 | 47 | .. code-block:: bash |
| 45 | 48 | |
| ... | ... | @@ -69,22 +72,47 @@ To get both informations you use the :ref:`ctexpcube` and |
| 69 | 72 | Number of energy bins [20] |
| 70 | 73 | Output PSF cube file [psfcube.fits] |
| 71 | 74 | |
| 72 | -The ``obs.xml`` file has been provided on input to specify for both tools | |
| 73 | -which observations have been combined. | |
| 74 | -You further provided the counts cube on input so that :ref:`ctexpcube` can | |
| 75 | -read the cub definition from that file and apply it to the exposure cube. | |
| 76 | -This is a trick to reduce the number of user parameters that you need to | |
| 77 | -provide. | |
| 78 | - | |
| 79 | -You do not apply this trick when using :ref:`ctpsfcube` as this | |
| 80 | -would lead to a hugh output file owing to the fine spatial | |
| 81 | -pixelisation of the counts cube. | |
| 82 | -Such a fine binning is not needed for the PSF cube, as the PSF evolves | |
| 83 | -only slowly over the field of view. | |
| 84 | -It is thus sufficient to compute a PSF cube with a rather coarse spatial | |
| 85 | -binning; here you used a spatial binning of 1 degree covering a grid of | |
| 86 | -10 x 10 degrees. | |
| 75 | +.. code-block:: bash | |
| 76 | + | |
| 77 | + $ ctedispcube | |
| 78 | + Input event list or observation definition XML file [NONE] obs.xml | |
| 79 | + Calibration database [prod2] | |
| 80 | + Instrument response function [South_0.5h] | |
| 81 | + Input counts cube file to extract energy dispersion cube definition [NONE] | |
| 82 | + First coordinate of image center in degrees (RA or galactic l) (0-360) [83.63] | |
| 83 | + Second coordinate of image center in degrees (DEC or galactic b) (-90-90) [22.01] | |
| 84 | + Projection method (AIT|AZP|CAR|MER|MOL|STG|TAN) [CAR] | |
| 85 | + Coordinate system (CEL - celestial, GAL - galactic) (CEL|GAL) [CEL] | |
| 86 | + Image scale (in degrees/pixel) [1.0] | |
| 87 | + Size of the X axis in pixels [10] | |
| 88 | + Size of the Y axis in pixels [10] | |
| 89 | + Lower energy limit (TeV) [0.1] | |
| 90 | + Upper energy limit (TeV) [100.0] | |
| 91 | + Number of energy bins [20] | |
| 92 | + Output energy dispersion cube file [edispcube.fits] | |
| 93 | + | |
| 94 | +.. note:: | |
| 95 | + | |
| 96 | + You may have noticed that for :ref:`ctexpcube` you provided an input counts | |
| 97 | + cube, while for the other tools you specified ``NONE``. | |
| 98 | + By providing an input counts cube you instructed :ref:`ctexpcube` to | |
| 99 | + extract the definition of the exposure cube from the counts cube. This is | |
| 100 | + a convenient trick to reduce the number of user parameters that you need | |
| 101 | + to specify. You did however not apply this trick for | |
| 102 | + :ref:`ctpsfcube` and :ref:`ctedispcube`. In fact, the point spread function | |
| 103 | + and energy dispersion do not vary significantly on spatial scales of 0.02°, | |
| 104 | + and using the counts cube definition for these cubes would lead to large | |
| 105 | + response cube files with a spatial precision that is actually not needed | |
| 106 | + (the point spread function and energy dispersion cubes are actually | |
| 107 | + 4-dimensional data cubes, hence their size increases quickly for a large | |
| 108 | + number of spatial pixels). Therefore, you have specified a larger image | |
| 109 | + scale of 1° for both cubes and only a small number of 10x10 spatial pixels, | |
| 110 | + leading to point spread function and energy dispersion cubes of modest size | |
| 111 | + (a few MB). | |
| 87 | 112 | |
| 113 | +You provided the ``obs.xml`` file that defines all observations on input | |
| 114 | +so that the tools know which observations were combined in the :ref:`ctbin` | |
| 115 | +run. | |
| 88 | 116 | As final step of the analysis preparation, you need to generate a |
| 89 | 117 | background cube using the :ref:`ctbkgcube` tool: |
| 90 | 118 | |
| ... | ... | @@ -100,13 +128,13 @@ background cube using the :ref:`ctbkgcube` tool: |
| 100 | 128 | Output model XML file [NONE] model.xml |
| 101 | 129 | |
| 102 | 130 | The usage of :ref:`ctbkgcube` is very similar to that of :ref:`ctexpcube`, |
| 103 | -yet it takes the model XML file as an additional input parameter. | |
| 131 | +yet it takes the model definition XML file as an additional input parameter. | |
| 104 | 132 | You used here the usual ``$CTOOLS/share/models/crab.xml`` model |
| 105 | 133 | file that is shipped with the ctools. |
| 106 | 134 | :ref:`ctbkgcube` provides on output the background cube file |
| 107 | -``bkgcube.fits`` and the model XML file ``model.xml`` that can | |
| 135 | +``bkgcube.fits`` and the model definition XML file ``model.xml`` that can | |
| 108 | 136 | be used for further analysis. |
| 109 | -Having a look at ``model.xml`` illustrates how the background | |
| 137 | +Having a look at the ``model.xml`` file illustrates how the background | |
| 110 | 138 | modelling works: |
| 111 | 139 | |
| 112 | 140 | .. code-block:: xml |
| ... | ... | @@ -147,11 +175,10 @@ as an appropriate multiplicator to the background cube. |
| 147 | 175 | .. note:: |
| 148 | 176 | |
| 149 | 177 | There is no constraint on providing the same spatial binning or |
| 150 | - the same energy binning for an exposure cube, a PSF cube, | |
| 151 | - a background cube and a counts cube. | |
| 152 | - ctools interpolates internally the exposure cube, PSF cube and | |
| 153 | - background cube values, hence any arbitrary appropriate binning may | |
| 154 | - be used. | |
| 178 | + the same energy binning for an exposure cube, a PSF cube, an energy | |
| 179 | + dispersion cube, a background cube and a counts cube. | |
| 180 | + ctools interpolates internally all response cubes hence any arbitrary | |
| 181 | + appropriate binning may be used. | |
| 155 | 182 | Using the same binning for the exposure cube, the background cube and |
| 156 | 183 | the counts cube is only a convenience. |
| 157 | 184 | |
| ... | ... | @@ -170,73 +197,86 @@ analysis using the :ref:`ctlike` tool: |
| 170 | 197 | |
| 171 | 198 | :ref:`ctlike` recognises that a counts cube should be analysed and queries |
| 172 | 199 | for the exposure cube, the PSF cube, and the background cube file names. |
| 173 | -You specified here the names of the files produced by the :ref:`ctexpcube`, | |
| 174 | -the :ref:`ctpsfcube` and the :ref:`ctbkgcube` tools. | |
| 175 | -Furthermore you provided as model the ``model.xml`` file that has been | |
| 176 | -generated by the :ref:`ctbkgcube` tool. | |
| 177 | - | |
| 178 | -The log file of the :ref:`ctlike` run is shown below. | |
| 179 | -Note that the spectral model that is multiplied with the background | |
| 180 | -cube has a Prefactor of 0.998 +/- 0.011 and an Index of 0.006 +/- 0.007, | |
| 181 | -indicating a very small correction to the actual spectrum of the background | |
| 182 | -cube. | |
| 183 | -Real life situations may of course require larger correction factors. | |
| 200 | +If you want to consider also the energy dispersion during the maximum likelihood | |
| 201 | +fitting you should pass the hidden ``edisp`` parameter to ctlike, and the tool | |
| 202 | +will also query of the energy dispersion cube: | |
| 184 | 203 | |
| 185 | -.. code-block:: xml | |
| 204 | +.. code-block:: bash | |
| 205 | + | |
| 206 | + $ ctlike edisp=yes | |
| 207 | + Input event list, counts cube or observation definition XML file [cntcube.fits] | |
| 208 | + Input exposure cube file (only needed for stacked analysis) [expcube.fits] | |
| 209 | + Input PSF cube file (only needed for stacked analysis) [psfcube.fits] | |
| 210 | + Input background cube file (only needed for stacked analysis) [bkgcube.fits] | |
| 211 | + Input energy dispersion cube file (only needed for stacked analysis) [NONE] edispcube.fits | |
| 212 | + Input model XML file [model.xml] | |
| 213 | + Output model XML file [crab_results.xml] | |
| 214 | + | |
| 215 | +.. warning:: | |
| 216 | + | |
| 217 | + The maximum likelihood computations including energy dispersion are | |
| 218 | + relatively time consuming, and in many situations the impact of the | |
| 219 | + energy dispersion on the analysis results will be very small. So make | |
| 220 | + sure that you really need energy dispersion before you are using it. | |
| 221 | + | |
| 222 | +The log file of the :ref:`ctlike` run (without energy dispersion) is shown | |
| 223 | +below. | |
| 224 | + | |
| 225 | +.. code-block:: none | |
| 186 | 226 | |
| 187 | - 2015-12-07T21:37:45: +=================================+ | |
| 188 | - 2015-12-07T21:37:45: | Maximum likelihood optimisation | | |
| 189 | - 2015-12-07T21:37:45: +=================================+ | |
| 190 | - 2015-12-07T21:37:46: >Iteration 0: -logL=83748.453, Lambda=1.0e-03 | |
| 191 | - 2015-12-07T21:37:47: >Iteration 1: -logL=83736.039, Lambda=1.0e-03, delta=12.413, max(|grad|)=15.134616 [Index:3] | |
| 192 | - 2015-12-07T21:37:48: >Iteration 2: -logL=83736.021, Lambda=1.0e-04, delta=0.018, max(|grad|)=0.108613 [Index:3] | |
| 193 | - 2015-12-07T21:37:49: >Iteration 3: -logL=83736.021, Lambda=1.0e-05, delta=0.000, max(|grad|)=0.000570 [Index:3] | |
| 227 | + 2016-06-29T19:54:14: +=================================+ | |
| 228 | + 2016-06-29T19:54:14: | Maximum likelihood optimisation | | |
| 229 | + 2016-06-29T19:54:14: +=================================+ | |
| 230 | + 2016-06-29T19:54:15: >Iteration 0: -logL=83633.454, Lambda=1.0e-03 | |
| 231 | + 2016-06-29T19:54:15: >Iteration 1: -logL=83561.979, Lambda=1.0e-03, delta=71.475, max(|grad|)=153.136163 [Index:7] | |
| 232 | + 2016-06-29T19:54:16: >Iteration 2: -logL=83561.823, Lambda=1.0e-04, delta=0.156, max(|grad|)=-0.183495 [Prefactor:6] | |
| 233 | + 2016-06-29T19:54:16: >Iteration 3: -logL=83561.823, Lambda=1.0e-05, delta=0.000, max(|grad|)=-0.003347 [Index:3] | |
| 194 | 234 | ... |
| 195 | - 2015-12-07T21:37:51: +=========================================+ | |
| 196 | - 2015-12-07T21:37:51: | Maximum likelihood optimisation results | | |
| 197 | - 2015-12-07T21:37:51: +=========================================+ | |
| 198 | - 2015-12-07T21:37:51: === GOptimizerLM === | |
| 199 | - 2015-12-07T21:37:51: Optimized function value ..: 83736.021 | |
| 200 | - 2015-12-07T21:37:51: Absolute precision ........: 0.005 | |
| 201 | - 2015-12-07T21:37:51: Acceptable value decrease .: 2 | |
| 202 | - 2015-12-07T21:37:51: Optimization status .......: converged | |
| 203 | - 2015-12-07T21:37:51: Number of parameters ......: 10 | |
| 204 | - 2015-12-07T21:37:51: Number of free parameters .: 4 | |
| 205 | - 2015-12-07T21:37:51: Number of iterations ......: 3 | |
| 206 | - 2015-12-07T21:37:51: Lambda ....................: 1e-06 | |
| 207 | - 2015-12-07T21:37:51: Maximum log likelihood ....: -83736.021 | |
| 208 | - 2015-12-07T21:37:51: Observed events (Nobs) ...: 35198.000 | |
| 209 | - 2015-12-07T21:37:51: Predicted events (Npred) ..: 35198.000 (Nobs - Npred = 7.6773e-07) | |
| 210 | - 2015-12-07T21:37:51: === GModels === | |
| 211 | - 2015-12-07T21:37:51: Number of models ..........: 2 | |
| 212 | - 2015-12-07T21:37:51: Number of parameters ......: 10 | |
| 213 | - 2015-12-07T21:37:51: === GModelSky === | |
| 214 | - 2015-12-07T21:37:51: Name ......................: Crab | |
| 215 | - 2015-12-07T21:37:51: Instruments ...............: all | |
| 216 | - 2015-12-07T21:37:51: Instrument scale factors ..: unity | |
| 217 | - 2015-12-07T21:37:51: Observation identifiers ...: all | |
| 218 | - 2015-12-07T21:37:51: Model type ................: PointSource | |
| 219 | - 2015-12-07T21:37:51: Model components ..........: "SkyDirFunction" * "PowerLaw" * "Constant" | |
| 220 | - 2015-12-07T21:37:51: Number of parameters ......: 6 | |
| 221 | - 2015-12-07T21:37:51: Number of spatial par's ...: 2 | |
| 222 | - 2015-12-07T21:37:51: RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) | |
| 223 | - 2015-12-07T21:37:51: DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) | |
| 224 | - 2015-12-07T21:37:51: Number of spectral par's ..: 3 | |
| 225 | - 2015-12-07T21:37:51: Prefactor ................: 5.75289e-16 +/- 7.24749e-18 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 226 | - 2015-12-07T21:37:51: Index ....................: -2.53122 +/- 0.0113068 [-0,-5] (free,scale=-1,gradient) | |
| 227 | - 2015-12-07T21:37:51: PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 228 | - 2015-12-07T21:37:51: Number of temporal par's ..: 1 | |
| 229 | - 2015-12-07T21:37:51: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 230 | - 2015-12-07T21:37:51: === GCTAModelCubeBackground === | |
| 231 | - 2015-12-07T21:37:51: Name ......................: BackgroundModel | |
| 232 | - 2015-12-07T21:37:51: Instruments ...............: CTA, HESS, MAGIC, VERITAS | |
| 233 | - 2015-12-07T21:37:51: Instrument scale factors ..: unity | |
| 234 | - 2015-12-07T21:37:51: Observation identifiers ...: all | |
| 235 | - 2015-12-07T21:37:51: Model type ................: "PowerLaw" * "Constant" | |
| 236 | - 2015-12-07T21:37:51: Number of parameters ......: 4 | |
| 237 | - 2015-12-07T21:37:51: Number of spectral par's ..: 3 | |
| 238 | - 2015-12-07T21:37:51: Prefactor ................: 0.998055 +/- 0.0114979 [0.01,100] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 239 | - 2015-12-07T21:37:51: Index ....................: 0.00648796 +/- 0.00697365 [-5,5] (free,scale=1,gradient) | |
| 240 | - 2015-12-07T21:37:51: PivotEnergy ..............: 1e+06 MeV (fixed,scale=1e+06,gradient) | |
| 241 | - 2015-12-07T21:37:51: Number of temporal par's ..: 1 | |
| 242 | - 2015-12-07T21:37:51: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 235 | + 2016-06-29T19:54:17: +=========================================+ | |
| 236 | + 2016-06-29T19:54:17: | Maximum likelihood optimisation results | | |
| 237 | + 2016-06-29T19:54:17: +=========================================+ | |
| 238 | + 2016-06-29T19:54:17: === GOptimizerLM === | |
| 239 | + 2016-06-29T19:54:17: Optimized function value ..: 83561.823 | |
| 240 | + 2016-06-29T19:54:17: Absolute precision ........: 0.005 | |
| 241 | + 2016-06-29T19:54:17: Acceptable value decrease .: 2 | |
| 242 | + 2016-06-29T19:54:17: Optimization status .......: converged | |
| 243 | + 2016-06-29T19:54:17: Number of parameters ......: 10 | |
| 244 | + 2016-06-29T19:54:17: Number of free parameters .: 4 | |
| 245 | + 2016-06-29T19:54:17: Number of iterations ......: 3 | |
| 246 | + 2016-06-29T19:54:17: Lambda ....................: 1e-06 | |
| 247 | + 2016-06-29T19:54:17: Maximum log likelihood ....: -83561.823 | |
| 248 | + 2016-06-29T19:54:17: Observed events (Nobs) ...: 35946.000 | |
| 249 | + 2016-06-29T19:54:17: Predicted events (Npred) ..: 35946.000 (Nobs - Npred = 1.56502e-05) | |
| 250 | + 2016-06-29T19:54:17: === GModels === | |
| 251 | + 2016-06-29T19:54:17: Number of models ..........: 2 | |
| 252 | + 2016-06-29T19:54:17: Number of parameters ......: 10 | |
| 253 | + 2016-06-29T19:54:17: === GModelSky === | |
| 254 | + 2016-06-29T19:54:17: Name ......................: Crab | |
| 255 | + 2016-06-29T19:54:17: Instruments ...............: all | |
| 256 | + 2016-06-29T19:54:17: Instrument scale factors ..: unity | |
| 257 | + 2016-06-29T19:54:17: Observation identifiers ...: all | |
| 258 | + 2016-06-29T19:54:17: Model type ................: PointSource | |
| 259 | + 2016-06-29T19:54:17: Model components ..........: "SkyDirFunction" * "PowerLaw" * "Constant" | |
| 260 | + 2016-06-29T19:54:17: Number of parameters ......: 6 | |
| 261 | + 2016-06-29T19:54:17: Number of spatial par's ...: 2 | |
| 262 | + 2016-06-29T19:54:17: RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) | |
| 263 | + 2016-06-29T19:54:17: DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) | |
| 264 | + 2016-06-29T19:54:17: Number of spectral par's ..: 3 | |
| 265 | + 2016-06-29T19:54:17: Prefactor ................: 5.70255e-16 +/- 7.24185e-18 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 266 | + 2016-06-29T19:54:17: Index ....................: -2.46568 +/- 0.0110458 [-0,-5] (free,scale=-1,gradient) | |
| 267 | + 2016-06-29T19:54:17: PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 268 | + 2016-06-29T19:54:17: Number of temporal par's ..: 1 | |
| 269 | + 2016-06-29T19:54:17: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 270 | + 2016-06-29T19:54:17: === GCTAModelCubeBackground === | |
| 271 | + 2016-06-29T19:54:17: Name ......................: BackgroundModel | |
| 272 | + 2016-06-29T19:54:17: Instruments ...............: CTA, HESS, MAGIC, VERITAS | |
| 273 | + 2016-06-29T19:54:17: Instrument scale factors ..: unity | |
| 274 | + 2016-06-29T19:54:17: Observation identifiers ...: all | |
| 275 | + 2016-06-29T19:54:17: Model type ................: "PowerLaw" * "Constant" | |
| 276 | + 2016-06-29T19:54:17: Number of parameters ......: 4 | |
| 277 | + 2016-06-29T19:54:17: Number of spectral par's ..: 3 | |
| 278 | + 2016-06-29T19:54:17: Prefactor ................: 0.964885 +/- 0.0109395 [0.01,100] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 279 | + 2016-06-29T19:54:17: Index ....................: 0.0220427 +/- 0.00686292 [-5,5] (free,scale=1,gradient) | |
| 280 | + 2016-06-29T19:54:17: PivotEnergy ..............: 1e+06 MeV (fixed,scale=1e+06,gradient) | |
| 281 | + 2016-06-29T19:54:17: Number of temporal par's ..: 1 | |
| 282 | + 2016-06-29T19:54:17: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | ... | ... |
doc/source/users/user_manual/getting_started/beyond_tsmap.rst
| ... | ... | @@ -9,7 +9,7 @@ necessarily be the case. |
| 9 | 9 | You thus need a means to search for significant excess emission in your data. |
| 10 | 10 | One possibility to accomplish this task is to compute the Test Statistic |
| 11 | 11 | for a specific source at a grid of trial positions. |
| 12 | -The :ref:`cttsmap` tool will exactly do that job. | |
| 12 | +The :ref:`cttsmap` tool will do exactly that job. | |
| 13 | 13 | |
| 14 | 14 | The Test Statistic is defined as twice the log-likelihood difference |
| 15 | 15 | between fitting a source at a given position on top of a model or fitting |
| ... | ... | @@ -20,14 +20,14 @@ exact relation depends somewhat on the formulation of the statistical |
| 20 | 20 | problem. |
| 21 | 21 | |
| 22 | 22 | Here an example of how to apply the :ref:`cttsmap` tool to the two |
| 23 | -simulated observations of the Crab in unbinned mode. | |
| 24 | -On input we provide a source model XML file and the name of the source | |
| 23 | +simulated observations of the Crab nebula in unbinned mode. | |
| 24 | +On input you provide a source model XML file and the name of the source | |
| 25 | 25 | in the XML file that should be moved on a grid of test positions. |
| 26 | 26 | This means that the position of the source given in the XML file is |
| 27 | 27 | in fact ignored and replaced by the grid positions that are defined by |
| 28 | 28 | the user parameters. |
| 29 | -In the example we defined a grid of 10 x 10 positions around the | |
| 30 | -nominal position of the Crab nebula with a grid spacing of 0.02 degrees. | |
| 29 | +In the example you defined a grid of 10 x 10 positions around the | |
| 30 | +nominal position of the Crab nebula with a grid spacing of 0.02°. | |
| 31 | 31 | |
| 32 | 32 | .. code-block:: bash |
| 33 | 33 | |
| ... | ... | @@ -51,7 +51,7 @@ that contains one extension for the Test Statistic value and further |
| 51 | 51 | extensions for the spectral parameters that have been fitted for the |
| 52 | 52 | source at each position of the grid. |
| 53 | 53 | The figure below show the Test Statistic map which reaches a maximum |
| 54 | -value of 40733 near the centre of the map. | |
| 54 | +value of 42622 near the centre of the map. | |
| 55 | 55 | |
| 56 | 56 | .. figure:: tsmap-crab.png |
| 57 | 57 | :height: 400px |
| ... | ... | @@ -61,7 +61,7 @@ value of 40733 near the centre of the map. |
| 61 | 61 | |
| 62 | 62 | .. note:: |
| 63 | 63 | |
| 64 | - Alike :ref:`ctlike`, the :ref:`cttsmap` tool works either for unbinned, | |
| 64 | + Similar to :ref:`ctlike` the :ref:`cttsmap` tool works either for unbinned, | |
| 65 | 65 | binned or stacked analysis. On input it takes either a single event |
| 66 | 66 | list, a single counts cube, or an observation definition XML file that |
| 67 | 67 | allows a joint analysis of multiple observations. | ... | ... |
doc/source/users/user_manual/getting_started/binning.rst
| ... | ... | @@ -3,12 +3,11 @@ |
| 3 | 3 | Binning CTA data |
| 4 | 4 | ~~~~~~~~~~~~~~~~ |
| 5 | 5 | |
| 6 | -As next analysis step you will bin the data in a counts cube using | |
| 6 | +As next analysis step you will bin the data into a counts cube using | |
| 7 | 7 | :ref:`ctbin`. |
| 8 | -A counts cube is a 3 dimensional data cube, spanned by | |
| 8 | +A counts cube is a 3-dimensional data cube, spanned by | |
| 9 | 9 | Right Ascension (or Galactic longitude), Declination (or Galactic latitude), |
| 10 | -and energy (typically logarithmically spaced, but this is under user | |
| 11 | -control). | |
| 10 | +and energy (by default logarithmically spaced, but this is under your control). | |
| 12 | 11 | |
| 13 | 12 | :ref:`ctbin` is executed by typing: |
| 14 | 13 | |
| ... | ... | @@ -29,28 +28,37 @@ control). |
| 29 | 28 | Number of energy bins [20] |
| 30 | 29 | Output counts cube file [cntcube.fits] |
| 31 | 30 | |
| 32 | -The counts cube will be centred on the location of the Crab (Right Ascension | |
| 33 | -83.63 degrees, Declination 22.01 degrees) and will be aligned in celestial | |
| 34 | -coordinates. A cartesian projection has been selected. The counts cube has | |
| 35 | -200 x 200 spatial pixels of 0.02 x 0.02 degrees in size, hence it covers a | |
| 36 | -total area of 4 x 4 degrees. | |
| 37 | - | |
| 38 | -The counts cube will contain 20 maps, which are logarithmically spaced | |
| 39 | -in energy, and which cover the energy range from 0.1 TeV to 100 TeV. In this | |
| 40 | -example, the counts cube will be saved as ``cntcube.fits`` in the working | |
| 41 | -directory. In addition to the counts cube, that is stored as the primary | |
| 42 | -image extension, the FITS file also contains an extension named ``EBOUNDS`` | |
| 43 | -that defines the energy boundaries that were used, and an extension ``GTI`` | |
| 44 | -that defines the Good Time Intervals that have been used. The following | |
| 45 | -image shows the resulting FITS file. The ``EBOUNDS`` table has 20 rows, one | |
| 46 | -for each energy bin, while the ``GTI`` table has just a single row, indicating | |
| 47 | -the start and stop time of the simulated data. | |
| 31 | +In this example the events from file ``events.fits`` will be binned into | |
| 32 | +a counts cube stored into the file ``cntcube.fits``. The counts cube | |
| 33 | +is centred on the location of the Crab nebula (Right Ascension 83.63°, | |
| 34 | +Declination 22.01°). A cartesian projection aligned in celestial | |
| 35 | +coordinates is used and the counts cube has | |
| 36 | +200 x 200 spatial pixels of 0.02 x 0.02 degrees in size, covering | |
| 37 | +an area of 4° x 4°, and 20 logarithmically spaced energy bins, covering | |
| 38 | +an energy range from 0.1 TeV to 100 TeV. | |
| 39 | + | |
| 40 | +The ``cntcube.fits`` file produced by :ref:`ctbin` contains four extensions: | |
| 41 | + | |
| 42 | +* A primary 3-dimensional image extension providing the number of events | |
| 43 | + per counts cube bin, | |
| 44 | +* a 3-dimensional image extension ``WEIGHT`` where each bin gives the | |
| 45 | + fractional overlap between a counts cube bin and the Region of Interest | |
| 46 | + covered by the event list, | |
| 47 | +* a table extension ``EBOUNDS`` that defines the energy boundaries of the | |
| 48 | + counts cube, and | |
| 49 | +* a table extension ``GTI`` that defines the Good Time Intervals of the counts | |
| 50 | + cube. | |
| 51 | + | |
| 52 | +The following image shows the ``cntcube.fits`` file produced in the example | |
| 53 | +above. The ``EBOUNDS`` table has 20 rows, one for each energy bin, while the | |
| 54 | +``GTI`` table has just a single row, indicating the start and stop time of the | |
| 55 | +simulated data. | |
| 48 | 56 | |
| 49 | 57 | .. figure:: cntmap-fits.jpg |
| 50 | 58 | :width: 600px |
| 51 | 59 | :align: center |
| 52 | 60 | |
| 53 | - *Counts cube FITS file* | |
| 61 | + *Extensions of a counts cube FITS file* | |
| 54 | 62 | |
| 55 | 63 | |
| 56 | 64 | An image of the first bin, covering the energy range 100 - 141 GeV, is |
| ... | ... | @@ -60,24 +68,23 @@ shown below: |
| 60 | 68 | :height: 400px |
| 61 | 69 | :align: center |
| 62 | 70 | |
| 63 | - *Counts cube for first energy bin* | |
| 71 | + *Image of first energy bin of a counts cube* | |
| 64 | 72 | |
| 65 | 73 | For illustration, the last few lines of the log file ``ctbin.log`` are |
| 66 | 74 | reproduced below: |
| 67 | 75 | |
| 68 | -.. code-block:: xml | |
| 69 | - | |
| 70 | - 2015-12-07T20:52:41: +=================+ | |
| 71 | - 2015-12-07T20:52:41: | Bin observation | | |
| 72 | - 2015-12-07T20:52:41: +=================+ | |
| 73 | - 2015-12-07T20:52:41: === CTA observation === | |
| 74 | - 2015-12-07T20:52:41: Events in list ............: 22685 | |
| 75 | - 2015-12-07T20:52:41: Events in cube ............: 18195 | |
| 76 | - 2015-12-07T20:52:41: Event bins outside RoI ....: 0 | |
| 77 | - 2015-12-07T20:52:41: Events outside cube area ..: 4490 | |
| 78 | - 2015-12-07T20:52:41: Events outside energy bins : 0 | |
| 79 | - | |
| 80 | -From the 22685 events that have been simulated and stored in the | |
| 81 | -``events.fits`` file, 18195 lie within the cube boundaries and are thus put | |
| 82 | -into the resulting counts cube. The counts cube is stored in a cartesian | |
| 83 | -projection in a World Coordinate System (WCS) compliant format. | |
| 76 | +.. code-block:: none | |
| 77 | + | |
| 78 | + 2016-06-29T10:33:23: +=================+ | |
| 79 | + 2016-06-29T10:33:23: | Bin observation | | |
| 80 | + 2016-06-29T10:33:23: +=================+ | |
| 81 | + 2016-06-29T10:33:23: === CTA observation === | |
| 82 | + 2016-06-29T10:33:23: Events in list ............: 23099 | |
| 83 | + 2016-06-29T10:33:23: Events in cube ............: 18532 | |
| 84 | + 2016-06-29T10:33:23: Event bins outside RoI ....: 0 | |
| 85 | + 2016-06-29T10:33:23: Events outside cube area ..: 4567 | |
| 86 | + 2016-06-29T10:33:23: Events outside energy bins : 0 | |
| 87 | + | |
| 88 | +From the 23099 events that have been simulated and stored in the | |
| 89 | +``events.fits`` file, 18532 lie within the cube boundaries and are thus put | |
| 90 | +into the resulting counts cube. | ... | ... |
doc/source/users/user_manual/getting_started/butterfly.rst
| ... | ... | @@ -39,7 +39,7 @@ to make this work. To launch the script, type: |
| 39 | 39 | |
| 40 | 40 | .. code-block:: bash |
| 41 | 41 | |
| 42 | - python $CTOOLS/share/examples/python/show_butterfly.py butterfly.txt | |
| 42 | + $CTOOLS/share/examples/python/show_butterfly.py butterfly.txt | |
| 43 | 43 | |
| 44 | 44 | This will result in a canvas which should look like the following: |
| 45 | 45 | |
| ... | ... | @@ -47,5 +47,5 @@ This will result in a canvas which should look like the following: |
| 47 | 47 | :height: 400px |
| 48 | 48 | :align: center |
| 49 | 49 | |
| 50 | - *Confidence band of the fit* | |
| 50 | + *Confidence band of the power law fit* | |
| 51 | 51 | |
| 52 | 52 | \ No newline at end of file | ... | ... |
doc/source/users/user_manual/getting_started/cntmap-fits.jpg
doc/source/users/user_manual/getting_started/energy_dispersion.rst
0 → 100644
| 1 | +.. _sec_edisp_cta: | |
| 2 | + | |
| 3 | +Taking into account energy dispersion | |
| 4 | +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
| 5 | + | |
| 6 | +You may not have recognised it, but the examples you have exercised so far | |
| 7 | +have neglected the impact of energy dispersion on the analysis. In reality, | |
| 8 | +however, the reconstructed event energy will differ from the true photon energy, | |
| 9 | +and this effect will become particularily important at low energies. There are | |
| 10 | +therefore cases where you want to take the effects of energy dispersion into | |
| 11 | +account, and you can do this in all ctools that make use of the instrument | |
| 12 | +response functions by setting the hidden ``edisp`` parameter to ``yes``. | |
| 13 | + | |
| 14 | +.. warning:: | |
| 15 | + | |
| 16 | + The maximum likelihood computations including energy dispersion are | |
| 17 | + relatively time consuming, and in many situations the impact of the | |
| 18 | + energy dispersion on the analysis results will be very small. For this | |
| 19 | + reason, energy dispersion is by default disabled in ctools. | |
| 20 | + | |
| 21 | +To simulate events taking into account the energy dispersion you should | |
| 22 | +run the :ref:`ctobssim` tool with ``edisp=yes`` parameter: | |
| 23 | + | |
| 24 | +.. code-block:: bash | |
| 25 | + | |
| 26 | + $ ctobssim edisp=yes | |
| 27 | + RA of pointing (degrees) (0-360) [83.63] | |
| 28 | + Dec of pointing (degrees) (-90-90) [22.01] | |
| 29 | + Radius of FOV (degrees) (0-180) [5.0] | |
| 30 | + Start time (MET in s) [0.0] | |
| 31 | + End time (MET in s) [1800.0] | |
| 32 | + Lower energy limit (TeV) [0.1] | |
| 33 | + Upper energy limit (TeV) [100.0] | |
| 34 | + Calibration database [prod2] | |
| 35 | + Instrument response function [South_0.5h] | |
| 36 | + Input model XML file [$CTOOLS/share/models/crab.xml] | |
| 37 | + Output event data file or observation definition XML file [events.fits] | |
| 38 | + | |
| 39 | +You may then select events as before using the :ref:`ctselect` tool | |
| 40 | +(since this tool does not need the instrument response function it has no | |
| 41 | +hidden ``edisp`` parameter): | |
| 42 | + | |
| 43 | +.. code-block:: bash | |
| 44 | + | |
| 45 | + $ ctselect | |
| 46 | + Input event list or observation definition XML file [events.fits] | |
| 47 | + RA for ROI centre (degrees) (0-360) [83.63] | |
| 48 | + Dec for ROI centre (degrees) (-90-90) [22.01] | |
| 49 | + Radius of ROI (degrees) (0-180) [3.0] | |
| 50 | + Start time (CTA MET in seconds) [0.0] | |
| 51 | + End time (CTA MET in seconds) [0.0] | |
| 52 | + Lower energy limit (TeV) [0.1] | |
| 53 | + Upper energy limit (TeV) [100.0] | |
| 54 | + Output event list or observation definition XML file [selected_events.fits] | |
| 55 | + | |
| 56 | +You then perform a maximum likelihood fit using the :ref:`ctlike` tool | |
| 57 | +with ``edisp=yes`` so that energy dispersion is correctly taken into account | |
| 58 | +in the likelihood computation: | |
| 59 | + | |
| 60 | +.. code-block:: bash | |
| 61 | + | |
| 62 | + $ ctlike edisp=yes | |
| 63 | + Input event list, counts cube or observation definition XML file [selected_events.fits] | |
| 64 | + Calibration database [prod2] | |
| 65 | + Instrument response function [South_0.5h] | |
| 66 | + Input model XML file [$CTOOLS/share/models/crab.xml] | |
| 67 | + Output model XML file [crab_results.xml] | |
| 68 | + | |
| 69 | +Below you see the output from the ``ctlike.log`` file. | |
| 70 | + | |
| 71 | +.. code-block:: none | |
| 72 | + | |
| 73 | + 2016-06-29T20:33:36: +=================================+ | |
| 74 | + 2016-06-29T20:33:36: | Maximum likelihood optimisation | | |
| 75 | + 2016-06-29T20:33:36: +=================================+ | |
| 76 | + 2016-06-29T20:33:39: >Iteration 0: -logL=133777.933, Lambda=1.0e-03 | |
| 77 | + 2016-06-29T20:33:42: >Iteration 1: -logL=133772.125, Lambda=1.0e-03, delta=5.808, max(|grad|)=23.221525 [Index:7] | |
| 78 | + 2016-06-29T20:33:45: >Iteration 2: -logL=133772.111, Lambda=1.0e-04, delta=0.013, max(|grad|)=-0.042654 [Prefactor:6] | |
| 79 | + 2016-06-29T20:33:48: >Iteration 3: -logL=133772.111, Lambda=1.0e-05, delta=0.000, max(|grad|)=-0.000611 [Index:3] | |
| 80 | + ... | |
| 81 | + 2016-06-29T20:33:50: +=========================================+ | |
| 82 | + 2016-06-29T20:33:50: | Maximum likelihood optimisation results | | |
| 83 | + 2016-06-29T20:33:50: +=========================================+ | |
| 84 | + 2016-06-29T20:33:50: === GOptimizerLM === | |
| 85 | + 2016-06-29T20:33:50: Optimized function value ..: 133772.111 | |
| 86 | + 2016-06-29T20:33:50: Absolute precision ........: 0.005 | |
| 87 | + 2016-06-29T20:33:50: Acceptable value decrease .: 2 | |
| 88 | + 2016-06-29T20:33:50: Optimization status .......: converged | |
| 89 | + 2016-06-29T20:33:50: Number of parameters ......: 10 | |
| 90 | + 2016-06-29T20:33:50: Number of free parameters .: 4 | |
| 91 | + 2016-06-29T20:33:50: Number of iterations ......: 3 | |
| 92 | + 2016-06-29T20:33:50: Lambda ....................: 1e-06 | |
| 93 | + 2016-06-29T20:33:50: Maximum log likelihood ....: -133772.111 | |
| 94 | + 2016-06-29T20:33:50: Observed events (Nobs) ...: 20952.000 | |
| 95 | + 2016-06-29T20:33:50: Predicted events (Npred) ..: 20952.000 (Nobs - Npred = 1.01277e-06) | |
| 96 | + 2016-06-29T20:33:50: === GModels === | |
| 97 | + 2016-06-29T20:33:50: Number of models ..........: 2 | |
| 98 | + 2016-06-29T20:33:50: Number of parameters ......: 10 | |
| 99 | + 2016-06-29T20:33:50: === GModelSky === | |
| 100 | + 2016-06-29T20:33:50: Name ......................: Crab | |
| 101 | + 2016-06-29T20:33:50: Instruments ...............: all | |
| 102 | + 2016-06-29T20:33:50: Instrument scale factors ..: unity | |
| 103 | + 2016-06-29T20:33:50: Observation identifiers ...: all | |
| 104 | + 2016-06-29T20:33:50: Model type ................: PointSource | |
| 105 | + 2016-06-29T20:33:50: Model components ..........: "SkyDirFunction" * "PowerLaw" * "Constant" | |
| 106 | + 2016-06-29T20:33:50: Number of parameters ......: 6 | |
| 107 | + 2016-06-29T20:33:50: Number of spatial par's ...: 2 | |
| 108 | + 2016-06-29T20:33:50: RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) | |
| 109 | + 2016-06-29T20:33:50: DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) | |
| 110 | + 2016-06-29T20:33:50: Number of spectral par's ..: 3 | |
| 111 | + 2016-06-29T20:33:50: Prefactor ................: 5.74029e-16 +/- 1.04025e-17 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 112 | + 2016-06-29T20:33:50: Index ....................: -2.49899 +/- 0.015621 [-0,-5] (free,scale=-1,gradient) | |
| 113 | + 2016-06-29T20:33:50: PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 114 | + 2016-06-29T20:33:50: Number of temporal par's ..: 1 | |
| 115 | + 2016-06-29T20:33:50: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 116 | + 2016-06-29T20:33:50: === GCTAModelIrfBackground === | |
| 117 | + 2016-06-29T20:33:50: Name ......................: CTABackgroundModel | |
| 118 | + 2016-06-29T20:33:50: Instruments ...............: CTA | |
| 119 | + 2016-06-29T20:33:50: Instrument scale factors ..: unity | |
| 120 | + 2016-06-29T20:33:50: Observation identifiers ...: all | |
| 121 | + 2016-06-29T20:33:50: Model type ................: "PowerLaw" * "Constant" | |
| 122 | + 2016-06-29T20:33:50: Number of parameters ......: 4 | |
| 123 | + 2016-06-29T20:33:50: Number of spectral par's ..: 3 | |
| 124 | + 2016-06-29T20:33:50: Prefactor ................: 0.959074 +/- 0.0134496 [0.001,1000] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 125 | + 2016-06-29T20:33:50: Index ....................: -0.0162199 +/- 0.00850751 [-5,5] (free,scale=1,gradient) | |
| 126 | + 2016-06-29T20:33:50: PivotEnergy ..............: 1e+06 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 127 | + 2016-06-29T20:33:50: Number of temporal par's ..: 1 | |
| 128 | + 2016-06-29T20:33:50: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 129 | + | ... | ... |
doc/source/users/user_manual/getting_started/fitting.rst
| ... | ... | @@ -3,10 +3,10 @@ |
| 3 | 3 | Fitting CTA data |
| 4 | 4 | ~~~~~~~~~~~~~~~~ |
| 5 | 5 | |
| 6 | -Now we are ready to fit the simulated data with a model. For simplicity | |
| 7 | -we use in this example the same model that we used to simulate the data | |
| 6 | +Now you are ready to fit the simulated data with a model. For simplicity | |
| 7 | +the same model is used in the example that you used to simulate the data | |
| 8 | 8 | with :ref:`ctobssim`. Model fitting is done using the :ref:`ctlike` tool, |
| 9 | -and we do the fit by typing: | |
| 9 | +and you do the fit by typing: | |
| 10 | 10 | |
| 11 | 11 | .. code-block:: bash |
| 12 | 12 | |
| ... | ... | @@ -40,8 +40,8 @@ Below we show the XML result file that has been produced by the run: |
| 40 | 40 | <source_library title="source library"> |
| 41 | 41 | <source name="Crab" type="PointSource"> |
| 42 | 42 | <spectrum type="PowerLaw"> |
| 43 | - <parameter name="Prefactor" value="5.78443" error="0.101348" scale="1e-16" min="1e-07" max="1000" free="1" /> | |
| 44 | - <parameter name="Index" value="2.50664" error="0.0153631" scale="-1" min="0" max="5" free="1" /> | |
| 43 | + <parameter name="Prefactor" value="5.79064" error="0.101828" scale="1e-16" min="1e-07" max="1000" free="1" /> | |
| 44 | + <parameter name="Index" value="2.47177" error="0.0154935" scale="-1" min="0" max="5" free="1" /> | |
| 45 | 45 | <parameter name="Scale" value="0.3" scale="1e+06" min="0.01" max="1000" free="0" /> |
| 46 | 46 | </spectrum> |
| 47 | 47 | <spatialModel type="SkyDirFunction"> |
| ... | ... | @@ -51,17 +51,17 @@ Below we show the XML result file that has been produced by the run: |
| 51 | 51 | </source> |
| 52 | 52 | <source name="CTABackgroundModel" type="CTAIrfBackground" instrument="CTA"> |
| 53 | 53 | <spectrum type="PowerLaw"> |
| 54 | - <parameter name="Prefactor" value="0.993018" error="0.0160113" scale="1" min="0.001" max="1000" free="1" /> | |
| 55 | - <parameter name="Index" value="0.00269761" error="0.00973921" scale="1" min="-5" max="5" free="1" /> | |
| 54 | + <parameter name="Prefactor" value="1.01642" error="0.0162226" scale="1" min="0.001" max="1000" free="1" /> | |
| 55 | + <parameter name="Index" value="0.00462945" error="0.00964737" scale="1" min="-5" max="5" free="1" /> | |
| 56 | 56 | <parameter name="Scale" value="1" scale="1e+06" min="0.01" max="1000" free="0" /> |
| 57 | 57 | </spectrum> |
| 58 | 58 | </source> |
| 59 | 59 | </source_library> |
| 60 | 60 | |
| 61 | 61 | In this example, the ``Prefactor`` and ``Index`` of the spectral model for the |
| 62 | -Crab as well as the ``Prefactor`` and ``Index`` of the background spectral | |
| 62 | +Crab nebula as well as the ``Prefactor`` and ``Index`` of the background spectral | |
| 63 | 63 | model have been fitted (all parameters having the attribute ``free="1"`` are |
| 64 | -fitted). Now we see also the effect of having multiplied the background | |
| 64 | +fitted). Now you see also the effect of having multiplied the background | |
| 65 | 65 | model with a power law. In that way, the amplitude of the background as |
| 66 | 66 | well as it's spectral slope is adjusted by the fit. Obviously, in this |
| 67 | 67 | example the adjustment compensates only for the statistical fluctuations |
| ... | ... | @@ -79,67 +79,66 @@ To get more details about the model fitting you can inspect the log file. |
| 79 | 79 | Below the last lines of the ctlike.log log file that has been produced by |
| 80 | 80 | this run: |
| 81 | 81 | |
| 82 | -.. code-block:: xml | |
| 82 | +.. code-block:: none | |
| 83 | 83 | |
| 84 | - 2015-12-07T20:55:32: +=================================+ | |
| 85 | - 2015-12-07T20:55:32: | Maximum likelihood optimisation | | |
| 86 | - 2015-12-07T20:55:32: +=================================+ | |
| 87 | - 2015-12-07T20:55:33: >Iteration 0: -logL=54877.412, Lambda=1.0e-03 | |
| 88 | - 2015-12-07T20:55:35: >Iteration 1: -logL=54875.025, Lambda=1.0e-03, delta=2.387, max(|grad|)=1.856683 [Index:7] | |
| 89 | - 2015-12-07T20:55:36: >Iteration 2: -logL=54875.024, Lambda=1.0e-04, delta=0.001, max(|grad|)=-0.024661 [Index:3] | |
| 90 | - 2015-12-07T20:55:36: | |
| 84 | + 2016-06-29T16:11:05: +=================================+ | |
| 85 | + 2016-06-29T16:11:05: | Maximum likelihood optimisation | | |
| 86 | + 2016-06-29T16:11:05: +=================================+ | |
| 87 | + 2016-06-29T16:11:06: >Iteration 0: -logL=55574.937, Lambda=1.0e-03 | |
| 88 | + 2016-06-29T16:11:06: >Iteration 1: -logL=55573.383, Lambda=1.0e-03, delta=1.555, max(|grad|)=3.170837 [Index:7] | |
| 89 | + 2016-06-29T16:11:07: >Iteration 2: -logL=55573.382, Lambda=1.0e-04, delta=0.001, max(|grad|)=0.056280 [Index:3] | |
| 91 | 90 | ... |
| 92 | - 2015-12-07T20:55:38: +=========================================+ | |
| 93 | - 2015-12-07T20:55:38: | Maximum likelihood optimisation results | | |
| 94 | - 2015-12-07T20:55:38: +=========================================+ | |
| 95 | - 2015-12-07T20:55:38: === GOptimizerLM === | |
| 96 | - 2015-12-07T20:55:38: Optimized function value ..: 54875.024 | |
| 97 | - 2015-12-07T20:55:38: Absolute precision ........: 0.005 | |
| 98 | - 2015-12-07T20:55:38: Acceptable value decrease .: 2 | |
| 99 | - 2015-12-07T20:55:38: Optimization status .......: converged | |
| 100 | - 2015-12-07T20:55:38: Number of parameters ......: 10 | |
| 101 | - 2015-12-07T20:55:38: Number of free parameters .: 4 | |
| 102 | - 2015-12-07T20:55:38: Number of iterations ......: 2 | |
| 103 | - 2015-12-07T20:55:38: Lambda ....................: 1e-05 | |
| 104 | - 2015-12-07T20:55:38: Maximum log likelihood ....: -54875.024 | |
| 105 | - 2015-12-07T20:55:38: Observed events (Nobs) ...: 18195.000 | |
| 106 | - 2015-12-07T20:55:38: Predicted events (Npred) ..: 18194.999 (Nobs - Npred = 0.00146383) | |
| 107 | - 2015-12-07T20:55:38: === GModels === | |
| 108 | - 2015-12-07T20:55:38: Number of models ..........: 2 | |
| 109 | - 2015-12-07T20:55:38: Number of parameters ......: 10 | |
| 110 | - 2015-12-07T20:55:38: === GModelSky === | |
| 111 | - 2015-12-07T20:55:38: Name ......................: Crab | |
| 112 | - 2015-12-07T20:55:38: Instruments ...............: all | |
| 113 | - 2015-12-07T20:55:38: Instrument scale factors ..: unity | |
| 114 | - 2015-12-07T20:55:38: Observation identifiers ...: all | |
| 115 | - 2015-12-07T20:55:38: Model type ................: PointSource | |
| 116 | - 2015-12-07T20:55:38: Model components ..........: "SkyDirFunction" * "PowerLaw" * "Constant" | |
| 117 | - 2015-12-07T20:55:38: Number of parameters ......: 6 | |
| 118 | - 2015-12-07T20:55:38: Number of spatial par's ...: 2 | |
| 119 | - 2015-12-07T20:55:38: RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) | |
| 120 | - 2015-12-07T20:55:38: DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) | |
| 121 | - 2015-12-07T20:55:38: Number of spectral par's ..: 3 | |
| 122 | - 2015-12-07T20:55:38: Prefactor ................: 5.78443e-16 +/- 1.01348e-17 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 123 | - 2015-12-07T20:55:38: Index ....................: -2.50664 +/- 0.0153631 [-0,-5] (free,scale=-1,gradient) | |
| 124 | - 2015-12-07T20:55:38: PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 125 | - 2015-12-07T20:55:38: Number of temporal par's ..: 1 | |
| 126 | - 2015-12-07T20:55:38: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 127 | - 2015-12-07T20:55:38: === GCTAModelIrfBackground === | |
| 128 | - 2015-12-07T20:55:38: Name ......................: CTABackgroundModel | |
| 129 | - 2015-12-07T20:55:38: Instruments ...............: CTA | |
| 130 | - 2015-12-07T20:55:38: Instrument scale factors ..: unity | |
| 131 | - 2015-12-07T20:55:38: Observation identifiers ...: all | |
| 132 | - 2015-12-07T20:55:38: Model type ................: "PowerLaw" * "Constant" | |
| 133 | - 2015-12-07T20:55:38: Number of parameters ......: 4 | |
| 134 | - 2015-12-07T20:55:38: Number of spectral par's ..: 3 | |
| 135 | - 2015-12-07T20:55:38: Prefactor ................: 0.993018 +/- 0.0160113 [0.001,1000] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 136 | - 2015-12-07T20:55:38: Index ....................: 0.00269761 +/- 0.00973921 [-5,5] (free,scale=1,gradient) | |
| 137 | - 2015-12-07T20:55:38: PivotEnergy ..............: 1e+06 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 138 | - 2015-12-07T20:55:38: Number of temporal par's ..: 1 | |
| 139 | - 2015-12-07T20:55:38: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 91 | + 2016-06-29T16:11:08: +=========================================+ | |
| 92 | + 2016-06-29T16:11:08: | Maximum likelihood optimisation results | | |
| 93 | + 2016-06-29T16:11:08: +=========================================+ | |
| 94 | + 2016-06-29T16:11:08: === GOptimizerLM === | |
| 95 | + 2016-06-29T16:11:08: Optimized function value ..: 55573.382 | |
| 96 | + 2016-06-29T16:11:08: Absolute precision ........: 0.005 | |
| 97 | + 2016-06-29T16:11:08: Acceptable value decrease .: 2 | |
| 98 | + 2016-06-29T16:11:08: Optimization status .......: converged | |
| 99 | + 2016-06-29T16:11:08: Number of parameters ......: 10 | |
| 100 | + 2016-06-29T16:11:08: Number of free parameters .: 4 | |
| 101 | + 2016-06-29T16:11:08: Number of iterations ......: 2 | |
| 102 | + 2016-06-29T16:11:08: Lambda ....................: 1e-05 | |
| 103 | + 2016-06-29T16:11:08: Maximum log likelihood ....: -55573.382 | |
| 104 | + 2016-06-29T16:11:08: Observed events (Nobs) ...: 18532.000 | |
| 105 | + 2016-06-29T16:11:08: Predicted events (Npred) ..: 18531.998 (Nobs - Npred = 0.00243959) | |
| 106 | + 2016-06-29T16:11:08: === GModels === | |
| 107 | + 2016-06-29T16:11:08: Number of models ..........: 2 | |
| 108 | + 2016-06-29T16:11:08: Number of parameters ......: 10 | |
| 109 | + 2016-06-29T16:11:08: === GModelSky === | |
| 110 | + 2016-06-29T16:11:08: Name ......................: Crab | |
| 111 | + 2016-06-29T16:11:08: Instruments ...............: all | |
| 112 | + 2016-06-29T16:11:08: Instrument scale factors ..: unity | |
| 113 | + 2016-06-29T16:11:08: Observation identifiers ...: all | |
| 114 | + 2016-06-29T16:11:08: Model type ................: PointSource | |
| 115 | + 2016-06-29T16:11:08: Model components ..........: "SkyDirFunction" * "PowerLaw" * "Constant" | |
| 116 | + 2016-06-29T16:11:08: Number of parameters ......: 6 | |
| 117 | + 2016-06-29T16:11:08: Number of spatial par's ...: 2 | |
| 118 | + 2016-06-29T16:11:08: RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) | |
| 119 | + 2016-06-29T16:11:08: DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) | |
| 120 | + 2016-06-29T16:11:08: Number of spectral par's ..: 3 | |
| 121 | + 2016-06-29T16:11:08: Prefactor ................: 5.79064e-16 +/- 1.01828e-17 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 122 | + 2016-06-29T16:11:08: Index ....................: -2.47177 +/- 0.0154935 [-0,-5] (free,scale=-1,gradient) | |
| 123 | + 2016-06-29T16:11:08: PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 124 | + 2016-06-29T16:11:08: Number of temporal par's ..: 1 | |
| 125 | + 2016-06-29T16:11:08: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 126 | + 2016-06-29T16:11:08: === GCTAModelIrfBackground === | |
| 127 | + 2016-06-29T16:11:08: Name ......................: CTABackgroundModel | |
| 128 | + 2016-06-29T16:11:08: Instruments ...............: CTA | |
| 129 | + 2016-06-29T16:11:08: Instrument scale factors ..: unity | |
| 130 | + 2016-06-29T16:11:08: Observation identifiers ...: all | |
| 131 | + 2016-06-29T16:11:08: Model type ................: "PowerLaw" * "Constant" | |
| 132 | + 2016-06-29T16:11:08: Number of parameters ......: 4 | |
| 133 | + 2016-06-29T16:11:08: Number of spectral par's ..: 3 | |
| 134 | + 2016-06-29T16:11:08: Prefactor ................: 1.01642 +/- 0.0162226 [0.001,1000] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 135 | + 2016-06-29T16:11:08: Index ....................: 0.00462945 +/- 0.00964737 [-5,5] (free,scale=1,gradient) | |
| 136 | + 2016-06-29T16:11:08: PivotEnergy ..............: 1e+06 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 137 | + 2016-06-29T16:11:08: Number of temporal par's ..: 1 | |
| 138 | + 2016-06-29T16:11:08: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 140 | 139 | |
| 141 | 140 | The maximum likelihood optimizer required 2 iterations to converge. This |
| 142 | -is pretty fast, but recall that we used the same model file for the simulation | |
| 141 | +is pretty fast, but recall that you used the same model file for the simulation | |
| 143 | 142 | and for fitting, hence the initial parameter values were already very close |
| 144 | 143 | to the best fitting values. To see the impact of the initial parameters on |
| 145 | 144 | the fit result, you may re-run :ref:`ctlike` using another copy of the model |
| ... | ... | @@ -180,16 +179,16 @@ are not too far from the best fitting values). |
| 180 | 179 | :ref:`ctlike` will then compute the Test Statistic value for that |
| 181 | 180 | source and dump the result in the log file: |
| 182 | 181 | |
| 183 | - .. code-block:: xml | |
| 182 | + .. code-block:: none | |
| 184 | 183 | |
| 185 | - 2015-12-07T20:58:45: === GModelSky === | |
| 186 | - 2015-12-07T20:58:45: Name ......................: Crab | |
| 187 | - 2015-12-07T20:58:45: Instruments ...............: all | |
| 188 | - 2015-12-07T20:58:45: Test Statistic ............: 21164.4 | |
| 184 | + 2016-06-29T16:17:38: === GModelSky === | |
| 185 | + 2016-06-29T16:17:38: Name ......................: Crab | |
| 186 | + 2016-06-29T16:17:38: Instruments ...............: all | |
| 187 | + 2016-06-29T16:17:38: Test Statistic ............: 21778.8 | |
| 189 | 188 | |
| 190 | 189 | The Test Statistic value will also be added as new attribute |
| 191 | 190 | ``ts`` to the XML result file: |
| 192 | 191 | |
| 193 | 192 | .. code-block:: xml |
| 194 | 193 | |
| 195 | - <source name="Crab" type="PointSource" ts="21164.384" tscalc="1"> | |
| 194 | + <source name="Crab" type="PointSource" ts="21778.780" tscalc="1"> | ... | ... |
doc/source/users/user_manual/getting_started/python.rst
| ... | ... | @@ -64,26 +64,9 @@ To visualise this container, type: |
| 64 | 64 | >>> print(sim.obs()) |
| 65 | 65 | === GObservations === |
| 66 | 66 | Number of observations ....: 1 |
| 67 | + Number of models ..........: 2 | |
| 68 | + Number of observed events .: 23099 | |
| 67 | 69 | Number of predicted events : 0 |
| 68 | - === GCTAObservation === | |
| 69 | - Name ......................: | |
| 70 | - Identifier ................: | |
| 71 | - Instrument ................: CTA | |
| 72 | - Event file ................: events.fits | |
| 73 | - Event type ................: EventList | |
| 74 | - Statistics ................: Poisson | |
| 75 | - Ontime ....................: 1800 s | |
| 76 | - Livetime ..................: 1710 s | |
| 77 | - Deadtime correction .......: 0.95 | |
| 78 | - User energy range .........: undefined | |
| 79 | - === GCTAPointing === | |
| 80 | - Pointing direction ........: (RA,Dec)=(83.63,22.01) | |
| 81 | - === GCTAResponseIrf === | |
| 82 | - Caldb mission .............: cta | |
| 83 | - Caldb instrument ..........: prod2 | |
| 84 | - Response name .............: South_0.5h | |
| 85 | - Energy dispersion .........: Not used | |
| 86 | - Save energy range .........: undefined | |
| 87 | 70 | |
| 88 | 71 | There is one CTA observation in the container and to visualise the events |
| 89 | 72 | in that observation you may type: |
| ... | ... | @@ -92,7 +75,7 @@ in that observation you may type: |
| 92 | 75 | |
| 93 | 76 | >>> print(sim.obs()[0].events()) |
| 94 | 77 | === GCTAEventList === |
| 95 | - Number of events ..........: 45370 | |
| 78 | + Number of events ..........: 23099 (disposed in "events.fits") | |
| 96 | 79 | Time interval .............: 51544.5 - 51544.5 days |
| 97 | 80 | === GEbounds === |
| 98 | 81 | Number of intervals .......: 1 |
| ... | ... | @@ -125,38 +108,11 @@ terrestrial times (TT) of all events. |
| 125 | 108 | >>> for event in events: |
| 126 | 109 | ... print(event) |
| 127 | 110 | ... |
| 128 | - Dir=RA=83.5743, DEC=21.9746 [-0.000617357,-0.000902194] Energy=328.153 GeV Time=-3.15576e+08 s (TT) | |
| 129 | - Dir=RA=83.5756, DEC=22.0127 [4.78931e-05,-0.000879886] Energy=353.264 GeV Time=-3.15576e+08 s (TT) | |
| 130 | - Dir=RA=83.6811, DEC=22.0034 [-0.000114612,0.000826825] Energy=550.35 GeV Time=-3.15576e+08 s (TT) | |
| 111 | + Dir=RA=83.6308, DEC=21.8881 [-0.00212759,1.33661e-05] Energy=106.465 GeV Time=-3.15576e+08 s (TT) | |
| 112 | + Dir=RA=83.7518, DEC=21.8064 [-0.0035525,0.00197398] Energy=117.706 GeV Time=-3.15576e+08 s (TT) | |
| 113 | + Dir=RA=83.5545, DEC=22.0933 [0.00145377,-0.00122121] Energy=138.624 GeV Time=-3.15576e+08 s (TT) | |
| 131 | 114 | ... |
| 132 | 115 | |
| 133 | -.. note:: | |
| 134 | - | |
| 135 | - If you inspect the event list in detail you may recognise that all | |
| 136 | - events appear twice in the event list. | |
| 137 | - This is because we ran :ref:`ctobssim` twice (a first time when calling | |
| 138 | - the ``execute()`` method and a second time when calling the ``run()`` | |
| 139 | - method). | |
| 140 | - **ctobssim will append simulated events to any pre-existing | |
| 141 | - events in an observation container.** | |
| 142 | - To get a single simulation you should clear the observation container | |
| 143 | - and re-run :ref:`ctobssim`: | |
| 144 | - | |
| 145 | - .. code-block:: python | |
| 146 | - | |
| 147 | - >>> sim.obs().clear() | |
| 148 | - >>> sim.run() | |
| 149 | - >>> print(sim.obs()[0].events()) | |
| 150 | - === GCTAEventList === | |
| 151 | - Number of events ..........: 22685 | |
| 152 | - Time interval .............: 51544.5 - 51544.5 days | |
| 153 | - === GEbounds === | |
| 154 | - Number of intervals .......: 1 | |
| 155 | - Energy range ..............: 100 GeV - 100 TeV | |
| 156 | - === GCTARoi === | |
| 157 | - ROI centre ................: RA=83.63, DEC=22.01 [0,0] | |
| 158 | - ROI radius ................: 5 deg | |
| 159 | - | |
| 160 | 116 | |
| 161 | 117 | Performing a maximum likelihood analysis in Python |
| 162 | 118 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| ... | ... | @@ -187,7 +143,7 @@ To check how the fit went you can inspect the optimiser used by |
| 187 | 143 | |
| 188 | 144 | >>> print(like.opt()) |
| 189 | 145 | === GOptimizerLM === |
| 190 | - Optimized function value ..: 152299.205 | |
| 146 | + Optimized function value ..: 154553.422 | |
| 191 | 147 | Absolute precision ........: 0.005 |
| 192 | 148 | Acceptable value decrease .: 2 |
| 193 | 149 | Optimization status .......: converged |
| ... | ... | @@ -220,8 +176,8 @@ member of the observation container: |
| 220 | 176 | RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) |
| 221 | 177 | DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) |
| 222 | 178 | Number of spectral par's ..: 3 |
| 223 | - Prefactor ................: 5.81591e-16 +/- 1.01725e-17 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 224 | - Index ....................: -2.50618 +/- 0.0153538 [-0,-5] (free,scale=-1,gradient) | |
| 179 | + Prefactor ................: 5.82698e-16 +/- 1.02186e-17 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 180 | + Index ....................: -2.47534 +/- 0.0154764 [-0,-5] (free,scale=-1,gradient) | |
| 225 | 181 | PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) |
| 226 | 182 | Number of temporal par's ..: 1 |
| 227 | 183 | Normalization ............: 1 (relative value) (fixed,scale=1,gradient) |
| ... | ... | @@ -233,8 +189,8 @@ member of the observation container: |
| 233 | 189 | Model type ................: "PowerLaw" * "Constant" |
| 234 | 190 | Number of parameters ......: 4 |
| 235 | 191 | Number of spectral par's ..: 3 |
| 236 | - Prefactor ................: 0.998788 +/- 0.0118567 [0.001,1000] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 237 | - Index ....................: 0.00990034 +/- 0.00735768 [-5,5] (free,scale=1,gradient) | |
| 192 | + Prefactor ................: 1.01266 +/- 0.0119676 [0.001,1000] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 193 | + Index ....................: 0.00474762 +/- 0.00731725 [-5,5] (free,scale=1,gradient) | |
| 238 | 194 | PivotEnergy ..............: 1e+06 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) |
| 239 | 195 | Number of temporal par's ..: 1 |
| 240 | 196 | Normalization ............: 1 (relative value) (fixed,scale=1,gradient) |
| ... | ... | @@ -250,8 +206,8 @@ This is easy from Python: |
| 250 | 206 | >>> like.run() |
| 251 | 207 | >>> print(like.obs().models()) |
| 252 | 208 | ... |
| 253 | - RA .......................: 83.6334 +/- 0.000917669 [-360,360] deg (free,scale=1) | |
| 254 | - DEC ......................: 22.0144 +/- 0.000836554 [-90,90] deg (free,scale=1) | |
| 209 | + RA .......................: 83.6327 +/- 0.000916983 [-360,360] deg (free,scale=1) | |
| 210 | + DEC ......................: 22.0141 +/- 0.00086378 [-90,90] deg (free,scale=1) | |
| 255 | 211 | |
| 256 | 212 | The ``like.obs().models()`` method provides the model container, using the |
| 257 | 213 | ``["Crab"]`` operator we access the Crab model in that container and using |
| ... | ... | @@ -293,7 +249,9 @@ the ``fix()`` method. |
| 293 | 249 | >>> print(like.obs()) |
| 294 | 250 | === GObservations === |
| 295 | 251 | Number of observations ....: 1 |
| 296 | - Number of predicted events : 22685 | |
| 252 | + Number of models ..........: 2 | |
| 253 | + Number of observed events .: 23099 | |
| 254 | + Number of predicted events : 23099 | |
| 297 | 255 | |
| 298 | 256 | is okay as the ``ctools.ctlike(sim.obs())`` constructor will create |
| 299 | 257 | a copy of the observation container that lives within the :ref:`ctlike` |
| ... | ... | @@ -309,6 +267,8 @@ the ``fix()`` method. |
| 309 | 267 | >>> print(obs) |
| 310 | 268 | === GObservations === |
| 311 | 269 | Number of observations ....: 1 |
| 270 | + Number of models ..........: 2 | |
| 271 | + Number of observed events .: 23099 | |
| 312 | 272 | Number of predicted events : 0 |
| 313 | 273 | |
| 314 | 274 | |
| ... | ... | @@ -338,8 +298,9 @@ Here an example of how to use ``obsutils``: |
| 338 | 298 | >>> print(obs) |
| 339 | 299 | === GObservations === |
| 340 | 300 | Number of observations ....: 4 |
| 301 | + Number of models ..........: 0 | |
| 302 | + Number of observed events .: 0 | |
| 341 | 303 | Number of predicted events : 0 |
| 342 | - ... | |
| 343 | 304 | >>> obs.models(gammalib.GModels("${CTOOLS}/share/models/crab.xml")) |
| 344 | 305 | >>> obs = obsutils.sim(obs) |
| 345 | 306 | >>> like = obsutils.fit(obs) |
| ... | ... | @@ -355,8 +316,8 @@ pattern of four observations located at offset angles of 1 degree from the |
| 355 | 316 | nominal location of the Crab nebula. |
| 356 | 317 | The ``obsutils.set_obs_list()`` will build an observation container from |
| 357 | 318 | that pattern where each pointing will have a duration of 1800 seconds, |
| 358 | -cover the 0.1-100 TeV energy range and a field of view of 5 degrees. | |
| 359 | -The standard dummy CTA calibration information will be used. | |
| 319 | +cover the 0.1-100 TeV energy range and a field of view of 5°. | |
| 320 | +The ``South_0.5h`` IRF from the Prod2 calibration database will be used. | |
| 360 | 321 | A model is then appended to the observation container using the |
| 361 | 322 | ``obs.models()`` method. |
| 362 | 323 | The ``obsutils.sim()`` function then simulates the event data, the |
| ... | ... | @@ -484,4 +445,4 @@ Beyond the first steps |
| 484 | 445 | You now have learned the basics of using ctools and GammaLib within Python. |
| 485 | 446 | To go beyond these initial steps you may check the Python scripts in the |
| 486 | 447 | ``examples`` folder that provide useful analysis examples. |
| 487 | -Check the ``README`` file in that folder for an explanation of the scripts. | |
| 448 | +Check the ``README.md`` file in that folder for an explanation of the scripts. | ... | ... |
doc/source/users/user_manual/getting_started/quickstart.rst
| ... | ... | @@ -9,9 +9,10 @@ half an hour long CTA observation of the Crab nebula as the single |
| 9 | 9 | point source within the CTA field of view. You will learn how to bin the |
| 10 | 10 | event data into a counts cube and how to fit a spatial and spectral model |
| 11 | 11 | to the data. You will also learn how to analyse directly event lists |
| 12 | -without binning the events into a counts cube. Finally we will show how | |
| 13 | -you can create a butterfly diagram that shows the confidence band of the | |
| 14 | -fitted spectral model. | |
| 12 | +without binning the events into a counts cube. We will show how you can | |
| 13 | +create a butterfly diagram that shows the confidence band of the | |
| 14 | +fitted spectral model. And you will learn how to take energy dispersion | |
| 15 | +into account. | |
| 15 | 16 | |
| 16 | 17 | .. toctree:: |
| 17 | 18 | :maxdepth: 2 |
| ... | ... | @@ -21,3 +22,4 @@ fitted spectral model. |
| 21 | 22 | fitting |
| 22 | 23 | unbinned |
| 23 | 24 | butterfly |
| 25 | + energy_dispersion | ... | ... |
doc/source/users/user_manual/getting_started/simulating.rst
| ... | ... | @@ -153,34 +153,48 @@ The second file produced by :ref:`ctobssim` is a human readable log file that |
| 153 | 153 | contains information about the job execution. As example, the last lines |
| 154 | 154 | from this file are shown here: |
| 155 | 155 | |
| 156 | -.. code-block:: xml | |
| 157 | - | |
| 158 | - 2015-12-07T20:48:30: +======================+ | |
| 159 | - 2015-12-07T20:48:30: | Simulate observation | | |
| 160 | - 2015-12-07T20:48:30: +======================+ | |
| 161 | - 2015-12-07T20:48:30: === CTA observation === | |
| 162 | - 2015-12-07T20:48:30: Simulation area ...........: 1.9635e+11 cm2 | |
| 163 | - 2015-12-07T20:48:30: Simulation cone ...........: RA=83.63 deg, Dec=22.01 deg, r=5.5 deg | |
| 164 | - 2015-12-07T20:48:30: Time interval .............: 0 - 1800 s | |
| 165 | - 2015-12-07T20:48:30: Photon energy range .......: 100 GeV - 100 TeV | |
| 166 | - 2015-12-07T20:48:30: Event energy range ........: 100 GeV - 100 TeV | |
| 167 | - 2015-12-07T20:48:30: Use model .................: Crab | |
| 168 | - 2015-12-07T20:48:30: Normalization .............: 1 [Crab] | |
| 169 | - 2015-12-07T20:48:30: Flux ......................: 5.87297e-10 [Crab] photons/cm2/s | |
| 170 | - 2015-12-07T20:48:30: Normalized flux ...........: 5.87297e-10 [Crab] photons/cm2/s | |
| 171 | - 2015-12-07T20:48:30: Photon rate ...............: 115.316 photons/s [Crab] | |
| 172 | - 2015-12-07T20:48:31: MC source photons .........: 207547 [Crab] | |
| 173 | - 2015-12-07T20:48:31: MC source events ..........: 3646 [Crab] | |
| 174 | - 2015-12-07T20:48:31: MC source events ..........: 3646 (all source models) | |
| 175 | - 2015-12-07T20:48:33: MC events outside ROI .....: 0 | |
| 176 | - 2015-12-07T20:48:33: MC background events ......: 19039 | |
| 177 | - 2015-12-07T20:48:33: MC events .................: 22685 (all models) | |
| 156 | +.. code-block:: none | |
| 157 | + | |
| 158 | + 2016-06-29T10:21:57: +======================+ | |
| 159 | + 2016-06-29T10:21:57: | Simulate observation | | |
| 160 | + 2016-06-29T10:21:57: +======================+ | |
| 161 | + 2016-06-29T10:21:57: === CTA observation === | |
| 162 | + 2016-06-29T10:21:57: Simulation cone ...........: RA=83.63 deg, Dec=22.01 deg, radius=5.5 deg | |
| 163 | + 2016-06-29T10:21:57: Time interval .............: 0 - 1800 s | |
| 164 | + 2016-06-29T10:21:57: Photon energy range .......: 100 GeV - 199.526 GeV | |
| 165 | + 2016-06-29T10:21:57: Event energy range ........: 100 GeV - 199.526 GeV | |
| 166 | + 2016-06-29T10:21:57: Simulation area ..........: 5.75561e+09 cm2 | |
| 167 | + 2016-06-29T10:21:57: Use model ................: Crab | |
| 168 | + 2016-06-29T10:21:57: Normalization ............: 1 [Crab] | |
| 169 | + 2016-06-29T10:21:57: Flux .....................: 3.76031e-10 [Crab] photons/cm2/s | |
| 170 | + 2016-06-29T10:21:57: Normalized flux ..........: 3.76031e-10 [Crab] photons/cm2/s | |
| 171 | + 2016-06-29T10:21:57: Photon rate ..............: 2.16429 photons/s [Crab] | |
| 172 | + 2016-06-29T10:21:57: MC source photons ........: 3889 [Crab] | |
| 173 | + 2016-06-29T10:21:57: MC source events .........: 1226 [Crab] | |
| 174 | + 2016-06-29T10:21:57: MC source events .........: 1226 (all source models) | |
| 175 | + 2016-06-29T10:21:57: Photon energy range .......: 199.526 GeV - 398.107 GeV | |
| 176 | + ... | |
| 177 | + 2016-06-29T10:21:57: MC source photons .........: 10759 [Crab] | |
| 178 | + 2016-06-29T10:21:57: MC source events ..........: 3686 [Crab] | |
| 179 | + 2016-06-29T10:21:57: MC events outside ROI .....: 0 | |
| 180 | + 2016-06-29T10:21:57: MC background events ......: 19413 | |
| 181 | + 2016-06-29T10:21:57: MC events .................: 23099 (all models) | |
| 178 | 182 | |
| 179 | 183 | Each line starts with the UTC time at which the line has been written. In |
| 180 | -this run, 207547 Crab photons have been thrown over an area of 19.6 square | |
| 181 | -kilometres during a time interval of 1800 seconds. 3646 of these photons have | |
| 182 | -been registered by CTA as events. In the same time interval, 19039 background | |
| 183 | -events have been registred by CTA. | |
| 184 | +this run, 10759 Crab photons have been thrown during a time interval of 1800 | |
| 185 | +seconds. 3686 of these photons have been registered by CTA as events. In the | |
| 186 | +same time interval, 19413 background events have been registred by CTA. | |
| 187 | + | |
| 188 | +.. note:: | |
| 189 | + | |
| 190 | + :ref:`ctobssim` will split the simulated energy range into a number of | |
| 191 | + slices, controlled via the hidden ``eslices`` parameter (ten energy slices | |
| 192 | + are used by default). For each energy slice, the simulation area | |
| 193 | + will be adapted to the effective area of the array in that energy slice, | |
| 194 | + which helps to keep the computing time low. The log file will provide | |
| 195 | + information about the simulation in each slice. In the example above, the | |
| 196 | + simulation results for the first energy slice are shown, followed by a | |
| 197 | + summary of the results for all slices. | |
| 184 | 198 | |
| 185 | 199 | You may change the name of the log file using the hidden parameter |
| 186 | 200 | ``logfile``: | ... | ... |
doc/source/users/user_manual/getting_started/unbinned.rst
| ... | ... | @@ -7,7 +7,7 @@ As gamma-ray events are rare, the counts cubes generated by :ref:`ctbin` |
| 7 | 7 | will in general be sparsly populated, having many empty pixels, in |
| 8 | 8 | particular at high energies. |
| 9 | 9 | An alternative analysis technique consists of working directly on the event |
| 10 | -list without binning the events in a counts cube. We will see the benefit of | |
| 10 | +list without binning the events in a counts cube. You will see the benefit of | |
| 11 | 11 | such an analysis later once you re-run :ref:`ctlike` in unbinned mode. |
| 12 | 12 | |
| 13 | 13 | For unbinned analysis you first have to define the data space region over |
| ... | ... | @@ -66,19 +66,22 @@ If they don't exist, :ref:`ctlike` will not execute in unbinned mode. |
| 66 | 66 | Below some lines of the ``ctselect.log`` file that show the data selection |
| 67 | 67 | part: |
| 68 | 68 | |
| 69 | -.. code-block:: xml | |
| 70 | - | |
| 71 | - 2015-12-06T23:44:52: +=================+ | |
| 72 | - 2015-12-06T23:44:52: | Event selection | | |
| 73 | - 2015-12-06T23:44:52: +=================+ | |
| 74 | - 2015-12-06T23:44:52: === CTA observation === | |
| 75 | - 2015-12-06T23:44:52: Selected energy range .....: 0.1 - 100 TeV | |
| 76 | - 2015-12-06T23:44:52: Requested ROI .............: Centre(RA,DEC)=(83.63, 22.01) deg, Radius=3 deg | |
| 77 | - 2015-12-06T23:44:52: ROI of data ...............: Centre(RA,DEC)=(83.63, 22.01) deg, Radius=5 deg | |
| 78 | - 2015-12-06T23:44:52: Selected ROI ..............: Centre(RA,DEC)=(83.63, 22.01) deg, Radius=3 deg | |
| 79 | - 2015-12-06T23:44:52: cfitsio selection .........: ENERGY >= 0.10000000 && ENERGY <= 100.00000000 && ANGSEP(83.630000,22.010000,RA,DEC) <= 3.000000 | |
| 80 | - 2015-12-06T23:44:52: FITS filename .............: /var/tmp/tmp.0.jHg5hJ[EVENTS][ENERGY >= 0.10000000 && ENERGY <= 100.00000000 && ANGSEP(83.630000,22.010000,RA,DEC) <= 3.000000] | |
| 81 | - | |
| 69 | +.. code-block:: none | |
| 70 | + | |
| 71 | + 2016-06-29T16:20:10: +=================+ | |
| 72 | + 2016-06-29T16:20:10: | Event selection | | |
| 73 | + 2016-06-29T16:20:10: +=================+ | |
| 74 | + 2016-06-29T16:20:10: === CTA observation === | |
| 75 | + 2016-06-29T16:20:10: Input filename ............: events.fits | |
| 76 | + 2016-06-29T16:20:10: Event extension name ......: EVENTS | |
| 77 | + 2016-06-29T16:20:10: GTI extension name ........: GTI | |
| 78 | + 2016-06-29T16:20:10: Selected energy range .....: 0.1 - 100 TeV | |
| 79 | + 2016-06-29T16:20:10: Requested ROI .............: Centre(RA,DEC)=(83.63, 22.01) deg, Radius=3 deg | |
| 80 | + 2016-06-29T16:20:10: ROI of data ...............: Centre(RA,DEC)=(83.63, 22.01) deg, Radius=5 deg | |
| 81 | + 2016-06-29T16:20:10: Selected ROI ..............: Centre(RA,DEC)=(83.63, 22.01) deg, Radius=3 deg | |
| 82 | + 2016-06-29T16:20:10: cfitsio selection .........: ENERGY >= 0.10000000 && ENERGY <= 100.00000000 && ANGSEP(83.630000,22.010000,RA,DEC) <= 3.000000 | |
| 83 | + 2016-06-29T16:20:10: FITS filename .............: /var/tmp/tmp.0.3aUIXn[EVENTS][ENERGY >= 0.10000000 && ENERGY <= 100.00000000 && ANGSEP(83.630000,22.010000,RA,DEC) <= 3.000000] | |
| 84 | + | |
| 82 | 85 | .. note:: |
| 83 | 86 | |
| 84 | 87 | :ref:`ctobssim` will also write data selection keywords in the event |
| ... | ... | @@ -94,15 +97,14 @@ part: |
| 94 | 97 | selection, any existing selections, and the selection that was finally |
| 95 | 98 | applied. |
| 96 | 99 | |
| 97 | -.. warning:: | |
| 100 | +.. note:: | |
| 98 | 101 | |
| 99 | 102 | :ref:`ctselect` may of course also be used for event selection prior to |
| 100 | 103 | binned analysis, for example to select events for a given period in |
| 101 | - time. **If you use** :ref:`ctselect` **however to make a spatial or energy | |
| 102 | - selection, make sure that the counts cube is fully enclosed in the | |
| 103 | - selection intervals.** Otherwise you will get empty zones in the counts | |
| 104 | - cube of which the ctools are not aware of, and the subsequent analysis | |
| 105 | - results will be wrong. | |
| 104 | + time. The ``WEIGHT`` extension of the counts cube will track the overlap | |
| 105 | + between the ROI applied by :ref:`ctselect` and the counts cube, and this | |
| 106 | + information will be transparently used in any further analysis to restrict | |
| 107 | + the analysis on counts cube bins that contain data. | |
| 106 | 108 | |
| 107 | 109 | Now that you have selected the events of interest, you can run ctlike in |
| 108 | 110 | unbinned mode. To do this you have to specify the selected event list |
| ... | ... | @@ -120,19 +122,19 @@ instead of the counts cube: |
| 120 | 122 | You will recognise that :ref:`ctlike` runs much faster in unbinned mode |
| 121 | 123 | compared to binned mode. |
| 122 | 124 | This is understandable as the selected event list contains |
| 123 | -only 21203 events, while the binned counts cube we used before had | |
| 124 | -200 x 200 x 20 = 800000 pixels. As unbinned maximum likelihood fitting loops | |
| 125 | -over the events (while binned maximum likelihood loops over the pixels), | |
| 125 | +only 21604 events, while the binned counts cube you used before had | |
| 126 | +200 x 200 x 20 = 800000 bins. As unbinned maximum likelihood fitting loops | |
| 127 | +over the events (while binned maximum likelihood loops over the bins), | |
| 126 | 128 | there are much less operations to perform in unbinned than in binned mode |
| 127 | 129 | (there is some additional overhead in unbinned mode that comes from |
| 128 | 130 | integrating the models over the region of interest, yet this is negligible |
| 129 | 131 | compared to the operations needed when looping over all pixels). So as long |
| 130 | 132 | as you work with small event lists, unbinned mode is faster (this |
| 131 | -typically holds up to 100 hours of observing time). | |
| 133 | +typically holds up to 50 hours of observing time for point sources). | |
| 132 | 134 | Unbinned :ref:`ctlike` should also be more precise as no binning is performed, |
| 133 | 135 | hence there is no loss of information due to histogramming. |
| 134 | 136 | |
| 135 | -Below you see the corresponding output from the ctlike.log file. The fitted | |
| 137 | +Below you see the corresponding output from the ``ctlike.log`` file. The fitted | |
| 136 | 138 | parameters are essentially identical to the ones found in binned mode. |
| 137 | 139 | The slight difference with respect to the binned analysis may be explained |
| 138 | 140 | by the different event sample that has been used for the analysis: while |
| ... | ... | @@ -140,61 +142,60 @@ binned likelihood works on rectangular counts cubes, unbinned likelihood works |
| 140 | 142 | on circular event selection regions. It is thus not possible to select exactly |
| 141 | 143 | the same events for both analyses. |
| 142 | 144 | |
| 143 | -.. code-block:: xml | |
| 144 | - | |
| 145 | - 2015-12-07T21:02:17: +=================================+ | |
| 146 | - 2015-12-07T21:02:17: | Maximum likelihood optimisation | | |
| 147 | - 2015-12-07T21:02:17: +=================================+ | |
| 148 | - 2015-12-07T21:02:17: >Iteration 0: -logL=135278.644, Lambda=1.0e-03 | |
| 149 | - 2015-12-07T21:02:17: >Iteration 1: -logL=135274.475, Lambda=1.0e-03, delta=4.168, max(|grad|)=5.806873 [Index:7] | |
| 150 | - 2015-12-07T21:02:17: >Iteration 2: -logL=135274.474, Lambda=1.0e-04, delta=0.001, max(|grad|)=-0.009463 [Index:7] | |
| 151 | - 2015-12-07T21:02:17: | |
| 152 | - ... | |
| 153 | - 2015-12-07T21:02:17: +=========================================+ | |
| 154 | - 2015-12-07T21:02:17: | Maximum likelihood optimisation results | | |
| 155 | - 2015-12-07T21:02:17: +=========================================+ | |
| 156 | - 2015-12-07T21:02:17: === GOptimizerLM === | |
| 157 | - 2015-12-07T21:02:17: Optimized function value ..: 135274.474 | |
| 158 | - 2015-12-07T21:02:17: Absolute precision ........: 0.005 | |
| 159 | - 2015-12-07T21:02:17: Acceptable value decrease .: 2 | |
| 160 | - 2015-12-07T21:02:17: Optimization status .......: converged | |
| 161 | - 2015-12-07T21:02:17: Number of parameters ......: 10 | |
| 162 | - 2015-12-07T21:02:17: Number of free parameters .: 4 | |
| 163 | - 2015-12-07T21:02:17: Number of iterations ......: 2 | |
| 164 | - 2015-12-07T21:02:17: Lambda ....................: 1e-05 | |
| 165 | - 2015-12-07T21:02:17: Maximum log likelihood ....: -135274.474 | |
| 166 | - 2015-12-07T21:02:17: Observed events (Nobs) ...: 21203.000 | |
| 167 | - 2015-12-07T21:02:17: Predicted events (Npred) ..: 21202.998 (Nobs - Npred = 0.00198937) | |
| 168 | - 2015-12-07T21:02:17: === GModels === | |
| 169 | - 2015-12-07T21:02:17: Number of models ..........: 2 | |
| 170 | - 2015-12-07T21:02:17: Number of parameters ......: 10 | |
| 171 | - 2015-12-07T21:02:17: === GModelSky === | |
| 172 | - 2015-12-07T21:02:17: Name ......................: Crab | |
| 173 | - 2015-12-07T21:02:17: Instruments ...............: all | |
| 174 | - 2015-12-07T21:02:17: Instrument scale factors ..: unity | |
| 175 | - 2015-12-07T21:02:17: Observation identifiers ...: all | |
| 176 | - 2015-12-07T21:02:17: Model type ................: PointSource | |
| 177 | - 2015-12-07T21:02:17: Model components ..........: "SkyDirFunction" * "PowerLaw" * "Constant" | |
| 178 | - 2015-12-07T21:02:17: Number of parameters ......: 6 | |
| 179 | - 2015-12-07T21:02:17: Number of spatial par's ...: 2 | |
| 180 | - 2015-12-07T21:02:17: RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) | |
| 181 | - 2015-12-07T21:02:17: DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) | |
| 182 | - 2015-12-07T21:02:17: Number of spectral par's ..: 3 | |
| 183 | - 2015-12-07T21:02:17: Prefactor ................: 5.81583e-16 +/- 1.01727e-17 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 184 | - 2015-12-07T21:02:17: Index ....................: -2.50611 +/- 0.0153542 [-0,-5] (free,scale=-1,gradient) | |
| 185 | - 2015-12-07T21:02:17: PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 186 | - 2015-12-07T21:02:17: Number of temporal par's ..: 1 | |
| 187 | - 2015-12-07T21:02:17: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 188 | - 2015-12-07T21:02:17: === GCTAModelIrfBackground === | |
| 189 | - 2015-12-07T21:02:17: Name ......................: CTABackgroundModel | |
| 190 | - 2015-12-07T21:02:17: Instruments ...............: CTA | |
| 191 | - 2015-12-07T21:02:17: Instrument scale factors ..: unity | |
| 192 | - 2015-12-07T21:02:17: Observation identifiers ...: all | |
| 193 | - 2015-12-07T21:02:17: Model type ................: "PowerLaw" * "Constant" | |
| 194 | - 2015-12-07T21:02:17: Number of parameters ......: 4 | |
| 195 | - 2015-12-07T21:02:17: Number of spectral par's ..: 3 | |
| 196 | - 2015-12-07T21:02:17: Prefactor ................: 0.990866 +/- 0.0136406 [0.001,1000] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 197 | - 2015-12-07T21:02:17: Index ....................: 0.00536014 +/- 0.00839916 [-5,5] (free,scale=1,gradient) | |
| 198 | - 2015-12-07T21:02:17: PivotEnergy ..............: 1e+06 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 199 | - 2015-12-07T21:02:17: Number of temporal par's ..: 1 | |
| 200 | - 2015-12-07T21:02:17: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 145 | +.. code-block:: none | |
| 146 | + | |
| 147 | + 2016-06-29T16:24:44: +=================================+ | |
| 148 | + 2016-06-29T16:24:44: | Maximum likelihood optimisation | | |
| 149 | + 2016-06-29T16:24:44: +=================================+ | |
| 150 | + 2016-06-29T16:24:45: >Iteration 0: -logL=137562.094, Lambda=1.0e-03 | |
| 151 | + 2016-06-29T16:24:45: >Iteration 1: -logL=137560.613, Lambda=1.0e-03, delta=1.481, max(|grad|)=2.548241 [Index:7] | |
| 152 | + 2016-06-29T16:24:45: >Iteration 2: -logL=137560.613, Lambda=1.0e-04, delta=0.001, max(|grad|)=0.027191 [Index:3] | |
| 153 | + ... | |
| 154 | + 2016-06-29T16:24:45: +=========================================+ | |
| 155 | + 2016-06-29T16:24:45: | Maximum likelihood optimisation results | | |
| 156 | + 2016-06-29T16:24:45: +=========================================+ | |
| 157 | + 2016-06-29T16:24:45: === GOptimizerLM === | |
| 158 | + 2016-06-29T16:24:45: Optimized function value ..: 137560.613 | |
| 159 | + 2016-06-29T16:24:45: Absolute precision ........: 0.005 | |
| 160 | + 2016-06-29T16:24:45: Acceptable value decrease .: 2 | |
| 161 | + 2016-06-29T16:24:45: Optimization status .......: converged | |
| 162 | + 2016-06-29T16:24:45: Number of parameters ......: 10 | |
| 163 | + 2016-06-29T16:24:45: Number of free parameters .: 4 | |
| 164 | + 2016-06-29T16:24:45: Number of iterations ......: 2 | |
| 165 | + 2016-06-29T16:24:45: Lambda ....................: 1e-05 | |
| 166 | + 2016-06-29T16:24:45: Maximum log likelihood ....: -137560.613 | |
| 167 | + 2016-06-29T16:24:45: Observed events (Nobs) ...: 21604.000 | |
| 168 | + 2016-06-29T16:24:45: Predicted events (Npred) ..: 21603.998 (Nobs - Npred = 0.00202556) | |
| 169 | + 2016-06-29T16:24:45: === GModels === | |
| 170 | + 2016-06-29T16:24:45: Number of models ..........: 2 | |
| 171 | + 2016-06-29T16:24:45: Number of parameters ......: 10 | |
| 172 | + 2016-06-29T16:24:45: === GModelSky === | |
| 173 | + 2016-06-29T16:24:45: Name ......................: Crab | |
| 174 | + 2016-06-29T16:24:45: Instruments ...............: all | |
| 175 | + 2016-06-29T16:24:45: Instrument scale factors ..: unity | |
| 176 | + 2016-06-29T16:24:45: Observation identifiers ...: all | |
| 177 | + 2016-06-29T16:24:45: Model type ................: PointSource | |
| 178 | + 2016-06-29T16:24:45: Model components ..........: "SkyDirFunction" * "PowerLaw" * "Constant" | |
| 179 | + 2016-06-29T16:24:45: Number of parameters ......: 6 | |
| 180 | + 2016-06-29T16:24:45: Number of spatial par's ...: 2 | |
| 181 | + 2016-06-29T16:24:45: RA .......................: 83.6331 [-360,360] deg (fixed,scale=1) | |
| 182 | + 2016-06-29T16:24:45: DEC ......................: 22.0145 [-90,90] deg (fixed,scale=1) | |
| 183 | + 2016-06-29T16:24:45: Number of spectral par's ..: 3 | |
| 184 | + 2016-06-29T16:24:45: Prefactor ................: 5.828e-16 +/- 1.0219e-17 [1e-23,1e-13] ph/cm2/s/MeV (free,scale=1e-16,gradient) | |
| 185 | + 2016-06-29T16:24:45: Index ....................: -2.47546 +/- 0.0154751 [-0,-5] (free,scale=-1,gradient) | |
| 186 | + 2016-06-29T16:24:45: PivotEnergy ..............: 300000 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 187 | + 2016-06-29T16:24:45: Number of temporal par's ..: 1 | |
| 188 | + 2016-06-29T16:24:45: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | |
| 189 | + 2016-06-29T16:24:45: === GCTAModelIrfBackground === | |
| 190 | + 2016-06-29T16:24:45: Name ......................: CTABackgroundModel | |
| 191 | + 2016-06-29T16:24:45: Instruments ...............: CTA | |
| 192 | + 2016-06-29T16:24:45: Instrument scale factors ..: unity | |
| 193 | + 2016-06-29T16:24:45: Observation identifiers ...: all | |
| 194 | + 2016-06-29T16:24:45: Model type ................: "PowerLaw" * "Constant" | |
| 195 | + 2016-06-29T16:24:45: Number of parameters ......: 4 | |
| 196 | + 2016-06-29T16:24:45: Number of spectral par's ..: 3 | |
| 197 | + 2016-06-29T16:24:45: Prefactor ................: 1.0132 +/- 0.0138017 [0.001,1000] ph/cm2/s/MeV (free,scale=1,gradient) | |
| 198 | + 2016-06-29T16:24:45: Index ....................: 0.00653002 +/- 0.00831374 [-5,5] (free,scale=1,gradient) | |
| 199 | + 2016-06-29T16:24:45: PivotEnergy ..............: 1e+06 [10000,1e+09] MeV (fixed,scale=1e+06,gradient) | |
| 200 | + 2016-06-29T16:24:45: Number of temporal par's ..: 1 | |
| 201 | + 2016-06-29T16:24:45: Normalization ............: 1 (relative value) (fixed,scale=1,gradient) | ... | ... |