Sundance::SymbolicFunc Class Reference

Inheritance diagram for Sundance::SymbolicFunc:

Sundance::ListExpr Sundance::SymbolicFuncDescriptor Sundance::FunctionWithID Sundance::ExprBase Sundance::FuncSetAccumulator Playa::Handleable< ExprBase > Sundance::TestFunctionStub Sundance::UnknownFunctionStub Sundance::UnknownParameter Sundance::TestFunction Sundance::UnknownFunction

List of all members.

Public Member Functions

 SymbolicFunc (const FunctionWithID &fid, const RCP< const CommonFuncDataStub > &data)
virtual ~SymbolicFunc ()
void substituteZero () const
void substituteFunction (const RCP< DiscreteFunctionStub > &u0) const
const RCP< const
CommonFuncDataStub > & 
commonData () const

Private Attributes

RCP< const CommonFuncDataStubcommonData_


Detailed Description

SymbolicFunc is a base class for functions such as test and unknown functions that are "variables" in a weak form. Symbolic functions cannot be evaluated directly; before evaluating a weak form, a value must be substituted for each symbolic func using either the substituteZero() or substituteFunction() method.

A symbolic function will construct itself as a list of SymbolicFuncElement objects that point back to the SymbolicFunction.

Definition at line 59 of file SundanceSymbolicFunc.hpp.


Constructor & Destructor Documentation

SymbolicFunc::SymbolicFunc ( const FunctionWithID fid,
const RCP< const CommonFuncDataStub > &  data 
)

Ctor records common data but initializes list to empty

Definition at line 44 of file SundanceSymbolicFunc.cpp.

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

virtual destructor

Definition at line 68 of file SundanceSymbolicFunc.hpp.


Member Function Documentation

const RCP<const CommonFuncDataStub>& Sundance::SymbolicFunc::commonData (  )  const [inline]

Definition at line 84 of file SundanceSymbolicFunc.hpp.

References commonData_.

Referenced by Sundance::Deriv::data().

void SymbolicFunc::substituteFunction ( const RCP< DiscreteFunctionStub > &  u0  )  const

Specify that expressions involving this function are to be evaluated with this function set to the discrete function $u_0$. This is appropriate for computing the functional derivatives that arise in a nonlinear expression being linearized about $u_0$.

Definition at line 65 of file SundanceSymbolicFunc.cpp.

References Sundance::SymbolicFuncElement::substituteFunction(), and Sundance::toString().

void SymbolicFunc::substituteZero (  )  const

Specify that expressions involving this function are to be evaluated with this function set to zero. This is appropriate for computing the functional derivatives that arise in a linear problem

Definition at line 50 of file SundanceSymbolicFunc.cpp.

References Sundance::ListExpr::element(), Playa::Handle< PointerType >::ptr(), Sundance::ListExpr::size(), Sundance::SymbolicFuncElement::substituteZero(), and Sundance::ExprBase::toString().


Member Data Documentation

Definition at line 89 of file SundanceSymbolicFunc.hpp.

Referenced by commonData().

Site Contact