59 Warning(
"TKDEFGT::BuildModel",
"Bad input - zero size vector");
64 Warning(
"TKDEFGT::BuildModel",
"Number of dimensions is zero");
69 Warning(
"TKDEFGT::BuildModel",
"Order of truncation is zero, 8 will be used");
107 if (!
sources->SelectedSize()) {
108 Warning(
"TKDEFGT::BuildModel",
"Bad input - zero size vector");
115 Warning(
"TKDEFGT::BuildModel",
"Order of truncation is zero, 8 will be used");
276 for (
UInt_t k = 1, t = 1, tail = 1; k <
fP; ++k, tail = t) {
280 for (
UInt_t j = head;
j < tail; ++
j, ++t) {
313 for (
UInt_t k = 1, t = 1, tail = 1; k <
fP; ++k, tail = t) {
318 for (
UInt_t j = head;
j < tail; ++
j, ++t)
358 for (
UInt_t k = 1, t = 1, tail = 1; k <
fP; ++k, tail = t) {
359 for (
UInt_t i = 0; i < 3; ++i) {
363 for (
UInt_t j = head;
j < tail; ++
j, ++t)
391 Error(
"TKDEFGT::Predict",
"Call BuildModel first!");
396 Warning(
"TKDEFGT::Predict",
"Empty targets vector.");
400 v.assign(
ts.size() /
fDim, 0.);
424 if (
sum2 > eval)
continue;
428 for (
UInt_t k = 1, t = 1, tail = 1; k <
p; ++k, tail = t) {
433 for (
UInt_t j = head;
j < tail; ++
j, ++t)
496 for (
Int_t i = 0 ; i <
d ; i++) {
510 for (
UInt_t i = 0; i <
n; ++i) {
525 for (
UInt_t i = 2 ; i <=
d ; ++i)
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
void Error(const char *location, const char *msgfmt,...)
Use this function in case an error occurred.
void Warning(const char *location, const char *msgfmt,...)
Use this function in warning situations.
winID h TVirtualViewer3D TVirtualGLPainter p
Option_t Option_t TPoint TPoint const char x2
Option_t Option_t TPoint TPoint const char x1
Option_t Option_t TPoint TPoint const char y2
Option_t Option_t TPoint TPoint const char y1
std::vector< UInt_t > fHeads
void Compute_C_k()
Coefficients C_K.
std::vector< UInt_t > fIndxc
virtual ~TKDEFGT()
Destructor.
void Predict(const std::vector< Double_t > &targets, std::vector< Double_t > &densities, Double_t e) const
Calculate densities.
std::vector< UInt_t > fCinds
std::vector< UInt_t > fXhead
std::vector< Double_t > fC_K
std::vector< Double_t > fDistC
void Kcenter(const std::vector< double > &x)
Solve kcenter task.
std::vector< Double_t > fXC
std::vector< Double_t > fProds
std::vector< UInt_t > fIndx
std::vector< Double_t > fDx
void Compute_A_k(const std::vector< Double_t > &x)
Coefficients A_K.
std::vector< UInt_t > fXboxsz
std::vector< Double_t > fA_K
std::vector< Double_t > fWeights
void BuildModel(const std::vector< Double_t > &sources, Double_t sigma=1., UInt_t dim=3, UInt_t p=8, UInt_t k=0)
Calculate coefficients for FGT.
Short_t Max(Short_t a, Short_t b)
Returns the largest of a and b.
Double_t Exp(Double_t x)
Returns the base-e exponential function of x, which is e raised to the power x.
Double_t Sqrt(Double_t x)
Returns the square root of x.
Short_t Min(Short_t a, Short_t b)
Returns the smallest of a and b.
static uint64_t sum(uint64_t i)