Changeset 805feb in git


Ignore:
Timestamp:
Feb 5, 2015, 9:14:18 AM (9 years ago)
Author:
Yue Ren <ren@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
5d0cbde5a46435543fb6098ae4b46629d3f54b87
Parents:
8979e0ad7532ffe1c5d21bdd5b3fdcb4aef3cb2b
git-author:
Yue Ren <ren@mathematik.uni-kl.de>2015-02-05 09:14:18+01:00
git-committer:
Yue Ren <ren@mathematik.uni-kl.de>2015-02-06 13:47:07+01:00
Message:
chg: removed redundant tropical curves computation
Location:
Singular/dyn_modules/gfanlib
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • Singular/dyn_modules/gfanlib/bbcone.cc

    r8979e0 r805feb  
    16211621 * Computes a relative interior point for each facet of zc
    16221622 **/
    1623 gfan::ZMatrix interiorPointsOfFacets(const gfan::ZCone zc)
     1623gfan::ZMatrix interiorPointsOfFacets(const gfan::ZCone &zc, const std::set<gfan::ZVector> &exceptThese)
    16241624{
    16251625  gfan::ZMatrix inequalities = zc.getFacets();
     
    16391639  newEquations.appendRow(inequalities[0]);
    16401640  gfan::ZCone facet = gfan::ZCone(newInequalities,newEquations);
    1641   relativeInteriorPoints.appendRow(facet.getRelativeInteriorPoint());
     1641  facet.canonicalize();
     1642  gfan::ZVector interiorPoint = facet.getRelativeInteriorPoint();
     1643  if (exceptThese.count(interiorPoint)==0)
     1644    relativeInteriorPoints.appendRow(interiorPoint);
    16421645
    16431646  /* these are the cases i=1,...,r-2 */
     
    16491652    newEquations.appendRow(inequalities[i]);
    16501653    facet = gfan::ZCone(newInequalities,newEquations);
    1651     relativeInteriorPoints.appendRow(facet.getRelativeInteriorPoint());
     1654    facet.canonicalize();
     1655    interiorPoint = facet.getRelativeInteriorPoint();
     1656    if (exceptThese.count(interiorPoint)==0)
     1657      relativeInteriorPoints.appendRow(interiorPoint);
    16521658  }
    16531659
     
    16571663  newEquations.appendRow(inequalities[r-1]);
    16581664  facet = gfan::ZCone(newInequalities,newEquations);
    1659   relativeInteriorPoints.appendRow(facet.getRelativeInteriorPoint());
     1665  facet.canonicalize();
     1666  interiorPoint = facet.getRelativeInteriorPoint();
     1667  if (exceptThese.count(interiorPoint)==0)
     1668    relativeInteriorPoints.appendRow(interiorPoint);
    16601669
    16611670  return relativeInteriorPoints;
  • Singular/dyn_modules/gfanlib/bbcone.h

    r8979e0 r805feb  
    2020gfan::ZVector randomPoint(const gfan::ZCone* zc);
    2121gfan::ZCone liftUp(const gfan::ZCone &zc);
    22 gfan::ZMatrix interiorPointsOfFacets(const gfan::ZCone zc);
     22gfan::ZMatrix interiorPointsOfFacets(const gfan::ZCone &zc, const std::set<gfan::ZVector> &exceptThese=std::set<gfan::ZVector>());
    2323
    2424#endif
  • Singular/dyn_modules/gfanlib/tropicalTraversal.cc

    r8979e0 r805feb  
    4848  workingList.insert(startingCone);
    4949  const tropicalStrategy* currentStrategy=startingCone.getTropicalStrategy();
     50  std::set<gfan::ZVector> finishedInteriorPoints;
    5051  while(!workingList.empty())
    5152  {
     
    5455     */
    5556    groebnerCone sigma=*(workingList.begin());
    56     gfan::ZMatrix interiorPoints = interiorPointsOfFacets(sigma.getPolyhedralCone());
     57    gfan::ZMatrix interiorPoints = interiorPointsOfFacets(sigma.getPolyhedralCone(),finishedInteriorPoints);
    5758
    5859    for (int i=0; i<interiorPoints.getHeight(); i++)
     
    8182        }
    8283      }
     84      finishedInteriorPoints.insert(interiorPoint);
    8385    }
    8486
Note: See TracChangeset for help on using the changeset viewer.