Basic Polynomial Algebra Subprograms (BPAS)  v. 1.652
Intervals Class Reference

Interval lists for real roots of multivariate polynomials. More...

`#include <interval.h>`

## Public Member Functions

Intervals ()
Construct intervals. More...

Intervals (int v)
Construct intervals with number of variates. More...

Intervals (const Intervals &b)
Copy construct. More...

~Intervals ()
Destroy intervals. More...

Intervalsoperator= (Intervals b)

int numberOfVariables ()
Get number of variables. More...

int numberOfIntervals ()
Get the number of roots. More...

void pushInterval (Interval pI)
Push an interval to the end of the list. More...

void pushInterval (lfixq l, lfixq r)
Push an interval to the end of the list. More...

void pushInterval (double l, double r)

void popInterval ()
Pop the last interval. More...

void clear ()
Clear all the intervals. More...

Intervalinterval (int k, int l=0)
Get a root of a variate. More...

Intervals root (int k)
Get a root of variates. More...

void setVariableNames (const std::vector< Symbol > &xs)
Set variable names. More...

void copyFrom (Intervals &pIs, int k)
Copy the k-th root. More...

void scale (int k)
Scale to 2^k. More...

void transformLeft ()
Scale to that over 2. More...

void transformRight ()
Scale to that plus 1 and then over 2. More...

void negate ()
Negate each interval and re-sort. More...

void concatenate (Intervals &pIs)
Merge another intervals into the end of the current one. More...

bool isExactEqual (Intervals &pIs)

## Friends

std::ostream & operator<< (std::ostream &out, Intervals &a)

## Detailed Description

Interval lists for real roots of multivariate polynomials.

i.e. []*..*[], .., []*..*[]

## ◆ Intervals() [1/3]

 Intervals::Intervals ( )
inline

Construct intervals.

Parameters

## ◆ Intervals() [2/3]

 Intervals::Intervals ( int v )
inline

Construct intervals with number of variates.

Parameters
 v Number of variates

## ◆ Intervals() [3/3]

 Intervals::Intervals ( const Intervals & b )
inline

Copy construct.

Parameters

## ◆ ~Intervals()

 Intervals::~Intervals ( )
inline

Destroy intervals.

Parameters

## ◆ clear()

 void Intervals::clear ( )
inline

Clear all the intervals.

Parameters

## ◆ concatenate()

 void Intervals::concatenate ( Intervals & pIs )

Merge another intervals into the end of the current one.

Parameters
 pIs A list of intervals

## ◆ copyFrom()

 void Intervals::copyFrom ( Intervals & pIs, int k )

Copy the k-th root.

Parameters
 pIs A list of roots k Offset of roots

## ◆ interval()

 Interval* Intervals::interval ( int k, int l = `0` )
inline

Get a root of a variate.

Parameters
 k Offset of roots l Offset of variables in an ascending order

## ◆ negate()

 void Intervals::negate ( )

Negate each interval and re-sort.

Parameters

## ◆ numberOfIntervals()

 int Intervals::numberOfIntervals ( )
inline

Get the number of roots.

Parameters

## ◆ numberOfVariables()

 int Intervals::numberOfVariables ( )
inline

Get number of variables.

Parameters

## ◆ operator=()

 Intervals& Intervals::operator= ( Intervals b )
inline

Parameters

## ◆ popInterval()

 void Intervals::popInterval ( )
inline

Pop the last interval.

Parameters

## ◆ pushInterval() [1/2]

 void Intervals::pushInterval ( Interval pI )
inline

Push an interval to the end of the list.

Parameters
 pI An interval

## ◆ pushInterval() [2/2]

 void Intervals::pushInterval ( lfixq l, lfixq r )
inline

Push an interval to the end of the list.

Parameters
 l Interval's left r Interval's right

## ◆ root()

 Intervals Intervals::root ( int k )
inline

Get a root of variates.

Parameters
 k Offset of roots

## ◆ scale()

 void Intervals::scale ( int k )

Scale to 2^k.

Parameters
 k The power of 2

## ◆ setVariableNames()

 void Intervals::setVariableNames ( const std::vector< Symbol > & xs )
inline

Set variable names.

Parameters
 xs Variable names

## ◆ transformLeft()

 void Intervals::transformLeft ( )

Scale to that over 2.

Parameters

## ◆ transformRight()

 void Intervals::transformRight ( )

Scale to that plus 1 and then over 2.

Parameters

## ◆ operator<<

 std::ostream& operator<< ( std::ostream & out, Intervals & a )
friend

Parameters
 out Stream object a Intervals

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