       Re: FindRoot and parameters in NIntegrate

• To: mathgroup at smc.vnet.net
• Subject: [mg124511] Re: FindRoot and parameters in NIntegrate
• From: DrMajorBob <btreat1 at austin.rr.com>
• Date: Sun, 22 Jan 2012 07:22:55 -0500 (EST)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• References: <201201211018.FAA10170@smc.vnet.net>

```Here are two fixes:

FindRoot[{1 + a + b, Integrate[a + b x, {x, 0, 1}]}, {{a, 0}, {b, 0}}]

{a -> 1., b -> -2.}

Clear[f]
f[0., 0.] = 0.;
f[a_?NumericQ, b_?NumericQ] := NIntegrate[a + b x, {x, 0, 1}]
FindRoot[{1 + a + b, f[a, b]}, {{a, 0}, {b, 0}}]

{a -> 1., b -> -2.}

The first error message in your post results from FindRoot trying to
evaluate NIntegrate[a + b x, {x, 0, 1}] before giving a and b numerical
values. The second results from evaluating it with a == b == 0.

The solutions above avoid both problems.

Bobby

On Sat, 21 Jan 2012 04:18:00 -0600, gac <g.crlsn at gmail.com> wrote:

> I am using Mathematica 8 to solve for parameters in an integral and an
> auxiliary equation.  A prototypical problem is
>
> FindRoot[{1 + a + b , NIntegrate[a + b x, {x, 0, 1}]}, {{a, 0}, {b, 0}}]
>
> Mathematica reports the correct answer for the parameters a and b:
>
> {a -> 1., b -> -2.}
>
> But it also reports two error messages:
>
> NIntegrate::inumr: The integrand a+b x has evaluated to non-numerical
> values for all sampling points in the region with boundaries {{0,1}}. >>
>
> NIntegrate::izero: Integral and error estimates are 0 on all integration
> subregions. Try increasing the value of the MinRecursion option. If
> value of integral may be 0, specify a finite value for the AccuracyGoal
> option. >>
>
> I would appreciate any advice or comments on this problem or the error
> messages.
>
> Thanks.
>
> gac
>

--
DrMajorBob at yahoo.com

```

• Prev by Date: Re: FindRoot and parameters in NIntegrate
• Next by Date: Re: log-like symbols?
• Previous by thread: Re: FindRoot and parameters in NIntegrate
• Next by thread: Re: FindRoot and parameters in NIntegrate