8. Convergence Comparison

nsqrt() is Newton's method, and gsqrt() is Goldschmidt algorithm.

Digits which are correct are shown in blue.

initialized using:

        x/2                     minmax error quadratic

nsqrt(2):                       nsqrt(2):
nsqrt: y = 1.000000000000000000 nsqrt: y = 1.424665705758743739
nsqrt: y = 1.500000000000000000 nsqrt: y = 1.414251903754133677
nsqrt: y = 1.416666666666666741 nsqrt: y = 1.414213562892826292
nsqrt: y = 1.414215686274509887 nsqrt: y = 1.414213562373095145
nsqrt: y = 1.414213562374689870 nsqrt: y = 1.414213562373095145
nsqrt: y = 1.414213562373095145 nsqrt: y = 1.414213562373095145
    sqrt = 1.414213562373095145     sqrt = 1.414213562373095145
    diff = 0.000000000000000000     diff = 0.000000000000000000

gsqrt(2):                       gsqrt(2):
gsqrt: y = 1.000000000000000000 gsqrt: y = 1.389286512067859469
gsqrt: y = 1.250000000000000000 gsqrt: y = 1.413558385017565699
gsqrt: y = 1.386718750000000000 gsqrt: y = 1.414213107147212156
gsqrt: y = 1.413416936993598938 gsqrt: y = 1.414213562372875321
gsqrt: y = 1.414212889391814221 gsqrt: y = 1.414213562373095145
gsqrt: y = 1.414213562372614641 gsqrt: y = 1.414213562373095145
    sqrt = 1.414213562373095145     sqrt = 1.414213562373095145
    diff = 0.000000000000480505     diff = 0.000000000000000000

nsqrt(10):                      nsqrt(10):
nsqrt: y = 5.000000000000000000 nsqrt: y = 3.153223854021278694
nsqrt: y = 3.500000000000000000 nsqrt: y = 3.162290658199845783
nsqrt: y = 3.178571428571428381 nsqrt: y = 3.162277660195092377
nsqrt: y = 3.162319422150882797 nsqrt: y = 3.162277660168379523
nsqrt: y = 3.162277660444136274 nsqrt: y = 3.162277660168379523
nsqrt: y = 3.162277660168379523 nsqrt: y = 3.162277660168379523
    sqrt = 3.162277660168379523     sqrt = 3.162277660168379523
    diff = 0.000000000000000000     diff = 0.000000000000000000

gsqrt(10):                      gsqrt(10):
gsqrt: y = 5.000000000000000000 gsqrt: y = 3.199176626212654195
gsqrt: y = 1.250000000000000000 gsqrt: y = 3.161629316070945883
gsqrt: y = 1.777343750000000000 gsqrt: y = 3.162277460792461525
gsqrt: y = 2.385288551449775696 gsqrt: y = 3.162277660168360427
gsqrt: y = 2.899365764300943393 gsqrt: y = 3.162277660168379523
gsqrt: y = 3.130398559817640258 gsqrt: y = 3.162277660168379523
    sqrt = 3.162277660168379523     sqrt = 3.162277660168379523
    diff = 0.031879100350739265     diff = 0.000000000000000000