next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
NAGtypes :: Point

Point -- a type used to store a point in complex space

Description

This type is used to store a solution to a polynomial system obtained by such fuctions as solveSystem (missing documentation), track (missing documentation). The following methods can be used to access a Point:
  • coordinates -- get the coordinates (returns a list)
  • status -- get the type of solution (e.g., Regular)
  • matrix -- get the coordinates (returns a matrix)
Possible types of Points (accessed by status):
  • Regular -- the jacobian of the polynomial system is regular at the point
  • Singular -- the jacobian of the polynomial system is (near)singular at the point
  • Infinity -- the solution path has been deemed divergent
  • MinStepFailure -- the tracker failed to stay above the minimal step increment threshold
  • NumericalRankFailure -- it is likely that in a sequence of deflations numerical rank did not give the correct rank
  • -- the point has not been classified
Only coordinates are displayed (by net); to see the rest use peek. Different algorithms attach different information describing the point. For example, the solveSystem function with default options produces the following.

i1 : loadPackage "NumericalAlgebraicGeometry";
i2 : R = CC[x,y];
i3 : sols = solveSystem{x^2+y^2-3, x^3-y^3-7}

o3 = {{-1.7957+1.31322*ii, 1.7957+1.31322*ii}, {-1.7957-1.31322*ii,
     ------------------------------------------------------------------------
     1.7957-1.31322*ii}, {-.101284-.779159*ii, -1.89699+.041601*ii},
     ------------------------------------------------------------------------
     {1.89699+.041601*ii, .101284-.779159*ii}, {1.89699-.041601*ii,
     ------------------------------------------------------------------------
     .101284+.779159*ii}, {-.101284+.779159*ii, -1.89699-.041601*ii}}

o3 : List
i4 : pt = first sols

o4 = {-1.7957+1.31322*ii, 1.7957+1.31322*ii}

o4 : Point
i5 : peek pt

o5 = Point{ConditionNumber => 5.99383                            }
           Coordinates => {-1.7957+1.31322*ii, 1.7957+1.31322*ii}
           ErrorBoundEstimate => 5.29083e-17
           LastT => 1
           Multiplicity => 1
           SolutionStatus => Regular
i6 : coordinates pt

o6 = {-1.7957+1.31322*ii, 1.7957+1.31322*ii}

o6 : List
i7 : status pt

o7 = Regular

o7 : Symbol

For example, one may see the condition number of the Jacobian of the polynomial system, evaluated at this point (the smaller the value, the better) as follows.

i8 : pt.ConditionNumber

o8 = 5.99382650733725

o8 : RR (of precision 53)

The other keys that may be attached include

  • NumberOfSteps -- the number of steps in made by the continuation procedure
  • LastT -- the last value of the continuation parameter produced during tracking (equals 1 for a regular solution)
  • ErrorBoundEstimate -- an estimate of the distance from the approximation to the actual solution
  • MaxPrecision -- max precision used during the homotopy tracking
  • WindingNumber -- the winding numeber of a singular solution determined in the end-games
  • DeflationNumber -- number of first-order deflations in the regularization of a singular solution
  • Tracker -- reserved for developers

Methods that use a point :

For the programmer

The object Point is a type, with ancestor classes MutableHashTable < HashTable < Thing.