25 #ifndef UQ_CONCATENATION_SUBSET_H
26 #define UQ_CONCATENATION_SUBSET_H
28 #include <queso/VectorSpace.h>
29 #include <queso/VectorSubset.h>
42 template <
class V = GslVector,
class M = GslMatrix>
72 virtual void centroid (V& vec)
const;
75 virtual void moments (M & mat)
const;
80 void print (std::ostream& os)
const;
89 std::vector<const VectorSet<V,M>* >
m_sets;
94 #endif // UQ_CONCATENATION_SUBSET_H
virtual void moments(M &mat) const
Returns the set moments of inertia in the matrix mat.
bool contains(const V &vec) const
Determines whether each one of the subsets m_sets (class' private attributes) contains vector vec...
A class representing a vector space.
const std::string & prefix() const
Access to private attribute m_prefix.
A templated class representing the concatenation of two vector subsets.
ConcatenationSubset(const char *prefix, const VectorSpace< V, M > &vectorSpace, const VectorSet< V, M > &set1, const VectorSet< V, M > &set2)
Constructor - two sets only.
A templated class for handling subsets.
double volume() const
Set volume; access to private attribute m_volume.
virtual void centroid(V &vec) const
Returns the set centroid in the vector vec.
A templated class for handling sets.
~ConcatenationSubset()
Destructor.
void print(std::ostream &os) const
Prints the subsets (via protected attribute m_sets).
std::vector< const VectorSet< V, M > * > m_sets
const VectorSpace< V, M > & vectorSpace() const
Vector space to which this set belongs to. See template specialization.