Click or drag to resize
WrappedGaussian Structure
Microsoft Research
A Gaussian distribution on a periodic domain, such as angles between 0 and 2*pi.

Namespace: MicrosoftResearch.Infer.Distributions
Assembly: Infer.Runtime (in Infer.Runtime.dll) Version: 2.6.41128.1 (2.6.41128.1)
public struct WrappedGaussian : IDistribution<double>, 
	ICloneable, HasPoint<double>, Diffable, SettableToUniform, 
	CanGetLogProb<double>, SettableTo<WrappedGaussian>, SettableToProduct<WrappedGaussian>, 
	SettableToProduct<WrappedGaussian, WrappedGaussian>, SettableToRatio<WrappedGaussian>, 
	SettableToRatio<WrappedGaussian, WrappedGaussian>, SettableToWeightedSum<WrappedGaussian>, 
	SettableToPower<WrappedGaussian>, Sampleable<double>, CanGetLogAverageOf<WrappedGaussian>, 
	CanGetLogAverageOfPower<WrappedGaussian>, CanGetAverageLog<WrappedGaussian>

The WrappedGaussian type exposes the following members.

Public methodWrappedGaussian(Gaussian, Double)
Create a WrappedGaussian distribution
Public methodWrappedGaussian(Double, Double, Double)
Create a WrappedGaussian distribution
Public methodClone
Make a deep copy of this distribution.
Public methodEquals
True if this distribution has the same parameters as that
(Overrides ValueTypeEquals(Object).)
Public methodGetAverageLog
Get the average logarithm of that distribution under this distribution, i.e. int this(x) log( that(x) ) dx
Public methodGetHashCode
A hash of the distribution parameter values
(Overrides ValueTypeGetHashCode.)
Public methodGetLogAverageOf
Get the logarithm of the average value of that distribution under this distribution, i.e. log(int this(x) that(x) dx)
Public methodGetLogAverageOfPower
Get the integral of this distribution times another distribution raised to a power.
Public methodGetLogProb
Get the log probability density at value.
Public methodIsUniform
True if the distribution is uniform
Public methodMaxDiff
The maximum difference between the parameters of this distribution and that
Public methodMod(Double)
Return x modulo the period
Public methodStatic memberMod(Double, Double)
Return x modulo the period
Public methodNormalize
Public methodStatic memberPointMass
Create a WrappedGaussian distribution with all mass on a single point
Public methodSample
Sample from the distribution
Public methodSample(Double)
Sample from the distribution
Public methodSetTo
Set this distribution equal to value
Public methodSetToPower
Set this equal to (dist)^exponent
Public methodSetToProduct
Set this distribution equal to the approximate product of a and b
Public methodSetToRatio
Set this equal to numerator/denominator
Public methodSetToSum
Set the parameters to match the moments of a mixture distribution.
Public methodSetToUniform
Set the distribution to uniform, keeping the same period
Public methodToString
A human-readable string containing the parameters of the distribution
(Overrides ValueTypeToString.)
Public methodStatic memberUniform
Create a uniform WrappedGaussian distribution
Public operatorStatic memberEquality
Equals operator
Public operatorStatic memberInequality
Not equals operator
Public operatorStatic memberMultiply
Creates a new WrappedGaussian which is the product of two other WrappedGaussians
Public fieldGaussian
The unwrapped Gaussian, with mean in [0,L)
Public fieldPeriod
The period length, greater than zero
Public propertyIsPointMass
True if the distribution is a point mass.
Public propertyPoint
Set this distribution to a point mass, or get its location
The distribution is represented by a unwrapped Gaussian and a period length L. To get the wrapped density, the unwrapped density is summed over all shifts by L, i.e. p(x) = sum_k N(x + Lk; m, v) over all integers k The wrapped density is automatically normalized over the range [0,L) because it simply moves the probability mass that was previously distributed over the real line to all lie in the interval [0,L).
See Also