| Beta Function | 
Unit
QESBPCSMath
Declaration
Function Beta(const X, Y: Extended): Extended;
Description
Defined for all values of X and Y except negative integers and 0.
Accuracy: Gives about 15 digits.
| Parameters | 
| X | First Value to process. | 
| Y | Second Value to process. | 
Category
Arithmetic Routines for FloatsImplementation
 
| function Beta (const X, Y: Extended): Extended;
var
     R1, R2: Extended;
begin
     if FloatIsZero (X) or (FloatIsNegative (X) and SameFloat (X, Int (X))) then
          raise EMathError.Create (rsNotDefinedForValue);
     if FloatIsZero (Y) or (FloatIsNegative (Y) and SameFloat (Y, Int (Y))) then
          raise EMathError.Create (rsNotDefinedForValue);
     R1 := InverseGamma (X);
     R2 := InverseGamma (Y);
     if FloatIsZero (R1) or FloatIsZero (R2) then
          raise EMathError.Create (rsNotDefinedForValue);
     Result := InverseGamma (X + Y) / (R1 * R2);
End; | 
|  |