Action #1429

Implement XML definition for CTA observation

Added by Knödlseder Jürgen about 9 years ago. Updated almost 9 years ago.

Status:ClosedStart date:02/21/2015
Priority:NormalDue date:
Assigned To:Knödlseder Jürgen% Done:

100%

Category:-
Target version:1.0.0
Duration:

Description

It should be possible to create an empty CTA observation (an observation without events) from an XML file. This allows to specify an observation definition file on entry of ctobssim and to create event lists for all observations in the XML file. The following format is proposed:

<pointing ra="80.0" dec="-20.0" />
<roi ra="80.0" dec="-20.0" rad="3.0" />
<gti tmin="0.0" tmax="1800.0" />
<ebounds emin="0.01" emax="100.0" />
<deadc deadc="0.95" />

The readers (and writers) for the formats should be implemented on the class level, e.g. for GEbounds for the <ebounds /> tag, etc. This allows flexibility to the class level. For example, the <ebounds /> tag may also support the format
<ebounds file="ebounds.fits" />

to specify energy boundaries from a file.

pntdef.dat Magnifier (43 Bytes) Knödlseder Jürgen, 02/22/2015 04:34 PM

obs.xml Magnifier (1.57 KB) Knödlseder Jürgen, 02/22/2015 04:34 PM


Recurrence

No recurrence.

History

#1 Updated by Knödlseder Jürgen about 9 years ago

  • File pntdef.datMagnifier added
  • File obs.xmlMagnifier added
  • Status changed from New to Feedback
  • % Done changed from 0 to 90

The following format has been implemented:

<observation_list title="observation list">
  <observation name="None" id="000001" instrument="CTA">
    <parameter name="Pointing" ra="83.63" dec="22.01" />
    <parameter name="EnergyBoundaries" emin="100000" emax="1e+08" />
    <parameter name="GoodTimeIntervals" tmin="0" tmax="1800" />
    <parameter name="TimeReference" mjdrefi="51544" mjdreff="0.5" timeunit="s" timesys="TT" timeref="LOCAL" />
    <parameter name="RegionOfInterest" ra="83.63" dec="22.01" rad="5" />
    <parameter name="Deadtime" deadc="0.95" />
  </observation>

The EnergyBoundaries, GoodTimeIntervals, TimeReference and RegionOfInterest tags are optional.

Pointing is written by the GCTAPointing class, EnergyBoundaries by the GEbounds class, GoodTimeIntervals by the GGti class, TimeReference by the GTimeReference class, and RegionOfInterest by the GCTAInstDir class. Only Deadtime is directly handled by the GCTAObservation class.

A cscript csobsdef has been added that allows creation of observation definition files from colon separated value ASCII files. The minimum information in this file is a list of ra and dec values (or lon and lat values) for the pointings. Additional columns can be added for more fine grained control.

An example file is attached.

#2 Updated by Mayer Michael about 9 years ago

Sounds like a good idea. I looked at the code and have one question: how would you handle multiple GTIs? This is probably not an urgent feature but we might want to keep in mind that observations could have a gap (e.g. due to lightnings), which would lead to more than one GTI, right?
Of course, for ctobssim this is even less of an issue. But maybe writing the GTIs to xml should write all individual GTIs?

#3 Updated by Knödlseder Jürgen about 9 years ago

Mayer Michael wrote:

Sounds like a good idea. I looked at the code and have one question: how would you handle multiple GTIs? This is probably not an urgent feature but we might want to keep in mind that observations could have a gap (e.g. due to lightnings), which would lead to more than one GTI, right?
Of course, for ctobssim this is even less of an issue. But maybe writing the GTIs to xml should write all individual GTIs?

I was planning to extend the format so that instead of a single interval a GTI file can be linked (using a file="gti.fits" attribute).

#4 Updated by Knödlseder Jürgen about 9 years ago

Same applies also to the energy boundary.

#5 Updated by Mayer Michael about 9 years ago

ok sounds good. I guess providing multiple GTIs through the xml interface using plain numbers (e.g. tmin1=0.0 tmax1=1800 tmin2=1800 tmax2=3600) is superfluous then.

#6 Updated by Knödlseder Jürgen almost 9 years ago

  • Status changed from Feedback to Closed
  • % Done changed from 90 to 100
  • Remaining (hours) set to 0.0

Also available in: Atom PDF