Triangledf: Difference between revisions
Jump to navigation
Jump to search
imported>Jeremy (Importing text file) |
imported>Bob |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
===Purpose=== | ===Purpose=== | ||
Line 14: | Line 13: | ||
This distribution is usually used for rough models of data and is triangular in shape (hence the name). | This distribution is usually used for rough models of data and is triangular in shape (hence the name). | ||
::<math>f(x)= \frac {2 \left ( x-a \right ) } {\left ( b-a \right ) \left ( c-a \right ) } \mathrm {I} \left ( a \le x \le c \right ) + \frac {2 \left (b-x \right ) } { \left ( b-a \right ) \left ( b-c \right ) } \mathrm {I} \left (c \le x \le b \right )</math> | |||
::<math>F(x)= \frac { \left ( x-a \right ) ^2} {\left ( b-a \right ) \left ( c-a \right ) } \mathrm {I} \left ( a \le x \le c \right ) + 1 - \frac { \left (b-x \right )^2 } { \left ( b-c \right ) \left ( c-a \right ) } \mathrm {I} \left (c \le x \le b \right )</math> | |||
====Inputs==== | ====Inputs==== | ||
Line 23: | Line 29: | ||
* '''x''' = matrix in which the sample data is stored (-inf,inf). | * '''x''' = matrix in which the sample data is stored (-inf,inf). | ||
:: for function = 'quantile' - interval (0,1). | |||
:: for function = 'random' - vector indicating the size of the random matrix to create. | |||
* '''a''' = "min" parameter (real, <= mode). | * '''a''' = "min" parameter (real, <= mode). | ||
* '''b''' = "max" parameter (real, >= mode). | * '''b''' = "max" parameter (real, >= mode). | ||
* '''c''' = "mode" parameter (real, >= min and <=max). | * '''c''' = "mode" parameter (real, >= min and <=max). | ||
Line 40: | Line 42: | ||
===Examples=== | ===Examples=== | ||
====Cumulative | ====Cumulative==== | ||
<pre> | |||
>> prob = triangledf('c',2,1,3,2) | >> prob = triangledf('c',2,1,3,2) | ||
prob = | prob = | ||
0.5000 | 0.5000 | ||
>> x = [0:0.1:10]; | >> x = [0:0.1:10]; | ||
>> plot(x,triangledf('c',x,1,3,2),'b-',x,triangledf('c',x,1,5,3),'r-') | >> plot(x,triangledf('c',x,1,3,2),'b-',x,triangledf('c',x,1,5,3),'r-') | ||
</pre> | |||
====Density | ====Density==== | ||
<pre> | |||
>> prob = triangledf('d',2,1,3,2) | >> prob = triangledf('d',2,1,3,2) | ||
prob = | prob = | ||
1.0000 | 1.0000 | ||
>> x = [0:0.1:10]; | >> x = [0:0.1:10]; | ||
>> plot(x,triangledf('d',x,0,3,0),'b-',x,triangledf('d',x,1,3,2),'r-') | >> plot(x,triangledf('d',x,0,3,0),'b-',x,triangledf('d',x,1,3,2),'r-') | ||
</pre> | |||
====Quantile | ====Quantile==== | ||
<pre> | |||
>> prob = triangledf('q',0.5,1,3,2) | >> prob = triangledf('q',0.5,1,3,2) | ||
prob = | prob = | ||
2.0000 | 2.0000 | ||
</pre> | |||
====Random | ====Random==== | ||
<pre> | |||
>> prob = triangledf('r',[4 1],1,3,2) | >> prob = triangledf('r',[4 1],1,3,2) | ||
ans = | ans = | ||
2.2817 | 2.2817 | ||
1.9431 | 1.9431 | ||
2.1094 | 2.1094 | ||
2.2585 | 2.2585 | ||
</pre> | |||
===See Also=== | ===See Also=== | ||
[[ | [[betadf]], [[cauchydf]], [[chidf]], [[expdf]], [[gammadf]], [[gumbeldf]], [[laplacedf]], [[logisdf]], [[lognormdf]], [[normdf]], [[paretodf]], [[raydf]], [[unifdf]], [[weibulldf]] |
Latest revision as of 07:46, 10 October 2008
Purpose
Triangle distribution.
Synopsis
- prob = triangledf(function,x,a,b,c)
Description
Estimates cumulative distribution function (cumulative, cdf), probability density function (density, pdf), quantile (inverse of cdf), or random numbers for a Triangle distribution.
This distribution is usually used for rough models of data and is triangular in shape (hence the name).
Inputs
- function = [ {'cumulative'} | 'density' | 'quantile' | 'random' ], defines the functionality to be used. Note that the function recognizes the first letter of each string so that the string could be: [ 'c' | 'd' | 'q' | 'r' ].
- x = matrix in which the sample data is stored (-inf,inf).
- for function = 'quantile' - interval (0,1).
- for function = 'random' - vector indicating the size of the random matrix to create.
- a = "min" parameter (real, <= mode).
- b = "max" parameter (real, >= mode).
- c = "mode" parameter (real, >= min and <=max).
Note: If inputs (x, a, b, and c) are not equal in size, the function will attempt to resize all inputs to the largest input using the RESIZE function.
Note: Functions will typically allow input values outside of the acceptable range to be passed but will convert them to NaN.
Examples
Cumulative
>> prob = triangledf('c',2,1,3,2) prob = 0.5000 >> x = [0:0.1:10]; >> plot(x,triangledf('c',x,1,3,2),'b-',x,triangledf('c',x,1,5,3),'r-')
Density
>> prob = triangledf('d',2,1,3,2) prob = 1.0000 >> x = [0:0.1:10]; >> plot(x,triangledf('d',x,0,3,0),'b-',x,triangledf('d',x,1,3,2),'r-')
Quantile
>> prob = triangledf('q',0.5,1,3,2) prob = 2.0000
Random
>> prob = triangledf('r',[4 1],1,3,2) ans = 2.2817 1.9431 2.1094 2.2585
See Also
betadf, cauchydf, chidf, expdf, gammadf, gumbeldf, laplacedf, logisdf, lognormdf, normdf, paretodf, raydf, unifdf, weibulldf