$extrastylesheet
Dakota
Version 6.2
|
Class for Richardson extrapolation for code and solution verification. More...
Public Member Functions | |
RichExtrapVerification (ProblemDescDB &problem_db, Model &model) | |
constructor | |
~RichExtrapVerification () | |
destructor | |
void | perform_verification () |
Redefines the core_run() virtual function for the Verification branch. | |
void | print_results (std::ostream &s) |
print the final iterator results | |
Private Member Functions | |
void | estimate_order () |
perform a single estimation of convOrder using extrapolation() | |
void | converge_order () |
iterate using extrapolation() until convOrder stabilizes | |
void | converge_qoi () |
iterate using extrapolation() until QOIs stabilize | |
void | extrapolation (const RealVector &refine_triple, RealMatrix &qoi_triples) |
estimate convOrder from refinement and quantity of interest (QOI) triples | |
void | extrapolate_result (const RealVector &refine_triple, const RealMatrix &qoi_triples) |
predict the converged value based on the convergence rate and the value of Phi | |
Private Attributes | |
unsigned short | studyType |
internal code for extrapolation study type: SUBMETHOD_{CONVERGE_ORDER,CONVERGE_QOI,ESTIMATE_ORDER} | |
size_t | numFactors |
number of refinement factors defined from active state variables | |
RealVector | initialCVars |
initial reference values for refinement factors | |
size_t | factorIndex |
the index of the active factor | |
Real | refinementRate |
rate of mesh refinement (default = 2.) | |
RealMatrix | convOrder |
the orders of convergence of the QOIs (numFunctions by numFactors) | |
RealMatrix | extrapQOI |
the extrapolated value of the QOI (numFunctions by numFactors) | |
RealMatrix | numErrorQOI |
the numerical uncertainty associated with level of refinement (numFunctions by numFactors) | |
RealVector | refinementRefPt |
This is a reference point reported for the converged extrapQOI and numErrorQOI. It currently corresponds to the coarsest mesh in the final refinement triple. |
Class for Richardson extrapolation for code and solution verification.
The RichExtrapVerification class contains several algorithms for performing Richardson extrapolation.
void print_results | ( | std::ostream & | s | ) | [virtual] |
print the final iterator results
This virtual function provides additional iterator-specific final results outputs beyond the function evaluation summary printed in finalize_run().
Reimplemented from Verification.
References Model::continuous_variable_labels(), RichExtrapVerification::convOrder, Dakota::copy_data(), RichExtrapVerification::extrapQOI, Iterator::iteratedModel, RichExtrapVerification::numErrorQOI, RichExtrapVerification::refinementRate, RichExtrapVerification::refinementRefPt, and Model::response_labels().
void estimate_order | ( | ) | [private] |
perform a single estimation of convOrder using extrapolation()
This algorithm executes a single refinement triple and returns convergence order estimates.
References RichExtrapVerification::extrapolate_result(), RichExtrapVerification::extrapolation(), RichExtrapVerification::extrapQOI, RichExtrapVerification::factorIndex, RichExtrapVerification::initialCVars, RichExtrapVerification::numErrorQOI, RichExtrapVerification::numFactors, Analyzer::numFunctions, RichExtrapVerification::refinementRate, and RichExtrapVerification::refinementRefPt.
Referenced by RichExtrapVerification::perform_verification().
void converge_order | ( | ) | [private] |
iterate using extrapolation() until convOrder stabilizes
This algorithm continues to refine until the convergence order estimate converges.
References Iterator::convergenceTol, RichExtrapVerification::convOrder, Dakota::copy_data(), RichExtrapVerification::extrapolate_result(), RichExtrapVerification::extrapolation(), RichExtrapVerification::extrapQOI, RichExtrapVerification::factorIndex, RichExtrapVerification::initialCVars, Iterator::maxIterations, RichExtrapVerification::numErrorQOI, RichExtrapVerification::numFactors, Analyzer::numFunctions, Iterator::outputLevel, RichExtrapVerification::refinementRate, and RichExtrapVerification::refinementRefPt.
Referenced by RichExtrapVerification::perform_verification().
void converge_qoi | ( | ) | [private] |
iterate using extrapolation() until QOIs stabilize
This algorithm continues to refine until the discretization error lies within a prescribed tolerance.
References Iterator::convergenceTol, RichExtrapVerification::extrapolate_result(), RichExtrapVerification::extrapolation(), RichExtrapVerification::extrapQOI, RichExtrapVerification::factorIndex, RichExtrapVerification::initialCVars, Iterator::maxIterations, RichExtrapVerification::numErrorQOI, RichExtrapVerification::numFactors, Analyzer::numFunctions, Iterator::outputLevel, RichExtrapVerification::refinementRate, and RichExtrapVerification::refinementRefPt.
Referenced by RichExtrapVerification::perform_verification().