OpenStudioCore:analysis
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Protected Member Functions | Related Functions | List of all members
openstudio::analysis::DakotaAlgorithm Class Reference

#include <DakotaAlgorithm.hpp>

+ Inheritance diagram for openstudio::analysis::DakotaAlgorithm:

Public Member Functions

Constructors and Destructors
virtual ~DakotaAlgorithm ()
 
Getters and Queries
bool requiresContinuousVariables () const
 Returns true if the algorithm requires continuous variables. More...
 
bool isCompatible (const UncertaintyDescriptionType &udescType) const
 
boost::optional< FileReference > restartFileReference () const
 Returns a reference to the DAKOTA restart file, if possible. More...
 
boost::optional< FileReference > outFileReference () const
 Returns a reference to the DAKOTA out file, if possible. More...
 
boost::optional
< openstudio::runmanager::Job > 
job () const
 Returns the RunManager job if possible. More...
 
Actions
std::string dakotaInFileDescription () const
 Returns a string that describes this algorithm, including its options, in DAKOTA .in file syntax. More...
 
boost::optional< DataPointcreateNextDataPoint (Analysis &analysis, const DakotaParametersFile &params)
 Tries to create a new data point from dakotaParametersFile, returning the new point, or an equivalent point already present in analysis. More...
 
- Public Member Functions inherited from openstudio::analysis::Algorithm
virtual ~Algorithm ()
 
bool isComplete () const
 Returns true if the Algorithm ran to completion. More...
 
bool failed () const
 Returns true if the Algorithm ran to completion, but failed in some way. More...
 
int iter () const
 Returns the iteration number, which is incremented during the process of running an Analysis. More...
 
AlgorithmOptions options () const
 AlgorithmOptions shares its data on assignment and copy construction. More...
 
bool isCompatibleProblemType (const Problem &problem) const
 Returns true if Algorithm can operate on problem. More...
 
- Public Member Functions inherited from openstudio::analysis::AnalysisObject
virtual ~AnalysisObject ()
 
AnalysisObject clone () const
 Deep copy. More...
 
std::string name () const
 
std::string displayName () const
 
std::string description () const
 
openstudio::UUID uuid () const
 
openstudio::UUID versionUUID () const
 
bool isDirty () const
 Returns true if this object has been changed since its dirty flag was last cleared. More...
 
bool operator== (const AnalysisObject &other) const
 Compare impls. More...
 
bool operator!= (const AnalysisObject &other) const
 
bool uuidEqual (const AnalysisObject &other) const
 
bool uuidAndVersionEqual (const AnalysisObject &other) const
 
boost::optional< AnalysisObjectparent () const
 
void setName (const std::string &newName)
 
void setDisplayName (const std::string &newDisplayName)
 
void setDescription (const std::string &newDescription)
 
bool clearDirtyFlag ()
 Call this method to reset the dirty flag of this object and all its children. More...
 
bool connect (const char *signal, const QObject *receiver, const char *slot, Qt::ConnectionType type=Qt::AutoConnection) const
 Connect signal from this AnalysisObject to slot on receiver. More...
 
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *slot=nullptr) const
 
template<typename T >
cast () const
 Cast to type T. More...
 
template<typename T >
boost::optional< T > optionalCast () const
 Cast to boost::optional<T>. More...
 

Protected Member Functions

void markComplete ()
 
void markFailed ()
 
void resetFailed ()
 
void setOutFileReference (const FileReference &file)
 Called after Dakota job is constructed. More...
 
void setRestartFileReference (const FileReference &file)
 Called after Dakota job is constructed. More...
 
- Protected Member Functions inherited from openstudio::analysis::Algorithm
void reset ()
 Resets algorithm back to its initial state. More...
 
void resetComplete ()
 

Related Functions

(Note that these are not member functions.)

typedef std::vector
< DakotaAlgorithm
DakotaAlgorithmVector
 
typedef boost::optional
< DakotaAlgorithm
OptionalDakotaAlgorithm
 

Detailed Description

DakotaAlgorithm is an Algorithm that works with the third-party software package DAKOTA (http://dakota.sandia.gov/software.html) to generate new data points.

Constructor & Destructor Documentation

virtual openstudio::analysis::DakotaAlgorithm::~DakotaAlgorithm ( )
inlinevirtual

Member Function Documentation

boost::optional<DataPoint> openstudio::analysis::DakotaAlgorithm::createNextDataPoint ( Analysis analysis,
const DakotaParametersFile params 
)

Tries to create a new data point from dakotaParametersFile, returning the new point, or an equivalent point already present in analysis.

Also updates this algorithm's internal iter counter.

std::string openstudio::analysis::DakotaAlgorithm::dakotaInFileDescription ( ) const

Returns a string that describes this algorithm, including its options, in DAKOTA .in file syntax.

bool openstudio::analysis::DakotaAlgorithm::isCompatible ( const UncertaintyDescriptionType udescType) const
boost::optional<openstudio::runmanager::Job> openstudio::analysis::DakotaAlgorithm::job ( ) const

Returns the RunManager job if possible.

void openstudio::analysis::DakotaAlgorithm::markComplete ( )
protected
void openstudio::analysis::DakotaAlgorithm::markFailed ( )
protected
boost::optional<FileReference> openstudio::analysis::DakotaAlgorithm::outFileReference ( ) const

Returns a reference to the DAKOTA out file, if possible.

Should exist if this algorithm is used by an analysis that has been run using the AnalysisDriver.

bool openstudio::analysis::DakotaAlgorithm::requiresContinuousVariables ( ) const

Returns true if the algorithm requires continuous variables.

The Problem class uses this method to determine whether to represent OpenStudio DiscreteVariables as continuous variables when communicating with DAKOTA. If the desired behavior is to fail, rather than to fake continuity, then isCompatibleProblemType should return false if Problem contains non-trivial (> 1 perturbation) discrete variables.

void openstudio::analysis::DakotaAlgorithm::resetFailed ( )
protected
boost::optional<FileReference> openstudio::analysis::DakotaAlgorithm::restartFileReference ( ) const

Returns a reference to the DAKOTA restart file, if possible.

Should exist if this algorithm is used by an analysis that has been run using the AnalysisDriver.

void openstudio::analysis::DakotaAlgorithm::setOutFileReference ( const FileReference &  file)
protected

Called after Dakota job is constructed.

As a side effect, sets iter to 0.

void openstudio::analysis::DakotaAlgorithm::setRestartFileReference ( const FileReference &  file)
protected

Called after Dakota job is constructed.

As a side effect, sets iter to 0.

Friends And Related Function Documentation

typedef std::vector<DakotaAlgorithm> DakotaAlgorithmVector
related
typedef boost::optional<DakotaAlgorithm> OptionalDakotaAlgorithm
related