NonDLocalReliability Class Reference

Class for the reliability methods within DAKOTA/UQ. More...

Inheritance diagram for NonDLocalReliability:

NonDReliability NonD Analyzer Iterator List of all members.

Public Member Functions

 NonDLocalReliability (Model &model)
 constructor
 ~NonDLocalReliability ()
 destructor
void quantify_uncertainty ()
 approximations of the cumulative distribution function of response
void print_results (ostream &s)
 MPP-search-based reliability methods.
String uses_method () const
 return name of active MPP optimizer
void method_recourse ()
 perform an MPP optimizer method switch due to a detected conflict

Private Member Functions

void initial_taylor_series ()
 Taylor-series approximation.
void mean_value ()
 computation of approximate statistics and importance factors
void mpp_search ()
 employ a search for the most probable point (AMV, AMV+, FORM, SORM)
void initialize_class_data ()
 convenience function for initializing class scope arrays
void initialize_level_data ()
 data for each response function prior to level 0
void initialize_mpp_search_data ()
 data for each z/p/beta level for each response function
void update_mpp_search_data (const Variables &vars_star, const Response &resp_star)
 z/p/beta level for each response function
void update_level_data (RealVector &final_stats, RealMatrix &final_stat_grads)
 statistics following MPP convergence
void update_pma_reliability_level ()
 generalized reliabilities by inverting second-order integrations
void update_limit_state_surrogate ()
 to the data fit embedded within uSpaceModel
void assign_mean_data ()
 from ranVarMeansX/U, fnValsMeanX, fnGradsMeanX, and fnHessiansMeanX
void dg_ds_eval (const RealDenseVector &x_vars, const RealDenseVector &fn_grad_x, RealMatrix &final_stat_grads)
 convenience function for evaluating dg/ds
Real probability (const Real &beta, bool cdf_flag)
 second-order integration
Real reliability (const Real &p, bool cdf_flag)
 second-order integration
bool reliability_residual (const Real &p, const Real &beta, const RealDenseVector &kappa, Real &res)
 corrections using Newton's method (called by reliability(p))
Real reliability_residual_derivative (const Real &p, const Real &beta, const RealDenseVector &kappa)
 probability corrections using Newton's method (called by reliability(p))
void principal_curvatures ()
 Compute the kappaU vector of principal curvatures from fnHessU.

Private Attributes

RealDenseVector fnGradX
 evaluation
RealDenseVector fnGradU
 Jacobian dx/du.
RealSymDenseMatrix fnHessX
 evaluation
RealSymDenseMatrix fnHessU
 Jacobian dx/du.
RealDenseVector kappaU
 transformation of fnHessU
RealDenseVector fnValsMeanX
 response function values evaluated at mean x
RealDenseMatrix fnGradsMeanX
 response function gradients evaluated at mean x
RealSymDenseMatrixArray fnHessiansMeanX
 response function Hessians evaluated at mean x
RealVector medianFnVals
 p=0.5 -> median function values). Used to determine the sign of beta.
RealDenseVector ranVarMeansU
 vector of means for all uncertain random variables in u-space
RealVector initialPtU
 initial guess for MPP search in u-space
RealDenseVector mostProbPointX
 location of MPP in x-space
RealDenseVector mostProbPointU
 location of MPP in u-space
RealVectorArray prevMPPULev0
 initialPtU within RBDO.
RealMatrix prevFnGradDLev0
 for level 0. Used for warm-starting initialPtU within RBDO.
RealMatrix prevFnGradULev0
 for level 0. Used for warm-starting initialPtU within RBDO.
RealVector prevICVars
 previous design vector. Used for warm-starting initialPtU within RBDO.
ShortArray prevCumASVLev0
 for warm-starting initialPtU within RBDO.
bool npsolFlag
 selection (SQP or NIP)
bool warmStartFlag
 flag indicating the use of warm starts
bool nipModeOverrideFlag
 flag indicating the use of move overrides within OPT++ NIP
bool curvatureDataAvailable
 mostProbPointU) is available for computing principal curvatures
short integrationOrder
 integration order (1 or 2) provided by integration specification
short secondOrderIntType
 type of second-order integration: Breitung, Hohenbichler-Rackwitz, or Hong
