GiNaCRA  0.6.4
GiNaCRA::RealAlgebraicNumberSettings Struct Reference

Collection of RealAlgebraicNumber related settings. More...

#include <settings.h>

Public Types

enum  RefinementStrategy { GENERIC_REFINEMENTSTRATEGY, BINARYSAMPLE_REFINEMENTSTRATEGY, BINARYNEWTON_REFINEMENTSTRATEGY, BINNARYMIDPOINTSAMPLE_REFINEMENTSTRATEGY }
 Predefined flags for different refinement strategies in RealAlgebraicNumberIR::refine. More...
enum  IsolationStrategy {
  SIMPLE_ISOLATIONSTRATEGY, GENERIC_ISOLATIONSTRATEGY, BINARYSAMPLE_ISOLATIONSTRATEGY, TERNARYSAMPLE_ISOLATIONSTRATEGY,
  TERNARYNEWTON_ISOLATIONSTRATEGY
}
 Predefined flags for different real root isolation strategies in RealAlgebraicNumberFactory::realRoots. More...

Static Public Attributes

static const RefinementStrategy DEFAULT_REFINEMENTSTRATEGY
 The default setting for the refinement strategy, used if no other option is specified.
static const unsigned MAXREFINE_REFINEMENTSTRATEGY
 Maximum number of refinements in which the sample() value should be computed for splitting. Otherwise the midpoint is taken.
static const IsolationStrategy DEFAULT_ISOLATIONSTRATEGY
 The default setting for the real root isolation strategy, used if no other option is specified.
static const long MAX_FASTSAMPLE_BOUND
 Maximum bound of an isolating interval so that the OpenInterval::sample method is used for splitting point selection.

Detailed Description

Collection of RealAlgebraicNumber related settings.

Definition at line 109 of file settings.h.


Member Enumeration Documentation

Predefined flags for different real root isolation strategies in RealAlgebraicNumberFactory::realRoots.

Enumerator:
SIMPLE_ISOLATIONSTRATEGY 

Performs just interval splitting by OpenInterval::midpoint.

GENERIC_ISOLATIONSTRATEGY 

Performs interval splitting by OpenInterval::midpoint. If the midpoint happens to be the root itself, it is stored in RealAlgebraicNumberIR::mValue.

BINARYSAMPLE_ISOLATIONSTRATEGY 

During the splitting process, the midpoint is checked for being a root first. Then, OpenInterval::sample is checked. If it didn't prove to be a root, it is used to dissect the interval. Otherwise it is stored in RealAlgebraicNumberIR::mValue.

TERNARYSAMPLE_ISOLATIONSTRATEGY 

During the splitting process, the midpoint is checked for being a root first. Then, OpenInterval::sample is checked. If it didn't prove to be a root, both the midpoint and the sample point are used to split the interval.

TERNARYNEWTON_ISOLATIONSTRATEGY 

During the splitting process, the midpoint is checked for being a root first. Then, OpenInterval::sample is checked. If it didn't prove to be a root, both the midpoint and the sample point are used to split the interval.

Definition at line 131 of file settings.h.

Predefined flags for different refinement strategies in RealAlgebraicNumberIR::refine.

Enumerator:
GENERIC_REFINEMENTSTRATEGY 

Performs interval splitting by OpenInterval::midpoint. If the midpoint happens to be the root itself, it is stored in RealAlgebraicNumberIR::mValue.

BINARYSAMPLE_REFINEMENTSTRATEGY 

OpenInterval::sample is checked for being a root. If not, it is used to dissect the interval. Otherwise it is stored in RealAlgebraicNumberIR::mValue.

BINARYNEWTON_REFINEMENTSTRATEGY 

Newton's iteration is applied for finding the a root first. If no root was found, the value is used to dissect the interval.

BINNARYMIDPOINTSAMPLE_REFINEMENTSTRATEGY 

During the splitting process, the midpoint is checked for being a root first. Then, OpenInterval::sample is checked. If it didn't prove to be a root, it is used to dissect the interval. Otherwise it is stored in RealAlgebraicNumberIR::mValue.

Definition at line 112 of file settings.h.


Field Documentation

The default setting for the real root isolation strategy, used if no other option is specified.

Definition at line 146 of file settings.h.

The default setting for the refinement strategy, used if no other option is specified.

Definition at line 125 of file settings.h.

Maximum bound of an isolating interval so that the OpenInterval::sample method is used for splitting point selection.

Definition at line 149 of file settings.h.

Referenced by GiNaCRA::OpenInterval::sampleFast().

Maximum number of refinements in which the sample() value should be computed for splitting. Otherwise the midpoint is taken.

Definition at line 128 of file settings.h.

Referenced by GiNaCRA::RealAlgebraicNumberIR::refine().


The documentation for this struct was generated from the following file: