queso-0.57.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
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-2017 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 <queso/config_queso.h>
26 #include <queso/MLSamplingLevelOptions.h>
27 #include <queso/Miscellaneous.h>
28 
29 namespace QUESO {
30 
32  const BaseEnvironment& env,
33  const char* prefix)
34  :
35  m_prefix ((std::string)(prefix) + ""),
36  m_help (UQ_ML_SAMPLING_L_HELP),
37 #ifdef ML_CODE_HAS_NEW_RESTART_CAPABILITY
38 #else
39  m_checkpointOutputFileName (UQ_ML_SAMPLING_L_CHECKPOINT_OUTPUT_FILE_NAME_ODV),
40 #endif
41  m_stopAtEnd (UQ_ML_SAMPLING_L_STOP_AT_END_ODV),
42  m_dataOutputFileName (UQ_ML_SAMPLING_L_DATA_OUTPUT_FILE_NAME_ODV),
43  m_dataOutputAllowAll (UQ_ML_SAMPLING_L_DATA_OUTPUT_ALLOW_ALL_ODV),
44  //m_dataOutputAllowedSet (),
45  m_str1 (""),
46  m_loadBalanceAlgorithmId (UQ_ML_SAMPLING_L_LOAD_BALANCE_ALGORITHM_ID_ODV),
47  m_loadBalanceTreshold (UQ_ML_SAMPLING_L_LOAD_BALANCE_TRESHOLD_ODV),
48  m_minEffectiveSizeRatio (UQ_ML_SAMPLING_L_MIN_EFFECTIVE_SIZE_RATIO_ODV),
49  m_maxEffectiveSizeRatio (UQ_ML_SAMPLING_L_MAX_EFFECTIVE_SIZE_RATIO_ODV),
50  m_scaleCovMatrix (UQ_ML_SAMPLING_L_SCALE_COV_MATRIX_ODV),
51  m_minRejectionRate (UQ_ML_SAMPLING_L_MIN_REJECTION_RATE_ODV),
52  m_maxRejectionRate (UQ_ML_SAMPLING_L_MAX_REJECTION_RATE_ODV),
53  m_covRejectionRate (UQ_ML_SAMPLING_L_COV_REJECTION_RATE_ODV),
54  m_minAcceptableEta (UQ_ML_SAMPLING_L_MIN_ACCEPTABLE_ETA_ODV), // gpmsa1
55  m_totallyMute (UQ_ML_SAMPLING_L_TOTALLY_MUTE_ODV),
56  m_initialPositionDataInputFileName (UQ_ML_SAMPLING_L_INITIAL_POSITION_DATA_INPUT_FILE_NAME_ODV),
57  m_initialPositionDataInputFileType (UQ_ML_SAMPLING_L_INITIAL_POSITION_DATA_INPUT_FILE_TYPE_ODV),
58  m_initialProposalCovMatrixDataInputFileName(UQ_ML_SAMPLING_L_INITIAL_PROPOSAL_COV_MATRIX_DATA_INPUT_FILE_NAME_ODV),
59  m_initialProposalCovMatrixDataInputFileType(UQ_ML_SAMPLING_L_INITIAL_PROPOSAL_COV_MATRIX_DATA_INPUT_FILE_TYPE_ODV),
60  m_initialPositionUsePreviousLevelLikelihood(UQ_ML_SAMPLING_L_INITIAL_POSITION_USE_PREVIOUS_LEVEL_LIKELIHOOD_ODV), // ml_likelihood_caching
61  //m_parameterDisabledSet (), // gpmsa2
62  m_str2 (""),
63  m_initialValuesOfDisabledParameters (0),
64  m_str3 (""),
65  m_rawChainDataInputFileName (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_INPUT_FILE_NAME_ODV),
66  m_rawChainDataInputFileType (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_INPUT_FILE_TYPE_ODV),
67  m_rawChainSize (UQ_ML_SAMPLING_L_RAW_CHAIN_SIZE_ODV),
68  m_rawChainGenerateExtra (UQ_ML_SAMPLING_L_RAW_CHAIN_GENERATE_EXTRA_ODV),
69  m_rawChainDisplayPeriod (UQ_ML_SAMPLING_L_RAW_CHAIN_DISPLAY_PERIOD_ODV),
70  m_rawChainMeasureRunTimes (UQ_ML_SAMPLING_L_RAW_CHAIN_MEASURE_RUN_TIMES_ODV),
71  m_rawChainDataOutputPeriod (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_PERIOD_ODV),
72  m_rawChainDataOutputFileName (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_FILE_NAME_ODV),
73  m_rawChainDataOutputFileType (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_FILE_TYPE_ODV),
74  m_rawChainDataOutputAllowAll (UQ_ML_SAMPLING_L_RAW_CHAIN_DATA_OUTPUT_ALLOW_ALL_ODV),
75  //m_rawChainDataOutputAllowedSet (),
76  m_str4 (""),
77 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
78  m_rawChainComputeStats (UQ_ML_SAMPLING_L_RAW_CHAIN_COMPUTE_STATS_ODV),
79  m_rawChainStatisticalOptionsObj (NULL),
80  m_rawChainStatOptsInstantiated (false),
81 #endif
82  m_filteredChainGenerate (UQ_ML_SAMPLING_L_FILTERED_CHAIN_GENERATE_ODV),
83  m_filteredChainDiscardedPortion (UQ_ML_SAMPLING_L_FILTERED_CHAIN_DISCARDED_PORTION_ODV),
84  m_filteredChainLag (UQ_ML_SAMPLING_L_FILTERED_CHAIN_LAG_ODV),
85  m_filteredChainDataOutputFileName (UQ_ML_SAMPLING_L_FILTERED_CHAIN_DATA_OUTPUT_FILE_NAME_ODV),
86  m_filteredChainDataOutputFileType (UQ_ML_SAMPLING_L_FILTERED_CHAIN_DATA_OUTPUT_FILE_TYPE_ODV),
87  m_filteredChainDataOutputAllowAll (UQ_ML_SAMPLING_L_FILTERED_CHAIN_DATA_OUTPUT_ALLOW_ALL_ODV),
88  //m_filteredChainDataOutputAllowedSet (),
89  m_str5 (""),
90 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
91  m_filteredChainComputeStats (UQ_ML_SAMPLING_L_FILTERED_CHAIN_COMPUTE_STATS_ODV),
92  m_filteredChainStatisticalOptionsObj (NULL),
93  m_filteredChainStatOptsInstantiated (false),
94 #endif
95  m_displayCandidates (UQ_ML_SAMPLING_L_DISPLAY_CANDIDATES_ODV),
96  m_putOutOfBoundsInChain (UQ_ML_SAMPLING_L_PUT_OUT_OF_BOUNDS_IN_CHAIN_ODV),
97  m_tkUseLocalHessian (UQ_ML_SAMPLING_L_TK_USE_LOCAL_HESSIAN_ODV),
98  m_tkUseNewtonComponent (UQ_ML_SAMPLING_L_TK_USE_NEWTON_COMPONENT_ODV),
99  m_drMaxNumExtraStages (UQ_ML_SAMPLING_L_DR_MAX_NUM_EXTRA_STAGES_ODV),
100  m_drScalesForExtraStages (0),
101  m_str6 ("1. "),
102  m_drDuringAmNonAdaptiveInt (UQ_ML_SAMPLING_L_DR_DURING_AM_NON_ADAPTIVE_INT_ODV),
103  m_amKeepInitialMatrix (UQ_ML_SAMPLING_L_AM_KEEP_INITIAL_MATRIX_ODV),
104  m_amInitialNonAdaptInterval (UQ_ML_SAMPLING_L_AM_INIT_NON_ADAPT_INT_ODV),
105  m_amAdaptInterval (UQ_ML_SAMPLING_L_AM_ADAPT_INTERVAL_ODV),
106  m_amAdaptedMatricesDataOutputPeriod (UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_PERIOD_ODV),
107  m_amAdaptedMatricesDataOutputFileName (UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_FILE_NAME_ODV),
108  m_amAdaptedMatricesDataOutputFileType (UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_FILE_TYPE_ODV),
109  m_amAdaptedMatricesDataOutputAllowAll (UQ_ML_SAMPLING_L_AM_ADAPTED_MATRICES_DATA_OUTPUT_ALLOW_ALL_ODV),
110  //m_amAdaptedMatricesDataOutputAllowedSet (),
111  m_str7 (""),
112  m_amEta (UQ_ML_SAMPLING_L_AM_ETA_ODV),
113  m_amEpsilon (UQ_ML_SAMPLING_L_AM_EPSILON_ODV),
114  m_env (env),
115 #ifndef QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
116  m_parser(new BoostInputOptionsParser(env.optionsInputFileName())),
117 #endif // QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
118  m_option_help (m_prefix + "help" ),
119 #ifdef ML_CODE_HAS_NEW_RESTART_CAPABILITY
120 #else
121  m_option_checkpointOutputFileName (m_prefix + "checkpointOutputFileName" ),
122 #endif
123  m_option_stopAtEnd (m_prefix + "stopAtEnd" ),
124  m_option_dataOutputFileName (m_prefix + "dataOutputFileName" ),
125  m_option_dataOutputAllowAll (m_prefix + "dataOutputAllowAll" ),
126  m_option_dataOutputAllowedSet (m_prefix + "dataOutputAllowedSet" ),
127  m_option_loadBalanceAlgorithmId (m_prefix + "loadBalanceAlgorithmId" ),
128  m_option_loadBalanceTreshold (m_prefix + "loadBalanceTreshold" ),
129  m_option_minEffectiveSizeRatio (m_prefix + "minEffectiveSizeRatio" ),
130  m_option_maxEffectiveSizeRatio (m_prefix + "maxEffectiveSizeRatio" ),
131  m_option_scaleCovMatrix (m_prefix + "scaleCovMatrix" ),
132  m_option_minRejectionRate (m_prefix + "minRejectionRate" ),
133  m_option_maxRejectionRate (m_prefix + "maxRejectionRate" ),
134  m_option_covRejectionRate (m_prefix + "covRejectionRate" ),
135  m_option_minAcceptableEta (m_prefix + "minAcceptableEta" ), // gpmsa1
136  m_option_totallyMute (m_prefix + "totallyMute" ),
137  m_option_initialPosition_dataInputFileName (m_prefix + "initialPosition_dataInputFileName" ),
138  m_option_initialPosition_dataInputFileType (m_prefix + "initialPosition_dataInputFileType" ),
139  m_option_initialProposalCovMatrix_dataInputFileName(m_prefix + "initialProposalCovMatrix_dataInputFileName"),
140  m_option_initialProposalCovMatrix_dataInputFileType(m_prefix + "initialProposalCovMatrix_dataInputFileType"),
141  m_option_initialPositionUsePreviousLevelLikelihood (m_prefix + "initialPositionUsePreviousLevelLikelihood" ), // ml_likelihood_caching
142  m_option_listOfDisabledParameters (m_prefix + "listOfDisabledParameters" ), // gpmsa2
143  m_option_initialValuesOfDisabledParameters (m_prefix + "initialValuesOfDisabledParameters" ), // gpmsa2
144  m_option_rawChain_dataInputFileName (m_prefix + "rawChain_dataInputFileName" ),
145  m_option_rawChain_dataInputFileType (m_prefix + "rawChain_dataInputFileType" ),
146  m_option_rawChain_size (m_prefix + "rawChain_size" ),
147  m_option_rawChain_generateExtra (m_prefix + "rawChain_generateExtra" ),
148  m_option_rawChain_displayPeriod (m_prefix + "rawChain_displayPeriod" ),
149  m_option_rawChain_measureRunTimes (m_prefix + "rawChain_measureRunTimes" ),
150  m_option_rawChain_dataOutputPeriod (m_prefix + "rawChain_dataOutputPeriod" ),
151  m_option_rawChain_dataOutputFileName (m_prefix + "rawChain_dataOutputFileName" ),
152  m_option_rawChain_dataOutputFileType (m_prefix + "rawChain_dataOutputFileType" ),
153  m_option_rawChain_dataOutputAllowAll (m_prefix + "rawChain_dataOutputAllowAll" ),
154  m_option_rawChain_dataOutputAllowedSet (m_prefix + "rawChain_dataOutputAllowedSet" ),
155 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
156  m_option_rawChain_computeStats (m_prefix + "rawChain_computeStats" ),
157 #endif
158  m_option_filteredChain_generate (m_prefix + "filteredChain_generate" ),
159  m_option_filteredChain_discardedPortion (m_prefix + "filteredChain_discardedPortion" ),
160  m_option_filteredChain_lag (m_prefix + "filteredChain_lag" ),
161  m_option_filteredChain_dataOutputFileName (m_prefix + "filteredChain_dataOutputFileName" ),
162  m_option_filteredChain_dataOutputFileType (m_prefix + "filteredChain_dataOutputFileType" ),
163  m_option_filteredChain_dataOutputAllowAll (m_prefix + "filteredChain_dataOutputAllowAll" ),
164  m_option_filteredChain_dataOutputAllowedSet (m_prefix + "filteredChain_dataOutputAllowedSet" ),
165 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
166  m_option_filteredChain_computeStats (m_prefix + "filteredChain_computeStats" ),
167 #endif
168  m_option_displayCandidates (m_prefix + "displayCandidates" ),
169  m_option_putOutOfBoundsInChain (m_prefix + "putOutOfBoundsInChain" ),
170  m_option_tk_useLocalHessian (m_prefix + "tk_useLocalHessian" ),
171  m_option_tk_useNewtonComponent (m_prefix + "tk_useNewtonComponent" ),
172  m_option_dr_maxNumExtraStages (m_prefix + "dr_maxNumExtraStages" ),
173  m_option_dr_listOfScalesForExtraStages (m_prefix + "dr_listOfScalesForExtraStages" ),
174  m_option_dr_duringAmNonAdaptiveInt (m_prefix + "dr_duringAmNonAdaptiveInt" ),
175  m_option_am_keepInitialMatrix (m_prefix + "am_keepInitialMatrix" ),
176  m_option_am_initialNonAdaptInterval (m_prefix + "am_initialNonAdaptInterval" ),
177  m_option_am_adaptInterval (m_prefix + "am_adaptInterval" ),
178  m_option_am_adaptedMatrices_dataOutputPeriod (m_prefix + "amAdaptedMatrices_dataOutputPeriod" ),
179  m_option_am_adaptedMatrices_dataOutputFileName (m_prefix + "amAdaptedMatrices_dataOutputFileName" ),
180  m_option_am_adaptedMatrices_dataOutputFileType (m_prefix + "amAdaptedMatrices_dataOutputFileType" ),
181  m_option_am_adaptedMatrices_dataOutputAllowAll (m_prefix + "amAdaptedMatrices_dataOutputAllowAll" ),
182  m_option_am_adaptedMatrices_dataOutputAllowedSet (m_prefix + "amAdaptedMatrices_dataOutputAllowedSet" ),
183  m_option_am_eta (m_prefix + "am_eta" ),
184  m_option_am_epsilon (m_prefix + "am_epsilon" ),
185  m_option_doLogitTransform (m_prefix + "doLogitTransform" ),
186  m_option_algorithm (m_prefix + "algorithm" ),
187  m_option_tk (m_prefix + "tk" ),
188  m_option_updateInterval (m_prefix + "updateInterval" )
189 {
190 #ifndef QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
191  this->defineAllOptions();
193 #endif // QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
194  this->getAllOptions();
195 
196  checkOptions(&env);
197 }
198 
199 void
201 {
202 #ifndef QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
203  m_parser->registerOption<std::string >(m_option_help, UQ_ML_SAMPLING_L_HELP , "produce help message for Bayesian Markov chain distr. calculator");
204 #ifdef ML_CODE_HAS_NEW_RESTART_CAPABILITY
205 #else
206  m_parser->registerOption<std::string >(m_option_checkpointOutputFileName, m_checkpointOutputFileName , "name of checpoint output file" );
207 #endif
208  m_parser->registerOption<bool >(m_option_stopAtEnd, m_stopAtEnd , "stop at end of such level" );
209  m_parser->registerOption<std::string >(m_option_dataOutputFileName, m_dataOutputFileName , "name of generic output file" );
210  m_parser->registerOption<bool >(m_option_dataOutputAllowAll, m_dataOutputAllowAll , "subEnvs that will write to generic output file" );
211  m_parser->registerOption<std::string >(m_option_dataOutputAllowedSet, m_str1 , "subEnvs that will write to generic output file" );
212  m_parser->registerOption<unsigned int>(m_option_loadBalanceAlgorithmId, m_loadBalanceAlgorithmId , "Perform load balancing with chosen algorithm (0 = no balancing)" );
213  m_parser->registerOption<double >(m_option_loadBalanceTreshold, m_loadBalanceTreshold , "Perform load balancing if load unbalancing ratio > treshold" );
214  m_parser->registerOption<double >(m_option_minEffectiveSizeRatio, m_minEffectiveSizeRatio , "minimum allowed effective size ratio wrt previous level" );
215  m_parser->registerOption<double >(m_option_maxEffectiveSizeRatio, m_maxEffectiveSizeRatio , "maximum allowed effective size ratio wrt previous level" );
216  m_parser->registerOption<bool >(m_option_scaleCovMatrix, m_scaleCovMatrix , "scale proposal covariance matrix" );
217  m_parser->registerOption<double >(m_option_minRejectionRate, m_minRejectionRate , "minimum allowed attempted rejection rate at current level" );
218  m_parser->registerOption<double >(m_option_maxRejectionRate, m_maxRejectionRate , "maximum allowed attempted rejection rate at current level" );
219  m_parser->registerOption<double >(m_option_covRejectionRate, m_covRejectionRate , "c.o.v. for judging attempted rejection rate at current level" );
220  m_parser->registerOption<double >(m_option_minAcceptableEta, m_minAcceptableEta , "min acceptable eta" );
221  m_parser->registerOption<bool >(m_option_totallyMute, m_totallyMute , "totally mute (no printout message)" );
222  m_parser->registerOption<std::string >(m_option_initialPosition_dataInputFileName, m_initialPositionDataInputFileName , "name of input file for initial position" );
223  m_parser->registerOption<std::string >(m_option_initialPosition_dataInputFileType, m_initialPositionDataInputFileType , "type of input file for initial position" );
224  m_parser->registerOption<std::string >(m_option_initialProposalCovMatrix_dataInputFileName, m_initialProposalCovMatrixDataInputFileName, "name of input file for initial proposal covariance matrix" );
225  m_parser->registerOption<std::string >(m_option_initialProposalCovMatrix_dataInputFileType, m_initialProposalCovMatrixDataInputFileType, "type of input file for initial proposal covariance matrix" );
226  m_parser->registerOption<bool >(m_option_initialPositionUsePreviousLevelLikelihood, m_initialPositionUsePreviousLevelLikelihood, "use previous level likelihood for initial chain position instead of re-computing from target pdf");
227  m_parser->registerOption<std::string >(m_option_listOfDisabledParameters, m_str2 , "list of disabled parameters" ); // gpmsa2
228  m_parser->registerOption<std::string >(m_option_initialValuesOfDisabledParameters, m_str3 , "initial values of disabled parameters" ); // gpmsa2
229  m_parser->registerOption<std::string >(m_option_rawChain_dataInputFileName, m_rawChainDataInputFileName , "name of input file for raw chain " );
230  m_parser->registerOption<std::string >(m_option_rawChain_dataInputFileType, m_rawChainDataInputFileType , "type of input file for raw chain " );
231  m_parser->registerOption<unsigned int>(m_option_rawChain_size, m_rawChainSize , "size of raw chain" );
232  m_parser->registerOption<bool >(m_option_rawChain_generateExtra, m_rawChainGenerateExtra , "generate extra information about raw chain" );
233  m_parser->registerOption<unsigned int>(m_option_rawChain_displayPeriod, m_rawChainDisplayPeriod , "period of message display during raw chain generation" );
235  m_parser->registerOption<unsigned int>(m_option_rawChain_dataOutputPeriod, m_rawChainDataOutputPeriod , "period of message display during raw chain generation" );
236  m_parser->registerOption<std::string >(m_option_rawChain_dataOutputFileName, m_rawChainDataOutputFileName , "name of output file for raw chain " );
237  m_parser->registerOption<std::string >(m_option_rawChain_dataOutputFileType, m_rawChainDataOutputFileType , "type of output file for raw chain " );
238  m_parser->registerOption<bool >(m_option_rawChain_dataOutputAllowAll, m_rawChainDataOutputAllowAll , "subEnvs that will write to output file for raw chain" );
239  m_parser->registerOption<std::string >(m_option_rawChain_dataOutputAllowedSet, m_str4 , "subEnvs that will write to output file for raw chain" );
240 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
241  m_parser->registerOption<bool >(m_option_rawChain_computeStats, m_rawChainComputeStats , "compute statistics on raw chain" );
242 #endif
244  m_parser->registerOption<double >(m_option_filteredChain_discardedPortion, m_filteredChainDiscardedPortion , "initial discarded portion for chain filtering" );
245  m_parser->registerOption<unsigned int>(m_option_filteredChain_lag, m_filteredChainLag , "spacing for chain filtering" );
246  m_parser->registerOption<std::string >(m_option_filteredChain_dataOutputFileName, m_filteredChainDataOutputFileName , "name of output file for filtered chain" );
247  m_parser->registerOption<std::string >(m_option_filteredChain_dataOutputFileType, m_filteredChainDataOutputFileType , "type of output file for filtered chain" );
248  m_parser->registerOption<bool >(m_option_filteredChain_dataOutputAllowAll, m_filteredChainDataOutputAllowAll , "subEnvs that will write to output file for filtered chain" );
249  m_parser->registerOption<std::string >(m_option_filteredChain_dataOutputAllowedSet, m_str5 , "subEnvs that will write to output file for filtered chain" );
250 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
251  m_parser->registerOption<bool >(m_option_filteredChain_computeStats, m_filteredChainComputeStats , "compute statistics on filtered chain" );
252 #endif
253  m_parser->registerOption<bool >(m_option_displayCandidates, m_displayCandidates , "display candidates generated in the core MH algorithm" );
254  m_parser->registerOption<bool >(m_option_putOutOfBoundsInChain, m_putOutOfBoundsInChain , "put 'out of bound' candidates in chain as well" );
255  m_parser->registerOption<bool >(m_option_tk_useLocalHessian, m_tkUseLocalHessian , "'proposal' use local Hessian" );
256  m_parser->registerOption<bool >(m_option_tk_useNewtonComponent, m_tkUseNewtonComponent , "'proposal' use Newton component" );
257  m_parser->registerOption<unsigned int>(m_option_dr_maxNumExtraStages, m_drMaxNumExtraStages , "'dr' maximum number of extra stages" );
258  m_parser->registerOption<std::string >(m_option_dr_listOfScalesForExtraStages, m_str6 , "'dr' list of scales for proposal cov matrices from 2nd stage on" );
259  m_parser->registerOption<bool >(m_option_dr_duringAmNonAdaptiveInt, m_drDuringAmNonAdaptiveInt , "'dr' used during 'am' non adaptive interval" );
260  m_parser->registerOption<bool >(m_option_am_keepInitialMatrix, m_amKeepInitialMatrix , "'am' keep initial (given) matrix" );
261  m_parser->registerOption<unsigned int>(m_option_am_initialNonAdaptInterval, m_amInitialNonAdaptInterval , "'am' initial non adaptation interval" );
262  m_parser->registerOption<unsigned int>(m_option_am_adaptInterval, m_amAdaptInterval , "'am' adaptation interval" );
263  m_parser->registerOption<unsigned int>(m_option_am_adaptedMatrices_dataOutputPeriod, m_amAdaptedMatricesDataOutputPeriod , "period for outputing 'am' adapted matrices" );
264  m_parser->registerOption<std::string >(m_option_am_adaptedMatrices_dataOutputFileName, m_amAdaptedMatricesDataOutputFileName , "name of output file for 'am' adapted matrices" );
265  m_parser->registerOption<std::string >(m_option_am_adaptedMatrices_dataOutputFileType, m_amAdaptedMatricesDataOutputFileType , "type of output file for 'am' adapted matrices" );
266  m_parser->registerOption<bool >(m_option_am_adaptedMatrices_dataOutputAllowAll, m_amAdaptedMatricesDataOutputAllowAll , "type of output file for 'am' adapted matrices" );
267  m_parser->registerOption<std::string >(m_option_am_adaptedMatrices_dataOutputAllowedSet, m_str7 , "type of output file for 'am' adapted matrices" );
268  m_parser->registerOption<double >(m_option_am_eta, m_amEta , "'am' eta" );
269  m_parser->registerOption<double >(m_option_am_epsilon, m_amEpsilon , "'am' epsilon" );
270  m_parser->registerOption<bool >(m_option_doLogitTransform, UQ_ML_SAMPLING_L_DO_LOGIT_TRANSFORM , "flag for doing logit transform for bounded domains" );
271  m_parser->registerOption<std::string >(m_option_algorithm, UQ_ML_SAMPLING_L_ALGORITHM , "which algorithm to use for sampling" );
272  m_parser->registerOption<std::string >(m_option_tk, UQ_ML_SAMPLING_L_TK , "which transition kernel to use for sampling" );
273  m_parser->registerOption<unsigned int>(m_option_updateInterval, UQ_ML_SAMPLING_L_UPDATE_INTERVAL , "how often to call TK's updateTK method" );
274 #endif // QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
275 }
276 
277 void
279 {
280 #ifndef QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
281  m_parser->getOption<std::string >(m_option_help, m_help);
282 #ifdef ML_CODE_HAS_NEW_RESTART_CAPABILITY
283 #else
285 #endif
305  m_parser->getOption<std::set<unsigned int> >(m_option_listOfDisabledParameters, m_parameterDisabledSet); // gpmsa2
318 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
320 #endif
328 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
330 #endif
350  m_parser->getOption<std::string >(m_option_tk, m_tk);
352 #else
353  m_help = m_env.input()(m_option_help, UQ_ML_SAMPLING_L_HELP );
354 #ifdef ML_CODE_HAS_NEW_RESTART_CAPABILITY
355 #else
357 #endif
361 
362  // Is the empty set (string) by default
363  unsigned int size = m_env.input().vector_variable_size(m_option_dataOutputAllowedSet);
364  for (unsigned int i = 0; i < size; i++) {
365  // We default to empty set, so the default values are actually never
366  // used here
367  unsigned int allowed = m_env.input()(m_option_dataOutputAllowedSet, i, i);
368  m_dataOutputAllowedSet.insert(allowed);
369  }
370 
386 
387  // Is the empty set (string) by default
388  size = m_env.input().vector_variable_size(m_option_listOfDisabledParameters);
389  for (unsigned int i = 0; i < size; i++) {
390  // We default to empty set, so the default values are actually never
391  // used here
392  unsigned int allowed = m_env.input()(m_option_listOfDisabledParameters, i, i);
393  m_parameterDisabledSet.insert(allowed);
394  }
395 
396  // Is the empty set (string) by default
397  size = m_env.input().vector_variable_size(m_option_initialValuesOfDisabledParameters);
398  for (unsigned int i = 0; i < size; i++) {
399  // We default to empty set, so the default values are actually never
400  // used here
401  unsigned int value = m_env.input()(m_option_initialValuesOfDisabledParameters, i, i);
402  m_initialValuesOfDisabledParameters.push_back(value);
403  }
404 
415 
416  // Is the empty set (string) by default
417  size = m_env.input().vector_variable_size(m_option_rawChain_dataOutputAllowedSet);
418  for (unsigned int i = 0; i < size; i++) {
419  // We default to empty set, so the default values are actually never
420  // used here
421  unsigned int allowed = m_env.input()(m_option_rawChain_dataOutputAllowedSet, i, i);
422  m_rawChainDataOutputAllowedSet.insert(allowed);
423  }
424 
425 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
427 #endif
434 
435  // Is the empty set (string) by default
436  size = m_env.input().vector_variable_size(m_option_filteredChain_dataOutputAllowedSet);
437  for (unsigned int i = 0; i < size; i++) {
438  // We default to empty set, so the default values are actually never
439  // used here
440  unsigned int allowed = m_env.input()(m_option_filteredChain_dataOutputAllowedSet, i, i);
441  m_filteredChainDataOutputAllowedSet.insert(allowed);
442  }
443 
444 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
446 #endif
452 
453  // Is the empty set (string) by default
454  size = m_env.input().vector_variable_size(m_option_dr_listOfScalesForExtraStages);
455 
456  m_drScalesForExtraStages.clear();
457  for (unsigned int i = 0; i < size; i++) {
458  unsigned int value = m_env.input()(m_option_dr_listOfScalesForExtraStages, i, i);
459  m_drScalesForExtraStages.push_back(value);
460  }
461 
470 
471  size = m_env.input().vector_variable_size(m_option_am_adaptedMatrices_dataOutputAllowedSet);
472  for (unsigned int i = 0; i < size; i++) {
473  // We default to empty set, so the default values are actually never
474  // used here
475  unsigned int allowed = m_env.input()(m_option_am_adaptedMatrices_dataOutputAllowedSet, i, i);
477  }
478 
481  m_doLogitTransform = m_env.input()(m_option_doLogitTransform, UQ_ML_SAMPLING_L_DO_LOGIT_TRANSFORM );
482  m_algorithm = m_env.input()(m_option_algorithm, UQ_ML_SAMPLING_L_ALGORITHM );
483  m_tk = m_env.input()(m_option_tk, UQ_ML_SAMPLING_L_TK );
484  m_updateInterval = m_env.input()(m_option_updateInterval, UQ_ML_SAMPLING_L_UPDATE_INTERVAL );
485 #endif // QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
486 }
487 
488 void
490 {
491 #ifdef ML_CODE_HAS_NEW_RESTART_CAPABILITY
492 #else
494 #endif
495  m_stopAtEnd = srcOptions.m_stopAtEnd;
499  m_str1 = srcOptions.m_str1;
504  m_scaleCovMatrix = srcOptions.m_scaleCovMatrix;
508  m_minAcceptableEta = srcOptions.m_minAcceptableEta; // gpmsa1
509  m_totallyMute = srcOptions.m_totallyMute;
515  m_parameterDisabledSet = srcOptions.m_parameterDisabledSet; // gpmsa2
516  m_str2 = srcOptions.m_str2; // gpmsa2
518  m_str3 = srcOptions.m_str3;
521  m_rawChainSize = srcOptions.m_rawChainSize;
522 //std::cout << "In copy(), rawChainSize = " << m_rawChainSize << std::endl;
531  m_str4 = srcOptions.m_str4;
532 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
534  m_rawChainStatisticalOptionsObj = NULL; // Yes, 'NULL'
536 #endif
544  m_str5 = srcOptions.m_str5;
545 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
547  m_filteredChainStatisticalOptionsObj = NULL; // Yes, 'NULL'
549 #endif
556  m_str6 = srcOptions.m_str6;
566  m_str7 = srcOptions.m_str7;
567  m_amEta = srcOptions.m_amEta;
568  m_amEpsilon = srcOptions.m_amEpsilon;
570  m_algorithm = srcOptions.m_algorithm;
571  m_tk = srcOptions.m_tk;
572  m_updateInterval = srcOptions.m_updateInterval;
573 
574  return;
575 }
576 
578 {
579  //std::cout << "In MLSamplingLevelOptions::destructor()"
580  // << ": m_filteredChainStatOptsInstantiated = " << m_filteredChainStatOptsInstantiated
581  // << ", m_rawChainStatOptsInstantiated = " << m_rawChainStatOptsInstantiated
582  // << std::endl;
583  //sleep(1);
584 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
587 #endif
588 }
589 
590 void
592 {
593  queso_deprecated();
594 
595  // FIXME
596  if (defaultOptions) this->copyOptionsValues(*defaultOptions);
597 
598 #ifndef QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
599  // Replace the parser since default values changed
600  if (m_parser) {
601  delete m_parser;
603  }
604 
605  // FIXME: Does this work with GetPot?
606  this->defineAllOptions();
608 #endif // QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
609  this->getAllOptions();
610 
611 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
615  }
619  }
620 #endif
621 }
622 
623 void
625 {
626  char tmpStr[64];
627 
628  // DM: Print here because I don't know where the class is instantiated
629  if (m_help != "") {
630  if (m_env.subDisplayFile()) {
631  *m_env.subDisplayFile() << (*this) << std::endl;
632  }
633  }
634 
635  if (m_dataOutputAllowAll) {
636  m_dataOutputAllowedSet.clear();
638  }
639 
640  // DM: Not sure what this is for
641  m_str1.clear();
642  for (std::set<unsigned int>::iterator setIt = m_dataOutputAllowedSet.begin(); setIt != m_dataOutputAllowedSet.end(); ++setIt) {
643  sprintf(tmpStr,"%d",(int)(*setIt));
644  m_str1 += tmpStr;
645  m_str1 += " ";
646  }
647 
648  queso_require_less_msg(m_minEffectiveSizeRatio, 1.0, "option `" << m_option_minEffectiveSizeRatio << "` must be less than 1.0");
649  queso_require_less_msg(m_maxEffectiveSizeRatio, 1.0, "option `" << m_option_maxEffectiveSizeRatio << "` must be less than 1.0");
650  queso_require_less_msg(m_minRejectionRate, 1.0, "option `" << m_option_minRejectionRate << "` must be less than 1.0");
651  queso_require_less_msg(m_maxRejectionRate, 1.0, "option `" << m_option_maxRejectionRate << "` must be less than 1.0");
652  queso_require_less_msg(m_covRejectionRate, 1.0, "option `" << m_option_covRejectionRate << "` must be less than 1.0");
653 
654  // DM: Not sure what this is for
655  m_str2.clear();
656  for (std::set<unsigned int>::iterator setIt = m_parameterDisabledSet.begin(); setIt != m_parameterDisabledSet.end(); ++setIt) { // gpmsa2
657  sprintf(tmpStr,"%d",(int)(*setIt));
658  m_str2 += tmpStr;
659  m_str2 += " ";
660  }
661 
662  // DM: Not sure what this is for
663  m_str3.clear();
664  for (unsigned int i = 0; i < m_initialValuesOfDisabledParameters.size(); ++i) {
665  sprintf(tmpStr,"%e",m_initialValuesOfDisabledParameters[i]);
666  m_str3 += tmpStr;
667  m_str3 += " ";
668  }
669 
673  }
674 
675  // DM: Not sure what this is for
676  m_str4.clear();
677  for (std::set<unsigned int>::iterator setIt = m_rawChainDataOutputAllowedSet.begin(); setIt != m_rawChainDataOutputAllowedSet.end(); ++setIt) {
678  sprintf(tmpStr,"%d",(int)(*setIt));
679  m_str4 += tmpStr;
680  m_str4 += " ";
681  }
682 
683  if (m_filteredChainGenerate == true) {
684  queso_require_greater_equal_msg(m_filteredChainLag, 2, "option `" << m_option_filteredChain_lag << "` must be at least 2");
685  }
686 
690  }
691 
692  // DM: Not sure what this is for
693  m_str5.clear();
694  for (std::set<unsigned int>::iterator setIt = m_filteredChainDataOutputAllowedSet.begin(); setIt != m_filteredChainDataOutputAllowedSet.end(); ++setIt) {
695  sprintf(tmpStr,"%d",(int)(*setIt));
696  m_str5 += tmpStr;
697  m_str5 += " ";
698  }
699 
700  if (m_drMaxNumExtraStages > 0) {
701  unsigned int size = m_drScalesForExtraStages.size();
702 
703  // If we asked more stages than scales provided, pad with ones
704  if (m_drMaxNumExtraStages > size) {
705  for (unsigned int i = size; i < m_drMaxNumExtraStages; i++) {
706  double scale = 1.0;
707  m_drScalesForExtraStages.push_back(scale);
708  }
709  }
710  }
711 
712  // DM: Not sure what this is for
713  m_str6.clear();
714  for (unsigned int i = 0; i < m_drScalesForExtraStages.size(); ++i) {
715  sprintf(tmpStr,"%e",m_drScalesForExtraStages[i]);
716  m_str6 += tmpStr;
717  m_str6 += " ";
718  }
719 
723  }
724 
725  // DM: Not sure what this is for
726  m_str7.clear();
727  for (std::set<unsigned int>::iterator setIt = m_amAdaptedMatricesDataOutputAllowedSet.begin(); setIt != m_amAdaptedMatricesDataOutputAllowedSet.end(); ++setIt) {
728  sprintf(tmpStr,"%d",(int)(*setIt));
729  m_str7 += tmpStr;
730  m_str7 += " ";
731  }
732 }
733 
734 void
735 MLSamplingLevelOptions::print(std::ostream& os) const
736 {
737  os << "m_prefix" << " = " << m_prefix
738 #ifdef ML_CODE_HAS_NEW_RESTART_CAPABILITY
739 #else
741 #endif
742  << "\n" << m_option_stopAtEnd << " = " << m_stopAtEnd
745  << "\n" << m_option_dataOutputAllowedSet << " = ";
746  for (std::set<unsigned int>::iterator setIt = m_dataOutputAllowedSet.begin(); setIt != m_dataOutputAllowedSet.end(); ++setIt) {
747  os << *setIt << " ";
748  }
753  << "\n" << m_option_scaleCovMatrix << " = " << m_scaleCovMatrix
754  << "\n" << m_option_minRejectionRate << " = " << m_minRejectionRate
755  << "\n" << m_option_maxRejectionRate << " = " << m_maxRejectionRate
756  << "\n" << m_option_covRejectionRate << " = " << m_covRejectionRate
757  << "\n" << m_option_minAcceptableEta << " = " << m_minAcceptableEta // gpmsa1
758  << "\n" << m_option_totallyMute << " = " << m_totallyMute
764  << "\n" << m_option_listOfDisabledParameters << " = "; // gpmsa2
765  for (std::set<unsigned int>::iterator setIt = m_parameterDisabledSet.begin(); setIt != m_parameterDisabledSet.end(); ++setIt) {
766  os << *setIt << " ";
767  }
768  os << "\n" << m_option_initialValuesOfDisabledParameters << " = "; // gpmsa2
769  for (unsigned int i = 0; i < m_initialValuesOfDisabledParameters.size(); ++i) {
770  os << m_initialValuesOfDisabledParameters[i] << " ";
771  }
774  << "\n" << m_option_rawChain_size << " = " << m_rawChainSize
782  << "\n" << m_option_rawChain_dataOutputAllowedSet << " = ";
783  for (std::set<unsigned int>::iterator setIt = m_rawChainDataOutputAllowedSet.begin(); setIt != m_rawChainDataOutputAllowedSet.end(); ++setIt) {
784  os << *setIt << " ";
785  }
786  os
787 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
789 #endif
792  << "\n" << m_option_filteredChain_lag << " = " << m_filteredChainLag
797  for (std::set<unsigned int>::iterator setIt = m_filteredChainDataOutputAllowedSet.begin(); setIt != m_filteredChainDataOutputAllowedSet.end(); ++setIt) {
798  os << *setIt << " ";
799  }
800  os
801 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
803 #endif
804  << "\n" << m_option_displayCandidates << " = " << m_displayCandidates
806  << "\n" << m_option_tk_useLocalHessian << " = " << m_tkUseLocalHessian
809  << "\n" << m_option_dr_listOfScalesForExtraStages << " = ";
810  for (unsigned int i = 0; i < m_drScalesForExtraStages.size(); ++i) {
811  os << m_drScalesForExtraStages[i] << " ";
812  }
816  << "\n" << m_option_am_adaptInterval << " = " << m_amAdaptInterval
822  for (std::set<unsigned int>::iterator setIt = m_amAdaptedMatricesDataOutputAllowedSet.begin(); setIt != m_amAdaptedMatricesDataOutputAllowedSet.end(); ++setIt) {
823  os << *setIt << " ";
824  }
825  os << "\n" << m_option_am_eta << " = " << m_amEta
826  << "\n" << m_option_am_epsilon << " = " << m_amEpsilon
827  << "\n" << m_option_doLogitTransform << " = " << m_doLogitTransform
828  << "\n" << m_option_algorithm << " = " << m_algorithm
829  << "\n" << m_option_tk << " = " << m_tk
830  << "\n" << m_option_updateInterval << " = " << m_updateInterval
831  << std::endl;
832 
833  return;
834 }
835 
836 const BaseEnvironment&
838 {
839  return m_env;
840 }
841 
842 std::ostream& operator<<(std::ostream& os, const MLSamplingLevelOptions& obj)
843 {
844 #ifndef QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
845  os << (*(obj.m_parser)) << std::endl;
846 #endif // QUESO_DISABLE_BOOST_PROGRAM_OPTIONS
847  obj.print(os);
848  return os;
849 }
850 
851 } // End namespace QUESO
unsigned int m_rawChainDataOutputPeriod
Period of message display during raw chain generation.
SequenceStatisticalOptions * m_filteredChainStatisticalOptionsObj
std::string m_amAdaptedMatricesDataOutputFileName
Name of output file for &#39;am&#39; adapted matrices.
bool m_rawChainComputeStats
Compute statistics on raw chain.
void checkOptions(const BaseEnvironment *env)
bool m_filteredChainGenerate
Whether or not to generate filtered chain.
unsigned int m_drMaxNumExtraStages
&#39;dr&#39; maximum number of extra stages.
bool m_rawChainDataOutputAllowAll
Whether or not subEnvs will write to output file for raw chain.
std::string m_algorithm
Which algorithm to use for sampling.
double m_minAcceptableEta
minimum acceptable eta,
unsigned int subId() const
Access function to the number of each sub-environment Id: m_subId.
Definition: Environment.C:342
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_initialProposalCovMatrix_dataInputFileName
std::vector< double > m_initialValuesOfDisabledParameters
std::string m_rawChainDataInputFileName
Name of input file for raw chain.
bool m_displayCandidates
Display candidates generated in the core MH algorithm.
bool m_amAdaptedMatricesDataOutputAllowAll
Whether or not subEnvs will write to output file for &#39;am&#39; adapted matrices.
std::string m_str1
subEnvs that will write to generic output file.
This (virtual) class sets up the environment underlying the use of the QUESO library by an executable...
Definition: Environment.h:198
A templated class that stores statistical options (optionally read from an input file) ...
void getOption(const std::string &name, T &value) const
Get option name from the parser and set value to the parsed value.
std::string m_initialPositionDataInputFileName
Name of input file for initial position.
std::string m_initialProposalCovMatrixDataInputFileName
Name of input file for initial proposal covariance matrix.
void scanOptionsValues(const MLSamplingLevelOptions *defaultOptions)
unsigned int m_loadBalanceAlgorithmId
Perform load balancing with chosen algorithm (0 = no balancing).
bool m_scaleCovMatrix
Whether or not scale proposal covariance matrix.
unsigned int m_rawChainSize
Size of raw chain.
std::ostream & operator<<(std::ostream &os, const SequenceStatisticalOptions &obj)
const GetPot & input() const
The GetPot input file parser.
Definition: Environment.C:1149
double m_maxEffectiveSizeRatio
Maximum allowed effective size ratio wrt previous level.
std::string m_rawChainDataOutputFileType
Type of output file for raw chain.
double m_amEta
&#39;am&#39; eta.
std::string optionsInputFileName() const
Access to the attribute m_optionsInputFileName, which stores the name of the input file passed by the...
Definition: Environment.C:354
bool m_rawChainGenerateExtra
Generate extra information about raw chain.
std::string m_initialPositionDataInputFileType
Type of input file for initial position.
void registerOption(const std::string &name, const T &defaultValue, const std::string &description)
Call this to register an option with the parser.
bool m_doLogitTransform
Whether or not a logit transform will be done for bounded domains.
std::string m_option_am_adaptedMatrices_dataOutputFileType
std::string m_option_initialProposalCovMatrix_dataInputFileType
std::string m_option_am_adaptedMatrices_dataOutputAllowedSet
double m_minEffectiveSizeRatio
Minimum allowed effective size ratio wrt previous level.
bool m_putOutOfBoundsInChain
Put &#39;out of bound&#39; candidates in chain as well.
unsigned int m_amInitialNonAdaptInterval
&#39;am&#39; initial non adaptation interval
double m_minRejectionRate
minimum allowed attempted rejection rate at current level
std::string m_option_am_adaptedMatrices_dataOutputFileName
unsigned int m_filteredChainLag
Spacing for chain filtering.
unsigned int m_amAdaptInterval
&#39;am&#39; adaptation interval.
void scanInputFile()
This is the method that parses the input file.
void copyOptionsValues(const MLSamplingLevelOptions &srcOptions)
Copies the option values from srcOptions to this.
std::string m_option_rawChain_dataOutputFileType
Option name for MLSamplingLevelOptions::m_rawChainDataOutputFileType. Option name is m_prefix + &quot;ml_r...
std::string m_filteredChainDataOutputFileName
Name of output file for filtered chain.
void print(std::ostream &os) const
std::string m_rawChainDataOutputFileName
Name of output file for raw chain.
std::string m_tk
Which transition kernel to use for sampling.
double m_maxRejectionRate
maximum allowed attempted rejection rate at current level.
double m_loadBalanceTreshold
Perform load balancing if load unbalancing ratio &gt; threshold.
std::set< unsigned int > m_dataOutputAllowedSet
subEnvs that will write to generic output file.
std::string m_dataOutputFileName
Name of generic output file.
unsigned int m_updateInterval
How often to call the TK&#39;s updateTK method.
unsigned int m_rawChainDisplayPeriod
Period of message display during raw chain generation.
BoostInputOptionsParser * m_parser
bool m_stopAtEnd
Stop at end of such level.
bool m_dataOutputAllowAll
subEnvs that will write to generic output file.
bool m_tkUseNewtonComponent
Whether or not &#39;proposal&#39; uses Newton component.
SequenceStatisticalOptions * m_rawChainStatisticalOptionsObj
const BaseEnvironment & env() const
Access to the environment.
This class provides options for each level of the Multilevel sequence generator if no input file is a...
std::string m_initialProposalCovMatrixDataInputFileType
Type of input file for initial proposal covariance matrix.
std::string m_option_am_adaptedMatrices_dataOutputAllowAll
bool m_filteredChainComputeStats
Compute statistics on filtered chain.
bool m_tkUseLocalHessian
Whether or not &#39;proposal&#39; uses local Hessian.
double m_covRejectionRate
c.o.v. for judging attempted rejection rate at current level.
std::string m_amAdaptedMatricesDataOutputFileType
Type of output file for &#39;am&#39; adapted matrices.
MLSamplingLevelOptions(const BaseEnvironment &env, const char *prefix)
Constructor: reads options from the input file.
bool m_filteredChainDataOutputAllowAll
Whether or not subEnvs will write to output file for filtered chain.
std::set< unsigned int > m_rawChainDataOutputAllowedSet
subEnvs that will write to output file for raw chain.
std::string m_rawChainDataInputFileType
Type of input file for raw chain.
std::string m_checkpointOutputFileName
Name of checkpoint output file.
bool m_drDuringAmNonAdaptiveInt
Whether or not &#39;dr&#39; is used during &#39;am&#39; non adaptive interval.
bool m_amKeepInitialMatrix
Whether or not &#39;am&#39; will keep initial (given) matrix.
std::string m_help
If non-empty string, print options and values to output file.
virtual ~MLSamplingLevelOptions()
Destructor.
double m_filteredChainDiscardedPortion
Initial discarded portion for chain filtering.
std::vector< double > m_drScalesForExtraStages
&#39;dr&#39; list of scales for proposal covariance matrices from 2nd stage on.
std::set< unsigned int > m_parameterDisabledSet
std::set< unsigned int > m_filteredChainDataOutputAllowedSet
subEnvs that will write to output file for filtered chain.
std::string m_filteredChainDataOutputFileType
Type of output file for filtered chain.
double m_amEpsilon
&#39;am&#39; epsilon.
bool m_initialPositionUsePreviousLevelLikelihood
Use previous level likelihood for initial chain position instead of re-computing it from target pdf...
std::ofstream * subDisplayFile() const
Access function for m_subDisplayFile (displays file on stream).
Definition: Environment.C:320
bool m_rawChainMeasureRunTimes
Whether or not to measure run times.
unsigned int m_amAdaptedMatricesDataOutputPeriod
Period for outputing &#39;am&#39; adapted matrices.

Generated on Tue Jun 5 2018 19:48:56 for queso-0.57.1 by  doxygen 1.8.5