1 #ifndef NPSTAT_NONPARAMETRICCOMPOSITEBUILDER_HH_
2 #define NPSTAT_NONPARAMETRICCOMPOSITEBUILDER_HH_
28 template <
class Po
int>
34 typedef typename B::WeightedPointPtr WeightedPointPtr;
35 typedef typename B::WeightedPtrVec WeightedPtrVec;
36 typedef typename B::WeightedValue WeightedValue;
37 typedef typename B::WeightedValueVec WeightedValueVec;
66 const std::vector<AbsMarginalSmootherBase*>& smooth1D,
68 bool takePointerOwnership,
69 unsigned interpolationDegreeCopula = 1U,
70 unsigned interpolationDegreeMarginals = 1U);
76 {
return copulaBandwidth_;}
80 {
return marginBandwidth_.at(i);}
83 inline unsigned dim()
const {
return smooth1D_.size();}
86 void setArchive(gs::AbsArchive* ar,
const char* category = 0);
95 unsigned long uniqueId,
96 const double* predictorCoords,
unsigned nPredictors,
101 unsigned long uniqueId,
102 const double* predictorCoords,
unsigned nPredictors,
103 const BoxND<double>& predictorBox,
const WeightedPtrVec& data,
104 const unsigned* dimsToUse,
unsigned nDimsToUse)
const;
107 unsigned long uniqueId,
unsigned dimNumber,
109 const std::vector<typename Point::value_type>&)
const;
115 unsigned long uniqueId,
unsigned dimUsed,
unsigned dimNumber,
117 const WeightedValueVec& data)
const;
120 const WeightedPtrVec& data,
121 const unsigned* dimsToUse,
122 unsigned nDimsToUse)
const;
124 std::vector<AbsMarginalSmootherBase*> smooth1D_;
126 mutable std::vector<double> marginBandwidth_;
127 mutable double copulaBandwidth_;
128 unsigned iDegCopula_;
129 unsigned iDegMarginals_;
130 bool takePointerOwnership_;
134 #include "npstat/stat/NonparametricCompositeBuilder.icc"
Interface definition for classes which build composite distrubutions.
Interface definition for classes which build discrete copulas.
Interface definition for 1-d nonparametric density estimation.
Base class for building response boxes for multivariate density estimation in regression context.
Definition: AbsCompositeDistroBuilder.hh:30
Definition: AbsCopulaSmootherBase.hh:31
Definition: AbsDistributionND.hh:26
Definition: AbsResponseBoxBuilder.hh:23
Definition: Interval.hh:29
Definition: NonparametricCompositeBuilder.hh:31
double lastMarginBandwidth(const unsigned i) const
Definition: NonparametricCompositeBuilder.hh:79
NonparametricCompositeBuilder(AbsCopulaSmootherBase *smoothND, const std::vector< AbsMarginalSmootherBase * > &smooth1D, AbsResponseBoxBuilder< Point > *boxBuilder, bool takePointerOwnership, unsigned interpolationDegreeCopula=1U, unsigned interpolationDegreeMarginals=1U)
unsigned dim() const
Definition: NonparametricCompositeBuilder.hh:83
double lastCopulaBandwidth() const
Definition: NonparametricCompositeBuilder.hh:75
void setArchive(gs::AbsArchive *ar, const char *category=0)
Definition: OrderedPointND.hh:40
Definition: AbsArrayProjector.hh:14
Definition: AbsDistribution1D.hh:31