Uses Newton's method to correct the given solutions so that the resulting approximation has its estimated relative error bounded by
ErrorTolerance. The number of iterations made is at most
Iterations.
i1 : R = CC[x,y];
|
i2 : T = {x^2+y^2-1, x*y};
|
i3 : sols = { {1.1_CC,0.1}, {-0.1,1.2} };
|
i4 : refine(T, sols, Software=>M2, ErrorTolerance=>.001, Iterations=>10)
o4 = {{1, 2.17629e-17}, {-4.81205e-29, 1}}
o4 : List
|
In case of a singular (multiplicity>1) solution, while
solveSystem and
track return the end of the homotopy paths marked as a 'failure', it is possible to improve the quality of approximation with
refine. The resulting point will be marked as singular:
i5 : R = CC[x,y];
|
i6 : S = {x^2-1,y^2-1};
|
i7 : T = {x^2+y^2-1, (x-y)^2};
|
i8 : solsS = {(1,1),(-1,-1)};
|
i9 : solsT = track(S,T,solsS)
o9 = {[M,t=.999998], [M,t=.999998]}
o9 : List
|
i10 : solsT / coordinates
o10 = {{.70667, .707543}, {-.70667, -.707543}}
o10 : List
|
i11 : refSols = refine(T, solsT)
o11 = {(.707107, .707107), (-.707107, -.707107)}
o11 : List
|
i12 : refSols / status
o12 = {Singular, Singular}
o12 : List
|