Chemical Data Processing Library Python API - Version 1.4.0
Public Member Functions | Properties | List of all members
CDPL.Math.LVector Class Reference

Unbounded dense vector holding signed integers of type long. More...

+ Inheritance diagram for CDPL.Math.LVector:

Public Member Functions

None __init__ ()
 Constructs an empty vector (size zero).
 
None __init__ (LVector v)
 Constructs a copy of the vector v. More...
 
None __init__ (int n)
 Constructs a vector of size n with default-initialized elements. More...
 
None __init__ (int n, int v)
 Constructs a vector of size n with every element initialized to v. More...
 
None __init__ (ConstFVectorExpression e)
 Constructs the vector from the vector expression e (materializing the expression result). More...
 
None __init__ (ConstDVectorExpression e)
 Constructs the vector from the vector expression e (materializing the expression result). More...
 
None __init__ (ConstLVectorExpression e)
 Constructs the vector from the vector expression e (materializing the expression result). More...
 
None __init__ (ConstULVectorExpression e)
 Constructs the vector from the vector expression e (materializing the expression result). More...
 
None __init__ (object a)
 Constructs the vector from the numpy.ndarray object a. More...
 
None resize (int n, int v=0)
 Resizes the vector to n elements. More...
 
None clear (int v=0)
 Sets every element of the vector to the value v. More...
 
int getObjectID ()
 Returns the numeric identifier (ID) of the wrapped C++ class instance. More...
 
LVector assign (ConstFVectorExpression e)
 Assigns the vector expression e to this vector (via a temporary to handle aliasing). More...
 
LVector assign (ConstDVectorExpression e)
 Assigns the vector expression e to this vector (via a temporary to handle aliasing). More...
 
LVector assign (ConstLVectorExpression e)
 Assigns the vector expression e to this vector (via a temporary to handle aliasing). More...
 
LVector assign (ConstULVectorExpression e)
 Assigns the vector expression e to this vector (via a temporary to handle aliasing). More...
 
LVector assign (LVector v)
 Copy-assigns the elements of v to this vector. More...
 
None assign (object a)
 Assigns the contents of the numpy.ndarray object a to this vector. More...
 
bool isEmpty ()
 Tells whether the vector is empty. More...
 
int getSize ()
 Returns the current element count. More...
 
int getElement (int i)
 Returns the element at index i. More...
 
object toArray ()
 Converts the LVector instance into a corresponding numpy.ndarray object. More...
 
None swap (LVector v)
 Swaps the contents of this vector with those of v. More...
 
None setElement (int i, int v)
 Sets the value of the element at index i to v. More...
 
bool __eq__ (LVector v)
 Returns the result of the comparison operation self == v. More...
 
bool __eq__ (ConstLVectorExpression e)
 Returns the result of the comparison operation self == e. More...
 
bool __ne__ (LVector v)
 Returns the result of the comparison operation self != v. More...
 
bool __ne__ (ConstLVectorExpression e)
 Returns the result of the comparison operation self != e. More...
 
int __call__ (int i)
 Returns the element at index i. More...
 
int __getitem__ (int i)
 Returns the element at index i. More...
 
int __len__ ()
 Returns the current element count. More...
 
str __str__ ()
 Returns a string representation of the LVector instance. More...
 
LVector __pos__ ()
 Returns self. More...
 
ConstLVectorExpression __neg__ ()
 Returns the result of the operation self * -1. More...
 
ConstLVectorExpression __add__ (ConstLVectorExpression e)
 Returns the result of the addition operation self + e. More...
 
ConstLVectorExpression __sub__ (ConstLVectorExpression e)
 Returns the result of the subtraction operation self - e. More...
 
ConstLVectorExpression __mul__ (int t)
 Returns the result of the multiplication operation self * t. More...
 
ConstLVectorExpression __mul__ (ConstLMatrixExpression e)
 Returns the result of the multiplication operation self * e. More...
 
ConstLVectorExpression __div__ (int t)
 Returns the result of the division operation self // t. More...
 
