org.apfloat.samples
Class Pi.RamanujanPiCalculator

java.lang.Object
  extended by org.apfloat.samples.Pi.AbstractBinarySplittingPiCalculator
      extended by org.apfloat.samples.Pi.RamanujanPiCalculator
All Implemented Interfaces:
Serializable, Operation<Apfloat>
Enclosing class:
Pi

public static class Pi.RamanujanPiCalculator
extends Pi.AbstractBinarySplittingPiCalculator

Basic class for calculating pi using the Ramanujan binary splitting algorithm.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.apfloat.samples.Pi.AbstractBinarySplittingPiCalculator
precision, radix
 
Constructor Summary
Pi.RamanujanPiCalculator(long precision, int radix)
          Construct a pi calculator with the specified precision and radix.
 
Method Summary
protected  Apfloat a(long n)
          Binary splitting term.
 Apfloat execute()
          Calculate pi using the Ramanujan binary splitting algorithm.
protected  Apfloat p(long n)
          Binary splitting term.
protected  Apfloat q(long n)
          Binary splitting term.
 
Methods inherited from class org.apfloat.samples.Pi.AbstractBinarySplittingPiCalculator
r
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Pi.RamanujanPiCalculator

public Pi.RamanujanPiCalculator(long precision,
                                int radix)
                         throws ApfloatRuntimeException
Construct a pi calculator with the specified precision and radix.

Parameters:
precision - The target precision.
radix - The radix to be used.
Throws:
ApfloatRuntimeException
Method Detail

a

protected Apfloat a(long n)
             throws ApfloatRuntimeException
Description copied from class: Pi.AbstractBinarySplittingPiCalculator
Binary splitting term.

Specified by:
a in class Pi.AbstractBinarySplittingPiCalculator
Parameters:
n - The term.
Throws:
ApfloatRuntimeException

p

protected Apfloat p(long n)
             throws ApfloatRuntimeException
Description copied from class: Pi.AbstractBinarySplittingPiCalculator
Binary splitting term.

Specified by:
p in class Pi.AbstractBinarySplittingPiCalculator
Parameters:
n - The term.
Throws:
ApfloatRuntimeException

q

protected Apfloat q(long n)
             throws ApfloatRuntimeException
Description copied from class: Pi.AbstractBinarySplittingPiCalculator
Binary splitting term.

Specified by:
q in class Pi.AbstractBinarySplittingPiCalculator
Parameters:
n - The term.
Throws:
ApfloatRuntimeException

execute

public Apfloat execute()
Calculate pi using the Ramanujan binary splitting algorithm.

Returns:
Return value of the operation.