52 int dim =
X.GetNrows();
54 for (
int i = 0; i<dim; ++i) {
X[i] =
x[i] -
p[k]; k++; }
55 for (
int i = 0; i<dim; ++i) {
59 for (
int i = 0; i<dim; ++i) {
60 for (
int j = i+1;
j<dim; ++
j) {
74 Fatal(
"GausND",
"Determinant is <= 0 det = %f",
det);
84 std::cout <<
"det " <<
det << std::endl;
85 std::cout <<
"norm " <<
norm << std::endl;
86 std::cout <<
"fval " <<
fval << std::endl;
103 double xmin[] = {-10,-10,-10, -10};
104 double xmax[] = { 10, 10, 10, 10};
105 double par0[] = { 1., -1., 2, 0,
107 0.5,0.,0.,0.,0.,0.8 };
113 f->SetParameters(
par0);
115 double x0[] = {0,0,0,0};
117 if (
debug)
f->EvalPar(x0,
nullptr);
121 for (
int i = 0; i <
NPAR; ++i ) {
122 if (i <
DIM)
f->SetParName(i,
name.Format(
"mu_%d",i+1) );
123 else if (i < 2*
DIM)
f->SetParName(i,
name.Format(
"sig_%d",i-
DIM+1) );
124 else if (i < 2*
DIM)
f->SetParName(i,
name.Format(
"sig_%d",i-2*
DIM+1) );
130 Info(
"multidimSampling",
"Default sampler %s is not available try with Foam ",
134 sampler = Factory::CreateDistSampler();
136 Error(
"multidimSampling",
"Foam sampler is not available - exit ");
149 Error(
"Sampler::Init",
"Error initializing unuran sampler");
155 for (
int i = 0; i <
N; ++i) {
157 for (
int j = 0;
j <
DIM; ++
j)
164 TFile * file =
new TFile(
"multiDimSampling.root",
"RECREATE");
167 t1->Branch(
"x",
x,
"x[4]/D");
168 for (
int i = 0; i <
N; ++i) {
169 for (
int j = 0;
j <
DIM; ++
j) {
176 t1->Draw(
"x[0]:x[1]:x[2]:x[3]",
"",
"candle");
181 t1->Draw(
"x[0]:x[1]");
183 t1->Draw(
"x[0]:x[2]");
185 t1->Draw(
"x[0]:x[3]");
187 t1->Draw(
"x[1]:x[2]");
189 t1->Draw(
"x[1]:x[3]");
191 t1->Draw(
"x[2]:x[3]");
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 Fatal(const char *location, const char *msgfmt,...)
Use this function in case of a fatal error. It will abort the program.
winID h TVirtualViewer3D TVirtualGLPainter p
TRObject operator()(const T1 &t1) const
static void SetDefaultSampler(const char *type)
static const std::string & DefaultSampler()
Interface class for generic sampling of a distribution, i.e.
A ROOT file is an on-disk file, usually with extension .root, that stores objects in a file-system-li...
void Close(Option_t *option="") override
Close a file.
A TTree represents a columnar dataset.