ConstLVectorExpression __truediv__ (int t)
 Returns the result of the true division operation self / t. More...
 
ConstLVectorExpression __rmul__ (int t)
 Returns the result of the multiplication operation t * self. More...
 
None __setitem__ (int i, int v)
 Sets the value of the element at index i to v. More...
 
LVector __iadd__ (LVector v)
 Adds the contents of the vector v element-wise to this vector (no alias check needed). More...
 
LVector __iadd__ (ConstLVectorExpression e)
 Adds the vector expression e element-wise to this vector (via a temporary to handle aliasing). More...
 
LVector __isub__ (LVector v)
 Subtracts the contents of the vector v element-wise from this vector (no alias check needed). More...
 
LVector __isub__ (ConstLVectorExpression e)
 Subtracts the vector expression e element-wise from this vector (via a temporary to handle aliasing). More...
 
LVector __imul__ (int t)
 Multiplies every element by the scalar t. More...
 
LVector __idiv__ (int t)
 Divides every element by the scalar t. More...
 
LVector __itruediv__ (int t)
 Divides every element by the scalar t. More...
 

Properties

 objectID = property(getObjectID)
 
 size = property(getSize)
 

Detailed Description

Unbounded dense vector holding signed integers of type long.

Constructor & Destructor Documentation

◆ __init__() [1/8]

None CDPL.Math.LVector.__init__ ( LVector  v)

Constructs a copy of the vector v.

Parameters
vThe vector to copy.

◆ __init__() [2/8]

None CDPL.Math.LVector.__init__ ( int  n)

Constructs a vector of size n with default-initialized elements.

Parameters
nThe desired vector size.

◆ __init__() [3/8]

None CDPL.Math.LVector.__init__ ( int  n,
int  v 
)

Constructs a vector of size n with every element initialized to v.

Parameters
nThe desired vector size.
vThe value used for element initialization.

◆ __init__() [4/8]

None CDPL.Math.LVector.__init__ ( ConstFVectorExpression  e)

Constructs the vector from the vector expression e (materializing the expression result).

Parameters
eThe vector expression to materialize.

◆ __init__() [5/8]

None CDPL.Math.LVector.__init__ ( ConstDVectorExpression  e)

Constructs the vector from the vector expression e (materializing the expression result).

Parameters
eThe vector expression to materialize.

◆ __init__() [6/8]

None CDPL.Math.LVector.__init__ ( ConstLVectorExpression  e)

Constructs the vector from the vector expression e (materializing the expression result).

Parameters
eThe vector expression to materialize.

◆ __init__() [7/8]

None CDPL.Math.LVector.__init__ ( ConstULVectorExpression  e)

Constructs the vector from the vector expression e (materializing the expression result).

Parameters
eThe vector expression to materialize.

◆ __init__() [8/8]

None CDPL.Math.LVector.__init__ ( object  a)

Constructs the vector from the numpy.ndarray object a.

Parameters
aThe numpy.ndarray object.
See also
[NUMPY]

Member Function Documentation

◆ resize()

None CDPL.Math.LVector.resize ( int  n,
int   v = 0 
)

Resizes the vector to n elements.

Parameters
nThe new element count.
vThe fill value for newly added elements.

◆ clear()

None CDPL.Math.LVector.clear ( int   v = 0)

Sets every element of the vector to the value v.

Parameters
vThe fill value.

◆ getObjectID()

int CDPL.Math.LVector.getObjectID ( )

Returns the numeric identifier (ID) of the wrapped C++ class instance.

Different Python LVector instances may reference the same underlying C++ class instance. The commonly used Python expression a is not b thus cannot tell reliably whether the two LVector instances a and b reference different C++ objects. The numeric identifier returned by this method allows to correctly implement such an identity test via the simple expression a.getObjectID() != b.getObjectID().

Returns
The numeric ID of the internally referenced C++ class instance.

◆ assign() [1/6]

LVector CDPL.Math.LVector.assign ( ConstFVectorExpression  e)

