org.apfloat.samples
Class Pi.ChudnovskyPiCalculator

java.lang.Object
  extended by org.apfloat.samples.Pi.AbstractBinarySplittingPiCalculator
      extended by org.apfloat.samples.Pi.ChudnovskyPiCalculator
All Implemented Interfaces:
Serializable, Operation<Apfloat>
Direct Known Subclasses:
PiParallel.ParallelChudnovskyPiCalculator
Enclosing class:
Pi

public static class Pi.ChudnovskyPiCalculator
extends Pi.AbstractBinarySplittingPiCalculator

Basic class for calculating pi using the Chudnovskys' binary splitting algorithm.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.apfloat.samples.Pi.AbstractBinarySplittingPiCalculator
precision, radix
 
Constructor Summary
Pi.ChudnovskyPiCalculator(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 Chudnovskys' 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.ChudnovskyPiCalculator

public Pi.ChudnovskyPiCalculator(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 Chudnovskys' binary splitting algorithm.

Returns:
Return value of the operation.