ctools  2.0.0
 All Classes Namespaces Files Functions Variables Macros Pages
ctbkgcube Class Reference

Background cube generation tool. More...

#include <ctbkgcube.hpp>

Inheritance diagram for ctbkgcube:
ctobservation ctool GApplication

Public Member Functions

 ctbkgcube (void)
 Void constructor. More...
 
 ctbkgcube (const GObservations &obs)
 Observations constructor. More...
 
 ctbkgcube (int argc, char *argv[])
 Command line constructor. More...
 
 ctbkgcube (const ctbkgcube &app)
 Copy constructor. More...
 
virtual ~ctbkgcube (void)
 Destructor. More...
 
ctbkgcubeoperator= (const ctbkgcube &app)
 Assignment operator. More...
 
void clear (void)
 Clear ctbkgcube tool. More...
 
void process (void)
 Generate the background cube(s). More...
 
void save (void)
 Save background cube. More...
 
void publish (const std::string &name="")
 Publish background cube. More...
 
void cntcube (const GCTAEventCube &cntcube)
 Set event cube. More...
 
const GCTACubeBackground & bkgcube (void) const
 Return background response cube containing background rate. More...
 
const GModels & models (void) const
 Return background model container. More...
 
- Public Member Functions inherited from ctobservation
 ctobservation (const std::string &name, const std::string &version)
 Name constructor. More...
 
 ctobservation (const std::string &name, const std::string &version, const GApplicationPars &pars)
 Application parameters constructor. More...
 
 ctobservation (const std::string &name, const std::string &version, int argc, char *argv[])
 Command line constructor. More...
 
 ctobservation (const std::string &name, const std::string &version, const GObservations &obs)
 Observations constructor. More...
 
 ctobservation (const ctobservation &app)
 Copy constructor. More...
 
virtual ~ctobservation (void)
 Destructor. More...
 
ctobservationoperator= (const ctobservation &app)
 Assignment operator. More...
 
void obs (const GObservations &obs)
 Set observation container. More...
 
const GObservations & obs (void) const
 Return observation container. More...
 
- Public Member Functions inherited from ctool
 ctool (const std::string &name, const std::string &version)
 Name constructor. More...
 
 ctool (const std::string &name, const std::string &version, const GApplicationPars &pars)
 Application parameter constructor. More...
 
 ctool (const std::string &name, const std::string &version, int argc, char *argv[])
 Command line constructor. More...
 
 ctool (const ctool &app)
 Copy constructor. More...
 
virtual ~ctool (void)
 Destructor. More...
 
ctooloperator= (const ctool &app)
 Assignment operator. More...
 
virtual void run (void)
 Run ctool. More...
 
virtual void execute (void)
 Execute ctool. More...
 

Protected Member Functions

void init_members (void)
 Initialise class members. More...
 
void copy_members (const ctbkgcube &app)
 Copy class members. More...
 
void free_members (void)
 Delete class members. More...
 
void get_parameters (void)
 Get application parameters. More...
 
- Protected Member Functions inherited from ctobservation
GCTAObservation * first_unbinned_observation (void)
 Return first unbinned CTA observation. More...
 
GCTAObservation * next_unbinned_observation (void)
 Return next unbinned CTA observation. More...
 
const GCTAObservation * first_unbinned_observation (void) const
 Return first unbinned CTA observation (const version) More...
 
const GCTAObservation * next_unbinned_observation (void) const
 Return next unbinned CTA observation (const version) More...
 
void read_ogip_keywords (GFitsHDU *hdu) const
 Read OGIP keywords from FITS HDU. More...
 
void write_ogip_keywords (GFitsHDU *hdu) const
 Write OGIP keywords in FITS HDU. More...
 
void set_obs_statistic (const std::string &statistic)
 Set fit statistic for CTA observations. More...
 
void set_obs_bounds ()
 Set observation boundaries for CTA observations. More...
 
