function
s=trapezio_comp_uniforme(a,b,n,func)
// s=trapezio_composto_uniforme(a,b,n,f)
// Calcula a integral definida de f(x)dx com limites de
// integração "a" e "b" usando a regra composta
uniforme do trapézio,
// com o intervalo [a,b] dividido em n sub-intervalos.
// A função "f" deve ser passada como uma "string"
contendo a função,
// escrita de acordo com as regras do Scilab; por exemplo, para a
// função f(x)=e^x-2, escreva 'exp(x)-2'.
// (C) Rudnei Dias da Cunha 2008
deff('[v]=f(x)','v='+func);
s = 0;
for i=1:n-1
s = s+f(a+i*(b-a)/n);
end
s = ((b-a)/n)/2*(f(a)+2*s+f(b));
endfunction
Nenhum comentário:
Postar um comentário