PŘIROZENÝ LOGARITMUS

Logaritmus se základem e, kde e je Eulerovo číslo, se nazývá přirozený logaritmus. Přirozený logaritmus čísla X označujeme LN(X).

ALGORITMUS
Pro 0<X<1 je LN(X)=-LN(1/X)
Pro X>1 vyjádříme X ve tvaru X=(2**M)*Z
Označíme-li Zeta=(1-Z)/(1+Z),
pak platí

LN(X)=M*LN(2)-2*(Zeta/1+Zeta**3/3+Zeta**5/5+...)

IMPLEMENTACE
Jednotka: vnitřní funkce nebo vnější, ale pak bez procedure příkazu
 
Parametry: reálné číslo X>0, přirozené číslo P - počet platných číslic LN(X), implicitně 9
 
Vazba: funkce LN2. Pro P<=200 můžeme použít místo uvedené funkce LN2P samotnou funkci LN2
 
Vrací: prvních P platných číslic hodnoty LN(X)
 


LN: procedure
parse arg X, P
if P = "" then P = 9; numeric digits P
if X < 1 then return - LN(1 / X, P)
do M = 0 until (2 ** M) > X; end
M = M - 1
Z = X / (2 ** M)
Zeta = (1 - Z) / (1 + Z)
N = Zeta; Ln = Zeta; Zetasup2 = Zeta * Zeta
do J = 1
  N = N * Zetasup2; NewLn = Ln + N / (2 * J + 1)
  if NewLn = Ln then return M * LN2P(P) - 2 * Ln
  Ln = NewLn
end

 

 

LN2P: procedure
parse arg P
if P <= 200 then return LN2()
N = 1 / 3; Ln = N; Zetasup2 = 1 / 9
do J = 1
  N = N * Zetasup2; NewLn = Ln + N / (2 * J + 1)
  if NewLn = Ln then return 2 * Ln
  Ln = NewLn
end

 

SOUVISLOSTI

Literatura
Jarník V. Diferenciální počet I
Nakladatelství České Akademie Věd, Praha, 1963


Obálka Obsah Index Hlavní stránka Rexx   Mail

změněno 1. srpna 2001
Copyright © 2000-2001 Vladimír Zábrodský, RNDr.