Dear experts,
I’m using StandardHypoTestInvDemo to run limits, it works fine with asymptotic and also for toys. However when trying to run with toys with the useProof = True options I experience a crash.
I’m using Freq calculator (option 0) with Profile Likelihood one sided (option 3)
These are the other options I’m using:
bool plotHypoTestResult = true; // plot test statistic result at each point
bool writeResult = true; // write HypoTestInverterResult in a file
TString resultFileName; // file with results (by default is built automatically using the workspace input file name)
bool optimize = true; // optmize evaluation of test statistic
bool useVectorStore = true; // convert data to use new roofit data store
bool generateBinned = true; // generate binned data sets
bool noSystematics = true; // force all systematics to be off (i.e. set all nuisance parameters as constant to their nominal values)
double nToysRatio = 2; // ratio Ntoys S+b/ntoysB
double maxPOI = -1; // max value used of POI (in case of auto scan)
bool useProof = true; // use Proof Lite when using toys (for freq or hybrid)
int nworkers = 0; // number of worker for ProofLite (default use all available cores)
bool enableDetailedOutput = true; // enable detailed output with all fit information for each toys (output will be written in result file)
bool rebuild = false; // re-do extra toys for computing expected limits and rebuild test stat
// distributions (N.B this requires much more CPU (factor is equivalent to nToyToRebuild)
int nToyToRebuild = 100; // number of toys used to rebuild
int rebuildParamValues=0; // = 0 do a profile of all the parameters on the B (alt snapshot) before performing a rebuild operation (default)
// = 1 use initial workspace parameters with B snapshot values
// = 2 use all initial workspace parameters with B
// Otherwise the rebuild will be performed using
int initialFit = 0; // do a first fit to the model (-1 : default, 0 skip fit, 1 do always fit)
int randomSeed = -1; // random seed (if = -1: use default value, if = 0 always random )
// NOTE: Proof uses automatically a random seed
int nAsimovBins = 0; // number of bins in observables used for Asimov data sets (0 is the default and it is given by workspace, typically is 100)
bool reuseAltToys = true; // reuse same toys for alternate hypothesis (if set one gets more stable bands)
double confidenceLevel = 0.95; // confidence level value
std::string massValue = ""; // extra string to tag output file of result
std::string minimizerType = ""; // minimizer type (default is what is in ROOT::Math::MinimizerOptions::DefaultMinimizerType()
int printLevel = 0; // print level for debugging PL test statistics and calculators
bool useNLLOffset = true; // use NLL offset when fitting (this increase stability of fits)
I experience this crash:
...
[#0] PROGRESS:Generation -- Test Statistic on data: 0
[#1] INFO:InputArguments -- Using a ToyMCSampler. Now configuring for Null.
[#0] PROGRESS:Generation -- RooStudyManager::runProof() opening PROOF session
+++ Starting PROOF-Lite with 4 workers +++
Opening connections to workers: OK (4 workers)
Setting up worker servers: OK (4 workers)
PROOF set to parallel mode (4 workers)
[#0] PROGRESS:Generation -- RooStudyManager::runProof() sending work package to PROOF servers
[#0] PROGRESS:Generation -- RooStudyManager::runProof() starting PROOF processing of 4 experiments
*** Break *** segmentation violation
Aborted (core dumped)
Full stack trace attached:
crash.txt (11.7 KB)
Thanks,
SM