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

Unbounded sparse vector holding unsigned integers of type unsigned long. More...

+ Inheritance diagram for CDPL.Math.SparseULVector:

Public Member Functions

None __init__ ()
 Constructs an empty sparse vector (size zero, no stored entries).
 
None __init__ (SparseULVector v)
 Constructs a copy of the sparse vector v. More...
 
None __init__ (int n)
 Constructs a sparse vector of size n with no stored entries (every position reads as the default value). More...
 
None __init__ (ConstFVectorExpression e)
 Constructs a sparse vector from the vector expression e. More...
 
None __init__ (ConstDVectorExpression e)
 Constructs a sparse vector from the vector expression e. More...
 
None __init__ (ConstLVectorExpression e)
 Constructs a sparse vector from the vector expression e. More...
 
None __init__ (ConstULVectorExpression e)
 Constructs a sparse vector from the vector expression e. More...
 
None __init__ (object a)
 Constructs the vector from the numpy.ndarray object a. More...
 
None resize (int n)
 Resizes the logical element count to n, dropping any stored entries at indices beyond n. More...
 
None clear ()
 Removes all explicitly stored entries (the logical size remains unchanged).
 
int getNumElements ()
 Returns the number of explicitly stored (non-default) entries. More...
 
int getObjectID ()
 Returns the numeric identifier (ID) of the wrapped C++ class instance. More...
 
SparseULVector assign (ConstFVectorExpression e)
 Assigns the vector expression e to this sparse vector (via a temporary to handle aliasing). More...
 
SparseULVector assign (ConstDVectorExpression e)
 Assigns the vector expression e to this sparse vector (via a temporary to handle aliasing). More...
 
SparseULVector assign (ConstLVectorExpression e)
 Assigns the vector expression e to this sparse vector (via a temporary to handle aliasing). More...
 
SparseULVector assign (ConstULVectorExpression e)
 Assigns the vector expression e to this sparse vector (via a temporary to handle aliasing). More...
 
SparseULVector assign (SparseULVector v)
 Copy-assigns the contents of v to this sparse 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's logical size is zero. More...
 
int getSize ()
 Returns the logical element count. More...
 
int getElement (int i)
 Returns the element at index i. More...
 
object toArray ()
 Converts the SparseULVector instance into a corresponding numpy.ndarray object. More...
 
None swap (SparseULVector v)
 Swaps the contents of this sparse 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__ (SparseULVector v)
 Returns the result of the comparison operation self == v. More...
 
bool __eq__ (ConstULVectorExpression e)
 Returns the result of the comparison operation self == e. More...
 
bool __ne__ (SparseULVector v)
 Returns the result of the comparison operation self != v. More...
 
bool __ne__ (ConstULVectorExpression 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 logical element count. More...
 
str __str__ ()
 Returns a string representation of the SparseULVector instance. More...
 
SparseULVector __pos__ ()
 Returns self. More...
 
ConstULVectorExpression __neg__ ()
 Returns the result of the operation self * -1. More...
 
ConstULVectorExpression __add__ (ConstULVectorExpression e)
 Returns the result of the addition operation self + e. More...
 
ConstULVectorExpression __sub__ (ConstULVectorExpression e)
 Returns the result of the subtraction operation self - e. More...
 
ConstULVectorExpression __mul__ (int t)
 Returns the result of the multiplication operation self * t. More...
 
ConstULVectorExpression __mul__ (ConstULMatrixExpression e)
 Returns the result of the multiplication operation self * e. More...
 
ConstULVectorExpression __div__ (int t)
 Returns the result of the division operation self // t. More...
 
ConstULVectorExpression __truediv__ (int t)
 Returns the result of the true division operation self / t. More...
 
ConstULVectorExpression __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...
 
SparseULVector __iadd__ (SparseULVector v)
 Adds the contents of the vector v element-wise to this vector (no alias check needed). More...
 
SparseULVector __iadd__ (ConstULVectorExpression e)
 Adds the vector expression e element-wise to this sparse vector (via a temporary to handle aliasing). More...
 
SparseULVector __isub__ (SparseULVector v)
 Subtracts the contents of the vector v element-wise from this vector (no alias check needed). More...
 
SparseULVector __isub__ (ConstULVectorExpression e)
 Subtracts the vector expression e element-wise from this sparse vector (via a temporary to handle aliasing). More...
 
SparseULVector __imul__ (int t)
 Multiplies every stored entry by the scalar t. More...
 
SparseULVector __idiv__ (int t)
 Divides every stored entry by the scalar t. More...
 
SparseULVector __itruediv__ (int t)
 Divides every stored entry by the scalar t. More...
 

Properties

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

Detailed Description

Unbounded sparse vector holding unsigned integers of type unsigned long.

Constructor & Destructor Documentation

◆ __init__() [1/7]

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

Constructs a copy of the sparse vector v.

Parameters
vThe sparse vector to copy.

◆ __init__() [2/7]

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

Constructs a sparse vector of size n with no stored entries (every position reads as the default value).

Parameters
nThe logical element count.

◆ __init__() [3/7]

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

Constructs a sparse vector from the vector expression e.

Parameters
eThe source vector expression.

◆ __init__() [4/7]

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

Constructs a sparse vector from the vector expression e.

Parameters
eThe source vector expression.

◆ __init__() [5/7]

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

Constructs a sparse vector from the vector expression e.

Parameters
eThe source vector expression.

◆ __init__() [6/7]

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

Constructs a sparse vector from the vector expression e.

Parameters
eThe source vector expression.

◆ __init__() [7/7]

None CDPL.Math.SparseULVector.__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.SparseULVector.resize ( int  n)

Resizes the logical element count to n, dropping any stored entries at indices beyond n.

Parameters
nThe new logical element count.

◆ getNumElements()

int CDPL.Math.SparseULVector.getNumElements ( )

Returns the number of explicitly stored (non-default) entries.

Returns
The number of stored entries.

◆ getObjectID()

int CDPL.Math.SparseULVector.getObjectID ( )

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

Different Python SparseULVector 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 SparseULVector 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]

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

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

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [2/6]

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

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

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [3/6]

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

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

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [4/6]

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

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

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [5/6]

