queso-0.53.0
MLSamplingLevelOptions.C
Go to the documentation of this file.
1 //-----------------------------------------------------------------------bl-
2 //--------------------------------------------------------------------------
3 //
4 // QUESO - a library to support the Quantification of Uncertainty
5 // for Estimation, Simulation and Optimization
6 //
7 // Copyright (C) 2008-2015 The PECOS Development Team
8 //
9 // This library is free software; you can redistribute it and/or
10 // modify it under the terms of the Version 2.1 GNU Lesser General
11 // Public License as published by the Free Software Foundation.
12 //
13 // This library is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 // Lesser General Public License for more details.
17 //
18 // You should have received a copy of the GNU Lesser General Public
19 // License along with this library; if not, write to the Free Software
20 // Foundation, Inc. 51 Franklin Street, Fifth Floor,
21 // Boston, MA 02110-1301 USA
22 //
23 //-----------------------------------------------------------------------el-
24 
25 #include <boost/program_options.hpp>
26 
27 #include <queso/MLSamplingLevelOptions.h>
28 #include <queso/Miscellaneous.h>
29 
30 namespace QUESO {
31 
33  const BaseEnvironment& env,
34  const char* prefix)
35  :
36  m_prefix ((std::string)(prefix) + ""),
37  m_help (UQ_ML_SAMPLING_L_HELP),
39 #else
40  m_checkpointOutputFileName (UQ_ML_SAMPLING_L_CHECKPOINT_OUTPUT_FILE_NAME_ODV),
41 #endif
43  m_dataOutputFileName (UQ_ML_SAMPLING_L_DATA_OUTPUT_FILE_NAME_ODV),
44  m_dataOutputAllowAll (UQ_ML_SAMPLING_L_DATA_OUTPUT_ALLOW_ALL_ODV),
45  //m_dataOutputAllowedSet (),
46  m_str1 (""),
47  m_loadBalanceAlgorithmId (UQ_ML_SAMPLING_L_LOAD_BALANCE_ALGORITHM_ID_ODV),
48  m_loadBalanceTreshold (UQ_ML_SAMPLING_L_LOAD_BALANCE_TRESHOLD_ODV),
49  m_minEffectiveSizeRatio (UQ_ML_SAMPLING_L_MIN_EFFECTIVE_SIZE_RATIO_ODV),
50  m_maxEffectiveSizeRatio (UQ_ML_SAMPLING_L_MAX_EFFECTIVE_SIZE_RATIO_ODV),
51  m_scaleCovMatrix (UQ_ML_SAMPLING_L_SCALE_COV_MATRIX_ODV),
52  m_minRejectionRate (UQ_ML_SAMPLING_L_MIN_REJECTION_RATE_ODV),
53  m_maxRejectionRate (UQ_ML_SAMPLING_L_MAX_REJECTION_RATE_ODV),
54  m_covRejectionRate (UQ_ML_SAMPLING_L_COV_REJECTION_RATE_ODV),
55  m_minAcceptableEta (UQ_ML_SAMPLING_L_MIN_ACCEPTABLE_ETA_ODV), // gpmsa1
56  m_totallyMute (UQ_ML_SAMPLING_L_TOTALLY_MUTE_ODV),
57  m_initialPositionDataInputFileName (UQ_ML_SAMPLING_L_INITIAL_POSITION_DATA_INPUT_FILE_NAME_ODV),
58  m_initialPositionDataInputFileType (UQ_ML_SAMPLING_L_INITIAL_POSITION_DATA_INPUT_FILE_TYPE_ODV),
59  m_initialProposalCovMatrixDataInputFileName(UQ_ML_SAMPLING_L_INITIAL_PROPOSAL_COV_MATRIX_DATA_INPUT_FILE_NAME_ODV),
60  m_initialProposalCovMatrixDataInputFileType(UQ_ML_SAMPLING_L_INITIAL_PROPOSAL_COV_MATRIX_DATA_INPUT_FILE_TYPE_ODV),
61  m_initialPositionUsePreviousLevelLikelihood(UQ_ML_SAMPLING_L_INITIAL_POSITION_USE_PREVIOUS_LEVEL_LIKELIHOOD_ODV), // ml_likelihood_caching
62  //m_parameterDisabledSet (), // gpmsa2
63  m_str2 (""),
64  m_initialValuesOfDisabledParameters (0),
65  m_str3 (""),
66  m_rawChainDataInputFileName (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_INPUT_FILE_NAME_ODV),
67  m_rawChainDataInputFileType (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_INPUT_FILE_TYPE_ODV),
68  m_rawChainSize (UQ_ML_SAMPLING_L_RAW_CHAIN_SIZE_ODV),
69  m_rawChainGenerateExtra (UQ_ML_SAMPLING_L_RAW_CHAIN_GENERATE_EXTRA_ODV),
70  m_rawChainDisplayPeriod (UQ_ML_SAMPLING_L_RAW_CHAIN_DISPLAY_PERIOD_ODV),
71  m_rawChainMeasureRunTimes (UQ_ML_SAMPLING_L_RAW_CHAIN_MEASURE_RUN_TIMES_ODV),
72  m_rawChainDataOutputPeriod (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_PERIOD_ODV),
73  m_rawChainDataOutputFileName (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_FILE_NAME_ODV),
74  m_rawChainDataOutputFileType (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_FILE_TYPE_ODV),
75  m_rawChainDataOutputAllowAll (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_ALLOW_ALL_ODV),
76  //m_rawChainDataOutputAllowedSet (),
77  m_str4 (""),
78 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
79  m_rawChainComputeStats (UQ_ML_SAMPLING_L_RAW_CHAIN_COMPUTE_STATS_ODV),
80  m_rawChainStatisticalOptionsObj (NULL),
81  m_rawChainStatOptsInstantiated (false),
82 #endif
83  m_filteredChainGenerate (UQ_ML_SAMPLING_L_FILTERED_CHAIN_GENERATE_ODV),
84  m_filteredChainDiscardedPortion (UQ_ML_SAMPLING_L_FILTERED_CHAIN_DISCARDED_PORTION_ODV),
85  m_filteredChainLag (UQ_ML_SAMPLING_L_FILTERED_CHAIN_LAG_ODV),
86  m_filteredChainDataOutputFileName (UQ_ML_SAMPLING_L_FILTERED_CHAIN_DATA_OUTPUT_FILE_NAME_ODV),
87  m_filteredChainDataOutputFileType (UQ_ML_SAMPLING_L_FILTERED_CHAIN_DATA_OUTPUT_FILE_TYPE_ODV),
88  m_filteredChainDataOutputAllowAll (UQ_ML_SAMPLING_L_FILTERED_CHAIN_DATA_OUTPUT_ALLOW_ALL_ODV),
89  //m_filteredChainDataOutputAllowedSet (),
90  m_str5 (""),
91 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
92  m_filteredChainComputeStats (UQ_ML_SAMPLING_L_FILTERED_CHAIN_COMPUTE_STATS_ODV),
93  m_filteredChainStatisticalOptionsObj (NULL),
94  m_filteredChainStatOptsInstantiated (false),
95 #endif
96  m_displayCandidates (UQ_ML_SAMPLING_L_DISPLAY_CANDIDATES_ODV),
97  m_putOutOfBoundsInChain (UQ_ML_SAMPLING_L_PUT_OUT_OF_BOUNDS_IN_CHAIN_ODV),
98  m_tkUseLocalHessian (UQ_ML_SAMPLING_L_TK_USE_LOCAL_HESSIAN_ODV),
99  m_tkUseNewtonComponent (UQ_ML_SAMPLING_L_TK_USE_NEWTON_COMPONENT_ODV),
100  m_drMaxNumExtraStages (UQ_ML_SAMPLING_L_DR_MAX_NUM_EXTRA_STAGES_ODV),
101  m_drScalesForExtraStages (0),
102  m_str6 ("1. "),
103  m_drDuringAmNonAdaptiveInt (UQ_ML_SAMPLING_L_DR_DURING_AM_NON_ADAPTIVE_INT_ODV),
104  m_amKeepInitialMatrix (UQ_ML_SAMPLING_L_AM_KEEP_INITIAL_MATRIX_ODV),
105  m_amInitialNonAdaptInterval (UQ_ML_SAMPLING_L_AM_INIT_NON_ADAPT_INT_ODV),
106  m_amAdaptInterval (UQ_ML_SAMPLING_L_AM_ADAPT_INTERVAL_ODV),
107  m_amAdaptedMatricesDataOutputPeriod (UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_PERIOD_ODV),
108  m_amAdaptedMatricesDataOutputFileName (UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_FILE_NAME_ODV),
109  m_amAdaptedMatricesDataOutputFileType (UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_FILE_TYPE_ODV),
110  m_amAdaptedMatricesDataOutputAllowAll (UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_ALLOW_ALL_ODV),
111  //m_amAdaptedMatricesDataOutputAllowedSet (),
112  m_str7 (""),
113  m_amEta (UQ_ML_SAMPLING_L_AM_ETA_ODV),
114  m_amEpsilon (UQ_ML_SAMPLING_L_AM_EPSILON_ODV),
115  m_env (env),
116  m_parser(new BoostInputOptionsParser(env.optionsInputFileName())),
117  m_option_help (m_prefix + "help" ),
119 #else
120  m_option_checkpointOutputFileName (m_prefix + "checkpointOutputFileName" ),
121 #endif
122  m_option_stopAtEnd (m_prefix + "stopAtEnd" ),
123  m_option_dataOutputFileName (m_prefix + "dataOutputFileName" ),
124  m_option_dataOutputAllowAll (m_prefix + "dataOutputAllowAll" ),
125  m_option_dataOutputAllowedSet (m_prefix + "dataOutputAllowedSet" ),
126  m_option_loadBalanceAlgorithmId (m_prefix + "loadBalanceAlgorithmId" ),
127  m_option_loadBalanceTreshold (m_prefix + "loadBalanceTreshold" ),
128  m_option_minEffectiveSizeRatio (m_prefix + "minEffectiveSizeRatio" ),
129  m_option_maxEffectiveSizeRatio (m_prefix + "maxEffectiveSizeRatio" ),
130  m_option_scaleCovMatrix (m_prefix + "scaleCovMatrix" ),
131  m_option_minRejectionRate (m_prefix + "minRejectionRate" ),
132  m_option_maxRejectionRate (m_prefix + "maxRejectionRate" ),
133  m_option_covRejectionRate (m_prefix + "covRejectionRate" ),
134  m_option_minAcceptableEta (m_prefix + "minAcceptableEta" ), // gpmsa1
135  m_option_totallyMute (m_prefix + "totallyMute" ),
136  m_option_initialPosition_dataInputFileName (m_prefix + "initialPosition_dataInputFileName" ),
137  m_option_initialPosition_dataInputFileType (m_prefix + "initialPosition_dataInputFileType" ),
138  m_option_initialProposalCovMatrix_dataInputFileName(m_prefix + "initialProposalCovMatrix_dataInputFileName"),
139  m_option_initialProposalCovMatrix_dataInputFileType(m_prefix + "initialProposalCovMatrix_dataInputFileType"),
140  m_option_initialPositionUsePreviousLevelLikelihood (m_prefix + "initialPositionUsePreviousLevelLikelihood" ), // ml_likelihood_caching
141  m_option_listOfDisabledParameters (m_prefix + "listOfDisabledParameters" ), // gpmsa2
142  m_option_initialValuesOfDisabledParameters (m_prefix + "initialValuesOfDisabledParameters" ), // gpmsa2
143  m_option_rawChain_dataInputFileName (m_prefix + "rawChain_dataInputFileName" ),
144  m_option_rawChain_dataInputFileType (m_prefix + "rawChain_dataInputFileType" ),
145  m_option_rawChain_size (m_prefix + "rawChain_size" ),
146  m_option_rawChain_generateExtra (m_prefix + "rawChain_generateExtra" ),
147  m_option_rawChain_displayPeriod (m_prefix + "rawChain_displayPeriod" ),
148  m_option_rawChain_measureRunTimes (m_prefix + "rawChain_measureRunTimes" ),
149  m_option_rawChain_dataOutputPeriod (m_prefix + "rawChain_dataOutputPeriod" ),
150  m_option_rawChain_dataOutputFileName (m_prefix + "rawChain_dataOutputFileName" ),
151  m_option_rawChain_dataOutputFileType (m_prefix + "rawChain_dataOutputFileType" ),
152  m_option_rawChain_dataOutputAllowAll (m_prefix + "rawChain_dataOutputAllowAll" ),
153  m_option_rawChain_dataOutputAllowedSet (m_prefix + "rawChain_dataOutputAllowedSet" ),
154 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
155  m_option_rawChain_computeStats (m_prefix + "rawChain_computeStats" ),
156 #endif
157  m_option_filteredChain_generate (m_prefix + "filteredChain_generate" ),
158  m_option_filteredChain_discardedPortion (m_prefix + "filteredChain_discardedPortion" ),
159  m_option_filteredChain_lag (m_prefix + "filteredChain_lag" ),
160  m_option_filteredChain_dataOutputFileName (m_prefix + "filteredChain_dataOutputFileName" ),
161  m_option_filteredChain_dataOutputFileType (m_prefix + "filteredChain_dataOutputFileType" ),
162  m_option_filteredChain_dataOutputAllowAll (m_prefix + "filteredChain_dataOutputAllowAll" ),
163  m_option_filteredChain_dataOutputAllowedSet (m_prefix + "filteredChain_dataOutputAllowedSet" ),
164 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
165  m_option_filteredChain_computeStats (m_prefix + "filteredChain_computeStats" ),
166 #endif
167  m_option_displayCandidates (m_prefix + "displayCandidates" ),
168  m_option_putOutOfBoundsInChain (m_prefix + "putOutOfBoundsInChain" ),
169  m_option_tk_useLocalHessian (m_prefix + "tk_useLocalHessian" ),
170  m_option_tk_useNewtonComponent (m_prefix + "tk_useNewtonComponent" ),
171  m_option_dr_maxNumExtraStages (m_prefix + "dr_maxNumExtraStages" ),
172  m_option_dr_listOfScalesForExtraStages (m_prefix + "dr_listOfScalesForExtraStages" ),
173  m_option_dr_duringAmNonAdaptiveInt (m_prefix + "dr_duringAmNonAdaptiveInt" ),
174  m_option_am_keepInitialMatrix (m_prefix + "am_keepInitialMatrix" ),
175  m_option_am_initialNonAdaptInterval (m_prefix + "am_initialNonAdaptInterval" ),
176  m_option_am_adaptInterval (m_prefix + "am_adaptInterval" ),
177  m_option_am_adaptedMatrices_dataOutputPeriod (m_prefix + "amAdaptedMatrices_dataOutputPeriod" ),
178  m_option_am_adaptedMatrices_dataOutputFileName (m_prefix + "amAdaptedMatrices_dataOutputFileName" ),
179  m_option_am_adaptedMatrices_dataOutputFileType (m_prefix + "amAdaptedMatrices_dataOutputFileType" ),
180  m_option_am_adaptedMatrices_dataOutputAllowAll (m_prefix + "amAdaptedMatrices_dataOutputAllowAll" ),
181  m_option_am_adaptedMatrices_dataOutputAllowedSet (m_prefix + "amAdaptedMatrices_dataOutputAllowedSet" ),
182  m_option_am_eta (m_prefix + "am_eta" ),
183  m_option_am_epsilon (m_prefix + "am_epsilon" ),
184  m_option_doLogitTransform (m_prefix + "doLogitTransform" )
185 {
186  this->defineAllOptions();
188  this->getAllOptions();
189  checkOptions(&env);
190 }
191 
192 void
194 {
195  m_parser->registerOption<std::string >(m_option_help, UQ_ML_SAMPLING_L_HELP , "produce help message for Bayesian Markov chain distr. calculator");
196 #ifdef ML_CODE_HAS_NEW_RESTART_CAPABILITY
197 #else
198  m_parser->registerOption<std::string >(m_option_checkpointOutputFileName, m_checkpointOutputFileName , "name of checpoint output file" );
199 #endif
200  m_parser->registerOption<bool >(m_option_stopAtEnd, m_stopAtEnd , "stop at end of such level" );
201  m_parser->registerOption<std::string >(m_option_dataOutputFileName, m_dataOutputFileName , "name of generic output file" );
202  m_parser->registerOption<bool >(m_option_dataOutputAllowAll, m_dataOutputAllowAll , "subEnvs that will write to generic output file" );
203  m_parser->registerOption<std::string >(m_option_dataOutputAllowedSet, m_str1 , "subEnvs that will write to generic output file" );
204  m_parser->registerOption<unsigned int>(m_option_loadBalanceAlgorithmId, m_loadBalanceAlgorithmId , "Perform load balancing with chosen algorithm (0 = no balancing)" );
205  m_parser->registerOption<double >(m_option_loadBalanceTreshold, m_loadBalanceTreshold , "Perform load balancing if load unbalancing ratio > treshold" );
206  m_parser->registerOption<double >(m_option_minEffectiveSizeRatio, m_minEffectiveSizeRatio , "minimum allowed effective size ratio wrt previous level" );
207  m_parser->registerOption<double >(m_option_maxEffectiveSizeRatio, m_maxEffectiveSizeRatio , "maximum allowed effective size ratio wrt previous level" );
208  m_parser->registerOption<bool >(m_option_scaleCovMatrix, m_scaleCovMatrix , "scale proposal covariance matrix" );
209  m_parser->registerOption<double >(m_option_minRejectionRate, m_minRejectionRate , "minimum allowed attempted rejection rate at current level" );
210  m_parser->registerOption<double >(m_option_maxRejectionRate, m_maxRejectionRate , "maximum allowed attempted rejection rate at current level" );
211  m_parser->registerOption<double >(m_option_covRejectionRate, m_covRejectionRate , "c.o.v. for judging attempted rejection rate at current level" );
212  m_parser->registerOption<double >(m_option_minAcceptableEta, m_minAcceptableEta , "min acceptable eta" );
213  m_parser->registerOption<bool >(m_option_totallyMute, m_totallyMute , "totally mute (no printout message)" );
214  m_parser->registerOption<std::string >(m_option_initialPosition_dataInputFileName, m_initialPositionDataInputFileName , "name of input file for initial position" );
215  m_parser->registerOption<std::string >(m_option_initialPosition_dataInputFileType, m_initialPositionDataInputFileType , "type of input file for initial position" );
216  m_parser->registerOption<std::string >(m_option_initialProposalCovMatrix_dataInputFileName, m_initialProposalCovMatrixDataInputFileName, "name of input file for initial proposal covariance matrix" );
217  m_parser->registerOption<std::string >(m_option_initialProposalCovMatrix_dataInputFileType, m_initialProposalCovMatrixDataInputFileType, "type of input file for initial proposal covariance matrix" );
218  m_parser->registerOption<bool >(m_option_initialPositionUsePreviousLevelLikelihood, m_initialPositionUsePreviousLevelLikelihood, "use previous level likelihood for initial chain position instead of re-computing from target pdf");
219  m_parser->registerOption<std::string >(m_option_listOfDisabledParameters, m_str2 , "list of disabled parameters" ); // gpmsa2
220  m_parser->registerOption<std::string >(m_option_initialValuesOfDisabledParameters, m_str3 , "initial values of disabled parameters" ); // gpmsa2
221  m_parser->registerOption<std::string >(m_option_rawChain_dataInputFileName, m_rawChainDataInputFileName , "name of input file for raw chain " );
222  m_parser->registerOption<std::string >(m_option_rawChain_dataInputFileType, m_rawChainDataInputFileType , "type of input file for raw chain " );
223  m_parser->registerOption<unsigned int>(m_option_rawChain_size, m_rawChainSize , "size of raw chain" );
224  m_parser->registerOption<bool >(m_option_rawChain_generateExtra, m_rawChainGenerateExtra , "generate extra information about raw chain" );
225  m_parser->registerOption<unsigned int>(m_option_rawChain_displayPeriod, m_rawChainDisplayPeriod , "period of message display during raw chain generation" );
227  m_parser->registerOption<unsigned int>(m_option_rawChain_dataOutputPeriod, m_rawChainDataOutputPeriod , "period of message display during raw chain generation" );
228  m_parser->registerOption<std::string >(m_option_rawChain_dataOutputFileName, m_rawChainDataOutputFileName , "name of output file for raw chain " );
229  m_parser->registerOption<std::string >(m_option_rawChain_dataOutputFileType, m_rawChainDataOutputFileType , "type of output file for raw chain " );
230  m_parser->registerOption<bool >(m_option_rawChain_dataOutputAllowAll, m_rawChainDataOutputAllowAll , "subEnvs that will write to output file for raw chain" );
231  m_parser->registerOption<std::string >(m_option_rawChain_dataOutputAllowedSet, m_str4 , "subEnvs that will write to output file for raw chain" );
232 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
233  m_parser->registerOption<bool >(m_option_rawChain_computeStats, m_rawChainComputeStats , "compute statistics on raw chain" );
234 #endif
236  m_parser->registerOption<double >(m_option_filteredChain_discardedPortion, m_filteredChainDiscardedPortion , "initial discarded portion for chain filtering" );
237  m_parser->registerOption<unsigned int>(m_option_filteredChain_lag, m_filteredChainLag , "spacing for chain filtering" );
238  m_parser->registerOption<std::string >(m_option_filteredChain_dataOutputFileName, m_filteredChainDataOutputFileName , "name of output file for filtered chain" );
239  m_parser->registerOption<std::string >(m_option_filteredChain_dataOutputFileType, m_filteredChainDataOutputFileType , "type of output file for filtered chain" );
240  m_parser->registerOption<bool >(m_option_filteredChain_dataOutputAllowAll, m_filteredChainDataOutputAllowAll , "subEnvs that will write to output file for filtered chain" );
241  m_parser->registerOption<std::string >(m_option_filteredChain_dataOutputAllowedSet, m_str5 , "subEnvs that will write to output file for filtered chain" );
242 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
243  m_parser->registerOption<bool >(m_option_filteredChain_computeStats, m_filteredChainComputeStats , "compute statistics on filtered chain" );
244 #endif
245  m_parser->registerOption<bool >(m_option_displayCandidates, m_displayCandidates , "display candidates generated in the core MH algorithm" );
246  m_parser->registerOption<bool >(m_option_putOutOfBoundsInChain, m_putOutOfBoundsInChain , "put 'out of bound' candidates in chain as well" );
247  m_parser->registerOption<bool >(m_option_tk_useLocalHessian, m_tkUseLocalHessian , "'proposal' use local Hessian" );
248  m_parser->registerOption<bool >(m_option_tk_useNewtonComponent, m_tkUseNewtonComponent , "'proposal' use Newton component" );
249  m_parser->registerOption<unsigned int>(m_option_dr_maxNumExtraStages, m_drMaxNumExtraStages , "'dr' maximum number of extra stages" );
250  m_parser->registerOption<std::string >(m_option_dr_listOfScalesForExtraStages, m_str6 , "'dr' list of scales for proposal cov matrices from 2nd stage on" );
251  m_parser->registerOption<bool >(m_option_dr_duringAmNonAdaptiveInt, m_drDuringAmNonAdaptiveInt , "'dr' used during 'am' non adaptive interval" );
252  m_parser->registerOption<bool >(m_option_am_keepInitialMatrix, m_amKeepInitialMatrix , "'am' keep initial (given) matrix" );
253  m_parser->registerOption<unsigned int>(m_option_am_initialNonAdaptInterval, m_amInitialNonAdaptInterval , "'am' initial non adaptation interval" );
254  m_parser->registerOption<unsigned int>(m_option_am_adaptInterval, m_amAdaptInterval , "'am' adaptation interval" );
255  m_parser->registerOption<unsigned int>(m_option_am_adaptedMatrices_dataOutputPeriod, m_amAdaptedMatricesDataOutputPeriod , "period for outputing 'am' adapted matrices" );
256  m_parser->registerOption<std::string >(m_option_am_adaptedMatrices_dataOutputFileName, m_amAdaptedMatricesDataOutputFileName , "name of output file for 'am' adapted matrices" );
257  m_parser->registerOption<std::string >(m_option_am_adaptedMatrices_dataOutputFileType, m_amAdaptedMatricesDataOutputFileType , "type of output file for 'am' adapted matrices" );
258  m_parser->registerOption<bool >(m_option_am_adaptedMatrices_dataOutputAllowAll, m_amAdaptedMatricesDataOutputAllowAll , "type of output file for 'am' adapted matrices" );
259  m_parser->registerOption<std::string >(m_option_am_adaptedMatrices_dataOutputAllowedSet, m_str7 , "type of output file for 'am' adapted matrices" );
260  m_parser->registerOption<double >(m_option_am_eta, m_amEta , "'am' eta" );
261  m_parser->registerOption<double >(m_option_am_epsilon, m_amEpsilon , "'am' epsilon" );
262  m_parser->registerOption<bool >(m_option_doLogitTransform, UQ_ML_SAMPLING_L_DO_LOGIT_TRANSFORM , "flag for doing logit transform for bounded domains" );
263 }
264 
265 void
267 {
268  m_parser->getOption<std::string >(m_option_help, m_help);
269 #ifdef ML_CODE_HAS_NEW_RESTART_CAPABILITY
270 #else
272 #endif
292  m_parser->getOption<std::set<unsigned int> >(m_option_listOfDisabledParameters, m_parameterDisabledSet); // gpmsa2
305 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
306  m_parser->getOption<bool >(m_option_rawChain_computeStats, m_rawChainComputeStats );
307 #endif
315 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
316  m_parser->getOption<bool >(m_option_filteredChain_computeStats, m_filteredChainComputeStats );
317 #endif
336 }
337 
338 void
340 {
341 #ifdef ML_CODE_HAS_NEW_RESTART_CAPABILITY
342 #else
344 #endif
345  m_stopAtEnd = srcOptions.m_stopAtEnd;
349  m_str1 = srcOptions.m_str1;
354  m_scaleCovMatrix = srcOptions.m_scaleCovMatrix;
358  m_minAcceptableEta = srcOptions.m_minAcceptableEta; // gpmsa1
359  m_totallyMute = srcOptions.m_totallyMute;
365  m_parameterDisabledSet = srcOptions.m_parameterDisabledSet; // gpmsa2
366  m_str2 = srcOptions.m_str2; // gpmsa2
368  m_str3 = srcOptions.m_str3;
371  m_rawChainSize = srcOptions.m_rawChainSize;
372 //std::cout << "In copy(), rawChainSize = " << m_rawChainSize << std::endl;
381  m_str4 = srcOptions.m_str4;
382 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
383  m_rawChainComputeStats = srcOptions.m_rawChainComputeStats;
384  m_rawChainStatisticalOptionsObj = NULL; // Yes, 'NULL'
385  m_rawChainStatOptsInstantiated = false;
386 #endif
394  m_str5 = srcOptions.m_str5;
395 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
396  m_filteredChainComputeStats = srcOptions.m_filteredChainComputeStats;
397  m_filteredChainStatisticalOptionsObj = NULL; // Yes, 'NULL'
398  m_filteredChainStatOptsInstantiated = false;
399 #endif
406  m_str6 = srcOptions.m_str6;
416  m_str7 = srcOptions.m_str7;
417  m_amEta = srcOptions.m_amEta;
418  m_amEpsilon = srcOptions.m_amEpsilon;
420 
421  return;
422 }
423 
425 {
426  //std::cout << "In MLSamplingLevelOptions::destructor()"
427  // << ": m_filteredChainStatOptsInstantiated = " << m_filteredChainStatOptsInstantiated
428  // << ", m_rawChainStatOptsInstantiated = " << m_rawChainStatOptsInstantiated
429  // << std::endl;
430  //sleep(1);
431 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
432  if (m_filteredChainStatOptsInstantiated) delete m_filteredChainStatisticalOptionsObj;
433  if (m_rawChainStatOptsInstantiated ) delete m_rawChainStatisticalOptionsObj;
434 #endif
435 }
436 
437 void
439 {
441 
442  // FIXME
443  if (defaultOptions) this->copyOptionsValues(*defaultOptions);
444 
445  // Replace the parser since default values changed
446  if (m_parser) {
447  delete m_parser;
449  }
450 
451  this->defineAllOptions();
453  this->getAllOptions();
454 
455 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
456  if (m_rawChainComputeStats) {
457  m_rawChainStatisticalOptionsObj = new SequenceStatisticalOptions(m_env,m_prefix + "rawChain_");
458  m_rawChainStatOptsInstantiated = true;
459  }
460  if (m_filteredChainComputeStats) {
461  m_filteredChainStatisticalOptionsObj = new SequenceStatisticalOptions(m_env,m_prefix + "filteredChain_");
462  m_filteredChainStatOptsInstantiated = true;
463  }
464 #endif
465 }
466 
467 void
469 {
470  char tmpStr[64];
471 
472  // DM: Print here because I don't know where the class is instantiated
473  if (m_help != "") {
474  if (m_env.subDisplayFile()) {
475  *m_env.subDisplayFile() << (*this) << std::endl;
476  }
477  }
478 
479  if (m_dataOutputAllowAll) {
480  m_dataOutputAllowedSet.clear();
482  }
483 
484  // DM: Not sure what this is for
485  m_str1.clear();
486  for (std::set<unsigned int>::iterator setIt = m_dataOutputAllowedSet.begin(); setIt != m_dataOutputAllowedSet.end(); ++setIt) {
487  sprintf(tmpStr,"%d",(int)(*setIt));
488  m_str1 += tmpStr;
489  m_str1 += " ";
490  }
491 
492  queso_require_less_msg(m_minEffectiveSizeRatio, 1.0, "option `" << m_option_minEffectiveSizeRatio << "` must be less than 1.0");
493  queso_require_less_msg(m_maxEffectiveSizeRatio, 1.0, "option `" << m_option_maxEffectiveSizeRatio << "` must be less than 1.0");
494  queso_require_less_msg(m_minRejectionRate, 1.0, "option `" << m_option_minRejectionRate << "` must be less than 1.0");
495  queso_require_less_msg(m_maxRejectionRate, 1.0, "option `" << m_option_maxRejectionRate << "` must be less than 1.0");
496  queso_require_less_msg(m_covRejectionRate, 1.0, "option `" << m_option_covRejectionRate << "` must be less than 1.0");
497 
498  // DM: Not sure what this is for
499  m_str2.clear();
500  for (std::set<unsigned int>::iterator setIt = m_parameterDisabledSet.begin(); setIt != m_parameterDisabledSet.end(); ++setIt) { // gpmsa2
501  sprintf(tmpStr,"%d",(int)(*setIt));
502  m_str2 += tmpStr;
503  m_str2 += " ";
504  }
505 
506  // DM: Not sure what this is for
507  m_str3.clear();
508  for (unsigned int i = 0; i < m_initialValuesOfDisabledParameters.size(); ++i) {
509  sprintf(tmpStr,"%e",m_initialValuesOfDisabledParameters[i]);
510  m_str3 += tmpStr;
511  m_str3 += " ";
512  }
513 
517  }
518 
519  // DM: Not sure what this is for
520  m_str4.clear();
521  for (std::set<unsigned int>::iterator setIt = m_rawChainDataOutputAllowedSet.begin(); setIt != m_rawChainDataOutputAllowedSet.end(); ++setIt) {
522  sprintf(tmpStr,"%d",(int)(*setIt));
523  m_str4 += tmpStr;
524  m_str4 += " ";
525  }
526 
527  if (m_filteredChainGenerate == true) {
528  queso_require_greater_equal_msg(m_filteredChainLag, 2, "option `" << m_option_filteredChain_lag << "` must be at least 2");
529  }
530 
534  }
535 
536  // DM: Not sure what this is for
537  m_str5.clear();
538  for (std::set<unsigned int>::iterator setIt = m_filteredChainDataOutputAllowedSet.begin(); setIt != m_filteredChainDataOutputAllowedSet.end(); ++setIt) {
539  sprintf(tmpStr,"%d",(int)(*setIt));
540  m_str5 += tmpStr;
541  m_str5 += " ";
542  }
543 
544  if (m_drMaxNumExtraStages > 0) {
545  unsigned int size = m_drScalesForExtraStages.size();
546 
547  // If we asked more stages than scales provided, pad with ones
548  if (m_drMaxNumExtraStages > size) {
549  for (unsigned int i = size; i < m_drMaxNumExtraStages; i++) {
550  double scale = 1.0;
551  m_drScalesForExtraStages.push_back(scale);
552  }
553  }
554  }
555 
556  // DM: Not sure what this is for
557  m_str6.clear();
558  for (unsigned int i = 0; i < m_drScalesForExtraStages.size(); ++i) {
559  sprintf(tmpStr,"%e",m_drScalesForExtraStages[i]);
560  m_str6 += tmpStr;
561  m_str6 += " ";
562  }
563 
567  }
568 
569  // DM: Not sure what this is for
570  m_str7.clear();
571  for (std::set<unsigned int>::iterator setIt = m_amAdaptedMatricesDataOutputAllowedSet.begin(); setIt != m_amAdaptedMatricesDataOutputAllowedSet.end(); ++setIt) {
572  sprintf(tmpStr,"%d",(int)(*setIt));
573  m_str7 += tmpStr;
574  m_str7 += " ";
575  }
576 }
577 
578 void
579 MLSamplingLevelOptions::print(std::ostream& os) const
580 {
581  os << "m_prefix" << " = " << m_prefix
582 #ifdef ML_CODE_HAS_NEW_RESTART_CAPABILITY
583 #else
585 #endif
586  << "\n" << m_option_stopAtEnd << " = " << m_stopAtEnd
589  << "\n" << m_option_dataOutputAllowedSet << " = ";
590  for (std::set<unsigned int>::iterator setIt = m_dataOutputAllowedSet.begin(); setIt != m_dataOutputAllowedSet.end(); ++setIt) {
591  os << *setIt << " ";
592  }
597  << "\n" << m_option_scaleCovMatrix << " = " << m_scaleCovMatrix
598  << "\n" << m_option_minRejectionRate << " = " << m_minRejectionRate
599  << "\n" << m_option_maxRejectionRate << " = " << m_maxRejectionRate
600  << "\n" << m_option_covRejectionRate << " = " << m_covRejectionRate
601  << "\n" << m_option_minAcceptableEta << " = " << m_minAcceptableEta // gpmsa1
602  << "\n" << m_option_totallyMute << " = " << m_totallyMute
608  << "\n" << m_option_listOfDisabledParameters << " = "; // gpmsa2
609  for (std::set<unsigned int>::iterator setIt = m_parameterDisabledSet.begin(); setIt != m_parameterDisabledSet.end(); ++setIt) {
610  os << *setIt << " ";
611  }
612  os << "\n" << m_option_initialValuesOfDisabledParameters << " = "; // gpmsa2
613  for (unsigned int i = 0; i < m_initialValuesOfDisabledParameters.size(); ++i) {
614  os << m_initialValuesOfDisabledParameters[i] << " ";
615  }
618  << "\n" << m_option_rawChain_size << " = " << m_rawChainSize
626  << "\n" << m_option_rawChain_dataOutputAllowedSet << " = ";
627  for (std::set<unsigned int>::iterator setIt = m_rawChainDataOutputAllowedSet.begin(); setIt != m_rawChainDataOutputAllowedSet.end(); ++setIt) {
628  os << *setIt << " ";
629  }
630  os
631 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
632  << "\n" << m_option_rawChain_computeStats << " = " << m_rawChainComputeStats
633 #endif
636  << "\n" << m_option_filteredChain_lag << " = " << m_filteredChainLag
641  for (std::set<unsigned int>::iterator setIt = m_filteredChainDataOutputAllowedSet.begin(); setIt != m_filteredChainDataOutputAllowedSet.end(); ++setIt) {
642  os << *setIt << " ";
643  }
644  os
645 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
646  << "\n" << m_option_filteredChain_computeStats << " = " << m_filteredChainComputeStats
647 #endif
648  << "\n" << m_option_displayCandidates << " = " << m_displayCandidates
650  << "\n" << m_option_tk_useLocalHessian << " = " << m_tkUseLocalHessian
653  << "\n" << m_option_dr_listOfScalesForExtraStages << " = ";
654  for (unsigned int i = 0; i < m_drScalesForExtraStages.size(); ++i) {
655  os << m_drScalesForExtraStages[i] << " ";
656  }
660  << "\n" << m_option_am_adaptInterval << " = " << m_amAdaptInterval
666  for (std::set<unsigned int>::iterator setIt = m_amAdaptedMatricesDataOutputAllowedSet.begin(); setIt != m_amAdaptedMatricesDataOutputAllowedSet.end(); ++setIt) {
667  os << *setIt << " ";
668  }
669  os << "\n" << m_option_am_eta << " = " << m_amEta
670  << "\n" << m_option_am_epsilon << " = " << m_amEpsilon
671  << "\n" << m_option_doLogitTransform << " = " << m_doLogitTransform
672  << std::endl;
673 
674  return;
675 }
676 
677 const BaseEnvironment&
679 {
680  return m_env;
681 }
682 
683 std::ostream& operator<<(std::ostream& os, const MLSamplingLevelOptions& obj)
684 {
685  os << (*(obj.m_parser)) << std::endl;
686  obj.print(os);
687  return os;
688 }
689 
690 } // End namespace QUESO
#define UQ_ML_SAMPLING_L_DR_MAX_NUM_EXTRA_STAGES_ODV
#define UQ_ML_SAMPLING_L_MAX_REJECTION_RATE_ODV
unsigned int m_rawChainDisplayPeriod
Period of message display during raw chain generation.
#define UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_ALLOW_ALL_ODV
#define UQ_ML_SAMPLING_L_LOAD_BALANCE_ALGORITHM_ID_ODV
std::string m_option_am_adaptedMatrices_dataOutputFileName
double m_filteredChainDiscardedPortion
Initial discarded portion for chain filtering.
MLSamplingLevelOptions(const BaseEnvironment &env, const char *prefix)
Constructor: reads options from the input file.
#define UQ_ML_SAMPLING_L_COV_REJECTION_RATE_ODV
#define UQ_ML_SAMPLING_L_RAW_CHAIN_GENERATE_EXTRA_ODV
unsigned int m_loadBalanceAlgorithmId
Perform load balancing with chosen algorithm (0 = no balancing).
#define UQ_ML_SAMPLING_L_AM_ETA_ODV
std::vector< double > m_drScalesForExtraStages
&#39;dr&#39; list of scales for proposal covariance matrices from 2nd stage on.
std::string m_dataOutputFileName
Name of generic output file.
std::string m_initialPositionDataInputFileType
Type of input file for initial position.
#define UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_ALLOW_ALL_ODV
bool m_tkUseNewtonComponent
Whether or not &#39;proposal&#39; uses Newton component.
bool m_amKeepInitialMatrix
Whether or not &#39;am&#39; will keep initial (given) matrix.
bool m_rawChainMeasureRunTimes
Whether or not to measure run times.
std::set< unsigned int > m_filteredChainDataOutputAllowedSet
subEnvs that will write to output file for filtered chain.
#define UQ_ML_SAMPLING_L_FILTERED_CHAIN_DISCARDED_PORTION_ODV
#define UQ_ML_SAMPLING_L_DATA_OUTPUT_FILE_NAME_ODV
unsigned int m_amAdaptedMatricesDataOutputPeriod
Period for outputing &#39;am&#39; adapted matrices.
double m_minRejectionRate
minimum allowed attempted rejection rate at current level
std::set< unsigned int > m_amAdaptedMatricesDataOutputAllowedSet
subEnvs that will write to output file for &#39;am&#39; adapted matrices.
std::string m_option_initialPositionUsePreviousLevelLikelihood
bool m_totallyMute
Whether or not to be totally mute (no printout message).
std::string m_option_am_adaptedMatrices_dataOutputAllowedSet
bool m_filteredChainGenerate
Whether or not to generate filtered chain.
std::string m_option_initialProposalCovMatrix_dataInputFileName
void scanOptionsValues(const MLSamplingLevelOptions *defaultOptions)
std::string m_amAdaptedMatricesDataOutputFileName
Name of output file for &#39;am&#39; adapted matrices.
bool m_rawChainDataOutputAllowAll
Whether or not subEnvs will write to output file for raw chain.
bool m_initialPositionUsePreviousLevelLikelihood
Use previous level likelihood for initial chain position instead of re-computing it from target pdf...
#define UQ_ML_SAMPLING_L_RAW_CHAIN_SIZE_ODV
bool m_displayCandidates
Display candidates generated in the core MH algorithm.
#define ML_CODE_HAS_NEW_RESTART_CAPABILITY
Definition: Defines.h:65
std::string m_str1
subEnvs that will write to generic output file.
std::ostream & operator<<(std::ostream &os, const BaseEnvironment &obj)
#define UQ_ML_SAMPLING_L_AM_INIT_NON_ADAPT_INT_ODV
std::string m_initialPositionDataInputFileName
Name of input file for initial position.
#define UQ_ML_SAMPLING_L_FILTERED_CHAIN_LAG_ODV
double m_minAcceptableEta
minimum acceptable eta,
#define UQ_ML_SAMPLING_L_INITIAL_POSITION_USE_PREVIOUS_LEVEL_LIKELIHOOD_ODV
This class provides options for each level of the Multilevel sequence generator if no input file is a...
#define UQ_ML_SAMPLING_L_AM_EPSILON_ODV
#define UQ_ML_SAMPLING_L_RAW_CHAIN_DISPLAY_PERIOD_ODV
#define UQ_ML_SAMPLING_L_SCALE_COV_MATRIX_ODV
std::string m_initialProposalCovMatrixDataInputFileType
Type of input file for initial proposal covariance matrix.
std::string m_initialProposalCovMatrixDataInputFileName
Name of input file for initial proposal covariance matrix.
#define UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_PERIOD_ODV
std::string m_rawChainDataOutputFileName
Name of output file for raw chain.
#define UQ_ML_SAMPLING_L_RAW_CHAIN_MEASURE_RUN_TIMES_ODV
unsigned int m_rawChainSize
Size of raw chain.
#define UQ_ML_SAMPLING_L_LOAD_BALANCE_TRESHOLD_ODV
std::string m_option_am_adaptedMatrices_dataOutputAllowAll
double m_maxRejectionRate
maximum allowed attempted rejection rate at current level.
bool m_tkUseLocalHessian
Whether or not &#39;proposal&#39; uses local Hessian.
std::set< unsigned int > m_dataOutputAllowedSet
subEnvs that will write to generic output file.
#define UQ_ML_SAMPLING_L_AM_KEEP_INITIAL_MATRIX_ODV
#define UQ_ML_SAMPLING_L_INITIAL_PROPOSAL_COV_MATRIX_DATA_INPUT_FILE_TYPE_ODV
std::string m_amAdaptedMatricesDataOutputFileType
Type of output file for &#39;am&#39; adapted matrices.
std::set< unsigned int > m_parameterDisabledSet
double scale
Definition: ann2fig.cpp:85
#define UQ_ML_SAMPLING_L_HELP
double m_covRejectionRate
c.o.v. for judging attempted rejection rate at current level.
std::string m_rawChainDataOutputFileType
Type of output file for raw chain.
#define UQ_ML_SAMPLING_L_TOTALLY_MUTE_ODV
std::string optionsInputFileName() const
Access to the attribute m_optionsInputFileName, which stores the name of the input file passed by the...
Definition: Environment.C:307
bool m_rawChainGenerateExtra
Generate extra information about raw chain.
#define UQ_ML_SAMPLING_L_FILTERED_CHAIN_GENERATE_ODV
#define UQ_ML_SAMPLING_L_CHECKPOINT_OUTPUT_FILE_NAME_ODV
void scanInputFile()
This is the method that parses the input file.
BoostInputOptionsParser * m_parser
#define UQ_ML_SAMPLING_L_MIN_ACCEPTABLE_ETA_ODV
unsigned int m_amInitialNonAdaptInterval
&#39;am&#39; initial non adaptation interval
std::string m_option_am_adaptedMatrices_dataOutputFileType
std::string m_rawChainDataInputFileType
Type of input file for raw chain.
#define UQ_ML_SAMPLING_L_PUT_OUT_OF_BOUNDS_IN_CHAIN_ODV
std::string m_help
If non-empty string, print options and values to output file.
virtual ~MLSamplingLevelOptions()
Destructor.
std::ofstream * subDisplayFile() const
Access function for m_subDisplayFile (displays file on stream).
Definition: Environment.C:274
#define UQ_ML_SAMPLING_L_INITIAL_PROPOSAL_COV_MATRIX_DATA_INPUT_FILE_NAME_ODV
unsigned int m_amAdaptInterval
&#39;am&#39; adaptation interval.
void copyOptionsValues(const MLSamplingLevelOptions &srcOptions)
Copies the option values from srcOptions to this.
#define queso_require_less_msg(expr1, expr2, msg)
Definition: asserts.h:87
bool m_filteredChainDataOutputAllowAll
Whether or not subEnvs will write to output file for filtered chain.
#define UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_INPUT_FILE_TYPE_ODV
std::string m_rawChainDataInputFileName
Name of input file for raw chain.
This (virtual) class sets up the environment underlying the use of the QUESO library by an executable...
Definition: Environment.h:193
#define UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_FILE_NAME_ODV
std::string m_option_initialProposalCovMatrix_dataInputFileType
unsigned int subId() const
Access function to the number of each sub-environment Id: m_subId.
Definition: Environment.C:295
std::string m_checkpointOutputFileName
Name of checkpoint output file.
void registerOption(std::string name, T defaultValue, std::string description)
Call this to register an option with the parser.
std::string m_filteredChainDataOutputFileType
Type of output file for filtered chain.
#define UQ_ML_SAMPLING_L_STOP_AT_END_ODV
double m_amEta
&#39;am&#39; eta.
#define UQ_ML_SAMPLING_L_INITIAL_POSITION_DATA_INPUT_FILE_TYPE_ODV
#define UQ_ML_SAMPLING_L_DATA_OUTPUT_ALLOW_ALL_ODV
double m_amEpsilon
&#39;am&#39; epsilon.
bool m_scaleCovMatrix
Whether or not scale proposal covariance matrix.
#define UQ_ML_SAMPLING_L_DISPLAY_CANDIDATES_ODV
bool m_amAdaptedMatricesDataOutputAllowAll
Whether or not subEnvs will write to output file for &#39;am&#39; adapted matrices.
unsigned int m_filteredChainLag
Spacing for chain filtering.
std::string m_filteredChainDataOutputFileName
Name of output file for filtered chain.
#define UQ_ML_SAMPLING_L_MIN_REJECTION_RATE_ODV
#define UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_INPUT_FILE_NAME_ODV
unsigned int m_rawChainDataOutputPeriod
Period of message display during raw chain generation.
#define UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_FILE_TYPE_ODV
#define queso_deprecated()
Definition: Defines.h:120
#define UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_PERIOD_ODV
std::vector< double > m_initialValuesOfDisabledParameters
void checkOptions(const BaseEnvironment *env)
#define UQ_ML_SAMPLING_L_FILTERED_CHAIN_DATA_OUTPUT_FILE_NAME_ODV
double m_loadBalanceTreshold
Perform load balancing if load unbalancing ratio &gt; threshold.
bool m_doLogitTransform
Whether or not a logit transform will be done for bounded domains.
#define UQ_ML_SAMPLING_L_INITIAL_POSITION_DATA_INPUT_FILE_NAME_ODV
#define UQ_ML_SAMPLING_L_FILTERED_CHAIN_DATA_OUTPUT_FILE_TYPE_ODV
bool m_dataOutputAllowAll
subEnvs that will write to generic output file.
#define queso_require_greater_equal_msg(expr1, expr2, msg)
Definition: asserts.h:90
#define UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_FILE_TYPE_ODV
bool m_putOutOfBoundsInChain
Put &#39;out of bound&#39; candidates in chain as well.
#define UQ_ML_SAMPLING_L_DR_DURING_AM_NON_ADAPTIVE_INT_ODV
bool m_stopAtEnd
Stop at end of such level.
void print(std::ostream &os) const
#define UQ_ML_SAMPLING_L_TK_USE_LOCAL_HESSIAN_ODV
#define UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_FILE_NAME_ODV
#define UQ_ML_SAMPLING_L_AM_ADAPT_INTERVAL_ODV
#define UQ_ML_SAMPLING_L_TK_USE_NEWTON_COMPONENT_ODV
#define UQ_ML_SAMPLING_L_FILTERED_CHAIN_DATA_OUTPUT_ALLOW_ALL_ODV
unsigned int m_drMaxNumExtraStages
&#39;dr&#39; maximum number of extra stages.
void getOption(std::string &name, T &value)
Get option name from the parser and set value to the parsed value.
double m_minEffectiveSizeRatio
Minimum allowed effective size ratio wrt previous level.
std::set< unsigned int > m_rawChainDataOutputAllowedSet
subEnvs that will write to output file for raw chain.
#define UQ_ML_SAMPLING_L_DO_LOGIT_TRANSFORM
#define UQ_ML_SAMPLING_L_MAX_EFFECTIVE_SIZE_RATIO_ODV
double m_maxEffectiveSizeRatio
Maximum allowed effective size ratio wrt previous level.
#define UQ_ML_SAMPLING_L_MIN_EFFECTIVE_SIZE_RATIO_ODV
const BaseEnvironment & env() const
Access to the environment.
bool m_drDuringAmNonAdaptiveInt
Whether or not &#39;dr&#39; is used during &#39;am&#39; non adaptive interval.

Generated on Thu Jun 11 2015 13:52:32 for queso-0.53.0 by  doxygen 1.8.5