Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Examples  

Sundance::WeakForm Class Reference

#include <WeakForm.h>

List of all members.

Public Methods

Private Methods

Private Attributes

Data that is common to all terms and blocks
Data that is specific to a given (block, term) combination
flags indicating whether a given block is nonzero

Related Functions

(Note that these are not member functions.)

Detailed Description

In a finite elements problem one must do integrals of the form

to obtain matrix entries and integrals of the form

to obtain vector entries. Here is a basis function for the test function space, is a basis function for the unk function space, and are multiindices that specify the differentiation order and direction on the test and unk basis functions, respectively, and is a coefficient function. If the integral is to be done with quadrature, then one must also provide a quadrature rule. A WeakForm object contains a unique combination of basis families, multiindices, coefficient function, and quadrature rule; all terms using that combination are evaluated using that WeakForm.

Several terms in a problem might share a common WeakForm but have different function ID numbers or constant coefficents, and they might contribute to different blocks in a block operator. For example, in a Navier-Stokes problem the x and y components of velocity will have the same basis functions, and the diffusion operator will be applied in the same way to both. Thus, all velocity diffusion terms in a Navier-Stokes problem can be represented with a common set of WeakForms.

Definition at line 51 of file WeakForm.h.


Constructor & Destructor Documentation

Sundance::WeakForm::WeakForm  
 

Sundance::WeakForm::WeakForm EquationSet   eqnSet,
int    blockRow,
int    blockCol,
const Expr   coeff,
const Expr   var,
const Expr   unk,
const QuadratureFamily   quad,
bool    isBC
 

Sundance::WeakForm::WeakForm EquationSet   eqnSet,
int    blockRow,
const Expr   coeff,
const Expr   var,
const QuadratureFamily   quad,
bool    isBC
 


Member Function Documentation

const QuadratureFamily& Sundance::WeakForm::quad   const [inline]
 

Definition at line 68 of file WeakForm.h.

References quad_.

const Expr& Sundance::WeakForm::coeff   const [inline]
 

Definition at line 72 of file WeakForm.h.

References coeff_.

const BasisFamily& Sundance::WeakForm::test   const [inline]
 

Definition at line 76 of file WeakForm.h.

References test_.

const BasisFamily& Sundance::WeakForm::unk   const [inline]
 

Definition at line 80 of file WeakForm.h.

References unk_.

const MultiIndex& Sundance::WeakForm::miTest   const [inline]
 

Definition at line 84 of file WeakForm.h.

References miTest_.

const MultiIndex& Sundance::WeakForm::miUnk   const [inline]
 

Definition at line 88 of file WeakForm.h.

References miUnk_.

bool Sundance::WeakForm::usesBlock int    blockRow,
int    blockCol
const
 

bool Sundance::WeakForm::usesBlock int    blockRow const
 

const TSFArray<int>& Sundance::WeakForm::testIDList int    blockRow,
int    blockCol
const
 

const TSFArray<int>& Sundance::WeakForm::unkIDList int    blockRow,
int    blockCol
const
 

const TSFArray<int>& Sundance::WeakForm::testIDList int    blockRow const
 

This should be used for one-forms only

const TSFArray<double>& Sundance::WeakForm::termCoeff int    blockRow,
int    blockCol
const
 

const TSFArray<double>& Sundance::WeakForm::termCoeff int    blockCol const
 

const TSFArray<bool>& Sundance::WeakForm::isTransposed int    blockRow,
int    blockCol
const
 

const TSFArray<bool>& Sundance::WeakForm::isEssentialBC int    blockRow const
 

const TSFArray<bool>& Sundance::WeakForm::isEssentialBC int    blockRow,
int    blockCol
const
 

bool Sundance::WeakForm::isOneForm   const [inline]
 

Definition at line 128 of file WeakForm.h.

References isOneForm_.

bool Sundance::WeakForm::isSymmetric   const [inline]
 

Definition at line 132 of file WeakForm.h.

References isSymmetric_.

bool Sundance::WeakForm::tryAppend int    blockRow,
int    blockCol,
const Expr   coeff,
const Expr   var,
const Expr   unk,
bool    isBC
 

If the term matches, return true, otherwise return false.

bool Sundance::WeakForm::tryAppend int    blockRow,
const Expr   coeff,
const Expr   var,
bool    isBC
 

If the term matches, return true, otherwise return false.

XMLObject Sundance::WeakForm::toXML   const
 

Referenced by operator<<().

void Sundance::WeakForm::init int    blockRow,
int    blockCol,
const Expr   var,
const Expr   unk,
bool    isBC
[private]
 


Friends And Related Function Documentation

ostream & operator<< ostream &    os,
const WeakForm &    wf
[related]
 

Definition at line 186 of file WeakForm.h.

References toXML().


Member Data Documentation

EquationSet* Sundance::WeakForm::eqnSet_ [private]
 

Definition at line 155 of file WeakForm.h.

QuadratureFamily Sundance::WeakForm::quad_ [private]
 

Definition at line 160 of file WeakForm.h.

Referenced by quad().

Expr Sundance::WeakForm::coeff_ [private]
 

Definition at line 161 of file WeakForm.h.

Referenced by coeff().

BasisFamily Sundance::WeakForm::test_ [private]
 

Definition at line 162 of file WeakForm.h.

Referenced by test().

BasisFamily Sundance::WeakForm::unk_ [private]
 

Definition at line 163 of file WeakForm.h.

Referenced by unk().

MultiIndex Sundance::WeakForm::miTest_ [private]
 

Definition at line 164 of file WeakForm.h.

Referenced by miTest().

MultiIndex Sundance::WeakForm::miUnk_ [private]
 

Definition at line 165 of file WeakForm.h.

Referenced by miUnk().

bool Sundance::WeakForm::isOneForm_ [private]
 

Definition at line 166 of file WeakForm.h.

Referenced by isOneForm().

bool Sundance::WeakForm::isSymmetric_ [private]
 

Definition at line 167 of file WeakForm.h.

Referenced by isSymmetric().

TSFArray<TSFArray<TSFArray<double> > > Sundance::WeakForm::termCoeffs_ [private]
 

Definition at line 172 of file WeakForm.h.

TSFArray<TSFArray<TSFArray<int> > > Sundance::WeakForm::testID_ [private]
 

Definition at line 173 of file WeakForm.h.

TSFArray<TSFArray<TSFArray<int> > > Sundance::WeakForm::unkID_ [private]
 

Definition at line 174 of file WeakForm.h.

TSFArray<TSFArray<TSFArray<bool> > > Sundance::WeakForm::isTransposed_ [private]
 

Definition at line 175 of file WeakForm.h.

TSFArray<TSFArray<TSFArray<bool> > > Sundance::WeakForm::isEssentialBC_ [private]
 

Definition at line 176 of file WeakForm.h.

TSFArray<TSFArray<bool> > Sundance::WeakForm::isNonzero_ [private]
 

Definition at line 181 of file WeakForm.h.


The documentation for this class was generated from the following file:
Contact:
Kevin Long (krlong@ca.sandia.gov)


Documentation generated by