Sundance::DiscreteFuncElement Class Reference

Inheritance diagram for Sundance::DiscreteFuncElement:

Sundance::EvaluatableExpr Sundance::FuncElementBase Sundance::GenericEvaluatorFactory< DiscreteFuncElement, DiscreteFuncElementEvaluator > Sundance::ScalarExpr Sundance::EvaluatorFactory Sundance::FuncSetAccumulator Sundance::ObjectWithClassVerbosity< EvaluatableExpr > Sundance::ScalarExpr Sundance::FunctionWithID Sundance::EvaluatorFactory Sundance::ExprBase Playa::ObjectWithVerbosity Sundance::ExprBase Sundance::FuncSetAccumulator Playa::Handleable< ExprBase > Playa::Handleable< ExprBase > Sundance::Parameter

List of all members.

Public Member Functions

 DiscreteFuncElement (const RCP< DiscreteFuncDataStub > &data, const std::string &name, const std::string &suffix, const FunctionIdentifier &fid, int myIndexIntoVector)
virtual ~DiscreteFuncElement ()
RCP< const DiscreteFuncDataStubcommonData () const
DiscreteFuncDataStubcommonData ()
int myIndex () const
void addMultiIndex (const MultiIndex &newMi) const
int maxDiffOrderOnDiscreteFunctions () const
virtual bool hasDiscreteFunctions () const
virtual bool hasTestFunctions () const
virtual Set< MultipleDerivinternalFindW (int order, const EvalContext &context) const
virtual Set< MultipleDerivinternalFindV (int order, const EvalContext &context) const
virtual Set< MultipleDerivinternalFindC (int order, const EvalContext &context) const
virtual RCP< Array< Set
< MultipleDeriv > > > 
internalDetermineR (const EvalContext &context, const Array< Set< MultipleDeriv > > &RInput) const
virtual XMLObject toXML () const
const Set< MultiIndex > & multiIndexSet () const
virtual RCP< ExprBasegetRcp ()
bool lessThan (const ScalarExpr *other) const

Private Attributes

RCP< DiscreteFuncDataStubcommonData_
Set< MultiIndexmiSet_
int myIndex_


Detailed Description

DiscreteFuncElement represents a scalar-valued element of a (possibly) vector-valued discrete function.

DiscreteFuncElement is framework-independent. Any framework-specific information should go in a subclass of DiscreteFuncDataStub. The DiscreteFuncDataStub object can be accessed through the master() method of this class.

Definition at line 59 of file SundanceDiscreteFuncElement.hpp.


Constructor & Destructor Documentation

DiscreteFuncElement::DiscreteFuncElement ( const RCP< DiscreteFuncDataStub > &  data,
const std::string &  name,
const std::string &  suffix,
const FunctionIdentifier fid,
int  myIndexIntoVector 
)

Definition at line 45 of file SundanceDiscreteFuncElement.cpp.

virtual Sundance::DiscreteFuncElement::~DiscreteFuncElement (  )  [inline, virtual]

virtual destructor

Definition at line 72 of file SundanceDiscreteFuncElement.hpp.


Member Function Documentation

void DiscreteFuncElement::addMultiIndex ( const MultiIndex newMi  )  const

Inform this function that it will need to be evaluated using the specified multiIndex

Definition at line 155 of file SundanceDiscreteFuncElement.cpp.

References miSet_, and Sundance::Set< Key, Compare >::put().

Referenced by Sundance::DiffOp::requestMultiIndexAtEvalPoint().

DiscreteFuncDataStub* Sundance::DiscreteFuncElement::commonData (  )  [inline]

Get the data associated with the vector-valued function that contains this function element.

Definition at line 81 of file SundanceDiscreteFuncElement.hpp.

References commonData_.

RCP<const DiscreteFuncDataStub> Sundance::DiscreteFuncElement::commonData (  )  const [inline]

Get the data associated with the vector-valued function that contains this function element.

Definition at line 77 of file SundanceDiscreteFuncElement.hpp.

References commonData_.

Referenced by Sundance::DiscreteFunctionData::getData().

virtual RCP<ExprBase> Sundance::DiscreteFuncElement::getRcp (  )  [inline, virtual]

Implements Playa::Handleable< ExprBase >.

Reimplemented in Sundance::Parameter.

Definition at line 130 of file SundanceDiscreteFuncElement.hpp.

virtual bool Sundance::DiscreteFuncElement::hasDiscreteFunctions (  )  const [inline, virtual]

Indicate whether this expression contains discrete functions. This object is a discrete function, so return true.

Reimplemented from Sundance::EvaluatableExpr.

Definition at line 100 of file SundanceDiscreteFuncElement.hpp.

virtual bool Sundance::DiscreteFuncElement::hasTestFunctions (  )  const [inline, virtual]

Indicate whether this expression contains test functions. This object is a discrete function, so return false.

Reimplemented from Sundance::ScalarExpr.

Definition at line 106 of file SundanceDiscreteFuncElement.hpp.

RCP< Array< Set< MultipleDeriv > > > DiscreteFuncElement::internalDetermineR ( const EvalContext context,
const Array< Set< MultipleDeriv > > &  RInput 
) const [virtual]

Set< MultipleDeriv > DiscreteFuncElement::internalFindC ( int  order,
const EvalContext context 
) const [virtual]

Reimplemented from Sundance::EvaluatableExpr.

Reimplemented in Sundance::Parameter.

Definition at line 146 of file SundanceDiscreteFuncElement.cpp.

References Sundance::EvalContext::setupVerbosity(), and SUNDANCE_MSG2.

Set< MultipleDeriv > DiscreteFuncElement::internalFindV ( int  order,
const EvalContext context 
) const [virtual]

Set< MultipleDeriv > DiscreteFuncElement::internalFindW ( int  order,
const EvalContext context 
) const [virtual]

bool DiscreteFuncElement::lessThan ( const ScalarExpr other  )  const [virtual]

Reimplemented from Sundance::FuncElementBase.

Definition at line 168 of file SundanceDiscreteFuncElement.cpp.

References Sundance::FunctionWithID::fid().

int Sundance::DiscreteFuncElement::maxDiffOrderOnDiscreteFunctions (  )  const [inline, virtual]

Find the maximum differentiation order acting on discrete functions in this expression.

Reimplemented from Sundance::EvaluatableExpr.

Definition at line 94 of file SundanceDiscreteFuncElement.hpp.

const Set<MultiIndex>& Sundance::DiscreteFuncElement::multiIndexSet (  )  const [inline]

Definition at line 127 of file SundanceDiscreteFuncElement.hpp.

References miSet_.

int Sundance::DiscreteFuncElement::myIndex (  )  const [inline]

Get my index into the master's list of elements

Definition at line 84 of file SundanceDiscreteFuncElement.hpp.

References myIndex_.

Referenced by Sundance::CurveEvalMediator::evalDiscreteFuncElement(), and Sundance::ExprFieldWrapper::ExprFieldWrapper().

XMLObject DiscreteFuncElement::toXML (  )  const [virtual]


Member Data Documentation

Definition at line 137 of file SundanceDiscreteFuncElement.hpp.

Referenced by commonData().

Definition at line 139 of file SundanceDiscreteFuncElement.hpp.

Referenced by addMultiIndex(), and multiIndexSet().

Definition at line 141 of file SundanceDiscreteFuncElement.hpp.

Referenced by myIndex().

Site Contact