#include <BCModelManager.h>
Definition at line 34 of file BCModelManager.h.
Public Member Functions | |
Member functions (miscellaneous methods) | |
void | AddDataPoint (BCDataPoint *datapoint) |
void | AddModel (BCModel *model, double probability=0.) |
void | CalculatePValue (bool flag_histogram=false) |
void | FindMode () |
void | MarginalizeAll () |
void | Normalize () |
void | PrintModelComparisonSummary (const char *filename=0) |
void | PrintResults () |
void | PrintSummary (const char *filename=0) |
int | ReadDataFromFile (const char *filename, int nvariables) |
int | ReadDataFromFile (const char *filename, const char *treename, const char *branchnames) |
int | ReadDataFromFileTree (const char *filename, const char *treename, const char *branchnames) |
int | ReadDataFromFileTxt (const char *filename, int nbranches) |
void | ResetDataSet () |
void | WriteMarkovChain (bool flag) |
Constructors and destructors | |
BCModelManager (const BCModelManager &modelmanager) | |
BCModelManager () | |
virtual | ~BCModelManager () |
Member functions (set) | |
void | FixDataAxis (int index, bool fixed) |
void | SetDataBoundaries (int index, double lowerboundary, double upperboundary) |
void | SetDataPointLowerBoundaries (BCDataPoint *datasetlowerboundaries) |
void | SetDataPointLowerBoundary (int index, double lowerboundary) |
void | SetDataPointUpperBoundaries (BCDataPoint *datasetupperboundaries) |
void | SetDataPointUpperBoundary (int index, double upperboundary) |
void | SetDataSet (BCDataSet *dataset) |
void | SetFillErrorBand (bool flag=true) |
void | SetFitFunctionIndexX (int index) |
void | SetFitFunctionIndexY (int index) |
void | SetFitFunctionIndices (int indexx, int indexy) |
void | SetFlagPCA (bool flag) |
void | SetIntegrationMethod (BCIntegrate::BCIntegrationMethod method) |
void | SetMarginalizationMethod (BCIntegrate::BCMarginalizationMethod method) |
void | SetNbins (unsigned int n) |
void | SetNChains (unsigned int n) |
void | SetNiterationsPerDimension (unsigned int niterations) |
void | SetNSamplesPer2DBin (unsigned int n) |
void | SetOptimizationMethod (BCIntegrate::BCOptimizationMethod method) |
void | SetRelativePrecision (double relprecision) |
void | SetSingleDataPoint (BCDataSet *dataset, unsigned int index) |
void | SetSingleDataPoint (BCDataPoint *datapoint) |
void | UnetFillErrorBand () |
Member functions (get) | |
BCDataPoint * | GetDataPoint (int index) |
BCDataSet * | GetDataSet () |
BCModel * | GetModel (int index) |
int | GetNDataPoints () |
unsigned int | GetNModels () |
Assignment operators | |
BCModelManager & | operator= (const BCModelManager &modelmanager) |
Private Member Functions | |
void | Copy (BCModelManager &modelmanager) const |
Private Attributes | |
BCDataSet * | fDataSet |
BCModelContainer * | fModelContainer |
BCModelManager::BCModelManager | ( | ) |
The default constructor.
Definition at line 25 of file BCModelManager.cxx.
00026 { 00027 fModelContainer = new BCModelContainer(); 00028 fDataSet = 0; 00029 }
BCModelManager::BCModelManager | ( | const BCModelManager & | modelmanager | ) |
The default copy constructor.
Definition at line 43 of file BCModelManager.cxx.
00044 { 00045 modelmanager.Copy(*this); 00046 }
BCModelManager::~BCModelManager | ( | ) | [virtual] |
The default destructor.
Definition at line 33 of file BCModelManager.cxx.
00034 { 00035 delete fModelContainer; 00036 00037 if (fDataSet) 00038 delete fDataSet; 00039 }
void BCModelManager::AddDataPoint | ( | BCDataPoint * | datapoint | ) | [inline] |
Adds a data point to the data container.
datapoint | The data point |
Definition at line 240 of file BCModelManager.h.
00241 { fDataSet -> AddDataPoint(datapoint); };
void BCModelManager::AddModel | ( | BCModel * | model, | |
double | probability = 0. | |||
) |
Adds a model to the container
model | The model | |
probability | The a priori probability |
SetModelPrior(BCModel * model, double probability)
Definition at line 96 of file BCModelManager.cxx.
00097 { 00098 // create index 00099 unsigned int index = fModelContainer -> size(); 00100 00101 // set index of new model 00102 model -> SetIndex(index); 00103 00104 // set a priori probability of new model 00105 model -> SetModelAPrioriProbability(probability); 00106 00107 // set data set 00108 model -> SetDataSet(fDataSet); 00109 00110 // fill model into container 00111 fModelContainer -> push_back(model); 00112 }
void BCModelManager::CalculatePValue | ( | bool | flag_histogram = false |
) |
Definition at line 422 of file BCModelManager.cxx.
00423 { 00424 // calculate p-value for all models 00425 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00426 this -> GetModel(i) -> CalculatePValue(this -> GetModel(i) -> GetBestFitParameters(), flag_histogram); 00427 }
void BCModelManager::Copy | ( | BCModelManager & | modelmanager | ) | const [private] |
Definition at line 595 of file BCModelManager.cxx.
00596 { 00597 // don't copy the content only the pointers 00598 modelmanager.fModelContainer = this -> fModelContainer; 00599 modelmanager.fDataSet = this -> fDataSet; 00600 }
void BCModelManager::FindMode | ( | ) |
Does the mode finding
Definition at line 395 of file BCModelManager.cxx.
00396 { 00397 // finds mode for all models registered 00398 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00399 this -> GetModel(i) -> FindMode(); 00400 }
void BCModelManager::FixDataAxis | ( | int | index, | |
bool | fixed | |||
) |
Definition at line 272 of file BCModelManager.cxx.
00273 { 00274 // fix axis for all models 00275 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00276 this -> GetModel(i) -> FixDataAxis(index, fixed); 00277 }
BCDataPoint* BCModelManager::GetDataPoint | ( | int | index | ) | [inline] |
Returns a data point of the common data set at an index.
index | The index of the data point in the data set. |
Definition at line 89 of file BCModelManager.h.
00090 { return fDataSet -> GetDataPoint(index); };
BCDataSet* BCModelManager::GetDataSet | ( | ) | [inline] |
Returns the common data set.
Definition at line 95 of file BCModelManager.h.
00096 { return fDataSet; };
BCModel* BCModelManager::GetModel | ( | int | index | ) | [inline] |
Returns the BCModel at a certain index of this BCModelManager.
index | The index of the model in the BCModelManager. |
Definition at line 76 of file BCModelManager.h.
00077 { return fModelContainer -> at(index); };
int BCModelManager::GetNDataPoints | ( | ) | [inline] |
Returns the number of entries in the common data set.
Definition at line 82 of file BCModelManager.h.
00083 { return (fDataSet) ? fDataSet -> GetNDataPoints() : 0; };
unsigned int BCModelManager::GetNModels | ( | ) | [inline] |
Definition at line 69 of file BCModelManager.h.
00070 { return fModelContainer -> size(); };
void BCModelManager::MarginalizeAll | ( | ) |
Marginalize all probabilities wrt. single parameters and all combinations of two parameters for all models.
Definition at line 404 of file BCModelManager.cxx.
00405 { 00406 // marginalizes all models registered 00407 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00408 this -> GetModel(i) -> MarginalizeAll(); 00409 }
void BCModelManager::Normalize | ( | ) |
Calculates the normalization of the likelihood for each model in the container.
Definition at line 369 of file BCModelManager.cxx.
00370 { 00371 // initialize likelihood norm 00372 double normalization = 0.0; 00373 00374 BCLog::Out(BCLog::summary, BCLog::summary, "Running normalization of all models."); 00375 00376 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00377 { 00378 fModelContainer -> at(i) -> Normalize(); 00379 00380 // add to total normalization 00381 normalization += (fModelContainer -> at(i) -> GetNormalization() * 00382 fModelContainer -> at(i) -> GetModelAPrioriProbability()); 00383 } 00384 00385 // set model a posteriori probabilities 00386 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00387 fModelContainer -> at(i) -> SetModelAPosterioriProbability( 00388 (fModelContainer -> at(i) -> GetNormalization() * 00389 fModelContainer -> at(i) -> GetModelAPrioriProbability()) / 00390 normalization); 00391 }
BCModelManager & BCModelManager::operator= | ( | const BCModelManager & | modelmanager | ) |
The defaut assignment operator
Definition at line 50 of file BCModelManager.cxx.
00051 { 00052 if (this != &modelmanager) 00053 modelmanager.Copy(* this); 00054 00055 return * this; 00056 }
void BCModelManager::PrintModelComparisonSummary | ( | const char * | filename = 0 |
) |
Prints a summary of model comparison into a file. If filename is omitted the summary will be printed onto the screen
filename | name of the file to write into. |
Definition at line 508 of file BCModelManager.cxx.
00509 { 00510 ofstream out; 00511 std::streambuf * old_buffer = 0; 00512 00513 if(file) 00514 { 00515 out.open(file); 00516 if (!out.is_open()) 00517 { 00518 std::cerr<<"Couldn't open file "<<file<<std::endl; 00519 return; 00520 } 00521 old_buffer = std::cout.rdbuf(out.rdbuf()); 00522 } 00523 00524 // model summary 00525 int nmodels = fModelContainer -> size(); 00526 std::cout 00527 <<std::endl 00528 <<"==========================================="<<std::endl 00529 <<" Model Comparison Summary"<<std::endl 00530 <<"==========================================="<<std::endl 00531 <<std::endl 00532 <<" Number of models : "<<nmodels<<std::endl 00533 <<std::endl; 00534 00535 // probability summary 00536 std::cout 00537 <<" - A priori probabilities:"<<std::endl 00538 <<std::endl; 00539 00540 for (int i=0; i<nmodels; i++) 00541 std::cout 00542 <<" p("<< fModelContainer -> at(i) -> GetName() 00543 <<") = "<< fModelContainer -> at(i) -> GetModelAPrioriProbability() 00544 <<std::endl; 00545 std::cout<<std::endl; 00546 00547 std::cout 00548 <<" - A posteriori probabilities:"<<std::endl 00549 <<std::endl; 00550 00551 for (int i = 0; i < nmodels; i++) 00552 std::cout 00553 <<" p("<< fModelContainer -> at(i) -> GetName() 00554 <<"|data) = "<< fModelContainer -> at(i) -> GetModelAPosterioriProbability() 00555 <<std::endl; 00556 std::cout<<std::endl; 00557 00558 std::cout 00559 <<" - p-values:"<<std::endl 00560 <<std::endl; 00561 00562 for (int i = 0; i < nmodels; i++) 00563 { 00564 double p = fModelContainer -> at(i) -> GetPValue(); 00565 std::cout 00566 <<" "<< fModelContainer -> at(i) -> GetName(); 00567 if(p>=0.) 00568 std::cout<<": p-value = "<< p; 00569 else 00570 std::cout<<": p-value not calculated"; 00571 std::cout<<std::endl; 00572 } 00573 std::cout<<std::endl; 00574 00575 std::cout 00576 <<"==========================================="<<std::endl 00577 <<std::endl; 00578 00579 if (file) 00580 std::cout.rdbuf(old_buffer); 00581 00582 }
void BCModelManager::PrintResults | ( | ) |
Definition at line 586 of file BCModelManager.cxx.
00587 { 00588 // print summary of all models 00589 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00590 this -> GetModel(i) -> PrintResults(Form("%s.txt", this -> GetModel(i) -> GetName().data())); 00591 }
void BCModelManager::PrintSummary | ( | const char * | filename = 0 |
) |
Prints a summary into a file. If filename is omitted the summary will be printed onto the screen. This method is obsolete. Use PrintResults() instead.
filename | name of the file to write into. |
Definition at line 431 of file BCModelManager.cxx.
00432 { 00433 ofstream out; 00434 std::streambuf * old_buffer = 0; 00435 00436 if(file) 00437 { 00438 out.open(file); 00439 if (!out.is_open()) 00440 { 00441 std::cerr<<"Couldn't open file "<<file<<std::endl; 00442 return; 00443 } 00444 old_buffer = std::cout.rdbuf(out.rdbuf()); 00445 } 00446 00447 // model summary 00448 int nmodels = fModelContainer -> size(); 00449 std::cout 00450 <<std::endl 00451 <<"======================================"<<std::endl 00452 <<" Summary"<<std::endl 00453 <<"======================================"<<std::endl 00454 <<std::endl 00455 <<" Number of models : "<<nmodels<<std::endl 00456 <<std::endl 00457 <<" - Models:"<<std::endl; 00458 00459 for (int i = 0; i < nmodels; i++) 00460 fModelContainer -> at(i) -> PrintSummary(); 00461 00462 // data summary 00463 std::cout 00464 <<" - Data:"<<std::endl 00465 <<std::endl 00466 <<" Number of entries: "<<fDataSet -> GetNDataPoints()<<std::endl 00467 <<std::endl; 00468 00469 std::cout 00470 <<"======================================"<<std::endl 00471 <<" Model comparison"<<std::endl 00472 <<std::endl; 00473 00474 // probability summary 00475 std::cout 00476 <<" - A priori probabilities:"<<std::endl 00477 <<std::endl; 00478 00479 for (int i=0; i<nmodels; i++) 00480 std::cout 00481 <<" p("<< fModelContainer -> at(i) -> GetName() 00482 <<") = "<< fModelContainer -> at(i) -> GetModelAPrioriProbability() 00483 <<std::endl; 00484 std::cout<<std::endl; 00485 00486 std::cout 00487 <<" - A posteriori probabilities:"<<std::endl 00488 <<std::endl; 00489 00490 for (int i = 0; i < nmodels; i++) 00491 std::cout 00492 <<" p("<< fModelContainer -> at(i) -> GetName() 00493 <<"|data) = "<< fModelContainer -> at(i) -> GetModelAPosterioriProbability() 00494 <<std::endl; 00495 std::cout<<std::endl; 00496 00497 std::cout 00498 <<"======================================"<<std::endl 00499 <<std::endl; 00500 00501 if (file) 00502 std::cout.rdbuf(old_buffer); 00503 00504 }
int BCModelManager::ReadDataFromFile | ( | const char * | filename, | |
int | nvariables | |||
) | [inline] |
Definition at line 249 of file BCModelManager.h.
00250 { return this -> ReadDataFromFileTxt(filename, nvariables); };
int BCModelManager::ReadDataFromFile | ( | const char * | filename, | |
const char * | treename, | |||
const char * | branchnames | |||
) | [inline] |
Reads data from a file. For a description see the following member functions.
Definition at line 246 of file BCModelManager.h.
00247 { return this -> ReadDataFromFileTree(filename, treename, branchnames); };
int BCModelManager::ReadDataFromFileTree | ( | const char * | filename, | |
const char * | treename, | |||
const char * | branchnames | |||
) |
Reads tree data from a ROOT file. Opens a ROOT file and gets a ROOT tree. It creates data set containing the values read from the file.
filename | The filename of the ROOT file | |
treename | The name of the ROOT tree | |
branchnames | A vector of the names of the branches |
ReadDataFromFileTxt(char * filename, int nbranches);
Definition at line 299 of file BCModelManager.cxx.
00300 { 00301 if (fModelContainer -> size() < 0) 00302 { 00303 BCLog::Out(BCLog::warning, BCLog::warning, "BCModelManager::ReadDataFromFileTree : No model defined."); 00304 return ERROR_NOMODELS; 00305 } 00306 00307 // create data set 00308 if (!fDataSet) 00309 fDataSet = new BCDataSet(); 00310 else 00311 fDataSet -> Reset(); 00312 00313 // read data from tree 00314 int read_file = fDataSet -> ReadDataFromFileTree(filename, treename, branchnames); 00315 00316 if (read_file >=0) 00317 { 00318 this -> SetDataSet(fDataSet); 00319 00320 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00321 fModelContainer -> at(i) -> SetDataSet(fDataSet); 00322 } 00323 else if (read_file == ERROR_FILENOTFOUND) 00324 { 00325 delete fDataSet; 00326 return ERROR_FILENOTFOUND; 00327 } 00328 00329 return 0; 00330 }
int BCModelManager::ReadDataFromFileTxt | ( | const char * | filename, | |
int | nbranches | |||
) |
Reads data from a txt file. Opens a txt file and creates data set containing the values read from the file.
filename | The filename of the ROOT file | |
nbranches | The number of variables |
ReadDataFromFileHist(char * filename, char * histname, const char * branchnames);
Definition at line 334 of file BCModelManager.cxx.
00335 { 00336 if (fModelContainer -> size() < 0) 00337 { 00338 BCLog::Out(BCLog::warning, BCLog::warning, "BCModelManager::ReadDataFromFileTree. No model defined."); 00339 return ERROR_NOMODELS; 00340 } 00341 00342 // create data set 00343 if (!fDataSet) 00344 fDataSet = new BCDataSet(); 00345 else 00346 fDataSet -> Reset(); 00347 00348 // read data from txt file 00349 int read_file = fDataSet -> ReadDataFromFileTxt(filename, nbranches); 00350 00351 if (read_file >=0) 00352 { 00353 this -> SetDataSet(fDataSet); 00354 00355 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00356 fModelContainer -> at(i) -> SetDataSet(fDataSet); 00357 } 00358 else 00359 { 00360 delete fDataSet; 00361 return ERROR_FILENOTFOUND; 00362 } 00363 00364 return 0; 00365 }
void BCModelManager::ResetDataSet | ( | ) | [inline] |
Resets the data set
Definition at line 293 of file BCModelManager.h.
00294 { fDataSet -> Reset(); };
void BCModelManager::SetDataBoundaries | ( | int | index, | |
double | lowerboundary, | |||
double | upperboundary | |||
) |
Set the lower and upper boundaries for possible data values for a particular variable
Definition at line 263 of file BCModelManager.cxx.
00264 { 00265 // set lower and upper boundary values for all models registered 00266 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00267 this -> GetModel(i) -> SetDataBoundaries(index, lowerboundary, upperboundary); 00268 }
void BCModelManager::SetDataPointLowerBoundaries | ( | BCDataPoint * | datasetlowerboundaries | ) |
Sets the data point containing the lower boundaries of possible data values
Definition at line 227 of file BCModelManager.cxx.
00228 { 00229 // set lower boundary point for all models registered 00230 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00231 this -> GetModel(i) -> SetDataPointLowerBoundaries(datasetlowerboundaries); 00232 }
void BCModelManager::SetDataPointLowerBoundary | ( | int | index, | |
double | lowerboundary | |||
) |
Sets the lower boundary of possible data values for a particular variable
Definition at line 245 of file BCModelManager.cxx.
00246 { 00247 // set lower bounday values for all models registered 00248 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00249 this -> GetModel(i) -> SetDataPointLowerBoundary(index, lowerboundary); 00250 }
void BCModelManager::SetDataPointUpperBoundaries | ( | BCDataPoint * | datasetupperboundaries | ) |
Sets the data point containing the upper boundaries of possible data values
Definition at line 236 of file BCModelManager.cxx.
00237 { 00238 // set upper boundary point for all models registered 00239 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00240 this -> GetModel(i) -> SetDataPointUpperBoundaries(datasetupperboundaries); 00241 }
void BCModelManager::SetDataPointUpperBoundary | ( | int | index, | |
double | upperboundary | |||
) |
Sets the upper boundary of possible data values for a particular variable
Definition at line 254 of file BCModelManager.cxx.
00255 { 00256 // set upper boundary values for all models registered 00257 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00258 this -> GetModel(i) -> SetDataPointUpperBoundary(index, upperboundary); 00259 }
void BCModelManager::SetDataSet | ( | BCDataSet * | dataset | ) |
Sets the data set common to all BCModels in this BCModelManager.
dataset | A data set |
Definition at line 60 of file BCModelManager.cxx.
00061 { 00062 // set data set 00063 fDataSet = dataset; 00064 00065 // set data set of all models in the manager 00066 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00067 this -> GetModel(i) -> SetDataSet(fDataSet); 00068 }
void BCModelManager::SetFillErrorBand | ( | bool | flag = true |
) |
Turn on or off the filling of the error band during the MCMC run for all models added to the model manager before calling this method.
flag | set to true for turning on the filling |
Definition at line 192 of file BCModelManager.cxx.
00193 { 00194 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00195 this -> GetModel(i) -> SetFillErrorBand(flag); 00196 }
void BCModelManager::SetFitFunctionIndexX | ( | int | index | ) |
Sets index of the x values in function fits.
index | Index of the x values |
Definition at line 200 of file BCModelManager.cxx.
00201 { 00202 // set fit function x index for all models registered 00203 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00204 this -> GetModel(i) -> SetFitFunctionIndexX(index); 00205 }
void BCModelManager::SetFitFunctionIndexY | ( | int | index | ) |
Sets index of the y values in function fits.
index | Index of the y values |
Definition at line 209 of file BCModelManager.cxx.
00210 { 00211 // set fit function y index for all models registered 00212 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00213 this -> GetModel(i) -> SetFitFunctionIndexY(index); 00214 }
void BCModelManager::SetFitFunctionIndices | ( | int | indexx, | |
int | indexy | |||
) |
Definition at line 218 of file BCModelManager.cxx.
00219 { 00220 // set fit function indices for all models registered 00221 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00222 this -> GetModel(i) -> SetFitFunctionIndices(indexx, indexy); 00223 }
void BCModelManager::SetFlagPCA | ( | bool | flag | ) |
Definition at line 290 of file BCModelManager.cxx.
00291 { 00292 // sets the flag for PCA 00293 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00294 this -> GetModel(i) -> MCMCSetFlagPCA(flag); 00295 }
void BCModelManager::SetIntegrationMethod | ( | BCIntegrate::BCIntegrationMethod | method | ) |
method | The integration method |
Definition at line 128 of file BCModelManager.cxx.
00129 { 00130 // set integration method for all models registered 00131 00132 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00133 this -> GetModel(i) -> SetIntegrationMethod(method); 00134 }
void BCModelManager::SetMarginalizationMethod | ( | BCIntegrate::BCMarginalizationMethod | method | ) |
Sets the maximum number of iterations for the Monte Carlo integration for all BCModels in this BCModelManager.
niterations | ||
method | The marginalization method |
Definition at line 138 of file BCModelManager.cxx.
00139 { 00140 // set marginalization method for all models registered 00141 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00142 this -> GetModel(i) -> SetMarginalizationMethod(method); 00143 };
void BCModelManager::SetNbins | ( | unsigned int | n | ) |
n | Number of bins per dimension for the marginalized distributions. Default is 100. Minimum number allowed is 2. |
Definition at line 183 of file BCModelManager.cxx.
00184 { 00185 // set number of bins for all models registered 00186 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00187 this -> GetModel(i) -> SetNbins(n); 00188 }
void BCModelManager::SetNChains | ( | unsigned int | n | ) |
Definition at line 281 of file BCModelManager.cxx.
00282 { 00283 // set number of Markov chains for all models registered 00284 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00285 this -> GetModel(i) -> MCMCSetNChains(n); 00286 }
void BCModelManager::SetNiterationsPerDimension | ( | unsigned int | niterations | ) |
niterations | Number of iterations per dimension for Monte Carlo integration. |
Definition at line 156 of file BCModelManager.cxx.
00157 { 00158 // set number of iterations per dimension for all models registered 00159 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00160 this -> GetModel(i) -> SetNiterationsPerDimension(niterations); 00161 }
void BCModelManager::SetNSamplesPer2DBin | ( | unsigned int | n | ) |
n | Number of samples per 2D bin per variable in the Metropolis marginalization. Default is 100. |
Definition at line 165 of file BCModelManager.cxx.
00166 { 00167 // set samples per 2d bin for all models registered 00168 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00169 this -> GetModel(i) -> SetNSamplesPer2DBin(n); 00170 }
void BCModelManager::SetOptimizationMethod | ( | BCIntegrate::BCOptimizationMethod | method | ) |
method | The mode finding method |
Definition at line 147 of file BCModelManager.cxx.
00148 { 00149 // set mode finding method for all models registered 00150 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00151 this -> GetModel(i) -> SetOptimizationMethod(method); 00152 }
void BCModelManager::SetRelativePrecision | ( | double | relprecision | ) |
relprecision | The relative precision envisioned for Monte Carlo integration |
Definition at line 174 of file BCModelManager.cxx.
00175 { 00176 // set relative precision for all models registered 00177 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00178 this -> GetModel(i) -> SetRelativePrecision(relprecision); 00179 }
void BCModelManager::SetSingleDataPoint | ( | BCDataSet * | dataset, | |
unsigned int | index | |||
) |
Sets a single data point as a common data set.
dataset | A data set. | |
index | The index of the data point in the data set specified. |
Definition at line 86 of file BCModelManager.cxx.
00087 { 00088 if (index < 0 || index > dataset -> GetNDataPoints()) 00089 return; 00090 00091 this -> SetSingleDataPoint(dataset -> GetDataPoint(index)); 00092 }
void BCModelManager::SetSingleDataPoint | ( | BCDataPoint * | datapoint | ) |
Sets a single data point as a common data set.
datapoint | A data point |
Definition at line 72 of file BCModelManager.cxx.
00073 { 00074 // create new data set consisting of a single data point 00075 BCDataSet * dataset = new BCDataSet(); 00076 00077 // add the data point 00078 dataset -> AddDataPoint(datapoint); 00079 00080 // set this new data set 00081 this -> SetDataSet(dataset); 00082 }
void BCModelManager::UnetFillErrorBand | ( | ) | [inline] |
Turn off the filling of the error band during the MCMC run for all models added to the model manager before calling this method.
Definition at line 172 of file BCModelManager.h.
00173 { SetFillErrorBand(false); };
void BCModelManager::WriteMarkovChain | ( | bool | flag | ) |
Definition at line 413 of file BCModelManager.cxx.
00414 { 00415 // marginalizes all models registered 00416 for (unsigned int i = 0; i < this -> GetNModels(); i++) 00417 this -> GetModel(i) -> WriteMarkovChain(flag); 00418 }
BCDataSet* BCModelManager::fDataSet [private] |
The data set common to all models.
Definition at line 331 of file BCModelManager.h.
BCModelContainer* BCModelManager::fModelContainer [private] |
The BCModelContainer containing all BCModels.
Definition at line 327 of file BCModelManager.h.