+# Copyright 2014 MINES ParisTech
+#
+# This file is part of Linpy.
+#
+# Linpy is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# Linpy is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Linpy. If not, see <http://www.gnu.org/licenses/>.
+
import ast
import functools
import re
islset = libisl.isl_set_lexmax(islset)
return self._fromislset(islset, self.symbols)
- def num_parameters(self):
- """
- Return the total number of parameters, input, output or set dimensions.
- """
- islbset = self._toislbasicset(self.equalities, self.inequalities, self.symbols)
- num = libisl.isl_basic_set_dim(islbset, libisl.isl_dim_set)
- return num
- def involves_dims(self, dims):
+ def involves_vars(self, vars):
"""
- Returns true if set depends on given dimensions.
+ Returns true if a set depends on given dimensions.
"""
islset = self._toislset(self.polyhedra, self.symbols)
- dims = sorted(dims)
+ dims = sorted(vars)
symbols = sorted(list(self.symbols))
n = 0
if len(dims)>0:
coordinates[symbol] = coordinate
points.append(Point(coordinates))
return points
-
+
@classmethod
def _polygon_inner_point(cls, points):
symbols = points[0].symbols
return sorted(points, key=angles.get)
def faces(self):
- """
- Returns the vertices of the faces of a polyhedra.
- """
+ """
+ Returns the vertices of the faces of a polyhedra.
+ """
faces = []
for polyhedron in self.polyhedra:
vertices = polyhedron.vertices()
return False
def subs(self, symbol, expression=None):
- """
- Subsitute the given value into an expression and return the resulting expression.
- """
+ """
+ Subsitute the given value into an expression and return the resulting
+ expression.
+ """
polyhedra = [polyhedron.subs(symbol, expression)
for polyhedron in self.polyhedra]
return Domain(*polyhedra)