Examples - pi.science.distribution.PIErlangDistribution
1. How to compute Erlang distribution propability for X (CDF, lambda=1, k=1) ?
PIErlangDistribution distribution = new PIErlangDistribution(); Console.WriteLine( "Probability for x=0.0 : " + distribution.GetCDF( 0.0 ) ); Console.WriteLine( "Probability for x=0.1111 : " + distribution.GetCDF( 0.1111 ) ); Console.WriteLine( "Probability for x=0.25 : " + distribution.GetCDF( 0.25 ) ); Console.WriteLine( "Probability for x=8 : " + distribution.GetCDF( 8 ) );
Output:
Probability for x=0.0 : 0 Probability for x=0.1111 : 0,105150740471317 Probability for x=0.25 : 0,221199216928595 Probability for x=8 : 0,999664537372097
2. How to compute X for Erlang distribution propability (InverseCDF, lambda=1, k=1) ?
PIErlangDistribution distribution = new PIErlangDistribution(); Console.WriteLine( "X value for probability for prob=0.0 : " + distribution.GetInverseCDF( 0.0 ) ); Console.WriteLine( "X value for probability for prob=0.1053 : " + distribution.GetInverseCDF( 0.1053 ) ); Console.WriteLine( "X value for probability for prob=0.2213 : " + distribution.GetInverseCDF( 0.2213 ) );
X value for probability for prob=0.0 : 0 X value for probability for prob=0.1053 : 0,111266981810331 X value for probability for prob=0.2213 : 0,250129703432322
3. How to compute Erlang probability density for X (=curve points, PDF) ?
PIErlangDistribution distribution = new PIErlangDistribution(); Console.WriteLine( "x=0.1 : " + distribution.GetPDF( 0.1 ) ); Console.WriteLine( "x=0.5 : " + distribution.GetPDF( 0.5 ) ); Console.WriteLine( "x=1.0 : " + distribution.GetPDF( 1.0 ) ); Console.WriteLine( "x=2.0 : " + distribution.GetPDF( 2.0 ) ); Console.WriteLine( "x=5.0 : " + distribution.GetPDF( 5.0 ) );
Output:
x=0.1 : 0,90483741803596 x=0.5 : 0,606530659712633 x=1.0 : 0,367879441171442 x=2.0 : 0,135335283236613 x=5.0 : 0,00673794699908547