MathGroup Archive 2010

[Date Index] [Thread Index] [Author Index]

Search the Archive

nested SetDelayed


hello,
maybe somebody can explain what i'm doing wrong in this SIMPLE
example:

In[1] := f[v_, k_] := Sin[v*k]
In[2] := test[v_] := NIntegrate[f[v, k], {k, 0, Pi}]
In[3] := FindRoot[test[x] == 1, {x, 1}]

I have NIntegrate errors:

NIntegrate::inumr: The integrand Sin[k x] has evaluated to non-
numerical values for all sampling points in the region with boundaries
{{0,3.14159}}. >>
NIntegrate::inumr: The integrand k Cos[k x] has evaluated to non-
numerical values for all sampling points in the region with boundaries
{{0,3.14159}}. >>
NIntegrate::inumr: The integrand k Cos[k x] has evaluated to non-
numerical values for all sampling points in the region with boundaries
{{0,3.14159}}. >>
General::stop: Further output of NIntegrate::inumr will be suppressed
during this calculation. >>

and CORRECT answer:
Out[3] = {x -> 1.37697}

Why expression `test` is evaluated with nonnumerical arguments??

I guess my VisualBasic oriented brain can't understand how SetDelayed
work and how i should use it.

Thanks


  • Prev by Date: Re: More Mathematica CAN'T do than CAN???
  • Next by Date: Re: More Mathematica CAN'T do than CAN???
  • Previous by thread: Re: Is it possible to place arbitrary 2D graphics on 3D
  • Next by thread: Re: nested SetDelayed