Real curvatureThresh
 cut-off value for 1/sqrt() term in second-order probability corrections.
short taylorOrder
 derived from hessianType
RealMatrix impFactor
 importance factors predicted by MV
int npsolDerivLevel
 fn, 2 = analytic grads of constraints, 3 = analytic grads of both).
unsigned short warningBits
 set of warnings accumulated during execution

Detailed Description

Class for the reliability methods within DAKOTA/UQ.

The NonDLocalReliability class implements the following reliability methods through the support of different limit state approximation and integration options: mean value (MVFOSM/MVSOSM), advanced mean value method (AMV, AMV^2) in x- or u-space, iterated advanced mean value method (AMV+, AMV^2+) in x- or u-space, two-point adaptive nonlinearity approximation (TANA) in x- or u-space, first order reliability method (FORM), and second order reliability method (SORM). All options except mean value employ an optimizer (currently NPSOL SQP or OPT++ NIP) to solve an equality-constrained optimization problem for the most probable point (MPP). The MPP search may be formulated as the reliability index approach (RIA) for mapping response levels to reliabilities/probabilities or as the performance measure approach (PMA) for performing the inverse mapping of reliability/probability levels to response levels.


Member Function Documentation

void initial_taylor_series (  )  [private]

Taylor-series approximation.

An initial first- or second-order Taylor-series approximation is required for MV/AMV/AMV+/TANA or for the case where meanStats or stdDevStats (from MV) are required within finalStatistics for subIterator usage of NonDLocalReliability.

void initialize_class_data (  )  [private]

convenience function for initializing class scope arrays

Initialize class-scope arrays and perform other start-up activities, such as evaluating median limit state responses.

void initialize_level_data (  )  [private]

data for each response function prior to level 0

For a particular response function prior to the first z/p/beta level, initialize/warm-start optimizer initial guess (initialPtU), expansion point (mostProbPointX/U), and associated response data (computedRespLevel, fnGradX/U, and fnHessX/U).

void initialize_mpp_search_data (  )  [private]

data for each z/p/beta level for each response function

For a particular response function at a particular z/p/beta level, warm-start or reset the optimizer initial guess (initialPtU), expansion point (mostProbPointX/U), and associated response data (computedRespLevel, fnGradX/U, and fnHessX/U).

void update_mpp_search_data ( const Variables vars_star,
const Response resp_star 
) [private]

z/p/beta level for each response function

Includes case-specific logic for updating MPP search data for the AMV/AMV+/TANA/NO_APPROX methods.

void update_level_data ( RealVector final_stats,
RealMatrix final_stat_grads 
) [private]

statistics following MPP convergence

Updates computedRespLevels/computedProbLevels/computedRelLevels, final_stats/final_stat_grads, warm start, and graphics data.

void update_pma_reliability_level (  )  [private, virtual]

generalized reliabilities by inverting second-order integrations

For PMA SORM with prescribed p-level or prescribed generalized beta-level, requestedCDFRelLevel must be updated. This virtual function redefinition is called from NonDReliability::PMA_constraint_eval().

Reimplemented from NonDReliability.

void dg_ds_eval ( const RealDenseVector &  x_vars,
const RealDenseVector &  fn_grad_x,
RealMatrix final_stat_grads 
) [private]

convenience function for evaluating dg/ds

Computes dg/ds where s = design variables. Supports potentially overlapping cases of design variable augmentation and insertion.

Real probability ( const Real &  beta,
bool  cdf_flag 
) [private]

second-order integration

Converts beta into a probability using either first-order (FORM) or second-order (SORM) integration. The SORM calculation first calculates the principal curvatures at the MPP (using the approach in Ch. 8 of Haldar & Mahadevan), and then applies correction formulations from the literature (Breitung, Hohenbichler-Rackwitz, or Hong).

Real reliability ( const Real &  p,
bool  cdf_flag 
) [private]

second-order integration

Converts a probability into a reliability using the inverse of the first-order or second-order integrations implemented in NonDLocalReliability::probability().


The documentation for this class was generated from the following files:
Generated on Wed Nov 5 19:54:07 2008 for DAKOTA by  doxygen 1.5.1