step=%v

m=%v

m=%v

m=%v

m=%v

m=%v

m=%v

m=%v

m=%v

step=%v

m=%v

m=%v

step=%v

m=%v

m=%v

m=%v

m=%v

n_dt = 1 (slider from 1 to 3, step 1)
t0 = 0
ymin = -15.69577091914091
ymax = 12.45342566446986
yscale: ymax - ymin
y0 = 5
Y0_sub = (-0.03260226395677866, 0.44071119885252485)
threshold = 0.03
xmax = 5.315358888603038
xmin = -1.4385773089786478
xscale: xmax - xmin
Y0 = DynamicCoordinates(Y0_sub, If[x(Y0_sub) > xmax, xmax, If[x(Y0_sub)  <  xmin, xmin, If[abs(x(Y0_sub) - t0)  <  (threshold * xscale), t0, x(Y0_sub)]]], If[y(Y0_sub) > ymax, ymax, If[y(Y0_sub)  <  ymin, ymin, If[abs(y(Y0_sub) - y0)  <  (threshold * yscale), y0, y(Y0_sub)]]])
scaleratio: yscale / xscale
f(t) = 1 - t^(2)
fY0: f(x(Y0))
fY0scale: fY0 / scaleratio
step3 = 1 (slider from 1 to 17, step 1)
T31_sub = (3.226106251607923, 8.777893626482463)
xT31ClosePt = If(fY0 ≟ 0, x(T31_sub), ((y(T31_sub) - y(Y0)) / scaleratio + (fY0scale * x(Y0)) + x(T31_sub) / fY0scale) / (fY0scale + 1 / fY0scale))
T31ClosePt: (xT31ClosePt, y(Y0) + (fY0 * (xT31ClosePt - x(Y0))))
Y38_sub = (3.9093838435811685, -12.020238881153517)
T38_sub = (1.9909506045793672, 10.391541838281807)
Y36_sub = (3.0947067146899925, -2.6969381018684198)
T36_sub = (0.8214947260097762, 9.584717732382135)
Y34_sub = (2.0303704656547468, 1.157888181874455)
T34_sub = (-0.5582004116285054, 4.923067342739588)
Y32_sub = (1.058013892462053, 1.9647122877741265)
T32_sub = (3.7385644455878575, 3.9369489910844346)
Y31_sub = (0.3747363004888089, 2.054359410651868)
T31Correct: (step3 ≥ 2) ∧ ((x(T31_sub) - xT31ClosePt)^(2) / xscale^(2) + (y(T31_sub) - y(T31ClosePt))^(2) / yscale^(2)  <  threshold^(2))
dt3 = 0.5
T31 = DynamicCoordinates(T31_sub, If[T31Correct, If[xT31ClosePt > xmax, xmax, If[xT31ClosePt  <  xmin, xmin, xT31ClosePt]], If[x(T31_sub) > xmax, xmax, If[x(T31_sub)  <  xmin, xmin, x(T31_sub)]]], If[T31Correct, If[y(T31ClosePt) > ymax, ymax, If[y(T31ClosePt)  <  ymin, ymin, y(T31ClosePt)]], If[y(T31_sub) > ymax, ymax, If[y(T31_sub)  <  ymin, ymin, y(T31_sub)]]])
tangent31 = Line(Y0, T31)
mT31 = Slope(tangent31)
xY31ClosePt = If(mT31 ≟ 0, x(Y31_sub), ((y(Y31_sub) - y(Y0)) / scaleratio + (mT31 / scaleratio * x(Y0)) + (x(Y31_sub) * scaleratio / mT31)) / (mT31 / scaleratio + scaleratio / mT31))
Y31ClosePt: (xY31ClosePt, y(Y0) + (mT31 * (xY31ClosePt - x(Y0))))
Y31Target: (x(Y0) + dt3, y(Y0) + (mT31 * dt3))
Y31Correct: (step3 ≥ 3) ∧ ((x(Y31ClosePt) - x(Y31Target))^(2) / xscale^(2) + (y(Y31ClosePt) - y(Y31Target))^(2) / yscale^(2)  <  threshold^(2))
Y31 = DynamicCoordinates(Y31_sub, If[xY31ClosePt > xmax, xmax, If[xY31ClosePt  <  xmin, xmin, If[Y31Correct, x(Y31Target), xY31ClosePt]]], If[y(Y31ClosePt) > ymax, ymax, If[y(Y31ClosePt)  <  ymin, ymin, If[Y31Correct, y(Y31Target), y(Y31ClosePt)]]])
fY31: f(x(Y31))
fY31scale: fY31 / scaleratio
xT32ClosePt = If(fY31 ≟ 0, x(T32_sub), ((y(T32_sub) - y(Y31)) / scaleratio + (fY31scale * x(Y31)) + x(T32_sub) / fY31scale) / (fY31scale + 1 / fY31scale))
T32ClosePt: (xT32ClosePt, y(Y31) + (fY31 * (xT32ClosePt - x(Y31))))
T32Correct: (step3 ≥ 4) ∧ ((x(T32_sub) - xT32ClosePt)^(2) / xscale^(2) + (y(T32_sub) - y(T32ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T32 = DynamicCoordinates(T32_sub, If[T32Correct, If[xT32ClosePt > xmax, xmax, If[xT32ClosePt  <  xmin, xmin, xT32ClosePt]], If[x(T32_sub) > xmax, xmax, If[x(T32_sub)  <  xmin, xmin, x(T32_sub)]]], If[T32Correct, If[y(T32ClosePt) > ymax, ymax, If[y(T32ClosePt)  <  ymin, ymin, y(T32ClosePt)]], If[y(T32_sub) > ymax, ymax, If[y(T32_sub)  <  ymin, ymin, y(T32_sub)]]])
tangent32 = Line(Y31, T32)
mT32 = Slope(tangent32)
xY32ClosePt = If(mT32 ≟ 0, x(Y32_sub), ((y(Y32_sub) - y(Y31)) / scaleratio + (mT32 / scaleratio * x(Y31)) + (x(Y32_sub) * scaleratio / mT32)) / (mT32 / scaleratio + scaleratio / mT32))
Y32ClosePt: (xY32ClosePt, y(Y31) + (mT32 * (xY32ClosePt - x(Y31))))
Y32Target: (x(Y31) + dt3, y(Y31) + (mT32 * dt3))
Y32Correct: (step3 ≥ 5) ∧ ((x(Y32ClosePt) - x(Y32Target))^(2) / xscale^(2) + (y(Y32ClosePt) - y(Y32Target))^(2) / yscale^(2)  <  threshold^(2))
Y32 = DynamicCoordinates(Y32_sub, If[xY32ClosePt > xmax, xmax, If[xY32ClosePt  <  xmin, xmin, If[Y32Correct, x(Y32Target), xY32ClosePt]]], If[y(Y32ClosePt) > ymax, ymax, If[y(Y32ClosePt)  <  ymin, ymin, If[Y32Correct, y(Y32Target), y(Y32ClosePt)]]])
fY32: f(x(Y32))
fY32scale: fY32 / scaleratio
T33_sub = (0.03309750450218676, 2.3233007792850917)
xT33ClosePt = If(fY32 ≟ 0, x(T33_sub), ((y(T33_sub) - y(Y32)) / scaleratio + (fY32scale * x(Y32)) + x(T33_sub) / fY32scale) / (fY32scale + 1 / fY32scale))
T33ClosePt: (xT33ClosePt, y(Y32) + (fY32 * (xT33ClosePt - x(Y32))))
T33Correct: (step3 ≥ 6) ∧ ((x(T33_sub) - xT33ClosePt)^(2) / xscale^(2) + (y(T33_sub) - y(T33ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T33 = DynamicCoordinates(T33_sub, If[T33Correct, If[xT33ClosePt > xmax, xmax, If[xT33ClosePt  <  xmin, xmin, xT33ClosePt]], If[x(T33_sub) > xmax, xmax, If[x(T33_sub)  <  xmin, xmin, x(T33_sub)]]], If[T33Correct, If[y(T33ClosePt) > ymax, ymax, If[y(T33ClosePt)  <  ymin, ymin, y(T33ClosePt)]], If[y(T33_sub) > ymax, ymax, If[y(T33_sub)  <  ymin, ymin, y(T33_sub)]]])
tangent33 = Line(Y32, T33)
mT33 = Slope(tangent33)
Y33Target: (x(Y32) + dt3, y(Y32) + (mT33 * dt3))
Y33_sub = (1.4259325958322615, 2.3233007792850917)
xY33ClosePt = If(mT33 ≟ 0, x(Y33_sub), ((y(Y33_sub) - y(Y32)) / scaleratio + (mT33 / scaleratio * x(Y32)) + (x(Y33_sub) * scaleratio / mT33)) / (mT33 / scaleratio + scaleratio / mT33))
Y33ClosePt: (xY33ClosePt, y(Y32) + (mT33 * (xY33ClosePt - x(Y32))))
Y33Correct: (step3 ≥ 7) ∧ ((x(Y33ClosePt) - x(Y33Target))^(2) / xscale^(2) + (y(Y33ClosePt) - y(Y33Target))^(2) / yscale^(2)  <  threshold^(2))
Y33 = DynamicCoordinates(Y33_sub, If[xY33ClosePt > xmax, xmax, If[xY33ClosePt  <  xmin, xmin, If[Y33Correct, x(Y33Target), xY33ClosePt]]], If[y(Y33ClosePt) > ymax, ymax, If[y(Y33ClosePt)  <  ymin, ymin, If[Y33Correct, y(Y33Target), y(Y33ClosePt)]]])
fY33: f(x(Y33))
fY33scale: fY33 / scaleratio
xT34ClosePt = If(fY33 ≟ 0, x(T34_sub), ((y(T34_sub) - y(Y33)) / scaleratio + (fY33scale * x(Y33)) + x(T34_sub) / fY33scale) / (fY33scale + 1 / fY33scale))
T34ClosePt: (xT34ClosePt, y(Y33) + (fY33 * (xT34ClosePt - x(Y33))))
T34Correct: (step3 ≥ 8) ∧ ((x(T34_sub) - xT34ClosePt)^(2) / xscale^(2) + (y(T34_sub) - y(T34ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T34 = DynamicCoordinates(T34_sub, If[T34Correct, If[xT34ClosePt > xmax, xmax, If[xT34ClosePt  <  xmin, xmin, xT34ClosePt]], If[x(T34_sub) > xmax, xmax, If[x(T34_sub)  <  xmin, xmin, x(T34_sub)]]], If[T34Correct, If[y(T34ClosePt) > ymax, ymax, If[y(T34ClosePt)  <  ymin, ymin, y(T34ClosePt)]], If[y(T34_sub) > ymax, ymax, If[y(T34_sub)  <  ymin, ymin, y(T34_sub)]]])
tangent34 = Line(Y33, T34)
mT34 = Slope(tangent34)
xY34ClosePt = If(mT34 ≟ 0, x(Y34_sub), ((y(Y34_sub) - y(Y33)) / scaleratio + (mT34 / scaleratio * x(Y33)) + (x(Y34_sub) * scaleratio / mT34)) / (mT34 / scaleratio + scaleratio / mT34))
Y34ClosePt: (xY34ClosePt, y(Y33) + (mT34 * (xY34ClosePt - x(Y33))))
Y34Target: (x(Y33) + dt3, y(Y33) + (mT34 * dt3))
Y34Correct: (step3 ≥ 9) ∧ ((x(Y34ClosePt) - x(Y34Target))^(2) / xscale^(2) + (y(Y34ClosePt) - y(Y34Target))^(2) / yscale^(2)  <  threshold^(2))
Y34 = DynamicCoordinates(Y34_sub, If[xY34ClosePt > xmax, xmax, If[xY34ClosePt  <  xmin, xmin, If[Y34Correct, x(Y34Target), xY34ClosePt]]], If[y(Y34ClosePt) > ymax, ymax, If[y(Y34ClosePt)  <  ymin, ymin, If[Y34Correct, y(Y34Target), y(Y34ClosePt)]]])
fY34: f(x(Y34))
fY34scale: fY34 / scaleratio
T35_sub = (0.3090365320298431, 7.07459829180538)
xT35ClosePt = If(fY34 ≟ 0, x(T35_sub), ((y(T35_sub) - y(Y34)) / scaleratio + (fY34scale * x(Y34)) + x(T35_sub) / fY34scale) / (fY34scale + 1 / fY34scale))
T35ClosePt: (xT35ClosePt, y(Y34) + (fY34 * (xT35ClosePt - x(Y34))))
T35Correct: (step3 ≥ 9) ∧ ((x(T35_sub) - xT35ClosePt)^(2) / xscale^(2) + (y(T35_sub) - y(T35ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T35 = DynamicCoordinates(T35_sub, If[T35Correct, If[xT35ClosePt > xmax, xmax, If[xT35ClosePt  <  xmin, xmin, xT35ClosePt]], If[x(T35_sub) > xmax, xmax, If[x(T35_sub)  <  xmin, xmin, x(T35_sub)]]], If[T35Correct, If[y(T35ClosePt) > ymax, ymax, If[y(T35ClosePt)  <  ymin, ymin, y(T35ClosePt)]], If[y(T35_sub) > ymax, ymax, If[y(T35_sub)  <  ymin, ymin, y(T35_sub)]]])
tangent35 = Line(Y34, T35)
mT35 = Slope(tangent35)
Y35Target: (x(Y34) + dt3, y(Y34) + (mT35 * dt3))
Y35_sub = (2.569108567018266, -0.27646578416940537)
xY35ClosePt = If(mT35 ≟ 0, x(Y35_sub), ((y(Y35_sub) - y(Y34)) / scaleratio + (mT35 / scaleratio * x(Y34)) + (x(Y35_sub) * scaleratio / mT35)) / (mT35 / scaleratio + scaleratio / mT35))
Y35ClosePt: (xY35ClosePt, y(Y34) + (mT35 * (xY35ClosePt - x(Y34))))
Y35Correct: (step3 ≥ 11) ∧ ((x(Y35ClosePt) - x(Y35Target))^(2) / xscale^(2) + (y(Y35ClosePt) - y(Y35Target))^(2) / yscale^(2)  <  threshold^(2))
Y35 = DynamicCoordinates(Y35_sub, If[xY35ClosePt > xmax, xmax, If[xY35ClosePt  <  xmin, xmin, If[Y35Correct, x(Y35Target), xY35ClosePt]]], If[y(Y35ClosePt) > ymax, ymax, If[y(Y35ClosePt)  <  ymin, ymin, If[Y35Correct, y(Y35Target), y(Y35ClosePt)]]])
fY35: f(x(Y35))
fY35scale: fY35 / scaleratio
xT36ClosePt = If(fY35 ≟ 0, x(T36_sub), ((y(T36_sub) - y(Y35)) / scaleratio + (fY35scale * x(Y35)) + x(T36_sub) / fY35scale) / (fY35scale + 1 / fY35scale))
T36ClosePt: (xT36ClosePt, y(Y35) + (fY35 * (xT36ClosePt - x(Y35))))
T36Correct: (step3 ≥ 11) ∧ ((x(T36_sub) - xT36ClosePt)^(2) / xscale^(2) + (y(T36_sub) - y(T36ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T36 = DynamicCoordinates(T36_sub, If[T36Correct, If[xT36ClosePt > xmax, xmax, If[xT36ClosePt  <  xmin, xmin, xT36ClosePt]], If[x(T36_sub) > xmax, xmax, If[x(T36_sub)  <  xmin, xmin, x(T36_sub)]]], If[T36Correct, If[y(T36ClosePt) > ymax, ymax, If[y(T36ClosePt)  <  ymin, ymin, y(T36ClosePt)]], If[y(T36_sub) > ymax, ymax, If[y(T36_sub)  <  ymin, ymin, y(T36_sub)]]])
tangent36 = Line(Y35, T36)
mT36 = Slope(tangent36)
xY36ClosePt = If(mT36 ≟ 0, x(Y36_sub), ((y(Y36_sub) - y(Y35)) / scaleratio + (mT36 / scaleratio * x(Y35)) + (x(Y36_sub) * scaleratio / mT36)) / (mT36 / scaleratio + scaleratio / mT36))
Y36ClosePt: (xY36ClosePt, y(Y35) + (mT36 * (xY36ClosePt - x(Y35))))
Y36Target: (x(Y35) + dt3, y(Y35) + (mT36 * dt3))
Y36Correct: (step3 ≥ 13) ∧ ((x(Y36ClosePt) - x(Y36Target))^(2) / xscale^(2) + (y(Y36ClosePt) - y(Y36Target))^(2) / yscale^(2)  <  threshold^(2))
Y36 = DynamicCoordinates(Y36_sub, If[xY36ClosePt > xmax, xmax, If[xY36ClosePt  <  xmin, xmin, If[Y36Correct, x(Y36Target), xY36ClosePt]]], If[y(Y36ClosePt) > ymax, ymax, If[y(Y36ClosePt)  <  ymin, ymin, If[Y36Correct, y(Y36Target), y(Y36ClosePt)]]])
fY36: f(x(Y36))
fY36scale: fY36 / scaleratio
T37_sub = (1.4916323642912273, 9.584717732382135)
xT37ClosePt = If(fY36 ≟ 0, x(T37_sub), ((y(T37_sub) - y(Y36)) / scaleratio + (fY36scale * x(Y36)) + x(T37_sub) / fY36scale) / (fY36scale + 1 / fY36scale))
T37ClosePt: (xT37ClosePt, y(Y36) + (fY36 * (xT37ClosePt - x(Y36))))
T37Correct: (step3 ≥ 13) ∧ ((x(T37_sub) - xT37ClosePt)^(2) / xscale^(2) + (y(T37_sub) - y(T37ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T37 = DynamicCoordinates(T37_sub, If[T37Correct, If[xT37ClosePt > xmax, xmax, If[xT37ClosePt  <  xmin, xmin, xT37ClosePt]], If[x(T37_sub) > xmax, xmax, If[x(T37_sub)  <  xmin, xmin, x(T37_sub)]]], If[T37Correct, If[y(T37ClosePt) > ymax, ymax, If[y(T37ClosePt)  <  ymin, ymin, y(T37ClosePt)]], If[y(T37_sub) > ymax, ymax, If[y(T37_sub)  <  ymin, ymin, y(T37_sub)]]])
tangent37 = Line(Y36, T37)
mT37 = Slope(tangent37)
Y37Target: (x(Y36) + dt3, y(Y36) + (mT37 * dt3))
Y37_sub = (3.528325186519167, -5.924234525467106)
xY37ClosePt = If(mT37 ≟ 0, x(Y37_sub), ((y(Y37_sub) - y(Y36)) / scaleratio + (mT37 / scaleratio * x(Y36)) + (x(Y37_sub) * scaleratio / mT37)) / (mT37 / scaleratio + scaleratio / mT37))
Y37ClosePt: (xY37ClosePt, y(Y36) + (mT37 * (xY37ClosePt - x(Y36))))
Y37Correct: (step3 ≥ 15) ∧ ((x(Y37ClosePt) - x(Y37Target))^(2) / xscale^(2) + (y(Y37ClosePt) - y(Y37Target))^(2) / yscale^(2)  <  threshold^(2))
Y37 = DynamicCoordinates(Y37_sub, If[xY37ClosePt > xmax, xmax, If[xY37ClosePt  <  xmin, xmin, If[Y37Correct, x(Y37Target), xY37ClosePt]]], If[y(Y37ClosePt) > ymax, ymax, If[y(Y37ClosePt)  <  ymin, ymin, If[Y37Correct, y(Y37Target), y(Y37ClosePt)]]])
fY37: f(x(Y37))
fY37scale: fY37 / scaleratio
xT38ClosePt = If(fY37 ≟ 0, x(T38_sub), ((y(T38_sub) - y(Y37)) / scaleratio + (fY37scale * x(Y37)) + x(T38_sub) / fY37scale) / (fY37scale + 1 / fY37scale))
T38ClosePt: (xT38ClosePt, y(Y37) + (fY37 * (xT38ClosePt - x(Y37))))
T38Correct: (step3 ≥ 15) ∧ ((x(T38_sub) - xT38ClosePt)^(2) / xscale^(2) + (y(T38_sub) - y(T38ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T38 = DynamicCoordinates(T38_sub, If[T38Correct, If[xT38ClosePt > xmax, xmax, If[xT38ClosePt  <  xmin, xmin, xT38ClosePt]], If[x(T38_sub) > xmax, xmax, If[x(T38_sub)  <  xmin, xmin, x(T38_sub)]]], If[T38Correct, If[y(T38ClosePt) > ymax, ymax, If[y(T38ClosePt)  <  ymin, ymin, y(T38ClosePt)]], If[y(T38_sub) > ymax, ymax, If[y(T38_sub)  <  ymin, ymin, y(T38_sub)]]])
tangent38 = Line(Y37, T38)
mT38 = Slope(tangent38)
Y38Target: (x(Y37) + dt3, y(Y37) + (mT38 * dt3))
xY38ClosePt = If(mT38 ≟ 0, x(Y38_sub), ((y(Y38_sub) - y(Y37)) / scaleratio + (mT38 / scaleratio * x(Y37)) + (x(Y38_sub) * scaleratio / mT38)) / (mT38 / scaleratio + scaleratio / mT38))
Y38ClosePt: (xY38ClosePt, y(Y37) + (mT38 * (xY38ClosePt - x(Y37))))
Y38Correct: (step3 ≥ 17) ∧ ((x(Y38ClosePt) - x(Y38Target))^(2) / xscale^(2) + (y(Y38ClosePt) - y(Y38Target))^(2) / yscale^(2)  <  threshold^(2))
gsub = Integral(f)
step1 = 1 (slider from 1 to 5, step 1)
T11_sub = (2.2931695394906106, -0.09717153841392286)
xT11ClosePt = If(fY0 ≟ 0, x(T11_sub), ((y(T11_sub) - y(Y0)) / scaleratio + (fY0scale * x(Y0)) + x(T11_sub) / fY0scale) / (fY0scale + 1 / fY0scale))
T11ClosePt: (xT11ClosePt, y(Y0) + (fY0 * (xT11ClosePt - x(Y0))))
T11Correct: (step1 ≥ 2) ∧ ((x(T11_sub) - xT11ClosePt)^(2) / xscale^(2) + (y(T11_sub) - y(T11ClosePt))^(2) / yscale^(2)  <  threshold^(2))
dt1 = 2
T11 = DynamicCoordinates(T11_sub, If[T11Correct, If[xT11ClosePt > xmax, xmax, If[xT11ClosePt  <  xmin, xmin, xT11ClosePt]], If[x(T11_sub) > xmax, xmax, If[x(T11_sub)  <  xmin, xmin, x(T11_sub)]]], If[T11Correct, If[y(T11ClosePt) > ymax, ymax, If[y(T11ClosePt)  <  ymin, ymin, y(T11ClosePt)]], If[y(T11_sub) > ymax, ymax, If[y(T11_sub)  <  ymin, ymin, y(T11_sub)]]])
tangent11 = Line(Y0, T11)
LL = Corner(1)
UR = Corner(3)
mT11 = Slope(tangent11)
Y11_sub = (1.4390725495240546, -3.3244679620126085)
xY11ClosePt = If(mT11 ≟ 0, x(Y11_sub), ((y(Y11_sub) - y(Y0)) / scaleratio + (mT11 / scaleratio * x(Y0)) + (x(Y11_sub) * scaleratio / mT11)) / (mT11 / scaleratio + scaleratio / mT11))
Y11ClosePt: (xY11ClosePt, y(Y0) + (mT11 * (xY11ClosePt - x(Y0))))
Y11Target: (x(Y0) + dt1, y(Y0) + (mT11 * dt1))
Y11Correct: (step1 ≥ 3) ∧ ((x(Y11ClosePt) - x(Y11Target))^(2) / xscale^(2) + (y(Y11ClosePt) - y(Y11Target))^(2) / yscale^(2)  <  threshold^(2))
Y11 = DynamicCoordinates(Y11_sub, If[xY11ClosePt > xmax, xmax, If[xY11ClosePt  <  xmin, xmin, If[Y11Correct, x(Y11Target), xY11ClosePt]]], If[y(Y11ClosePt) > ymax, ymax, If[y(Y11ClosePt)  <  ymin, ymin, If[Y11Correct, y(Y11Target), y(Y11ClosePt)]]])
Y0Shadow: Y0
Y11Shadow: Y11
fY11: f(x(Y11))
fY11scale: fY11 / scaleratio
T12_sub = (0.7557949575508102, 5.998832817272487)
xT12ClosePt = If(fY11 ≟ 0, x(T12_sub), ((y(T12_sub) - y(Y11)) / scaleratio + (fY11scale * x(Y11)) + x(T12_sub) / fY11scale) / (fY11scale + 1 / fY11scale))
T12ClosePt: (xT12ClosePt, y(Y11) + (fY11 * (xT12ClosePt - x(Y11))))
T12Correct: (step1 ≥ 4) ∧ ((x(T12_sub) - xT12ClosePt)^(2) / xscale^(2) + (y(T12_sub) - y(T12ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T12 = DynamicCoordinates(T12_sub, If[T12Correct, If[xT12ClosePt > xmax, xmax, If[xT12ClosePt  <  xmin, xmin, xT12ClosePt]], If[x(T12_sub) > xmax, xmax, If[x(T12_sub)  <  xmin, xmin, x(T12_sub)]]], If[T12Correct, If[y(T12ClosePt) > ymax, ymax, If[y(T12ClosePt)  <  ymin, ymin, y(T12ClosePt)]], If[y(T12_sub) > ymax, ymax, If[y(T12_sub)  <  ymin, ymin, y(T12_sub)]]])
tangent12 = Line(Y11, T12)
mT12 = Slope(tangent12)
Y12_sub = (0.9134744018523281, -3.145173716257126)
xY12ClosePt = If(mT12 ≟ 0, x(Y12_sub), ((y(Y12_sub) - y(Y11)) / scaleratio + (mT12 / scaleratio * x(Y11)) + (x(Y12_sub) * scaleratio / mT12)) / (mT12 / scaleratio + scaleratio / mT12))
Y12ClosePt: (xY12ClosePt, y(Y11) + (mT12 * (xY12ClosePt - x(Y11))))
Y12Target: (x(Y11) + dt1, y(Y11) + (mT12 * dt1))
Y12Correct: (step1 ≥ 5) ∧ ((x(Y12ClosePt) - x(Y12Target))^(2) / xscale^(2) + (y(Y12ClosePt) - y(Y12Target))^(2) / yscale^(2)  <  threshold^(2))
Y12 = DynamicCoordinates(Y12_sub, If[xY12ClosePt > xmax, xmax, If[xY12ClosePt  <  xmin, xmin, If[Y12Correct, x(Y12Target), xY12ClosePt]]], If[y(Y12ClosePt) > ymax, ymax, If[y(Y12ClosePt)  <  ymin, ymin, If[Y12Correct, y(Y12Target), y(Y12ClosePt)]]])
Y0Correct: Y0 ≟ (t0, y0)
exact = false
tangent1exact: y = y(Y0) + (f(x(Y0)) * (x - x(Y0)))
g(t) = gsub(t) - gsub(x(Y0)) + y(Y0)
tangent12exact: y = g(x(Y11)) + (f(x(Y11)) * (x - x(Y11)))
segment11 = Segment(Y0, Y11)
segment12 = Segment(Y11, Y12)
c: x = x(Y11)
dt2 = 1
dtsliderlabel: "Δt=" + (If[n_dt ≟ 1, dt1, If[n_dt ≟ 2, dt2, dt3]])
step2 = 1 (slider from 1 to 9, step 1)
T21_sub = (2.910747363004888, 3.578360499573472)
Y21_sub = (0.8740545407769488, 0.8889468132412328)
T22_sub = (3.226106251607924, 1.247535304752198)
Y22_sub = (1.898970928736815, 1.6957709191409045)
T23_sub = (1.4390725495240546, 4.11624323683992)
Y23_sub = (2.8976074093130952, -1.979761118846489)
T24_sub = (1.898970928736815, 7.881422397705054)
Y24_sub = (3.9356637509647547, -9.420472317699017)
xT21ClosePt = If(fY0 ≟ 0, x(T21_sub), ((y(T21_sub) - y(Y0)) / scaleratio + (fY0scale * x(Y0)) + x(T21_sub) / fY0scale) / (fY0scale + 1 / fY0scale))
T21ClosePt: (xT21ClosePt, y(Y0) + (fY0 * (xT21ClosePt - x(Y0))))
T21Correct: (step2 ≥ 2) ∧ ((x(T21_sub) - xT21ClosePt)^(2) / xscale^(2) + (y(T21_sub) - y(T21ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T21 = DynamicCoordinates(T21_sub, If[T21Correct, If[xT21ClosePt > xmax, xmax, If[xT21ClosePt  <  xmin, xmin, xT21ClosePt]], If[x(T21_sub) > xmax, xmax, If[x(T21_sub)  <  xmin, xmin, x(T21_sub)]]], If[T21Correct, If[y(T21ClosePt) > ymax, ymax, If[y(T21ClosePt)  <  ymin, ymin, y(T21ClosePt)]], If[y(T21_sub) > ymax, ymax, If[y(T21_sub)  <  ymin, ymin, y(T21_sub)]]])
tangent21 = Line(Y0, T21)
mT21 = Slope(tangent21)
xY21ClosePt = If(mT21 ≟ 0, x(Y21_sub), ((y(Y21_sub) - y(Y0)) / scaleratio + (mT21 / scaleratio * x(Y0)) + (x(Y21_sub) * scaleratio / mT21)) / (mT21 / scaleratio + scaleratio / mT21))
Y21ClosePt: (xY21ClosePt, y(Y0) + (mT21 * (xY21ClosePt - x(Y0))))
Y21Target: (x(Y0) + dt2, y(Y0) + (mT21 * dt2))
Y21Correct: (step2 ≥ 3) ∧ ((x(Y21ClosePt) - x(Y21Target))^(2) / xscale^(2) + (y(Y21ClosePt) - y(Y21Target))^(2) / yscale^(2)  <  threshold^(2))
Y21 = DynamicCoordinates(Y21_sub, If[xY21ClosePt > xmax, xmax, If[xY21ClosePt  <  xmin, xmin, If[Y21Correct, x(Y21Target), xY21ClosePt]]], If[y(Y21ClosePt) > ymax, ymax, If[y(Y21ClosePt)  <  ymin, ymin, If[Y21Correct, y(Y21Target), y(Y21ClosePt)]]])
segment21 = Segment(Y0, Y21)
Y21Shadow: Y21
fY21: f(x(Y21))
fY21scale: fY21 / scaleratio
xT22ClosePt = If(fY21 ≟ 0, x(T22_sub), ((y(T22_sub) - y(Y21)) / scaleratio + (fY21scale * x(Y21)) + x(T22_sub) / fY21scale) / (fY21scale + 1 / fY21scale))
T22ClosePt: (xT22ClosePt, y(Y21) + (fY21 * (xT22ClosePt - x(Y21))))
T22Correct: (step2 ≥ 4) ∧ ((x(T22_sub) - xT22ClosePt)^(2) / xscale^(2) + (y(T22_sub) - y(T22ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T22 = DynamicCoordinates(T22_sub, If[T22Correct, If[xT22ClosePt > xmax, xmax, If[xT22ClosePt  <  xmin, xmin, xT22ClosePt]], If[x(T22_sub) > xmax, xmax, If[x(T22_sub)  <  xmin, xmin, x(T22_sub)]]], If[T22Correct, If[y(T22ClosePt) > ymax, ymax, If[y(T22ClosePt)  <  ymin, ymin, y(T22ClosePt)]], If[y(T22_sub) > ymax, ymax, If[y(T22_sub)  <  ymin, ymin, y(T22_sub)]]])
tangent22 = Line(Y21, T22)
mT22 = Slope(tangent22)
xY22ClosePt = If(mT22 ≟ 0, x(Y22_sub), ((y(Y22_sub) - y(Y21)) / scaleratio + (mT22 / scaleratio * x(Y21)) + (x(Y22_sub) * scaleratio / mT22)) / (mT22 / scaleratio + scaleratio / mT22))
Y22ClosePt: (xY22ClosePt, y(Y21) + (mT22 * (xY22ClosePt - x(Y21))))
Y22Target: (x(Y21) + dt2, y(Y21) + (mT22 * dt2))
Y22Correct: (step2 ≥ 5) ∧ ((x(Y22ClosePt) - x(Y22Target))^(2) / xscale^(2) + (y(Y22ClosePt) - y(Y22Target))^(2) / yscale^(2)  <  threshold^(2))
Y22 = DynamicCoordinates(Y22_sub, If[xY22ClosePt > xmax, xmax, If[xY22ClosePt  <  xmin, xmin, If[Y22Correct, x(Y22Target), xY22ClosePt]]], If[y(Y22ClosePt) > ymax, ymax, If[y(Y22ClosePt)  <  ymin, ymin, If[Y22Correct, y(Y22Target), y(Y22ClosePt)]]])
Y22Shadow: Y22
segment22 = Segment(Y21, Y22)
fY22: f(x(Y22))
fY22scale: fY22 / scaleratio
xT23ClosePt = If(fY22 ≟ 0, x(T23_sub), ((y(T23_sub) - y(Y22)) / scaleratio + (fY22scale * x(Y22)) + x(T23_sub) / fY22scale) / (fY22scale + 1 / fY22scale))
T23ClosePt: (xT23ClosePt, y(Y22) + (fY22 * (xT23ClosePt - x(Y22))))
T23Correct: (step2 ≥ 6) ∧ ((x(T23_sub) - xT23ClosePt)^(2) / xscale^(2) + (y(T23_sub) - y(T23ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T23 = DynamicCoordinates(T23_sub, If[T23Correct, If[xT23ClosePt > xmax, xmax, If[xT23ClosePt  <  xmin, xmin, xT23ClosePt]], If[x(T23_sub) > xmax, xmax, If[x(T23_sub)  <  xmin, xmin, x(T23_sub)]]], If[T23Correct, If[y(T23ClosePt) > ymax, ymax, If[y(T23ClosePt)  <  ymin, ymin, y(T23ClosePt)]], If[y(T23_sub) > ymax, ymax, If[y(T23_sub)  <  ymin, ymin, y(T23_sub)]]])
tangent23 = Line(Y22, T23)
mT23 = Slope(tangent23)
xY23ClosePt = If(mT23 ≟ 0, x(Y23_sub), ((y(Y23_sub) - y(Y22)) / scaleratio + (mT23 / scaleratio * x(Y22)) + (x(Y23_sub) * scaleratio / mT23)) / (mT23 / scaleratio + scaleratio / mT23))
Y23ClosePt: (xY23ClosePt, y(Y22) + (mT23 * (xY23ClosePt - x(Y22))))
Y23Target: (x(Y22) + dt2, y(Y22) + (mT23 * dt2))
Y23Correct: (step2 ≥ 7) ∧ ((x(Y23ClosePt) - x(Y23Target))^(2) / xscale^(2) + (y(Y23ClosePt) - y(Y23Target))^(2) / yscale^(2)  <  threshold^(2))
Y23 = DynamicCoordinates(Y23_sub, If[xY23ClosePt > xmax, xmax, If[xY23ClosePt  <  xmin, xmin, If[Y23Correct, x(Y23Target), xY23ClosePt]]], If[y(Y23ClosePt) > ymax, ymax, If[y(Y23ClosePt)  <  ymin, ymin, If[Y23Correct, y(Y23Target), y(Y23ClosePt)]]])
Y23Shadow: Y23
segment23 = Segment(Y22, Y23)
fY23: f(x(Y23))
fY23scale: fY23 / scaleratio
xT24ClosePt = If(fY23 ≟ 0, x(T24_sub), ((y(T24_sub) - y(Y23)) / scaleratio + (fY23scale * x(Y23)) + x(T24_sub) / fY23scale) / (fY23scale + 1 / fY23scale))
T24ClosePt: (xT24ClosePt, y(Y23) + (fY23 * (xT24ClosePt - x(Y23))))
T24Correct: (step2 ≥ 8) ∧ ((x(T24_sub) - xT24ClosePt)^(2) / xscale^(2) + (y(T24_sub) - y(T24ClosePt))^(2) / yscale^(2)  <  threshold^(2))
T24 = DynamicCoordinates(T24_sub, If[T24Correct, If[xT24ClosePt > xmax, xmax, If[xT24ClosePt  <  xmin, xmin, xT24ClosePt]], If[x(T24_sub) > xmax, xmax, If[x(T24_sub)  <  xmin, xmin, x(T24_sub)]]], If[T24Correct, If[y(T24ClosePt) > ymax, ymax, If[y(T24ClosePt)  <  ymin, ymin, y(T24ClosePt)]], If[y(T24_sub) > ymax, ymax, If[y(T24_sub)  <  ymin, ymin, y(T24_sub)]]])
tangent24 = Line(Y23, T24)
mT24 = Slope(tangent24)
xY24ClosePt = If(mT24 ≟ 0, x(Y24_sub), ((y(Y24_sub) - y(Y23)) / scaleratio + (mT24 / scaleratio * x(Y23)) + (x(Y24_sub) * scaleratio / mT24)) / (mT24 / scaleratio + scaleratio / mT24))
Y24ClosePt: (xY24ClosePt, y(Y23) + (mT24 * (xY24ClosePt - x(Y23))))
Y24Target: (x(Y23) + dt2, y(Y23) + (mT24 * dt2))
Y24Correct: (step2 ≥ 9) ∧ ((x(Y24ClosePt) - x(Y24Target))^(2) / xscale^(2) + (y(Y24ClosePt) - y(Y24Target))^(2) / yscale^(2)  <  threshold^(2))
Y24 = DynamicCoordinates(Y24_sub, If[xY24ClosePt > xmax, xmax, If[xY24ClosePt  <  xmin, xmin, If[Y24Correct, x(Y24Target), xY24ClosePt]]], If[y(Y24ClosePt) > ymax, ymax, If[y(Y24ClosePt)  <  ymin, ymin, If[Y24Correct, y(Y24Target), y(Y24ClosePt)]]])
segment24 = Segment(Y23, Y24)
Y24Shadow: Y24
Y12Shadow: Y12
Y31Shadow: Y31
segment31 = Segment(Y0, Y31)
Y32Shadow: Y32
segment32 = Segment(Y31, Y32)
Y33Shadow: Y33
segment33 = Segment(Y32, Y33)
Y34Shadow: Y34
segment34 = Segment(Y33, Y34)
Y35Shadow: Y35
segment35 = Segment(Y34, Y35)
Y36Shadow: Y36
segment36 = Segment(Y35, Y36)
Y37Shadow: Y37
segment37 = Segment(Y36, Y37)
Y38 = DynamicCoordinates(Y38_sub, If[xY38ClosePt > xmax, xmax, If[xY38ClosePt  <  xmin, xmin, If[Y38Correct, x(Y38Target), xY38ClosePt]]], If[y(Y38ClosePt) > ymax, ymax, If[y(Y38ClosePt)  <  ymin, ymin, If[Y38Correct, y(Y38Target), y(Y38ClosePt)]]])
Y38Shadow: Y38
segment38 = Segment(Y37, Y38)
tangent22exact: y = g(x(Y21)) + (f(x(Y21)) * (x - x(Y21)))
tangent23exact: y = g(x(Y22)) + (f(x(Y22)) * (x - x(Y22)))
tangent24exact: y = g(x(Y23)) + (f(x(Y23)) * (x - x(Y23)))
tangent32exact: y = g(x(Y31)) + (f(x(Y31)) * (x - x(Y31)))
tangent33exact: y = g(x(Y32)) + (f(x(Y32)) * (x - x(Y32)))
tangent34exact: y = g(x(Y33)) + (f(x(Y33)) * (x - x(Y33)))
tangent35exact: y = g(x(Y34)) + (f(x(Y34)) * (x - x(Y34)))
tangent36exact: y = g(x(Y35)) + (f(x(Y35)) * (x - x(Y35)))
tangent37exact: y = g(x(Y36)) + (f(x(Y36)) * (x - x(Y36)))
tangent38exact: y = g(x(Y37)) + (f(x(Y37)) * (x - x(Y37)))