OK .
you're using an elliptic. 11 poles would easily give you -60dB. No point in any more since the arduino's a/d is only 60dB. 100 poles is way over the top. Choose the 1dB ripple option in the MATLAB examples - good enough.
Sample at eg 200Hz with a 5Hz 2-pole lowpass analogue filter ( eg Sallen and Key) in front.
DON'T use delay() look at the 'blink LED without delay' example in the IDE
Should give you plenty of time for sums.
Or, if you just want heart rate, use a FFT with the same analogue filter and sample rate. Given the 10-bit limit of the input data, integer (16-bit) arithmetic should be good enough.
And as for the code, why bother with pointers at all? - just manipulate the index of the arrays in for() loops. Put your data input in a ring buffer.
Allan
ps If you're trying to get heart rate by pointing an x-band source at a running person and looking for reflections , I think there'll be so much noise that it won't work.
Good luck!