Assigns the vector expression e to this vector (via a temporary to handle aliasing).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [2/6]

LVector CDPL.Math.LVector.assign ( ConstDVectorExpression  e)

Assigns the vector expression e to this vector (via a temporary to handle aliasing).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [3/6]

LVector CDPL.Math.LVector.assign ( ConstLVectorExpression  e)

Assigns the vector expression e to this vector (via a temporary to handle aliasing).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [4/6]

LVector CDPL.Math.LVector.assign ( ConstULVectorExpression  e)

Assigns the vector expression e to this vector (via a temporary to handle aliasing).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [5/6]

LVector CDPL.Math.LVector.assign ( LVector  v)

Copy-assigns the elements of v to this vector.

Parameters
vThe source vector.
Returns
self.

◆ assign() [6/6]

None CDPL.Math.LVector.assign ( object  a)

Assigns the contents of the numpy.ndarray object a to this vector.

Parameters
aThe numpy.ndarray object.
See also
[NUMPY]

◆ isEmpty()

bool CDPL.Math.LVector.isEmpty ( )

Tells whether the vector is empty.

Returns
True if the vector contains no elements, and False otherwise.

◆ getSize()

int CDPL.Math.LVector.getSize ( )

Returns the current element count.

Returns
The number of elements.

◆ getElement()

int CDPL.Math.LVector.getElement ( int  i)

Returns the element at index i.

Parameters
iThe zero-based element index.
Returns
The value of the element.
Exceptions
Base.IndexErrorif i is out of range.

◆ toArray()

object CDPL.Math.LVector.toArray ( )

Converts the LVector instance into a corresponding numpy.ndarray object.

Returns
The generated numpy.ndarray object.
See also
[NUMPY]

◆ swap()

None CDPL.Math.LVector.swap ( LVector  v)

Swaps the contents of this vector with those of v.

Parameters
vThe vector to swap with.

◆ setElement()

None CDPL.Math.LVector.setElement ( int  i,
int  v 
)

Sets the value of the element at index i to v.

Parameters
iThe zero-based element index.
vThe new value of the element.
Exceptions
Base.IndexErrorif i is not in the range [0, getSize()).

◆ __eq__() [1/2]

bool CDPL.Math.LVector.__eq__ ( LVector  v)

Returns the result of the comparison operation self == v.

Parameters
vThe LVector instance to be compared with.
Returns
The result of the comparison operation.

◆ __eq__() [2/2]

bool CDPL.Math.LVector.__eq__ ( ConstLVectorExpression  e)

Returns the result of the comparison operation self == e.

Parameters
eThe ConstLVectorExpression instance to be compared with.
Returns
The result of the comparison operation.

◆ __ne__() [1/2]

bool CDPL.Math.LVector.__ne__ ( LVector  v)

Returns the result of the comparison operation self != v.

Parameters
vThe LVector instance to be compared with.
Returns
The result of the comparison operation.

◆ __ne__() [2/2]

bool CDPL.Math.LVector.__ne__ ( ConstLVectorExpression  e)

Returns the result of the comparison operation self != e.

Parameters
eThe ConstLVectorExpression instance to be compared with.
Returns
The result of the comparison operation.

◆ __call__()

int CDPL.Math.LVector.__call__ ( int  i)

Returns the element at index i.

Parameters
iThe zero-based element index.
Returns
The value of the element.
Exceptions
Base.IndexErrorif i is out of range.

◆ __getitem__()

int CDPL.Math.LVector.__getitem__ ( int  i)

Returns the element at index i.

Parameters
iThe zero-based element index.
Returns
The value of the element.
Exceptions
Base.IndexErrorif i is out of range.

◆ __len__()

int CDPL.Math.LVector.__len__ ( )

Returns the current element count.

Returns
The number of elements.

◆ __str__()

str CDPL.Math.LVector.__str__ ( )

Returns a string representation of the LVector instance.

Returns
The generated string representation.

◆ __pos__()

LVector CDPL.Math.LVector.__pos__ ( )

Returns self.

Returns
self.

