Open CASCADE Technology  6.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Friends
math_IntegerVector Class Reference

This class implements the real IntegerVector abstract data type.
IntegerVectors can have an arbitrary range which must be define at
the declaration and cannot be changed after this declaration.
Example: math_IntegerVector V1(-3, 5); // an IntegerVector with
range [-3..5]

IntegerVector is copied through assignement :
math_IntegerVector V2( 1, 9);
....
V2 = V1;
V1(1) = 2.0; // the IntegerVector V2 will not be modified.

The Exception RangeError is raised when trying to access outside
the range of an IntegerVector :
V1(11) = 0 // –> will raise RangeError;

The Exception DimensionError is raised when the dimensions of two
IntegerVectors are not compatible :
math_IntegerVector V3(1, 2);
V3 = V1; // –> will raise DimensionError;
V1.Add(V3) // –> will raise DimensionError;
More...

#include <math_IntegerVector.hxx>

Public Member Functions

 math_IntegerVector (const Standard_Integer First, const Standard_Integer Last)
 contructs an IntegerVector in the range [Lower..Upper]
More...
 
 math_IntegerVector (const Standard_Integer First, const Standard_Integer Last, const Standard_Integer InitialValue)
 contructs an IntegerVector in the range [Lower..Upper]
with all the elements set to InitialValue.
More...
 
void Init (const Standard_Integer InitialValue)
 Initialize an IntegerVector with all the elements
set to InitialValue.
More...
 
 math_IntegerVector (const Standard_Address Tab, const Standard_Integer First, const Standard_Integer Last)
 constructs an IntegerVector in the range [Lower..Upper]
which share the "c array" Tab.
More...
 
 math_IntegerVector (const math_IntegerVector &Other)
 constructs a copy for initialization.
An exception is raised if the lengths of the IntegerVectors
are different.
More...
 
Standard_Integer Length () const
 returns the length of an IntegerVector
More...
 
Standard_Integer Lower () const
 returns the value of the Lower index of an IntegerVector.
More...
 
Standard_Integer Upper () const
 returns the value of the Upper index of an IntegerVector.
More...
 
Standard_Real Norm () const
 returns the value of the norm of an IntegerVector.
More...
 
Standard_Real Norm2 () const
 returns the value of the square of the norm of an
IntegerVector.
More...
 
Standard_Integer Max () const
 returns the value of the Index of the maximum element of
an IntegerVector.
More...
 
Standard_Integer Min () const
 returns the value of the Index of the minimum element
of an IntegerVector.
More...
 
void Invert ()
 inverses an IntegerVector.
More...
 
math_IntegerVector Inverse () const
 returns the inverse IntegerVector of an IntegerVector.
More...
 
void Set (const Standard_Integer I1, const Standard_Integer I2, const math_IntegerVector &V)
 
 sets an IntegerVector from <I1> to <I2> to the <br>
     IntegerVector <V>; <br>

An exception is raised if I1<LowerIndex or I2>UpperIndex or I1>I2.
An exception is raised if I2-I1+1 is different from the Length of V.
More...

 
math_IntegerVector Slice (const Standard_Integer I1, const Standard_Integer I2) const
 
 slices the values of the IntegerVector between <I1> and <br>
     <I2>: <br>

Example: [2, 1, 2, 3, 4, 5] becomes [2, 4, 3, 2, 1, 5] between 2 and 5.
An exception is raised if I1<LowerIndex or I2>UpperIndex.
More...

 
void Multiply (const Standard_Integer Right)
 returns the product of an IntegerVector by an integer value.
More...
 
void operator*= (const Standard_Integer Right)
 
math_IntegerVector Multiplied (const Standard_Integer Right) const
 returns the product of an IntegerVector by an integer value.
More...
 
math_IntegerVector operator* (const Standard_Integer Right) const
 
math_IntegerVector TMultiplied (const Standard_Integer Right) const
 returns the product of a vector and a real value.
More...
 
void Add (const math_IntegerVector &Right)
 
 adds the IntegerVector <Right> to an IntegerVector. <br>

An exception is raised if the IntegerVectors have not the same
length.
An exception is raised if the lengths are not equal.
More...

 
void operator+= (const math_IntegerVector &Right)
 
math_IntegerVector Added (const math_IntegerVector &Right) const
 
 adds the IntegerVector <Right> to an IntegerVector. <br>

An exception is raised if the IntegerVectors have not the same
length.
An exception is raised if the lengths are not equal.
More...

 
math_IntegerVector operator+ (const math_IntegerVector &Right) const
 
void Add (const math_IntegerVector &Left, const math_IntegerVector &Right)
 
 sets an IntegerVector to the sum of the IntegerVector <br>
     <Left> and the IntegerVector <Right>. <br>

