%% http://www.mat.ulaval.ca/anum/ch5/html/node10a.html
%% \int_a^b f(x) dx =
%% (b-a)/(2n) * (f (x0) + f (xn) + 2 \sum_{i=1,2,3,...,n-1} f(xi))
%%
%% syntaxe : a b {f} n methodetrapeze --> une approximation de l'integrale de
%% f (x) entre a et b, calculee avec la methode des trapèzes pour n+1
%% points (x0, x1, ..., xn)
/methodetrapeze {
5 dict begin
/@n exch def
/@f exch def
/@b exch def
/@a exch def
/pas @b @a sub @n div def
0
1 1 @n 1 sub {
pas mul @a add %% x_i
@f add %% f (x_i)
} for
2 mul
@a @f add @b @f add
@b @a sub @n 2 mul div mul
end
} def
|