23 for(
int i=0;i<dim+1;i++) {
34 os <<
"FieldPattern: " << dim <<
" Subcell types" << std::endl;
35 for(
int i=0;i<dim;i++) {
37 os <<
"FieldPattern: " << subcells <<
" subcells of type " << i << std::endl;
39 for(
int j=0;j<subcells;j++) {
41 os <<
"FieldPattern: subcell " << j <<
" = [ ";
42 for(std::size_t k=0;k<indices.size();k++)
43 os << indices[k] <<
" ";
44 os <<
"]" << std::endl;
58 for(std::size_t d=0;d<dim;d++)
66 bool consistent =
true;
69 for(std::size_t d=0;d<dim+1;d++) {
72 for(
int i=1;i<numSC;i++) {
88 for(
int d=0;d<dimension+1;d++) {
94 if(myVector.size()!=argVector.size())
98 bool eq = std::equal(myVector.begin(),myVector.end(),argVector.begin());
virtual int getDimension() const =0
virtual bool sameGeometry(const FieldPattern &fp) const
virtual bool consistentSubcells() const
virtual int numberIds() const
virtual ~FieldPattern()=0
Do nothing destructor.
virtual void print(std::ostream &os) const
virtual bool equals(const FieldPattern &fp) const
std::ostream & operator<<(std::ostream &os, const AssemblyEngineInArgs &in)
virtual const std::vector< int > & getSubcellIndices(int dim, int cellIndex) const =0
virtual int getSubcellCount(int dim) const =0