-
The energy dispersion was so far neglected in ctmodel::get_obs.
-
Updated the model trimming so that the models that are outside an observation are offloaded to another model container and then re-appended after the evaluation. Parallelization scheduling set to "static" with a chunk size of 1. This will slightly help with the issue in which multiple observations in a row do not contribute to the model cube and thus dividing the observations into "n-observations/n-cores" is not ideal.
-
Fixed the variable name in the header file to match the name in the ctmodel.cpp file.
-
Removed a small memory leak in trim_models that was introduced in previous commit.
-
Instead of making a full copy of all models and removing unwanted models, models are added if they overlap with the ROI in 'trim_models()'. This avoids unnecessary memory allocation/deallocation.
-
Implemented a change to remove all models that dont overlap the current observation when filling the cube. This speeds up the computation when filling from a large number of models.
-
Changed the on time for a given bin to be set from the observation being filled into the cube rather than the cube itself. Reformat code (#2147)
-
Optimized computation intensive parts of ctmodel to reduce computation time. Implemented openmp parallelization of ctmodel to reduce computation time. Updated information logging (#2147) Updated writing information to log file in order to prevent messy log file messages. This doesnt appear to impact the computation time. Integrate code without modification of GammaLib (#2147) Implement efficient model computation (#2147) Update change log (#2147)
-
So far any exception occuring during the construction of the ctools were not catched. This is corrected now.
-
All likelihood ctools now derive from the ctlikelihood base class. This avoids code duplication and provides all likelihood tools with a uniform interface.