MathGroup Archive 2008

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

Search the Archive

Re: delayed function assignment

  • To: mathgroup at smc.vnet.net
  • Subject: [mg88187] Re: delayed function assignment
  • From: Szabolcs Horvát <szhorvat at gmail.com>
  • Date: Sun, 27 Apr 2008 07:00:55 -0400 (EDT)
  • Organization: University of Bergen
  • References: <fv1fec$eru$1@smc.vnet.net>

leigh wrote:
> Dear Mathgroup,
> 
> I am trying to integrate the pdf of a chi-square mixture distribution.
> If I define the pdf as
> 
> pdf2[0] := .25
> \!\(pdf2[x] :=  .5*\(\(1/2\^\(1/
>         2\)\)\/Gamma[1/2]\) \(x\^\(1/2 - 1\)\) \[ExponentialE]\^\(\(-x
> \)/
>               2\) +  .25*\(1\/\(2*Gamma[1]\)\) \[ExponentialE]\^\(\(-x
> \)/2\)\)
> 
> I can then obtaing the cumulative distribution function symbolically
> as
> 
> In[14]:=\!\($B"i(Bpdf2[x] \[DifferentialD]x\)
> 
> Out[14]=\!\(\(-0.25`\)\ 2.718281828459045`\^\(\(-0.5`\)\ x\) + 0.5`\ \
> Erf[0.7071067811865476`\ \@x]\)
> 
> I can get numerical values using for example
> 
> In[31]:=\!\(1 -  .25 - $B"i(B\_0\%12 pdf2[x] \[DifferentialD]x\)
> 
> Out[31]=0.000885691
> 
> However if I try to define this as a function of the statistic
> obtained, say
> 
> \!\(cum2[x] := 1 -  .25 - $B"i(B\_0\%x pdf2[t] \[DifferentialD]t\)
> 
> Then
> 
> In[33]:=cum2[9]
> 
> Out[33]=cum2[9]
> 
> Doesn't evaluate. What should I do to obtain the value as output.

Please read the tutorial on defining functions and the introduction to 
patterns:

http://reference.wolfram.com/mathematica/tutorial/DefiningFunctions.html
http://reference.wolfram.com/mathematica/tutorial/Introduction-Patterns.html

The proper function definition in your application has the form

f[x_] := x

and not

f[x] := x

(The latter has a different meaning.)


  • Prev by Date: Re: Base function
  • Next by Date: Re: delayed function assignment
  • Previous by thread: Re: delayed function assignment
  • Next by thread: Re: delayed function assignment