-
Notifications
You must be signed in to change notification settings - Fork 37
Open
Description
There is a bug when running the following code in IPython:
import pybertini
import copy
gw = pybertini.System()
x = pybertini.Variable("x")
y = pybertini.Variable("y")
vg = pybertini.VariableGroup()
vg.append(x)
vg.append(y)
gw.add_variable_group(vg)
gw.add_function((x+2)*(y-3)**6)
gw.add_function((x**2 - 1)*(y-5))
gw.homogenize()
gw.auto_patch()
t = pybertini.Variable('t')
td = pybertini.system.start_system.TotalDegree(gw)
gamma = pybertini.function_tree.symbol.Rational.rand()
hom = (1-t)*gw + t*gamma*td
hom.add_path_variable(t)
tr = pybertini.tracking.AMPTracker(hom)
start_time = pybertini.multiprec.Complex("1")
eg_boundary = pybertini.multiprec.Complex("0.0")
midpath_points = [None]*td.num_start_points()
for ii in range(td.num_start_points()):
midpath_points[ii] = pybertini.multiprec.Vector()
code = tr.track_path(result=midpath_points[ii], start_time=start_time, end_time=eg_boundary, start_point=td.start_point_mp(ii))
When this code is run in python3, the following error occurs,
Assertion failed: ((bertini::Precision(x(0))==DoublePrecision() || bertini::Precision(x(0)) == Precision()) && "precision of input vector must match current working precision of patch during rescaling"), function RescalePointToFitInPlace, file ./include/bertini2/system/patch.hpp, line 392.
Abort trap: 6
If the lines
gw.homogenize()
gw.auto_patch()
are commented out, then no error occurs.