Re: Plot InverseSurvivalFunction
- To: mathgroup at smc.vnet.net
 - Subject: [mg132012] Re: Plot InverseSurvivalFunction
 - From: Bill Rowe <readnews at sbcglobal.net>
 - Date: Fri, 15 Nov 2013 18:36:24 -0500 (EST)
 - Delivered-to: l-mathgroup@mail-archive0.wolfram.com
 - Delivered-to: l-mathgroup@wolfram.com
 - Delivered-to: mathgroup-outx@smc.vnet.net
 - Delivered-to: mathgroup-newsendx@smc.vnet.net
 
On 11/15/13 at 6:41 AM, emammendes at gmail.com (Eduardo M. A. M.
Mendes) wrote:
>Is there any way to evaluate (or even plot) the inverse survival
>function of a sum of two Fs?
>Here is what I have so far
>\[ScriptCapitalD]=TransformedDistribution[u+v,{u\[Distributed]
>FRatioDistribution[2,2 2],v\[Distributed]FRatioDistribution[2,2 2]}]
>PDF[\[ScriptCapitalD],x]
>Plot[PDF[\[ScriptCapitalD],x],{x,0,10},Filling->Axis]
>CDF[\[ScriptCapitalD],x]
>Plot[CDF[\[ScriptCapitalD],x],{x,0,10},Filling->Axis]
>All above commands return the results I expect but when I try
>Plot[InverseSurvivalFunction[\[ScriptCapitalD],x],{x,0,1},Filling->
>Axis,PlotRange-> Full]
>Mathematica won't show any curve. Does it mean that Mathematica
>could not find an expression for it?
When you say Mathematica didn't show a curve exactly what do you
mean? Do you mean you got the result
Plot[I, {x, 0, 1}]
will give, i.e., a graphic showing an axis with no curve? Or do
you mean simply you didn't get anything in the time you were
willing to wait?
If it is the latter, then there is a way to get the desired
plot. First, note the difference in the amount of time to
produce a plot between
d = TransformedDistribution[
    u + v, {u \[Distributed] FRatioDistribution[2, 2 2],
     v \[Distributed] FRatioDistribution[2, 2 2]}];
pdf = PDF[d, x];
Plot[pdf, {x, 0, 10}, Filling -> Axis]
and
Plot[PDF[d, x], {x, 0, 10}, Filling -> Axis]
When you do Plot[PDF[d,x] ... Mathematica substitutes a
numerical value for x then finds the density function of your
distribution with that value. That is, Mathematica repeats the
computation of the density function for every numerical value
used for x.
By doing pdf=PDF[d,x];Plot[pdf ... the computation of the
density function is done once rather than many times. This way,
Mathematica does far less computation and gets the end result
much faster.
Now, this won't completely solve the problem since
InverseSurvivalFunction[d, x]
returns unevaluated which means Mathematica will have to do a
lot of computation to make a plot with
Plot[InverseSurvivalFunction[d,x], ...
But notice
SurvivalFunction[d,x] does evaluate to closed form expression.
So, a quick way to get the desired plot would be:
sf = SurvivalFunction[d, x];
ParametricPlot[{sf, x}, {x, 0, 10}, AspectRatio -> 1/GoldenRatio]
- Follow-Ups:
- Re: Plot InverseSurvivalFunction
- From: "Eduardo M. A. M. Mendes" <emammendes@gmail.com>
 
 
 - Re: Plot InverseSurvivalFunction