augmented_lagrangian_method on purely computational / numeric functions?



Now that I have figured out how to runge-kutta my ODEs I've built a
little numerical function which gives me a boundary condition error
estimate. I'd like to find initial conditions that minimize this bc
error subject to constraints on the initial conditions. I tried
something like:

augmented_lagrangian_method(bcerror(h0,v0,hp0),[h0,v0,hp0],[h0*v0-q0],[.005,.005,.001]);

but I get an error about unable to evaluate a predicate:

Maxima was unable to evaluate the predicate:
errexp1
Maxima was unable to evaluate the predicate:
h0 < 0
#0: lambda([x],is(second(x) < 0 or third(x) < 0 or last(x) < 0))(x=[0,h0,v0,hp0,hp0])
#1: bcerror(h0=h0,v0=v0,hp0=hp0)
 -- an error.  Quitting.  To debug this try debugmode(true);

If I wrap the bcerror term in a lambda, I get an error about
differentiation with respect to a number.

Does augmented_lagrangian_method require that its FOM argument be
symbolically differentiable?

If so, does maxima have a constrained minimization routine that is
purely numerical?

-- 
Daniel Lakeland
dlakelan at street-artists.org
http://www.street-artists.org/~dlakelan