$extrastylesheet
Dakota  Version 6.2
Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes
VPSApproximation Class Reference

Derived approximation class for VPS implementation. More...

Inheritance diagram for VPSApproximation:
Approximation

List of all members.

Public Member Functions

 VPSApproximation ()
 default constructor
 VPSApproximation (const ProblemDescDB &problem_db, const SharedApproxData &shared_data)
 standard constructor (to call VPS from an input deck)
 VPSApproximation (const SharedApproxData &shared_data)
 Alternate constructor (to call VPS from another method like POF-darts)
 ~VPSApproximation ()
 destructor
bool VPS_execute ()
void VPS_create_containers ()
void VPS_retrieve_neighbors (size_t ipoint, bool update_point_neighbors)
void VPS_adjust_extend_neighbors_of_all_points ()
void VPS_extend_neighbors (size_t ipoint)
void VPS_build_local_surrogate (size_t cell_index)
double VPS_evaluate_surrogate (double *x)
void VPS_destroy_global_containers ()
void retrieve_permutations (size_t &m, size_t **&perm, size_t num_dim, size_t upper_bound, bool force_sum_constraint, size_t sum_constraint)
void build_radial_basis_function (size_t icell)
void VPS_LS_retrieve_weights (size_t cell_index)
double evaluate_basis_function (double *x, size_t icell, size_t ibasis)
int constrained_LeastSquare (size_t n, size_t m, double **H, double *w, double *f)
double vec_dot_vec (size_t n, double *vec_a, double *vec_b)
double vec_pow_vec (size_t num_dim, double *vec_a, size_t *vec_b)
bool Cholesky (int n, double **A, double **LD)
void Cholesky_solver (int n, double **LD, double *b, double *x)
void GMRES (size_t n, double **A, double *b, double *x, double eps)
void printMatrix (size_t m, size_t n, double **M)
void initiate_random_number_generator (unsigned long x)
double generate_a_random_number ()
size_t retrieve_closest_cell (double *x)
bool trim_line_using_Hyperplane (size_t num_dim, double *st, double *end, double *qH, double *nH)
double f_test (double *x)
void generate_poisson_disk_sample (double r)
void generate_MC_sample ()
void isocontouring (std::string file_name, bool plot_test_function, bool plot_surrogate, std::vector< double > contours)
void isocontouring_solid (std::string file_name, bool plot_test_function, bool plot_surrogate, std::vector< double > contours)
void plot_neighbors ()

Protected Member Functions

int min_coefficients () const
 return the minimum number of samples (unknowns) required to build the derived class approximation type in numVars dimensions
int num_constraints () const
 return the number of constraints to be enforced via an anchor point
void build ()
 builds the approximation from scratch
Real value (const Variables &vars)
 retrieve the predicted function value for a given parameter set
const RealVector & gradient (const Variables &vars)
 retrieve the function gradient at the predicted value for a given parameter set
Real prediction_variance (const Variables &vars)
 retrieve the variance of the predicted value for a given parameter set

Private Types

enum  subsurrogate { LS, GP }
enum  subsurrogate_basis { polynomial, radial }
enum  testfunction { SmoothHerbie, Herbie, UnitSphere }

Private Member Functions

void VPSmodel_build ()
 Function to compute coefficients governing the VPS surrogates.
void VPSmodel_apply (const RealVector &new_x, bool variance_flag, bool gradients_flag)
 Function returns a response value using the VPS surface.

Private Attributes

Real approxValue
 value of the approximation returned by value()
Real approxVariance
 value of the approximation returned by prediction_variance()
RealMatrix trainPoints
 A 2-D array (num sample sites = rows, num vars = columns) used to create the Gaussian process.
RealMatrix trainValues
 An array of response values; one response value per sample site.
size_t numObs
 The number of observations on which the GP surface is built.
int surrogateOrder
 The order of the polynomial in each Voronoi cell.
subsurrogate _vps_subsurrogate
subsurrogate_basis _vps_subsurrogate_basis
testfunction _vps_test_function
double Q [1220]
int indx
double cc
double c
double zc
double zx
double zy
size_t qlen
size_t _n_dim
double * _xmin
double * _xmax
double _diag
size_t _num_inserted_points
double ** _sample_points
double * _fval
size_t ** _sample_neighbors
size_t ** _vps_ext_neighbors
size_t _vps_order
size_t _num_GMRES
size_t * _num_cell_basis_functions
double * _sample_vsize
double * _vps_dfar
double *** _sample_basis
double _max_vsize
double _disc_min_grad
double _f_min
double _f_max
size_t *** _vps_t
double ** _vps_w
SharedApproxData sharedData
std::vector< Approximation > gpApproximations
Variables gpEvalVars

Static Private Attributes

static VPSApproximation * VPSinstance
 pointer to the active object instance used within the static evaluator

Detailed Description

Derived approximation class for VPS implementation.

The VPSApproximation class provides a set of piecewise surrogate approximations each of which is valid within a Voronoi cell.


Member Function Documentation

void VPSmodel_apply ( const RealVector &  new_x,
bool  variance_flag,
bool  gradients_flag 
) [private]

Function returns a response value using the VPS surface.

The response value is computed at the design point specified by the RealVector function argument.

References VPSApproximation::approxValue.

Referenced by VPSApproximation::gradient(), VPSApproximation::prediction_variance(), and VPSApproximation::value().


Member Data Documentation

VPSApproximation * VPSinstance [static, private]

pointer to the active object instance used within the static evaluator

default constructor


The documentation for this class was generated from the following files: