60 workingList.insert(startingCone);
62 std::set<gfan::ZVector> finishedInteriorPoints;
63 while(!workingList.empty())
71 for (
int i=0;
i<interiorPoints.getHeight();
i++)
76 gfan::ZVector interiorPoint = interiorPoints[
i];
89 for (
int j=0;
j<normalVectors.getHeight();
j++)
94 workingList.insert(neighbour);
98 finishedInteriorPoints.insert(interiorPoint);
102 workingList.erase(sigma);
103 tropicalVariety.insert(sigma);
105 Print(
"cones finished: %lu cones in working list: %lu\n",
106 (
unsigned long)tropicalVariety.size(), (
unsigned long)workingList.size());
gfan::ZCone getPolyhedralCone() const
ring getPolynomialRing() const
std::vector< bool > checkNecessaryTropicalFlips(const groebnerCones &tropicalVariety, const groebnerCones &workingList, const gfan::ZVector &interiorPoint, const gfan::ZMatrix &normalVectors)
void id_Delete(ideal *h, ring r)
deletes an ideal/module/matrix
std::set< groebnerCone, groebnerCone_compare > groebnerCones
const tropicalStrategy * getTropicalStrategy() const
void deletePolynomialData()
ideal gfanlib_satStd_wrapper(ideal I, ring r, tHomog h=testHomog)
poly initial(const poly p, const ring r, const gfan::ZVector &w)
Returns the initial form of p with respect to w.
BOOLEAN tropicalVariety(leftv res, leftv args)
bool restrictToLowerHalfSpace() const
returns true, if valuation non-trivial, false otherwise
gfan::ZMatrix raysOfTropicalStar(ideal I, const ring r, const gfan::ZVector &u, const tropicalStrategy *currentStrategy)
groebnerCone flipCone(const gfan::ZVector &interiorPoint, const gfan::ZVector &facetNormal) const
Given an interior point on the facet and the outer normal factor on the facet, returns the adjacent g...
gfan::ZMatrix interiorPointsOfFacets(const gfan::ZCone &zc, const std::set< gfan::ZVector > &exceptThese)
ideal getPolynomialIdeal() const