While I agree that the integral functions
are very similar to pre-existing octave functions, they do
have some functionality which other functions do not (at least
as far as I know; do correct me if I am wrong).
instance, the integral function supports an "ArrayValued"
option, which quadgk does not (though this probably wouldn't
be terribly hard to implement). Further, integral2 and
integral3 support both a 'tiled' integration method as well as
an 'iterated' integration method. dblquad only implements an
iterated method (but again, if this tiled functionality exists
elsewhere in octave, please tell me). Implementing a tiled
method would probably be harder, which is why I was thinking
of using the cubature code that I found. I could alternatively
attempt to implement it myself in octave code as opposed to C
will also say that dblquad only allows for rectangular
integration limits, while integral2 allows for limits of the
form c(x) < y < d(x), for arbitrary functions c and d
(and the trplquad vs integral3 situation is analogous), but
that should be trivial to implement.