Fixed bug in memory allocation for SPT Laplacian

Memory for solve routine uses static arrays (this should be changed!).
When these were allocated, the maximum number of Z modes was used, based on
filtering. If another SPT instance was created with less filtering, then
the static arrays would be too small.

Correct solution would be to get rid of static arrays, but for now
the arrays are allocated to be as large as they could be without any filtering.