SparseULVector CDPL.Math.SparseULVector.assign ( SparseULVector  v)

Copy-assigns the contents of v to this sparse vector.

Parameters
vThe source sparse vector.
Returns
self.

◆ assign() [6/6]

None CDPL.Math.SparseULVector.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.SparseULVector.isEmpty ( )

Tells whether the vector's logical size is zero.

Returns
True if the logical size is zero, and False otherwise.

◆ getSize()

int CDPL.Math.SparseULVector.getSize ( )

Returns the logical element count.

Returns
The number of elements.

◆ getElement()

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

Returns the element at index i.

Parameters
iThe zero-based element index.
Returns
The stored value, or the zero element if no entry exists.
Exceptions
Base.IndexErrorif i is out of range.

◆ toArray()

object CDPL.Math.SparseULVector.toArray ( )

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

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

◆ swap()

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

Swaps the contents of this sparse vector with those of v.

Parameters
vThe sparse vector to swap with.

◆ setElement()

None CDPL.Math.SparseULVector.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.SparseULVector.__eq__ ( SparseULVector  v)

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

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

◆ __eq__() [2/2]

bool CDPL.Math.SparseULVector.__eq__ ( ConstULVectorExpression  e)

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

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

◆ __ne__() [1/2]

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

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

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

◆ __ne__() [2/2]

bool CDPL.Math.SparseULVector.__ne__ ( ConstULVectorExpression  e)

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

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

◆ __call__()

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

Returns the element at index i.

Parameters
iThe zero-based element index.
Returns
The stored value, or the zero element if no entry exists.
Exceptions
Base.IndexErrorif i is out of range.

◆ __getitem__()

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

Returns the element at index i.

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

◆ __len__()

int CDPL.Math.SparseULVector.__len__ ( )

Returns the logical element count.

Returns
The number of elements.

◆ __str__()

str CDPL.Math.SparseULVector.__str__ ( )

Returns a string representation of the SparseULVector instance.

Returns
The generated string representation.

◆ __pos__()

SparseULVector CDPL.Math.SparseULVector.__pos__ ( )

Returns self.

Returns
self.

◆ __neg__()

ConstULVectorExpression CDPL.Math.SparseULVector.__neg__ ( )

Returns the result of the operation self * -1.

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

◆ __add__()

ConstULVectorExpression CDPL.Math.SparseULVector.__add__ ( ConstULVectorExpression  e)

Returns the result of the addition operation self + e.

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

◆ __sub__()

ConstULVectorExpression CDPL.Math.SparseULVector.__sub__ ( ConstULVectorExpression  e)

Returns the result of the subtraction operation self - e.

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

◆ __mul__() [1/2]

ConstULVectorExpression CDPL.Math.SparseULVector.__mul__ ( int  t)

Returns the result of the multiplication operation self * t.

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

◆ __mul__() [2/2]

ConstULVectorExpression CDPL.Math.SparseULVector.__mul__ ( ConstULMatrixExpression  e)

Returns the result of the multiplication operation self * e.

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

◆ __div__()

ConstULVectorExpression CDPL.Math.SparseULVector.__div__ ( int  t)

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

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

◆ __truediv__()

ConstULVectorExpression CDPL.Math.SparseULVector.__truediv__ ( int  t)

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

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

◆ __rmul__()

ConstULVectorExpression CDPL.Math.SparseULVector.__rmul__ ( int  t)

Returns the result of the multiplication operation t * self.

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

◆ __setitem__()

None CDPL.Math.SparseULVector.__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]

SparseULVector CDPL.Math.SparseULVector.__iadd__ ( SparseULVector  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]

SparseULVector CDPL.Math.SparseULVector.__iadd__ ( ConstULVectorExpression  e)

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

Parameters
eThe source vector expression.
Returns
self.

◆ __isub__() [1/2]

SparseULVector CDPL.Math.SparseULVector.__isub__ ( SparseULVector  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]

SparseULVector CDPL.Math.SparseULVector.__isub__ ( ConstULVectorExpression  e)

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

Parameters
eThe source vector expression.
Returns
self.

◆ __imul__()

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

Multiplies every stored entry by the scalar t.

Parameters
tThe scalar multiplier.
Returns
self.

◆ __idiv__()

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

Divides every stored entry by the scalar t.

Parameters
tThe scalar divisor.
Returns
self.

◆ __itruediv__()

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

Divides every stored entry by the scalar t.

Parameters
tThe scalar divisor.
Returns
self.