An exception is raised if the lengths are different.
More...

 
void Subtract (const math_IntegerVector &Left, const math_IntegerVector &Right)
 
 sets an IntegerVector to the substraction of <br>
     <Right> from <Left>. <br>

An exception is raised if the IntegerVectors have not the same
length.
More...

 
Standard_IntegerValue (const Standard_Integer Num) const
 accesses (in read or write mode) the value of index Num of
an IntegerVector.
More...
 
Standard_Integeroperator() (const Standard_Integer Num) const
 
math_IntegerVectorInitialized (const math_IntegerVector &Other)
 Initialises an IntegerVector by copying <Other>.
An exception is raised if the Lengths are different.
More...
 
math_IntegerVectoroperator= (const math_IntegerVector &Other)
 
Standard_Integer Multiplied (const math_IntegerVector &Right) const
 
 returns the inner product of 2 IntegerVectors. <br>

An exception is raised if the lengths are not equal.
More...

 
Standard_Integer operator* (const math_IntegerVector &Right) const
 
math_IntegerVector Opposite ()
 returns the opposite of an IntegerVector.
More...
 
math_IntegerVector operator- ()
 
void Subtract (const math_IntegerVector &Right)
 
 returns the subtraction of <Right> from <me>. <br>

An exception is raised if the IntegerVectors have not the same length.
More...

 
void operator-= (const math_IntegerVector &Right)
 
math_IntegerVector Subtracted (const math_IntegerVector &Right) const
 
 returns the subtraction of  <Right> from <me>. <br>

An exception is raised if the IntegerVectors have not the same length.
More...

 
math_IntegerVector operator- (const math_IntegerVector &Right) const
 
void Multiply (const Standard_Integer Left, const math_IntegerVector &Right)
 returns the multiplication of an integer by an
IntegerVector.
More...
 
void Dump (Standard_OStream &o) const
 Prints on the stream o information on the current state
of the object.
Is used to redefine the operator <<.
More...
 

Protected Member Functions

void SetFirst (const Standard_Integer First)
 is used internally to set the Lower value of the
IntegerVector.
More...
 

Friends

math_IntegerVector operator* (const Standard_Integer Left, const math_IntegerVector &Right)
 

Detailed Description

This class implements the real IntegerVector abstract data type.
IntegerVectors can have an arbitrary range which must be define at
the declaration and cannot be changed after this declaration.
Example: math_IntegerVector V1(-3, 5); // an IntegerVector with
range [-3..5]

IntegerVector is copied through assignement :
math_IntegerVector V2( 1, 9);
....
V2 = V1;
V1(1) = 2.0; // the IntegerVector V2 will not be modified.

The Exception RangeError is raised when trying to access outside
the range of an IntegerVector :
V1(11) = 0 // –> will raise RangeError;

The Exception DimensionError is raised when the dimensions of two
IntegerVectors are not compatible :
math_IntegerVector V3(1, 2);
V3 = V1; // –> will raise DimensionError;
V1.Add(V3) // –> will raise DimensionError;

Constructor & Destructor Documentation

math_IntegerVector::math_IntegerVector ( const Standard_Integer  First,
const Standard_Integer  Last 
)

contructs an IntegerVector in the range [Lower..Upper]

math_IntegerVector::math_IntegerVector ( const Standard_Integer  First,
const Standard_Integer  Last,
const Standard_Integer  InitialValue 
)

contructs an IntegerVector in the range [Lower..Upper]
with all the elements set to InitialValue.

math_IntegerVector::math_IntegerVector ( const Standard_Address  Tab,
const Standard_Integer  First,
const Standard_Integer  Last 
)

constructs an IntegerVector in the range [Lower..Upper]
which share the "c array" Tab.

math_IntegerVector::math_IntegerVector ( const math_IntegerVector Other)

constructs a copy for initialization.
An exception is raised if the lengths of the IntegerVectors
are different.

Member Function Documentation

void math_IntegerVector::Add ( const math_IntegerVector Right)

 adds the IntegerVector <Right> to an IntegerVector. <br>

An exception is raised if the IntegerVectors have not the same
length.
An exception is raised if the lengths are not equal.

void math_IntegerVector::Add ( const math_IntegerVector Left,
const math_IntegerVector Right 
)

 sets an IntegerVector to the sum of the IntegerVector <br>
     <Left> and the IntegerVector <Right>. <br>

An exception is raised if the lengths are different.

math_IntegerVector math_IntegerVector::Added ( const math_IntegerVector Right) const

 adds the IntegerVector <Right> to an IntegerVector. <br>

An exception is raised if the IntegerVectors have not the same
length.
An exception is raised if the lengths are not equal.

void math_IntegerVector::Dump ( Standard_OStream o) const

Prints on the stream o information on the current state
of the object.
Is used to redefine the operator <<.

void math_IntegerVector::Init ( const Standard_Integer  InitialValue)

Initialize an IntegerVector with all the elements
set to InitialValue.