◆ __neg__()

ConstLVectorExpression CDPL.Math.LVector.__neg__ ( )

Returns the result of the operation self * -1.

Returns
A ConstLVectorExpression instance holding the result of the element negation.

◆ __add__()

ConstLVectorExpression CDPL.Math.LVector.__add__ ( ConstLVectorExpression  e)

Returns the result of the addition operation self + e.

Parameters
eSpecifies the second addend.
Returns
A ConstLVectorExpression instance holding the result of the addition.

◆ __sub__()

ConstLVectorExpression CDPL.Math.LVector.__sub__ ( ConstLVectorExpression  e)

Returns the result of the subtraction operation self - e.

Parameters
eSpecifies the subtrahend.
Returns
A LVector instance holding the result of the subtraction.

◆ __mul__() [1/2]

ConstLVectorExpression CDPL.Math.LVector.__mul__ ( int  t)

Returns the result of the multiplication operation self * t.

Parameters
tSpecifies the multiplier.
Returns
A ConstLVectorExpression instance holding the result of the multiplication.

◆ __mul__() [2/2]

ConstLVectorExpression CDPL.Math.LVector.__mul__ ( ConstLMatrixExpression  e)

Returns the result of the multiplication operation self * e.

Parameters
eSpecifies the multiplier.
Returns
A ConstLVectorExpression instance holding the result of the multiplication.

◆ __div__()

ConstLVectorExpression CDPL.Math.LVector.__div__ ( int  t)

Returns the result of the division operation self // t.

Parameters
tSpecifies the divisor.
Returns
A ConstLVectorExpression instance holding the result of the division.

◆ __truediv__()

ConstLVectorExpression CDPL.Math.LVector.__truediv__ ( int  t)

Returns the result of the true division operation self / t.

Parameters
tSpecifies the divisor.
Returns
A ConstLVectorExpression instance holding the result of the division.

◆ __rmul__()

ConstLVectorExpression CDPL.Math.LVector.__rmul__ ( int  t)

Returns the result of the multiplication operation t * self.

Parameters
tSpecifies the multiplicand.
Returns
A ConstLVectorExpression instance holding the result of the multiplication.

◆ __setitem__()

None CDPL.Math.LVector.__setitem__ ( int  i,
int  v 
)

Sets the value of the element at index i to v.

Parameters
iThe zero-based element index.
vThe new value of the element.
Exceptions
Base.IndexErrorif i is not in the range [0, getSize()).

◆ __iadd__() [1/2]

LVector CDPL.Math.LVector.__iadd__ ( LVector  v)

Adds the contents of the vector v element-wise to this vector (no alias check needed).

Parameters
vThe source vector.
Returns
self.

◆ __iadd__() [2/2]

LVector CDPL.Math.LVector.__iadd__ ( ConstLVectorExpression  e)

Adds the vector expression e element-wise to this vector (via a temporary to handle aliasing).

Parameters
eThe source vector expression.
Returns
self.

◆ __isub__() [1/2]

LVector CDPL.Math.LVector.__isub__ ( LVector  v)

Subtracts the contents of the vector v element-wise from this vector (no alias check needed).

Parameters
vThe source vector.
Returns
self.

◆ __isub__() [2/2]

LVector CDPL.Math.LVector.__isub__ ( ConstLVectorExpression  e)

Subtracts the vector expression e element-wise from this vector (via a temporary to handle aliasing).

Parameters
eThe source vector expression.
Returns
self.

◆ __imul__()

LVector CDPL.Math.LVector.__imul__ ( int  t)

Multiplies every element by the scalar t.

Parameters
tThe scalar multiplier.
Returns
self.

◆ __idiv__()

LVector CDPL.Math.LVector.__idiv__ ( int  t)

Divides every element by the scalar t.

Parameters
tThe scalar divisor.
Returns
self.

◆ __itruediv__()

LVector CDPL.Math.LVector.__itruediv__ ( int  t)

Divides every element by the scalar t.

Parameters
tThe scalar divisor.
Returns
self.