Reworked weighting matrix calls to do some work outside that function.

This will avoid duplicate calculation of the (1/q) + L(1/q) term.