1. Dec 3, 2007

### valis

I'm trying to make a generalized quadrature method and I seem to be running into some bizarre errors. For n=2 my answer is twice what it should be and for n greater the innaccuracy increases (answer/n is close but worse than answer/2 with n=2). My general algorithm is:
p = nth legendre polynomial
$g = x \rightarrow f\left(\frac{b-a}{2}x+\frac{b+a}{2}\right)$ where f is the function to integrate
xs = n roots of p
ws = weights based on value of n (2 => +/-0.57735026918963)
$\frac{b-a}{2}\sum^n_0{w_ig(x_i)}$

I've checked my generation of legendre functions and they're consistently correct. I also generated a list of roots and verified some against wikipedia's list. Have I stupidly mangled the actual gaussian quadrature algorithm?

I'm writing this in haskell so my code is 1:1 with the pseduo-code above.