queso-0.56.0
GpmsaComputerModelOptions.h
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 #ifndef UQ_GCM_OPTIONS_H
26 #define UQ_GCM_OPTIONS_H
27 
28 #include <queso/Environment.h>
29 
30 #ifndef DISABLE_BOOST_PROGRAM_OPTIONS
31 #include <queso/BoostInputOptionsParser.h>
32 #endif // DISABLE_BOOST_PROGRAM_OPTIONS
33 
34 #include <queso/SequenceStatisticalOptions.h>
35 
36 #define UQ_GCM_FILENAME_FOR_NO_FILE "."
37 
38 // _ODV = option default value
39 #define UQ_GCM_COMPUTE_SOLUTION_ODV 1
40 #define UQ_GCM_CHECK_AGAINST_PREVIOUS_SAMPLE_ODV 1
41 #define UQ_GCM_DATA_OUTPUT_FILE_NAME_ODV UQ_GCM_FILENAME_FOR_NO_FILE
42 #define UQ_GCM_DATA_OUTPUT_ALLOW_ALL_ODV 0
43 #define UQ_GCM_DATA_OUTPUT_ALLOWED_SET_ODV ""
44 #define UQ_GCM_PRIOR_SEQ_NUM_SAMPLES_ODV 0
45 #define UQ_GCM_PRIOR_SEQ_DATA_OUTPUT_FILE_NAME_ODV UQ_GCM_FILENAME_FOR_NO_FILE
46 #define UQ_GCM_PRIOR_SEQ_DATA_OUTPUT_FILE_TYPE_ODV "m"
47 #define UQ_GCM_PRIOR_SEQ_DATA_OUTPUT_ALLOW_ALL_ODV 0
48 #define UQ_GCM_PRIOR_SEQ_DATA_OUTPUT_ALLOWED_SET_ODV ""
49 #define UQ_GCM_NUGGET_VALUE_FOR_BT_WY_B_ODV 0.
50 #define UQ_GCM_NUGGET_VALUE_FOR_BT_WY_B_INV_ODV 0.
51 #define UQ_GCM_FORM_C_MATRIX_ODV 0
52 #define UQ_GCM_USE_TILDE_LOGIC_FOR_RANK_DEFFICIENT_C_ODV 0
53 #define UQ_GCM_PRED_LAG_ODV 1
54 #define UQ_GCM_PRED_VUS_BY_SAMPLING_RVS_ODV 0
55 #define UQ_GCM_PRED_VUS_BY_SUMMING_RVS_ODV 1
56 #define UQ_GCM_PRED_VUS_AT_KEY_POINTS_ODV 0
57 #define UQ_GCM_PRED_WS_BY_SAMPLING_RVS_ODV 0
58 #define UQ_GCM_PRED_WS_BY_SUMMING_RVS_ODV 1
59 #define UQ_GCM_PRED_WS_AT_KEY_POINTS_ODV 0
60 
61 #ifndef DISABLE_BOOST_PROGRAM_OPTIONS
62 namespace boost {
63  namespace program_options {
64  class options_description;
65  }
66 }
67 #endif // DISABLE_BOOST_PROGRAM_OPTIONS
68 
69 namespace QUESO {
70 
72 {
73 public:
75  GcmOptionsValues(const BaseEnvironment * env, const char * prefix);
78  virtual ~GcmOptionsValues ();
79 
80  std::string m_prefix;
81 
83  std::string m_dataOutputFileName;
85  std::set<unsigned int> m_dataOutputAllowedSet;
86  unsigned int m_priorSeqNumSamples;
90  std::set<unsigned int> m_priorSeqDataOutputAllowedSet;
93  double m_formCMatrix;
95  unsigned int m_predLag;
102 
103  //MhOptionsValues m_mhOptionsValues;
104 
105 private:
106 #ifndef DISABLE_BOOST_PROGRAM_OPTIONS
108 #endif // DISABLE_BOOST_PROGRAM_OPTIONS
109 
110  std::string m_option_help;
122  std::string m_option_formCMatrix;
124  std::string m_option_predLag;
131 
132  void copy(const GcmOptionsValues& src);
133 
134 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
135  friend class GpmsaComputerModelOptions;
136  SsOptionsValues m_alternativePriorSeqSsOptionsValues;
137 #endif
138 };
139 
141 {
142 public:
143  GpmsaComputerModelOptions(const BaseEnvironment& env, const char* prefix);
144  GpmsaComputerModelOptions(const BaseEnvironment& env, const char* prefix, const GcmOptionsValues& alternativeOptionsValues);
146 
147  void scanOptionsValues();
148  void print (std::ostream& os) const;
149 
151 #ifdef QUESO_USES_SEQUENCE_STATISTICAL_OPTIONS
152  SequenceStatisticalOptions* m_priorSeqStatisticalOptionsObj;
153  bool m_priorSeqStatOptsInstantiated;
154 #endif
155  std::string m_prefix;
156 
157 private:
158 #ifndef DISABLE_BOOST_PROGRAM_OPTIONS
159  void defineMyOptions (boost::program_options::options_description& optionsDesc) const;
160  void getMyOptionValues(boost::program_options::options_description& optionsDesc);
161 #endif // DISABLE_BOOST_PROGRAM_OPTIONS
162 
164 
165 #ifndef DISABLE_BOOST_PROGRAM_OPTIONS
166  boost::program_options::options_description* m_optionsDesc;
167 #endif // DISABLE_BOOST_PROGRAM_OPTIONS
168  std::string m_option_help;
180  std::string m_option_formCMatrix;
182  std::string m_option_predLag;
189 };
190 
191 std::ostream& operator<<(std::ostream& os, const GpmsaComputerModelOptions& obj);
192 
193 } // End namespace QUESO
194 
195 #endif // UQ_GCM_OPTIONS_H
void getMyOptionValues(boost::program_options::options_description &optionsDesc)
BoostInputOptionsParser * m_parser
GpmsaComputerModelOptions(const BaseEnvironment &env, const char *prefix)
void copy(const GcmOptionsValues &src)
std::ostream & operator<<(std::ostream &os, const BaseEnvironment &obj)
std::set< unsigned int > m_dataOutputAllowedSet
This (virtual) class sets up the environment underlying the use of the QUESO library by an executable...
Definition: Environment.h:197
GcmOptionsValues & operator=(const GcmOptionsValues &rhs)
void print(std::ostream &os) const
std::string m_option_useTildeLogicForRankDefficientC
void defineMyOptions(boost::program_options::options_description &optionsDesc) const
std::set< unsigned int > m_priorSeqDataOutputAllowedSet
boost::program_options::options_description * m_optionsDesc

Generated on Tue Nov 29 2016 10:53:10 for queso-0.56.0 by  doxygen 1.8.5