Commit 93a5a9d5df12b4d532cf02b926b232815f55c13b

Authored by Jürgen Knödlseder
1 parent c18829b4

Add radial ring and table models to science verification

test/data/sciver/crab_rring.xml 0 → 100755
  1 +<?xml version="1.0" standalone="no"?>
  2 +<source_library title="source library">
  3 + <source name="Crab" type="ExtendedSource">
  4 + <spectrum type="PowerLaw">
  5 + <parameter name="Prefactor" scale="1e-16" value="5.7" min="1e-07" max="1000.0" free="1"/>
  6 + <parameter name="Index" scale="-1" value="2.48" min="0.0" max="+5.0" free="1"/>
  7 + <parameter name="PivotEnergy" scale="1e6" value="0.3" min="0.01" max="1000.0" free="0"/>
  8 + </spectrum>
  9 + <spatialModel type="RadialRing">
  10 + <parameter name="RA" scale="1.0" value="83.6331" min="-360" max="360" free="1"/>
  11 + <parameter name="DEC" scale="1.0" value="22.0145" min="-90" max="90" free="1"/>
  12 + <parameter name="Radius" scale="1.0" value="0.30" min="0.01" max="10" free="1"/>
  13 + <parameter name="Width" scale="1.0" value="0.10" min="0.01" max="10" free="1"/>
  14 + </spatialModel>
  15 + </source>
  16 + <source name="Background" type="CTAIrfBackground" instrument="CTA">
  17 + <spectrum type="PowerLaw">
  18 + <parameter name="Prefactor" scale="1.0" value="1.0" min="1e-3" max="1e3" free="1"/>
  19 + <parameter name="Index" scale="1.0" value="0.0" min="-5.0" max="+5.0" free="1"/>
  20 + <parameter name="PivotEnergy" scale="1e6" value="1.0" min="0.01" max="1000.0" free="0"/>
  21 + </spectrum>
  22 + </source>
  23 +</source_library>
... ...
test/data/sciver/crab_table.fits.gz 0 → 100644
No preview for this file type
test/data/sciver/crab_table.xml 0 → 100644
  1 +<?xml version="1.0" standalone="no"?>
  2 +<source_library title="source library">
  3 + <source name="Crab" type="PointSource">
  4 + <spectrum type="TableModel" file="crab_table.fits">
  5 + <parameter name="Normalization" scale="1e-15" value="2.0" min="1e-07" max="1000.0" free="1"/>
  6 + <parameter name="Index" scale="-1" value="2.1" min="0.0" max="+5.0" free="1"/>
  7 + <parameter name="Cutoff" scale="1e6" value="1.0" min="0.01" max="1000.0" free="1"/>
  8 + </spectrum>
  9 + <spatialModel type="PointSource">
  10 + <parameter free="0" max="360" min="-360" name="RA" scale="1" value="83.6331" />
  11 + <parameter free="0" max="90" min="-90" name="DEC" scale="1" value="22.0145" />
  12 + </spatialModel>
  13 + </source>
  14 + <source name="Background" type="CTAIrfBackground" instrument="CTA">
  15 + <spectrum type="PowerLaw">
  16 + <parameter name="Prefactor" scale="1.0" value="1.0" min="1e-3" max="1e3" free="1"/>
  17 + <parameter name="Index" scale="1.0" value="0.0" min="-5.0" max="+5.0" free="1"/>
  18 + <parameter name="PivotEnergy" scale="1e6" value="1.0" min="0.01" max="1000.0" free="0"/>
  19 + </spectrum>
  20 + </source>
  21 +</source_library>
... ...
test/science_verification.py
... ... @@ -11,7 +11,7 @@
11 11 #
12 12 # --------------------------------------------------------------------------
13 13 #
14   -# Copyright (C) 2015-2018 Juergen Knoedlseder
  14 +# Copyright (C) 2015-2020 Juergen Knoedlseder
15 15 #
16 16 # This program is free software: you can redistribute it and/or modify
17 17 # it under the terms of the GNU General Public License as published by
... ... @@ -251,11 +251,13 @@ class sciver(gammalib.GPythonTestSuite):
251 251 self.append(self.spec_gauss, 'Test Gaussian model')
252 252 self.append(self.spec_filefct, 'Test file function model')
253 253 self.append(self.spec_nodes, 'Test nodes model')
  254 + self.append(self.spec_table, 'Test table model')
254 255 self.append(self.spec_exponential, 'Test exponential model')
255 256  
256 257 # Append spatial tests
257 258 self.append(self.spat_ptsrc, 'Test point source model')
258 259 self.append(self.spat_rdisk, 'Test radial disk model')
  260 + self.append(self.spat_rring, 'Test radial ring model')
259 261 self.append(self.spat_rgauss, 'Test radial Gaussian model')
260 262 self.append(self.spat_rshell, 'Test radial shell model')
261 263 self.append(self.spat_edisk, 'Test elliptical disk model')
... ... @@ -530,6 +532,19 @@ class sciver(gammalib.GPythonTestSuite):
530 532 self.test('Pull_Background_Index')
531 533 return
532 534  
  535 + # Test table model
  536 + def spec_table(self):
  537 + """
  538 + Test table model
  539 + """
  540 + self.pull('data/sciver/crab_table')
  541 + self.test('Pull_Crab_Normalization')
  542 + self.test('Pull_Crab_Index')
  543 + self.test('Pull_Crab_Cutoff')
  544 + self.test('Pull_Background_Prefactor')
  545 + self.test('Pull_Background_Index')
  546 + return
  547 +
533 548 # Test exponential model
534 549 def spec_exponential(self):
535 550 """
... ... @@ -572,6 +587,22 @@ class sciver(gammalib.GPythonTestSuite):
572 587 self.test('Pull_Background_Index')
573 588 return
574 589  
  590 + # Test radial ring model
  591 + def spat_rring(self):
  592 + """
  593 + Test radial ring model
  594 + """
  595 + self.pull('data/sciver/crab_rring')
  596 + self.test('Pull_Crab_Prefactor', lim_mean=0.45) # Accept a small bias
  597 + self.test('Pull_Crab_Index')
  598 + self.test('Pull_Crab_RA')
  599 + self.test('Pull_Crab_DEC')
  600 + self.test('Pull_Crab_Radius')
  601 + self.test('Pull_Crab_Width')
  602 + self.test('Pull_Background_Prefactor')
  603 + self.test('Pull_Background_Index')
  604 + return
  605 +
575 606 # Test radial Gaussian model
576 607 def spat_rgauss(self):
577 608 """
... ...