% matlab script to derive the 2-point Gauss-Laguerre quadrature rule
% and use it on an example
% inelegantly set up equations from method of undetermined coefficients
% and solve
clear all
close all
format long
eq1 = 'w1*1 + w2*1 = 1';
eq2 = 'w1*x1 + w2*x2 = 1';
eq3 = 'w1*x1^2 + w2*x2^2 = 2';
eq4 = 'w1*x1^3 + w2*x2^3 = 6';
[w1,w2,x1,x2] = solve(eq1,eq2,eq3,eq4)
pause
% note: there are two solutions
% we pick the one where x1 < x2
[x1,index] = min(double(x1))
w1 = double(w1(index))
x2 = double(x2(index))
w2 = double(w2(index))
% define the integrand
f = @(x) exp(x).*log(1+exp(-x));
% use Gauss-Laguerre quadrature to approximate it
glq = w1*