28 typedef typename std::vector<gsMultiBasis<T> >::const_iterator mbIterator;
35 GISMO_ASSERT(bases.size()>0,
"Cannot construct empty list of gsBasis.");
36 m_refs.reserve(bases.size());
37 for(mbIterator it = bases.begin(); it != bases.end(); ++it)
38 m_refs.push_back( &(*it)[k] );
43 {
return *m_refs[i]; }
47 {
return *m_refs.front(); }
51 {
return *m_refs.front(); }
55 {
return *m_refs.back(); }
58 inline size_t size ()
const
59 {
return m_refs.size(); }
62 inline short_t dim()
const {
return m_refs.front()->dim();}
65 std::vector<const gsBasis<T>*> m_refs;
#define short_t
Definition: gsConfig.h:35
short_t dim() const
Return the parametric dimension of the bases (assumed to be the same for all the bases) ...
Definition: gsBasisRefs.h:62
const gsBasis< T > & operator[](size_t i) const
Accessor for a certain gsBasis.
Definition: gsBasisRefs.h:42
Simple class to hold a list of gsBasis which discretize a PDE system on a given patch.
Definition: gsBasisRefs.h:25
#define GISMO_ASSERT(cond, message)
Definition: gsDebug.h:89
Holds a set of patch-wise bases and their topology information.
Definition: gsMultiBasis.h:36
size_t size() const
Size.
Definition: gsBasisRefs.h:58
const gsBasis< T > & back() const
Back.
Definition: gsBasisRefs.h:54
const gsBasis< T > & front() const
Front.
Definition: gsBasisRefs.h:50
A basis represents a family of scalar basis functions defined over a common parameter domain...
Definition: gsBasis.h:78
gsBasisRefs(std::vector< gsMultiBasis< T > > &bases, const size_t k)
Constructor from a gsMultiBasis bases and a patch index k.
Definition: gsBasisRefs.h:33