$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().
1.7.6.1