void save_events_fits (void)
 Save event list in FITS format. More...
 
void save_events_xml (void)
 Save event list(s) in XML format. More...
 
void init_members (void)
 Initialise class members. More...
 
void copy_members (const ctobservation &app)
 Copy class members. More...
 
void free_members (void)
 Delete class members. More...
 
- Protected Member Functions inherited from ctool
void init_members (void)
 Initialise class members. More...
 
void copy_members (const ctool &app)
 Copy class members. More...
 
void free_members (void)
 Delete class members. More...
 
void sync_pfiles (void)
 Synchronise parameter files. More...
 
const bool & read_ahead (void) const
 Signal whether parameters should be read ahead. More...
 
void setup_observations (GObservations &obs, const bool &response=true, const bool &list=true, const bool &cube=true)
 Setup observation container. More...
 
void setup_models (GObservations &obs, const std::string &name="")
 Setup model container. More...
 
GEbounds create_ebounds (void)
 Create energy boundaries from user parameters. More...
 
GEnergies create_energies (void)
 Create energies from user parameters. More...
 
GSkyMap create_map (const GObservations &obs)
 Create a skymap from user parameters. More...
 
GCTAEventCube create_cube (const GObservations &obs)
 Create a CTA event cube from user parameters. More...
 
GCTAObservation create_cta_obs (void)
 Create a CTA observation from User parameters. More...
 
void require_inobs (const std::string &method)
 Throws exception if inobs parameter is not valid. More...
 
void require_inobs_nolist (const std::string &method)
 
void require_inobs_nocube (const std::string &method)
 Throws exception if inobs parameter is a counts cube. More...
 
GCTARoi get_roi (const GCTAPointing &pnt=GCTAPointing())
 Return RoI from User parameters. More...
 
GEbounds get_ebounds (void)
 Return energy boundaries from User parameters. More...
 
GGti get_gti (const GTimeReference &ref)
 Return Good Time Intervals from User parameter. More...
 
GCTAPointing get_pointing (void)
 Return CTA pointing from User parameters. More...
 
GSkyDir get_skydir (void)
 Return sky direction from User parameters. More...
 
std::string set_outfile_name (const std::string &filename)
 Set output file name. More...
 
bool is_stacked (void)
 Query user parameters for stacked analysis. More...
 
bool is_onoff (void)
 Query user parameters for On/Off analysis. More...
 
void log_parameters (const GChatter &chatter)
 Log application parameters. More...
 
void log_observations (const GChatter &chatter, const GObservations &obs, const std::string &what="Observation")
 Log observation container. More...
 
void log_models (const GChatter &chatter, const GModels &models, const std::string &what="Model")
 Log model container. More...
 
void set_response (GObservations &obs)
 Set response for all CTA observations in container. More...
 
std::vector< bool > set_edisp (GObservations &obs, const bool &edisp) const
 Set energy dispersion to CTA observations. More...
 
void restore_edisp (GObservations &obs, const std::vector< bool > &edisp) const
 Restore energy dispersion flags of CTA observations. More...
 
void set_obs_response (GCTAObservation *obs)
 Set response for CTA observation. More...
 
GObservations get_observations (const bool &get_response=true)
 Get observation container. More...
 
GSkyDir get_mean_pointing (const GObservations &obs)
 Derives mean pointing from CTA observations. More...
 
size_t get_current_rss (void)
 Get current resident set size (physical memory use) in Bytes. More...
 
std::string get_obs_header (const GObservation *obs) const
 Return observation header string. More...
 
GEnergies insert_energy_boundaries (const GEnergies &energies, const GCTAObservation &obs)
 Insert observation energy boundaries into list of energies. More...
 
std::vector< bool > cube_layer_usage (const GEbounds &cube_ebounds, const GEbounds &list_ebounds) const
 Determine the counts cube layer usage. More...
 
std::string get_gtiname (const std::string &filename, const std::string &evtname) const
 Get Good Time Intervals extension name. More...
 
