Скачиваний:
31
Добавлен:
01.05.2014
Размер:
620 б
Скачать
unit SpecialFunctions;

interface

  uses
    SysUtils,
    Utils,
    Exceptions,
    Statistics;

  function log2Binomial( a : double; b : double) : double;
  function lnFactorial(x : double ) : double;

implementation

  function log2Binomial( a : double; b : double) : double;
  begin
    if (Utils.gr(b,a)) then
      raise EArithmeticException.Create('Невозможно вычислить биномиальные коэффициенты');

    result := (lnFactorial(a)-lnFactorial(b)-lnFactorial(a-b))/ln(2);
  end;

  function lnFactorial( x : double) : double;
  begin
    result := Statistics.lnGamma(x+1);
  end;

end.
Соседние файлы в папке DMCore