25 #include <queso/VectorSpace.h>
26 #include <queso/VectorSubset.h>
27 #include <queso/BoxSubset.h>
28 #include <queso/IntersectionSubset.h>
29 #include <queso/InstantiateIntersection.h>
30 #include <queso/GslVector.h>
31 #include <queso/GslMatrix.h>
35 template<
class V,
class M>
41 unsigned int dim1 = domain1.
vectorSpace().dimGlobal();
42 unsigned int dim2 = domain2.
vectorSpace().dimGlobal();
48 if ((tmp1 != NULL) && (tmp2 != NULL)) {
55 else if (dim1 == dim2) {
74 if ((tmp1 != NULL) && (tmp2 != NULL)) {
79 if ((box1 != NULL) && (box2 != NULL)) {
82 for (
unsigned int i = 0; i < dim1; ++i) {
86 for (
unsigned int i = 0; i < dim1; ++i) {
109 if (result == NULL) {
113 if ((tmp1 != NULL) && (tmp2 != NULL)) {
132 if (result == NULL) {
136 if ((tmp1 != NULL) && (tmp2 != NULL)) {
155 if (result == NULL) {
VectorSet< V, M > * InstantiateIntersection(const VectorSet< V, M > &domain1, const VectorSet< V, M > &domain2)
This method calculates the intersection of domain1 and domain2.
A templated class for handling sets.
A templated class representing the intersection of two vector sets.
#define queso_error_msg(msg)
unsigned int dimGlobal() const
const BaseEnvironment & env() const
Environment.
const V & maxValues() const
Vector of the maximum values of the box subset.
A templated class for handling subsets.
const V & minValues() const
Vector of the minimum values of the box subset.
const VectorSpace< V, M > & vectorSpace() const
Vector space to which this set belongs to. See template specialization.
Class representing a subset of a vector space shaped like a hypercube.
const std::string & prefix() const
Access to private attribute m_prefix.
A class representing a vector space.
virtual const VectorSpace< V, M > & vectorSpace() const =0
Vector space to which this set belongs to. See template specialization.