yes convolve seems to be upcasting if the output has a larger dtype