74 const GCOMDri&
at(
const int& index)
const;
79 void remove(
const int& index);
84 const double& zetamin = 5.0,
85 const double& timebin = 300.0,
86 const std::string& method =
"phibar");
97 virtual double value(
void)
const;
126 const double& zetamin,
127 const double& timebin);
131 const double& zetamin,
132 const double& timebin);
136 const double& zetamin);
140 const double& zetamin);
145 const double& zetamin);
213 return (
int)
m_dris.size();
271 return &(m_gradient);
285 return &(m_curvature);
GCOMDris * m_this
Pointer to GCOMDris object.
GCOMDris & operator=(const GCOMDris &dris)
Assignment operator.
void compute_drws(const GCOMObservation &obs, const GCOMSelection &select=GCOMSelection(), const double &zetamin=5.0, const double &timebin=300.0, const std::string &method="phibar")
Compute background weighting cubes.
virtual void eval(const GOptimizerPars &pars)
Log-likelihood function evaluation.
Optimizer function abstract base class.
double norm(const GVector &vector)
Computes vector norm.
Sparse matrix class interface definition.
GNdarray m_diffrate
Vetorate - activation rate array.
void reserve(const int &num)
Reserves space for Data space instances in container.
COMPTEL Data Space container class.
COMPTEL Data Space class definition.
Optimizer parameter container class.
GNdarray m_wrk_counts
3D event cube array
GMatrixSparse m_curvature
Curvature matrix.
void compute_drws_phibar(const GCOMObservation &obs, const GCOMEventList *events, const GCOMSelection &select, const double &zetamin, const double &timebin)
Compute background weighting cubes using Phibar dependent rates.
bool is_empty(void) const
Signals if there are no Data space instances in container.
GCOMDris(void)
Void constructor.
likelihood(GCOMDris *dris, const int &ieng, const double &norm)
Log-likelihood function constructor.
GNdarray m_vetorate
Vetorate array multiplied by EHA cut correction.
double m_value
Function value.
COMPTEL selection set class.
void vetorate_save(const GFilename &filename) const
Save working arrays for vetorate computation.
GVector m_gradient
Gradient vector.
virtual GVector * gradient(void)
Return pointer to gradient vector.
int m_nsp
Number of superpackets.
void extend(const GCOMDris &dris)
Append Data Space container.
GCOMDri & at(const int &index)
Return reference to Data Space.
GCOMDri & operator[](const int &index)
Return reference to Data space instance.
void vetorate_fit(void)
Fit working arrays for vetorate computation.
Optimizer function abstract base class.
GNdarray m_vetorate_sum
Time integrated vetorate array.
N-dimensional array class interface definition.
void copy_members(const GCOMDris &dris)
Copy class members.
virtual ~GCOMDris(void)
Destructor.
GNdarray m_wrk_vetorate
1D vetorates array
void free_members(void)
Delete class members.
Abstract optimizer abstract base class.
GNdarray m_activrate_sum
Time integrated activation rate array.
GNdarray m_wrk_rate
2D rate array
GCOMDris * clone(void) const
Clone Data Space container.
std::string print(const GChatter &chatter=NORMAL) const
Print Data Space container.
void init_members(void)
Initialise class members.
GNdarray m_wrk_activrate
2D activation rate array
N-dimensional array class.
void vetorate_finish(const GCOMObservation &obs)
Finish DRWs.
void vetorate_load(const GFilename &filename)
Load working arrays for vetorate computation.
GNdarray m_activrate
Activation rate array multiplied by EHA cut correction.
void clear(void)
Clear Data Space container.
double m_norm
Normalisation value.
int m_ieng
DRW energy bin.
std::vector< bool > m_wrk_use_sp
1D superpacket usage array
std::vector< GCOMDri > m_dris
Data space instances.
std::string classname(void) const
Return class name.
void compute_drws_vetorate(const GCOMObservation &obs, const GCOMEventList *events, const GCOMSelection &select, const double &zetamin)
Compute background weighting cubes using veto rates.
Interface class for COMPTEL observations.
GNdarray m_diffrate_sum
Time integrated difference rate array.
virtual double value(void) const
Return log-likelihood value of optimizer function.
void compute_drws_energy(const GCOMObservation &obs, const GCOMEventList *events, const GCOMSelection &select, const double &zetamin, const double &timebin)
Compute background weighting cubes using energy dependent rates.
COMPTEL event list class.
COMPTEL Data Space class.
GCOMDri & insert(const int &index, const GCOMDri &dri)
Insert Data Space into container.
Definition of interface for container classes.
void vetorate_setup(const GCOMObservation &obs, const GCOMEventList *events, const GCOMSelection &select, const double &zetamin)
Setup working arrays for vetorate computation.
int size(void) const
Return number of Data space instances in container.
int m_nphibar
Number of phibar layers.
GNdarray m_wrk_ehacutcorr
2D geometry response array
void vetorate_update_activ(void)
Update activation rate.
void vetorate_generate(const GCOMObservation &obs, const GCOMSelection &select, const double &zetamin)
Generate DRWs.
virtual GMatrixSparse * curvature(void)
Return pointer to curvature matrix.
GCOMDri & append(const GCOMDri &dri)
Append Data Space to container.
Interface class for container classes.