Hi,
Sometimes one will define functions that are defined by numerical integration and then perhaps use such functions in another numerical integration. In Mathematica 4.0 this works fine, but in 9.0 this results in error messages and the execution is much slower than in 4.0. Here is an example:
F[a_, b_, c_] := Sin[a + b + c]
H[a_, b_] := NIntegrate[F[a, b, c], {c, 0, 1}]
G[a_] := NIntegrate[H[a, b], {b, 0, 2}]
Then the evaluation of G[1] gives several warnings:
NIntegrate::inumr: The integrand Sin[1+b+c] has evaluated to non-numerical values for all sampling points in the region with boundaries {{0,1}}. >>
NIntegrate::inumr: The integrand Sin[1+b+c] has evaluated to non-numerical values for all sampling points in the region with boundaries {{0,1}}. >>
NIntegrate::inumr: The integrand Sin[1+b+c] has evaluated to non-numerical values for all sampling points in the region with boundaries {{0,1}}. >>
General::stop: Further output of NIntegrate::inumr will be suppressed during this calculation. >>
and then the result
0.965749
How can I get rid of the warnings? There is obvious something that Mathematica 9 does not like in this construction.