[Maxima] Using a function as an input to a procedure?
Stavros Macrakis
macrakis at alum.mit.edu
Fri May 2 08:44:50 CDT 2008
On Fri, May 2, 2008 at 5:25 AM, Alasdair McAndrew <amca01 at gmail.com> wrote:
> a small procedure which produces the difference between an integral and its trapezoidal approximation; such as:
>
> dt(f,a,b):=float(abs(integrate(f(s),s,a,b)-(f(a)+f(b))*(b-a)/2));
>
> But this doesn't work
It works for me in Maxima 5.14/GCL
dt(sin,2,3) => 0.0486
dt(sin,%pi*7/8,%pi) => 9.8075E-4
dt(sin,0,e)
Is e positive, negative, or zero? p;
=> abs(0.5 e sin(e) + cos(e) - 1.0)
Could you please tell us the full procedure you followed that gave the error?
By the way, "f" is a bad name for a function parameter, because f will
often be user-defined, and in Maxima semantics, explicitly defined
functions (user-defined or system-defined) take priority over
functional values.
-s
More information about the Maxima
mailing list