@@ -220,7 +220,7 @@ public override double Mean
220220 {
221221 get
222222 {
223- if ( _beta . Min == _beta . Max ) return _beta . Min ;
223+ if ( _beta . Min . AlmostEquals ( _beta . Max ) ) return _beta . Min ;
224224 return _beta . Mean < MinAllowableValue ? MinAllowableValue : _beta . Mean > MaxAllowableValue ? MaxAllowableValue : _beta . Mean ;
225225 }
226226 }
@@ -230,7 +230,7 @@ public override double Median
230230 {
231231 get
232232 {
233- if ( _beta . Min == _beta . Max ) return _beta . Min ;
233+ if ( _beta . Min . AlmostEquals ( _beta . Max ) ) return _beta . Min ;
234234 return _beta . Median < MinAllowableValue ? MinAllowableValue : _beta . Median > MaxAllowableValue ? MaxAllowableValue : _beta . Median ;
235235 }
236236 }
@@ -240,7 +240,7 @@ public override double Mode
240240 {
241241 get
242242 {
243- if ( _beta . Min == _beta . Max ) return _beta . Min ;
243+ if ( _beta . Min . AlmostEquals ( _beta . Max ) ) return _beta . Min ;
244244 return _beta . Mode < MinAllowableValue ? MinAllowableValue : _beta . Mode > MaxAllowableValue ? MaxAllowableValue : _beta . Mode ;
245245 }
246246 }
@@ -404,7 +404,7 @@ public override double PDF(double x)
404404 if ( _parametersSolved == false ) SolveParameters ( ) ;
405405 // These checks are done specifically for an application where a
406406 // user inputs min = max = mode
407- if ( _beta . Min == _beta . Max ) return 0.0d ;
407+ if ( _beta . Min . AlmostEquals ( _beta . Max ) && _beta . Min . AlmostEquals ( _beta . Mode ) ) return 0.0d ;
408408 if ( double . IsNaN ( _beta . Mode ) ) return 0.0d ;
409409 //
410410 if ( x < MinAllowableValue ) x = MinAllowableValue ;
@@ -419,7 +419,7 @@ public override double CDF(double x)
419419 if ( _parametersSolved == false ) SolveParameters ( ) ;
420420 // These checks are done specifically for an application where a
421421 // user inputs min = max = mode
422- if ( _beta . Min == _beta . Max ) return 1d ;
422+ if ( _beta . Min . AlmostEquals ( _beta . Max ) && _beta . Min . AlmostEquals ( _beta . Mode ) ) return 1d ;
423423 if ( double . IsNaN ( _beta . Mode ) ) return 1d ;
424424 //
425425 if ( x < MinAllowableValue ) x = MinAllowableValue ;
@@ -439,7 +439,7 @@ public override double InverseCDF(double probability)
439439 if ( x > MaxAllowableValue ) x = MaxAllowableValue ;
440440 // These checks are done specifically for an application where a
441441 // user inputs min = max = mode
442- if ( _beta . Min == _beta . Max ) return x ;
442+ if ( _beta . Min . AlmostEquals ( _beta . Max ) && _beta . Min . AlmostEquals ( _beta . Mode ) ) return x ;
443443 if ( double . IsNaN ( _beta . Mode ) ) return x ;
444444 //
445445 try
0 commit comments