FVM derivation: use a smaller stencil before trying brute-force to find the sparsest stencil
D3Q7/D2Q5 should suffice for first derivatives, so try that stencil first before using brute force to find the sparsest D3Q27/D2Q9 stencil. In 2D, it does not really matter because the brute-force search is so fast, but in 3D it can take days to complete (due to that
itertools.product). This pull request does not change the resulting stencil weights, it only massively speeds up the process of determining them.