Sundance::VectorAssemblyKernel Class Reference

VectorAssemblyKernel builds load vectors. More...

Inheritance diagram for Sundance::VectorAssemblyKernel:

Sundance::VectorFillingAssemblyKernel Sundance::AssemblyKernelBase

List of all members.

Public Member Functions

 VectorAssemblyKernel (const Array< RCP< DOFMapBase > > &dofMap, const Array< RCP< Array< int > > > &isBCIndex, const Array< int > &lowestLocalIndex, Array< Vector< double > > &b, bool partitionBCs, int verb)
 Ctor takes several arguments:.
virtual ~VectorAssemblyKernel ()
virtual void prepareForWorkSet (const Array< Set< int > > &requiredTests, const Array< Set< int > > &requiredUnks, RCP< StdFwkEvalMediator > mediator)
 Do preprocessing steps needed before integrating the current work set.
virtual void fill (bool isBC, const IntegralGroup &group, const RCP< Array< double > > &localValues)
 Adds the results of the current integral group into the assembly results.


Detailed Description

VectorAssemblyKernel builds load vectors.

It derives from VectorFillingAssemblyKernel, which implements the functions shared between all kernels that build vectors, such as FunctionalAndGradientAssemblyKernel.

Definition at line 47 of file SundanceVectorAssemblyKernel.hpp.


Constructor & Destructor Documentation

VectorAssemblyKernel::VectorAssemblyKernel ( const Array< RCP< DOFMapBase > > &  dofMap,
const Array< RCP< Array< int > > > &  isBCIndex,
const Array< int > &  lowestLocalIndex,
Array< Vector< double > > &  b,
bool  partitionBCs,
int  verb 
)

Ctor takes several arguments:.

Parameters:
dofMap is an array of DOFMap ptrs, one for each block
isBCIndex is an array of ptrs to arrays of ints (bools). The value (*isBCIndex[b])[d] indicates whether dof d in block b is or is not an essential BC dof.
lowestLocalIndex stores the lowest locally-owned DOF index for each block
b multivector to be filled
partitionBC whether dirichlet BCs are stored in a separate block
verb verbosity level

Definition at line 46 of file SundanceVectorAssemblyKernel.cpp.

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

Definition at line 78 of file SundanceVectorAssemblyKernel.hpp.


Member Function Documentation

void VectorAssemblyKernel::fill ( bool  isBC,
const IntegralGroup group,
const RCP< Array< double > > &  localValues 
) [virtual]

Adds the results of the current integral group into the assembly results.

Parameters:
isBC whether the current group is a replace-style boundary condition
group the current integral group
localValues the results of integrating the current integral group

Implements Sundance::AssemblyKernelBase.

Definition at line 59 of file SundanceVectorAssemblyKernel.cpp.

References Sundance::VectorFillingAssemblyKernel::insertLocalVectorBatch(), Sundance::IntegralGroup::isOneForm(), Sundance::IntegralGroup::mvIndices(), SUNDANCE_MSG1, Sundance::IntegralGroup::testBlock(), Sundance::IntegralGroup::testID(), Sundance::IntegralGroup::usesMaximalCofacets(), and Sundance::AssemblyKernelBase::verb().

void VectorAssemblyKernel::prepareForWorkSet ( const Array< Set< int > > &  requiredTests,
const Array< Set< int > > &  requiredUnks,
RCP< StdFwkEvalMediator mediator 
) [virtual]

Do preprocessing steps needed before integrating the current work set.

The default implementation does nothing.

Reimplemented from Sundance::AssemblyKernelBase.

Definition at line 82 of file SundanceVectorAssemblyKernel.cpp.

References Sundance::VectorFillingAssemblyKernel::buildLocalDOFMaps(), SUNDANCE_MSG1, and Sundance::AssemblyKernelBase::verb().

Site Contact