filled in qsolve_roots from spikes