$extrastylesheet
Dakota
Version 6.2
|
Container class for response functions and their derivatives. ExperimentResponse provides the body class. More...
Public Member Functions | |
ExperimentResponse () | |
default constructor | |
ExperimentResponse (const Variables &vars, const ProblemDescDB &problem_db) | |
standard constructor built from problem description database | |
ExperimentResponse (const SharedResponseData &srd, const ActiveSet &set) | |
alternate constructor that shares a SharedResponseData instance | |
ExperimentResponse (const SharedResponseData &srd) | |
alternate constructor that shares a SharedResponseData instance | |
ExperimentResponse (const ActiveSet &set) | |
alternate constructor using limited data | |
~ExperimentResponse () | |
destructor | |
void | set_scalar_covariance (RealVector &scalars) |
method to set the covariance matrix defined for ExperimentResponse | |
Real | get_scalar_covariance (const int this_response) |
method to get the covariance matrix defined for ExperimentResponse | |
void | set_full_covariance (std::vector< RealMatrix > &matrices, std::vector< RealVector > &diagonals, RealVector &scalars, IntVector matrix_map_indices, IntVector diagonal_map_indices, IntVector scalar_map_indices) |
method to set the full covariance matrices for ExperimentResponse | |
Real | apply_covariance (const RealVector &residual) |
method to compute the triple product v'*inv(C)*v. | |
void | apply_covariance_inv_sqrt (const RealVector &residuals, RealVector &weighted_residuals) |
method to compute (v'*inv(C)^1/2), to compute weighted residual | |
void | apply_covariance_inv_sqrt (const RealMatrix &gradients, RealMatrix &weighted_gradients) |
void | apply_covariance_inv_sqrt (const RealSymMatrixArray &hessians, RealSymMatrixArray &weighted_hessians) |
void | get_covariance_diagonal (RealVector &diagonal) const |
Protected Member Functions | |
void | copy_rep (Response *source_resp_rep) |
Specialization of copy_rep; pulls base class data as well as derived specific data from the source rep into the this object. | |
Private Attributes | |
ExperimentCovariance | expDataCovariance |
sigma terms... |
Container class for response functions and their derivatives. ExperimentResponse provides the body class.
The ExperimentResponse class is the "representation" of the response container class. It is the "body" portion of the "handle-body idiom" (see Coplien "Advanced C++", p. 58). The handle class (Response) provides for memory efficiency in management of multiple response objects through reference counting and representation sharing. The body class (ExperimentResponse) actually contains the response data (functionValues, functionGradients, functionHessians, etc.). The representation is hidden in that an instance of ExperimentResponse may only be created by Response. Therefore, programmers create instances of the Response handle class, and only need to be aware of the handle/body mechanisms when it comes to managing shallow copies (shared representation) versus deep copies (separate representation used for history mechanisms).