27#ifndef GCOMOBSERVATION_HPP
28#define GCOMOBSERVATION_HPP
81 const std::vector<GFilename>& oadnames,
90 virtual void clear(
void);
92 virtual std::string
classname(
void)
const;
96 virtual double ontime(
void)
const;
112 const std::vector<GFilename>& oadnames,
116 void obs_id(
const double&
id);
121 const double&
obs_id(
void)
const;
122 const double&
ewidth(
void)
const;
147 const int& nrunav = 3,
148 const int& navgr = 3,
149 const int& nincl = 13,
150 const int& nexcl = 0);
166 const int& nrunav = 3,
167 const int& navgr = 3,
168 const int& nincl = 13,
169 const int& nexcl = 0);
171 const int& nrunav = 3,
172 const int& navgr = 3,
173 const int& nincl = 13,
174 const int& nexcl = 0);
226 return (
"GCOMObservation");
COMPTEL Solar System Barycentre Data container class definition.
COMPTEL Data Space class definition.
COMPTEL event bin container class interface definition.
COMPTEL event list class definition.
COMPTEL Orbit Aspect Data container class definition.
COMPTEL instrument response function class interface definition.
COMPTEL Good Time Intervals class definition.
Filename class interface definition.
Abstract observation base class interface definition.
Time class interface definition.
COMPTEL Solar System Barycentre Data container class.
COMPTEL Data Space class.
COMPTEL event bin container class.
COMPTEL event list class.
COMPTEL Orbit Aspect Data container class.
Interface class for COMPTEL observations.
void free_members(void)
Delete class members.
const GCOMTim & tim(void) const
Return COMPTEL Good Time Intervals.
GCOMDri drm(const GModels &models) const
Compute DRM cube.
void init_members(void)
Initialise class members.
const GFilename & drename(void) const
Return DRE filename.
const double & obs_id(void) const
Return observation ID.
GFilename m_drgname
DRG filename.
bool is_unbinned(void) const
Check whether observation is unbinned.
void compute_drb_phinor(const GCOMDri &drm)
Compute DRB cube using PHINOR method.
GFilename m_drxname
DRX filename.
void compute_drb_bgdlixa(const GCOMDri &drm, const int &nrunav=3, const int &navgr=3, const int &nincl=13, const int &nexcl=0)
Compute DRB cube using BGDLIXA method.
const GFilename & drgname(void) const
Return DRG filename.
const GFilename & drxname(void) const
Return DRX filename.
double m_ontime
Ontime (sec)
void get_bgdlixa_phibar_indices(const int &iphibar, const int &nincl, const int &nexcl, int *isel1, int *iex1, int *iex2, int *isel2) const
Compute Phibar index range for BGDLIXA background method.
bool check_dri(const GCOMDri &map) const
Check if DRI is compatible with event cube.
const GCOMDri & drb(void) const
Return background model.
virtual double ontime(void) const
Return ontime.
virtual GCOMObservation * clone(void) const
Clone COMPTEL observation.
GCOMBvcs m_bvcs
Solar System Barycentre Data.
void read_attributes(const GFitsHDU *hdu)
Read observation attributes.
const int & phi_first(void) const
Return index of first Phibar layer to be used for likelihood fitting.
const GCOMOads & oads(void) const
Return Orbit Aspect Data.
int m_phi_last
Last Phibar layer to use for likelihood.
const double & ewidth(void) const
Return energy width.
GFilename m_drename
DRE filename.
void load_drg(const GFilename &drgname)
Load geometry factors from DRG file.
virtual std::string instrument(void) const
Return instrument.
double m_livetime
Livetime (sec)
const GCOMBvcs & bvcs(void) const
Return Solar System Barycentre Data.
virtual void read(const GXmlElement &xml)
Read observation from XML element.
GSkyMap get_weighted_drg_map(void) const
Return weighted DRG map.
virtual void clear(void)
Clear COMPTEL observation.
double m_obs_id
Observation ID.
virtual void write(GXmlElement &xml) const
Write observation into XML element.
GCOMOads m_oads
Orbit Aspect Data.
virtual double deadc(const GTime &time=GTime()) const
Return deadtime correction factor.
int m_phi_first
First Phibar layer to use for likelihood.
GCOMObservation(void)
Void constructor.
GCOMTim m_tim
COMPTEL Good Time Intervals.
GCOMDri m_drg
Geometry factors.
virtual const GCOMResponse * response(void) const
Return response function.
virtual std::string print(const GChatter &chatter=NORMAL) const
Print observation information.
void load(const GFilename &drename, const GFilename &drbname, const GFilename &drgname, const GFilename &drxname)
Load data for a binned observation.
GCOMDri m_drb
Background model.
bool is_binned(void) const
Check whether observation is binned.
void load_dre(const GFilename &drename)
Load event cube data from DRE file.
const int & phi_last(void) const
Return index of last Phibar layer to be used for likelihood fitting.
void write_attributes(GFitsHDU *hdu) const
Write observation attributes.
double m_ewidth
Energy width (MeV)
GFilename m_drbname
DRB filename.
GFilename m_evpname
EVP filename.
virtual bool use_event_for_likelihood(const int &index) const
Check whether bin should be used for likelihood analysis.
void compute_drb_bgdlixe(const GCOMDri &drm, const int &nrunav=3, const int &navgr=3, const int &nincl=13, const int &nexcl=0)
Compute DRB cube using BGDLIXE method.
const GCOMDri & drx(void) const
Return exposure.
double m_deadc
Deadtime correction.
virtual std::string classname(void) const
Return class name.
const GCOMDri & drg(void) const
Return geometry factors.
virtual double livetime(void) const
Return livetime.
const GFilename & drbname(void) const
Return DRB filename.
void compute_drb(const std::string &method, const GCOMDri &drm, const int &nrunav=3, const int &navgr=3, const int &nincl=13, const int &nexcl=0)
Compute DRB cube.
GFilename m_timname
TIM filename.
GCOMResponse m_response
Response functions.
std::vector< GFilename > m_oadnames
OAD filenames.
virtual ~GCOMObservation(void)
Destructor.
std::string m_instrument
Instrument name.
GFilename m_bvcname
BVC filename.
void load_drx(const GFilename &drxname)
Load exposure from DRX file.
void copy_members(const GCOMObservation &obs)
Copy class members.
void load_drb(const GFilename &drbname)
Load background model from DRB file.
virtual GCOMObservation & operator=(const GCOMObservation &obs)
Assignment operator.
GCOMDri m_drx
Exposure map.
Interface for the COMPTEL instrument response function.
COMPTEL instrument status class.
COMPTEL Good Time Intervals class.
Calibration database class.
Abstract FITS extension base class.
Abstract observation base class.
const std::string & id(void) const
Return observation identifier.
GEvents * m_events
Pointer to event container.
Abstract instrument response base class.