void save_event_list (const GCTAObservation *obs, const std::string &infile, const std::string &evtname, const std::string &gtiname, const std::string &outfile) const
 Save event list into FITS file. More...
 
std::string warn_too_few_energies (const GEnergies &energies) const
 Set warning string if there are too few energies. More...
 
std::string warn_xml_suffix (const GFilename &filename) const
 Set warning string if file has no .xml suffix. More...
 
void provide_help (void) const
 Dump help text in the console. More...
 

Protected Attributes

GFilename m_outcube
 Filename of output cube. More...
 
GFilename m_outmodel
 Filename of output XML model. More...
 
bool m_publish
 Publish background cube? More...
 
GChatter m_chatter
 Chattiness. More...
 
GCTACubeBackground m_background
 Background cube. More...
 
GCTAEventCube m_cube
 Event cube. More...
 
GModels m_bkgmdl
 CTA background models. More...
 
GModels m_outmdl
 Output models. More...
 
- Protected Attributes inherited from ctobservation
GObservations m_obs
 Observation container. More...
 
- Protected Attributes inherited from ctool
bool m_read_ahead
 Read ahead output parameters. More...
 
bool m_use_xml
 Use XML file instead of FITS file for observations. More...
 

Detailed Description

Background cube generation tool.

Definition at line 44 of file ctbkgcube.hpp.

Constructor & Destructor Documentation

ctbkgcube::ctbkgcube ( void  )

Void constructor.

Definition at line 54 of file ctbkgcube.cpp.

References init_members().

ctbkgcube::ctbkgcube ( const GObservations &  obs)
explicit

Observations constructor.

param[in] obs Observation container.

This method creates an instance of the class by copying an existing observations container.

Definition at line 72 of file ctbkgcube.cpp.

References init_members().

ctbkgcube::ctbkgcube ( int  argc,
char *  argv[] 
)

Command line constructor.

Parameters
[in]argcNumber of arguments in command line.
[in]argvArray of command line arguments.

Definition at line 90 of file ctbkgcube.cpp.

References init_members().

ctbkgcube::ctbkgcube ( const ctbkgcube app)

Copy constructor.

Parameters
[in]appApplication.

Definition at line 106 of file ctbkgcube.cpp.

References copy_members(), and init_members().

ctbkgcube::~ctbkgcube ( void  )
virtual

Destructor.

Definition at line 122 of file ctbkgcube.cpp.

References free_members().

Member Function Documentation

const GCTACubeBackground & ctbkgcube::bkgcube ( void  ) const
inline

Return background response cube containing background rate.

Returns
Background response cube.

Definition at line 109 of file ctbkgcube.hpp.

References m_background.

void ctbkgcube::clear ( void  )
virtual

Clear ctbkgcube tool.

Clears ctbkgcube tool.

Implements ctobservation.

Definition at line 179 of file ctbkgcube.cpp.

References free_members(), ctool::free_members(), ctobservation::free_members(), init_members(), ctool::init_members(), and ctobservation::init_members().

void ctbkgcube::cntcube ( const GCTAEventCube &  cntcube)
inline

Set event cube.

Parameters
[in]cntcubeEvent cube.

Definition at line 93 of file ctbkgcube.hpp.

References m_cube.

void ctbkgcube::copy_members ( const ctbkgcube app)
protected

Copy class members.

Parameters
[in]appApplication.

Definition at line 457 of file ctbkgcube.cpp.

References m_background, m_bkgmdl, m_chatter, m_cube, m_outcube, m_outmdl, m_outmodel, and m_publish.

Referenced by ctbkgcube(), and operator=().

void ctbkgcube::free_members ( void  )
protected

Delete class members.

Definition at line 479 of file ctbkgcube.cpp.

Referenced by clear(), operator=(), and ~ctbkgcube().

void ctbkgcube::get_parameters ( void  )
protected