math_IntegerVector& math_IntegerVector::Initialized ( const math_IntegerVector Other)

Initialises an IntegerVector by copying <Other>.
An exception is raised if the Lengths are different.

math_IntegerVector math_IntegerVector::Inverse ( ) const

returns the inverse IntegerVector of an IntegerVector.

void math_IntegerVector::Invert ( )

inverses an IntegerVector.

Standard_Integer math_IntegerVector::Length ( ) const

returns the length of an IntegerVector

Standard_Integer math_IntegerVector::Lower ( ) const

returns the value of the Lower index of an IntegerVector.

Standard_Integer math_IntegerVector::Max ( ) const

returns the value of the Index of the maximum element of
an IntegerVector.

Standard_Integer math_IntegerVector::Min ( ) const

returns the value of the Index of the minimum element
of an IntegerVector.

math_IntegerVector math_IntegerVector::Multiplied ( const Standard_Integer  Right) const

returns the product of an IntegerVector by an integer value.

Standard_Integer math_IntegerVector::Multiplied ( const math_IntegerVector Right) const

 returns the inner product of 2 IntegerVectors. <br>

An exception is raised if the lengths are not equal.

void math_IntegerVector::Multiply ( const Standard_Integer  Right)

returns the product of an IntegerVector by an integer value.

void math_IntegerVector::Multiply ( const Standard_Integer  Left,
const math_IntegerVector Right 
)

returns the multiplication of an integer by an
IntegerVector.

Standard_Real math_IntegerVector::Norm ( ) const

returns the value of the norm of an IntegerVector.

Standard_Real math_IntegerVector::Norm2 ( ) const

returns the value of the square of the norm of an
IntegerVector.

Standard_Integer& math_IntegerVector::operator() ( const Standard_Integer  Num) const
inline
math_IntegerVector math_IntegerVector::operator* ( const Standard_Integer  Right) const
inline
Standard_Integer math_IntegerVector::operator* ( const math_IntegerVector Right) const
inline
void math_IntegerVector::operator*= ( const Standard_Integer  Right)
inline
math_IntegerVector math_IntegerVector::operator+ ( const math_IntegerVector Right) const
inline
void math_IntegerVector::operator+= ( const math_IntegerVector Right)
inline
math_IntegerVector math_IntegerVector::operator- ( )
inline
math_IntegerVector math_IntegerVector::operator- ( const math_IntegerVector Right) const
inline
void math_IntegerVector::operator-= ( const math_IntegerVector Right)
inline
math_IntegerVector& math_IntegerVector::operator= ( const math_IntegerVector Other)
inline
math_IntegerVector math_IntegerVector::Opposite ( )

returns the opposite of an IntegerVector.

void math_IntegerVector::Set ( const Standard_Integer  I1,
const Standard_Integer  I2,
const math_IntegerVector V 
)

 sets an IntegerVector from <I1> to <I2> to the <br>
     IntegerVector <V>; <br>

An exception is raised if I1<LowerIndex or I2>UpperIndex or I1>I2.
An exception is raised if I2-I1+1 is different from the Length of V.

void math_IntegerVector::SetFirst ( const Standard_Integer  First)
protected

is used internally to set the Lower value of the
IntegerVector.

math_IntegerVector math_IntegerVector::Slice ( const Standard_Integer  I1,
const Standard_Integer  I2 
) const

 slices the values of the IntegerVector between <I1> and <br>
     <I2>: <br>

Example: [2, 1, 2, 3, 4, 5] becomes [2, 4, 3, 2, 1, 5] between 2 and 5.
An exception is raised if I1<LowerIndex or I2>UpperIndex.

void math_IntegerVector::Subtract ( const math_IntegerVector Left,
const math_IntegerVector Right 
)

 sets an IntegerVector to the substraction of <br>
     <Right> from <Left>. <br>

An exception is raised if the IntegerVectors have not the same
length.

void math_IntegerVector::Subtract ( const math_IntegerVector Right)

 returns the subtraction of <Right> from <me>. <br>

An exception is raised if the IntegerVectors have not the same length.

math_IntegerVector math_IntegerVector::Subtracted ( const math_IntegerVector Right) const

 returns the subtraction of  <Right> from <me>. <br>

An exception is raised if the IntegerVectors have not the same length.

math_IntegerVector math_IntegerVector::TMultiplied ( const Standard_Integer  Right) const

returns the product of a vector and a real value.

Standard_Integer math_IntegerVector::Upper ( ) const

returns the value of the Upper index of an IntegerVector.

Standard_Integer& math_IntegerVector::Value ( const Standard_Integer  Num) const

accesses (in read or write mode) the value of index Num of
an IntegerVector.

Friends And Related Function Documentation

math_IntegerVector operator* ( const Standard_Integer  Left,
const math_IntegerVector Right 
)
friend

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