13#ifndef ROOT_Fit_FitData 
   14#define ROOT_Fit_FitData 
   71                 unsigned int maxpoints = 0, 
unsigned int dim = 1);
 
  103                 const double *
dataZ);
 
  112         template<
class Iterator>
 
  122            for (
unsigned int i = 0; i < 
fDim; i++) {
 
 
  139         template<
class Iterator>
 
  176            for (
unsigned int i = 0; i < 
fDim; i++) {
 
 
  189         template<
class Iterator>
 
  192            for (
unsigned int i = 0; i < 
fMaxPoints; i++) {
 
  196               for (
unsigned int j = 0; 
j < 
fDim; 
j++)
 
  202                  for (
unsigned int k = 0; k < 
fDim; k++)
 
 
  241            for (
unsigned int i = 0; i < 
fDim; i++) {
 
 
  275            for (
unsigned int i = 0; i < 
fDim; i++) {
 
 
  342            for (
unsigned int i = 0; i < 
fDim; i++) {
 
 
  361            unsigned modP = (
dataSize) % vecCore::VectorSize<ROOT::Double_v>();
 
  363               padding = vecCore::VectorSize<ROOT::Double_v>() - 
modP;
 
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
class describing the range in the coordinates it supports multiple range in a coordinate.
 
bool IsInside(double x, unsigned int icoord=0) const
check if a point is inside the range for the given coordinate
 
Base class for all the fit data types: Stores the coordinates and the DataOptions.
 
double * fpTmpCoordVector
 
FitData(unsigned int n, unsigned int dim, Iterator dataItr)
constructor for multi-dim external data (data are not copied inside) Uses as argument an iterator of ...
 
unsigned int Size() const
return number of fit points
 
FitData(unsigned int maxpoints=0, unsigned int dim=1)
construct with default option and data range
 
void InitCoordsVector()
initializer routines to set the corresponding pointers right The vectors must NOT be resized after th...
 
void Add(double x)
add one dim data with only coordinate and values
 
void Append(unsigned int newPoints, unsigned int dim=1)
 
std::vector< std::vector< double > > fCoords
This vector stores the vectorizable data: The inner vectors contain the coordinates data fCoords[0] i...
 
std::vector< const double * > fCoordsPtr
 
static constexpr unsigned VectorPadding(const unsigned)
If VecCore is not defined, there is no vectorization available and the SIMD vector size will always b...
 
const double * GetCoordComponent(unsigned int ipoint, unsigned int icoord) const
returns a single coordinate component of a point.
 
void InitFromRange(Iterator dataItr)
 
unsigned int NPoints() const
return number of fit points
 
void Add(const double *x)
add multi-dim coordinate data with only value
 
const std::vector< const double * > & GetCoordDataPtrs() const
direct access to coord data ptrs
 
FitData(const DataRange &range, unsigned int maxpoints, unsigned int dim, Iterator dataItr)
constructor for multi-dim external data and a range (data are copied inside according to the range) U...
 
unsigned int NDim() const
return coordinate data dimension
 
FitData & operator=(const FitData &rhs)
 
const DataOptions & Opt() const
access to options
 
const double * Coords(unsigned int ipoint) const
return a pointer to the coordinates data for the given fit point
 
const DataRange & Range() const
access to range
 
virtual ~FitData()
dummy virtual destructor
 
TFitResultPtr Fit(FitObject *h1, TF1 *f1, Foption_t &option, const ROOT::Math::MinimizerOptions &moption, const char *goption, ROOT::Fit::DataRange &range)
 
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
 
DataOptions : simple structure holding the options on how the data are filled.