Get application parameters.

Get all task parameters from parameter file or (if required) by querying the user. The parameters are read in the correct order.

Definition at line 492 of file ctbkgcube.cpp.

References ctool::log_parameters(), m_background, m_chatter, m_cube, ctobservation::m_obs, m_publish, ctool::read_ahead(), ctool::setup_models(), and ctool::setup_observations().

Referenced by process().

void ctbkgcube::init_members ( void  )
protected

Initialise class members.

Definition at line 433 of file ctbkgcube.cpp.

References m_background, m_bkgmdl, m_chatter, m_cube, m_outcube, m_outmdl, m_outmodel, and m_publish.

Referenced by clear(), ctbkgcube(), and operator=().

const GModels & ctbkgcube::models ( void  ) const
inline

Return background model container.

Returns
Background model container.

Definition at line 122 of file ctbkgcube.hpp.

References m_outmdl.

ctbkgcube & ctbkgcube::operator= ( const ctbkgcube app)

Assignment operator.

Parameters
[in]appApplication.
Returns
Returns application.

Definition at line 144 of file ctbkgcube.cpp.

References copy_members(), free_members(), init_members(), and ctobservation::operator=().

void ctbkgcube::process ( void  )
virtual

Generate the background cube(s).

This method reads the task parameters from the parfile, sets up the observation container, loops over all CTA observations in the container and generates a background cube from the CTA observations.

Implements ctobservation.

Definition at line 209 of file ctbkgcube.cpp.

References G_PROCESS, get_parameters(), ctool::log_models(), ctool::log_observations(), m_background, m_bkgmdl, m_chatter, m_cube, ctobservation::m_obs, m_outmdl, m_publish, and publish().

void ctbkgcube::publish ( const std::string &  name = "")

Publish background cube.

Parameters
[in]nameBackground cube name.

Definition at line 402 of file ctbkgcube.cpp.

References CTBKGCUBE_NAME, and m_background.

Referenced by process().

void ctbkgcube::save ( void  )
virtual

Save background cube.

Save the background cube into a FITS file and the output model into an XML file.

Implements ctobservation.

Definition at line 350 of file ctbkgcube.cpp.

References m_background, m_outcube, m_outmdl, and m_outmodel.

Member Data Documentation

GCTACubeBackground ctbkgcube::m_background
protected

Background cube.

Definition at line 80 of file ctbkgcube.hpp.

Referenced by bkgcube(), copy_members(), get_parameters(), init_members(), process(), publish(), and save().

GModels ctbkgcube::m_bkgmdl
protected

CTA background models.

Definition at line 82 of file ctbkgcube.hpp.

Referenced by copy_members(), init_members(), and process().

GChatter ctbkgcube::m_chatter
protected

Chattiness.

Definition at line 77 of file ctbkgcube.hpp.

Referenced by copy_members(), get_parameters(), init_members(), and process().

GCTAEventCube ctbkgcube::m_cube
protected

Event cube.

Definition at line 81 of file ctbkgcube.hpp.

Referenced by cntcube(), copy_members(), get_parameters(), init_members(), and process().

GFilename ctbkgcube::m_outcube
protected

Filename of output cube.

Definition at line 74 of file ctbkgcube.hpp.

Referenced by copy_members(), init_members(), and save().

GModels ctbkgcube::m_outmdl
protected

Output models.

Definition at line 83 of file ctbkgcube.hpp.

Referenced by copy_members(), init_members(), models(), process(), and save().

GFilename ctbkgcube::m_outmodel
protected

Filename of output XML model.

Definition at line 75 of file ctbkgcube.hpp.

Referenced by copy_members(), init_members(), and save().

bool ctbkgcube::m_publish
protected

Publish background cube?

Definition at line 76 of file ctbkgcube.hpp.

Referenced by copy_members(), get_parameters(), init_members(), and process().


The documentation for this class was generated from the following files: