Extreme Optimization >
User's Guide >
Statistics Library >
Continuous Probability Distributions >
The Weibull Distribution
Extreme Optimization User's Guide
User's Guide
Up: Continuous Probability Distributions Next: Discrete Probability Distributions Previous: The Continuous Uniform Distribution Contents
The Weibull Distribution
The Weibull distribution can be used to model the lifetime
of equipment in reliability engineering.
The Weibull distribution has a scale parameter and a shape
parameter often called the order. These parameters are usually
denoted by the Greek letters β and η. η is the scale
parameter, and is often called the characteristic life. β is a
shape parameter.
The probability density function is:

The Weibull distribution may also have a location parameter,
which translates the distribution functions up or down the X axis
by the specified amount.
The Weibull distribution is implemented by the WeibullDistribution
class. It has one constructor with two parameters. The first
parameter is the location parameter, and corresponds to the mode of
the probability density function. The second parameter is the scale
parameter.
The following constructs the same Weibull distribution with
scale parameter 6.8 and shape parameter 4.1:
| C# | Copy Code |
WeibullDistribution Weibull = new WeibullDistribution(6.8, 4.1); |
| Visual Basic | Copy Code |
Dim Weibull As WeibullDistribution = New WeibullDistribution(6.8, 4.1) |
The WeibullDistribution class has three specific
properties,
LocationParameter,
ScaleParameter and
ShapeParameter, which return the parameters of the
distribution.
WeibullDistribution has one static (Shared
in Visual Basic) method,
GetRandomVariate, which generates a random variate
using a user-supplied uniform random number generator. The second
and third parameters are the location and scale parameters of the
distribution.
| C# | Copy Code |
MersenneTwister random = new MersenneTwister();
double variate = WeibullDistribution.GetRandomVariate(random, 6.8, 4.1); |
| Visual Basic | Copy Code |
Dim random As MersenneTwister = New MersenneTwister()
Dim variate As Double = WeibullDistribution.GetRandomVariate(random, 6.8, 4.1) |
The above example uses the Mersenne
Twister to generate uniform random numbers.
For details of the properties and methods common to all
continuous distribution classes, see the topic on ContinuousDistribution
class.
Up: Continuous Probability Distributions Next: Discrete Probability Distributions Previous: The Continuous Uniform Distribution Contents
Copyright 2004-2008,
Extreme Optimization. All rights reserved.
Extreme Optimization, Complexity made simple, M#, and M
Sharp are trademarks of ExoAnalytics Inc.
Microsoft, Visual C#, Visual Basic, Visual Studio, Visual
Studio.NET, and the Visual Studio Logo are registered trademarks of Microsoft Corporation