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

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

+ Inheritance diagram for CDPL.Math.SparseULMatrix:

Public Member Functions

None __init__ ()
 Constructs an empty sparse matrix (zero rows, zero columns, no stored entries).
 
None __init__ (SparseULMatrix m)
 Move-constructs a sparse matrix from m (m is left in a valid empty state). More...
 
None __init__ (int m, int n)
 Constructs a sparse matrix of size \( m \times n \) with no stored entries. More...
 
None __init__ (ConstFMatrixExpression e)
 Initializes the SparseULMatrix instance. More...
 
None __init__ (ConstDMatrixExpression e)
 Initializes the SparseULMatrix instance. More...
 
None __init__ (ConstLMatrixExpression e)
 Initializes the SparseULMatrix instance. More...
 
None __init__ (ConstULMatrixExpression e)
 Initializes the SparseULMatrix instance. More...
 
None __init__ (object a)
 Initializes the SparseULMatrix instance. More...
 
None resize (int m, int n)
 Resizes the logical dimensions to \( m \times n \), dropping any stored entries that fall outside the new bounds. More...
 
None clear ()
 Removes all explicitly stored entries (the logical dimensions remain 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...
 
SparseULMatrix assign (ConstFMatrixExpression e)
 Resizes this matrix to match e and assigns its elements without intermediate temporary. More...
 
SparseULMatrix assign (ConstDMatrixExpression e)
 Resizes this matrix to match e and assigns its elements without intermediate temporary. More...
 
SparseULMatrix assign (ConstLMatrixExpression e)
 Resizes this matrix to match e and assigns its elements without intermediate temporary. More...
 
SparseULMatrix assign (ConstULMatrixExpression e)
 Resizes this matrix to match e and assigns its elements without intermediate temporary. More...
 
SparseULMatrix assign (SparseULMatrix m)
 Move-assigns the contents of m to this sparse matrix. More...
 
None assign (object a)
 Replaces the current state of self with a copy of the state of the object instance a. More...
 
int getSize1 ()
 Returns the logical number of rows. More...
 
int getSize2 ()
 Returns the logical number of columns. More...
 
bool isEmpty ()
 Tells whether the matrix is empty (zero rows or zero columns). More...
 
int getElement (int i, int j)
 
object toArray ()
 
None swap (SparseULMatrix m)
 Swaps the contents of this sparse matrix with those of m. More...
 
None setElement (int i, int j, int v)
 
int __call__ (int i, int j)
 Returns a reference to the element at (i, j). More...
 
int __getitem__ (tuple ij)
 
int __len__ ()
 
bool __eq__ (SparseULMatrix m)
 Returns the result of the comparison operation self == m. More...
 
bool __eq__ (ConstULMatrixExpression e)
 Returns the result of the comparison operation self == e. More...
 
bool __ne__ (SparseULMatrix m)
 Returns the result of the comparison operation self != m. More...
 
bool __ne__ (ConstULMatrixExpression e)
 Returns the result of the comparison operation self != e. More...
 
str __str__ ()
 Returns a string representation of the SparseULMatrix instance. More...
 
SparseULMatrix __pos__ ()
 
ConstULMatrixExpression __neg__ ()
 
ConstULMatrixExpression __add__ (ConstULMatrixExpression e)
 Returns the result of the addition operation self + e. More...
 
ConstULMatrixExpression __sub__ (ConstULMatrixExpression e)
 Returns the result of the subtraction operation self - e. More...
 
ConstULMatrixExpression __mul__ (int t)
 Returns the result of the multiplication operation self * t. More...
 
ConstULMatrixExpression __mul__ (ConstULMatrixExpression e)
 Returns the result of the multiplication operation self * e. More...
 
ConstULVectorExpression __mul__ (ConstULVectorExpression e)
 Returns the result of the multiplication operation self * e. More...
 
ConstULMatrixExpression __div__ (int t)
 Returns the result of the division operation self // t. More...
 
ConstULMatrixExpression __truediv__ (int t)
 Returns the result of the true division operation self / t. More...
 
ConstULMatrixExpression __rmul__ (int t)
 Returns the result of the multiplication operation t * self. More...
 
None __setitem__ (tuple ij, int v)
 
SparseULMatrix __iadd__ (SparseULMatrix m)
 Performs the in-place addition operation self += m. More...
 
SparseULMatrix __iadd__ (ConstULMatrixExpression e)
 Performs the in-place addition operation self += e. More...
 
SparseULMatrix __isub__ (SparseULMatrix m)
 Performs the in-place subtraction operation self -= m. More...
 
SparseULMatrix __isub__ (ConstULMatrixExpression e)
 Performs the in-place subtraction operation self -= e. More...
 
SparseULMatrix __imul__ (int t)
 Performs the in-place multiplication operation self *= t. More...
 
SparseULMatrix __idiv__ (int t)
 Performs the in-place division operation self /= t. More...
 
SparseULMatrix __itruediv__ (int t)
 

Properties

 objectID = property(getObjectID)
 
 size1 = property(getSize1)
 
 size2 = property(getSize2)
 
 numElements = property(getNumElements)
 

Detailed Description

Unbounded sparse matrix holding unsigned integers of type unsigned long.

Constructor & Destructor Documentation

◆ __init__() [1/7]

None CDPL.Math.SparseULMatrix.__init__ ( SparseULMatrix  m)

Move-constructs a sparse matrix from m (m is left in a valid empty state).

Parameters
mThe sparse matrix to move from.

◆ __init__() [2/7]

None CDPL.Math.SparseULMatrix.__init__ ( int  m,
int  n 
)

Constructs a sparse matrix of size \( m \times n \) with no stored entries.

Parameters
mThe number of rows.
nThe number of columns.
Exceptions
Base.SizeErrorif \( m \cdot n \) exceeds the underlying container's capacity.

◆ __init__() [3/7]

None CDPL.Math.SparseULMatrix.__init__ ( ConstFMatrixExpression  e)

Initializes the SparseULMatrix instance.

Parameters
e

◆ __init__() [4/7]

None CDPL.Math.SparseULMatrix.__init__ ( ConstDMatrixExpression  e)

Initializes the SparseULMatrix instance.

Parameters
e

◆ __init__() [5/7]

None CDPL.Math.SparseULMatrix.__init__ ( ConstLMatrixExpression  e)

Initializes the SparseULMatrix instance.

Parameters
e

◆ __init__() [6/7]

None CDPL.Math.SparseULMatrix.__init__ ( ConstULMatrixExpression  e)

Initializes the SparseULMatrix instance.

Parameters
e

◆ __init__() [7/7]

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

Initializes the SparseULMatrix instance.

Parameters
a

Member Function Documentation

◆ resize()

None CDPL.Math.SparseULMatrix.resize ( int  m,
int  n 
)

Resizes the logical dimensions to \( m \times n \), dropping any stored entries that fall outside the new bounds.

Parameters
mThe new row count.
nThe new column count.
Exceptions
Base.SizeErrorif \( m \cdot n \) exceeds the underlying container's capacity.

◆ getNumElements()

int CDPL.Math.SparseULMatrix.getNumElements ( )

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

Returns
The number of stored entries.

◆ getObjectID()

int CDPL.Math.SparseULMatrix.getObjectID ( )

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

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

SparseULMatrix CDPL.Math.SparseULMatrix.assign ( ConstFMatrixExpression  e)

Resizes this matrix to match e and assigns its elements without intermediate temporary.

Parameters
eThe source matrix expression.
Returns
self

◆ assign() [2/6]

SparseULMatrix CDPL.Math.SparseULMatrix.assign ( ConstDMatrixExpression  e)

Resizes this matrix to match e and assigns its elements without intermediate temporary.

Parameters
eThe source matrix expression.
Returns
self

◆ assign() [3/6]

SparseULMatrix CDPL.Math.SparseULMatrix.assign ( ConstLMatrixExpression  e)

Resizes this matrix to match e and assigns its elements without intermediate temporary.

Parameters
eThe source matrix expression.
Returns
self

◆ assign() [4/6]

SparseULMatrix CDPL.Math.SparseULMatrix.assign ( ConstULMatrixExpression  e)

Resizes this matrix to match e and assigns its elements without intermediate temporary.

Parameters
eThe source matrix expression.
Returns
self

◆ assign() [5/6]

SparseULMatrix CDPL.Math.SparseULMatrix.assign ( SparseULMatrix  m)

Move-assigns the contents of m to this sparse matrix.

Parameters
mThe source sparse matrix (left in a valid but unspecified state).
Returns
self

◆ assign() [6/6]

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

Replaces the current state of self with a copy of the state of the object instance a.

Parameters
aThe object instance to copy.
Returns
self

◆ getSize1()

int CDPL.Math.SparseULMatrix.getSize1 ( )

Returns the logical number of rows.

Returns
The number of rows.

◆ getSize2()

int CDPL.Math.SparseULMatrix.getSize2 ( )

Returns the logical number of columns.

Returns
The number of columns.

◆ isEmpty()

bool CDPL.Math.SparseULMatrix.isEmpty ( )

Tells whether the matrix is empty (zero rows or zero columns).

Returns
True if either dimension is zero, and False otherwise.

◆ getElement()

int CDPL.Math.SparseULMatrix.getElement ( int  i,
int  j 
)
Parameters
i
j
Returns

◆ toArray()

object CDPL.Math.SparseULMatrix.toArray ( )
Returns

◆ swap()

None CDPL.Math.SparseULMatrix.swap ( SparseULMatrix  m)

Swaps the contents of this sparse matrix with those of m.

Parameters
mThe sparse matrix to swap with.

◆ setElement()

None CDPL.Math.SparseULMatrix.setElement ( int  i,
int  j,
int  v 
)
Parameters
i
j
v

◆ __call__()

int CDPL.Math.SparseULMatrix.__call__ ( int  i,
int  j 
)

Returns a reference to the element at (i, j).

Parameters
iThe zero-based row index.
jThe zero-based column index.
Returns
A reference to the stored value, or to the zero element if no entry exists at (i, j).
Exceptions
Base.IndexErrorif either index is out of range.

◆ __getitem__()

int CDPL.Math.SparseULMatrix.__getitem__ ( tuple  ij)
Parameters
ij
Returns

◆ __len__()

int CDPL.Math.SparseULMatrix.__len__ ( )
Returns

◆ __eq__() [1/2]

bool CDPL.Math.SparseULMatrix.__eq__ ( SparseULMatrix  m)

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

Parameters
mThe SparseULMatrix instance to be compared with.
Returns
The result of the comparison operation.

◆ __eq__() [2/2]

bool CDPL.Math.SparseULMatrix.__eq__ ( ConstULMatrixExpression  e)

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

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

◆ __ne__() [1/2]

bool CDPL.Math.SparseULMatrix.__ne__ ( SparseULMatrix  m)

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

Parameters
mThe SparseULMatrix instance to be compared with.
Returns
The result of the comparison operation.

◆ __ne__() [2/2]

bool CDPL.Math.SparseULMatrix.__ne__ ( ConstULMatrixExpression  e)

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

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

◆ __str__()

str CDPL.Math.SparseULMatrix.__str__ ( )

Returns a string representation of the SparseULMatrix instance.

Returns
The generated string representation.

◆ __pos__()

SparseULMatrix CDPL.Math.SparseULMatrix.__pos__ ( )
Returns

◆ __neg__()

ConstULMatrixExpression CDPL.Math.SparseULMatrix.__neg__ ( )
Returns

◆ __add__()

ConstULMatrixExpression CDPL.Math.SparseULMatrix.__add__ ( ConstULMatrixExpression  e)

Returns the result of the addition operation self + e.

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

◆ __sub__()

ConstULMatrixExpression CDPL.Math.SparseULMatrix.__sub__ ( ConstULMatrixExpression  e)

Returns the result of the subtraction operation self - e.

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

◆ __mul__() [1/3]

ConstULMatrixExpression CDPL.Math.SparseULMatrix.__mul__ ( int  t)

Returns the result of the multiplication operation self * t.

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

◆ __mul__() [2/3]

ConstULMatrixExpression CDPL.Math.SparseULMatrix.__mul__ ( ConstULMatrixExpression  e)

Returns the result of the multiplication operation self * e.

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

◆ __mul__() [3/3]

ConstULVectorExpression CDPL.Math.SparseULMatrix.__mul__ ( ConstULVectorExpression  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__()

ConstULMatrixExpression CDPL.Math.SparseULMatrix.__div__ ( int  t)

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

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

◆ __truediv__()

ConstULMatrixExpression CDPL.Math.SparseULMatrix.__truediv__ ( int  t)

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

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

◆ __rmul__()

ConstULMatrixExpression CDPL.Math.SparseULMatrix.__rmul__ ( int  t)

Returns the result of the multiplication operation t * self.

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

◆ __setitem__()

None CDPL.Math.SparseULMatrix.__setitem__ ( tuple  ij,
int  v 
)
Parameters
ij
v

◆ __iadd__() [1/2]

SparseULMatrix CDPL.Math.SparseULMatrix.__iadd__ ( SparseULMatrix  m)

Performs the in-place addition operation self += m.

Parameters
mSpecifies the second addend.
Returns
The updated SparseULMatrix instance self.

◆ __iadd__() [2/2]

SparseULMatrix CDPL.Math.SparseULMatrix.__iadd__ ( ConstULMatrixExpression  e)

Performs the in-place addition operation self += e.

Parameters
eSpecifies the second addend.
Returns
The updated SparseULMatrix instance self.

◆ __isub__() [1/2]

SparseULMatrix CDPL.Math.SparseULMatrix.__isub__ ( SparseULMatrix  m)

Performs the in-place subtraction operation self -= m.

Parameters
mSpecifies the subtrahend.
Returns
The updated SparseULMatrix instance self.

◆ __isub__() [2/2]

SparseULMatrix CDPL.Math.SparseULMatrix.__isub__ ( ConstULMatrixExpression  e)

Performs the in-place subtraction operation self -= e.

Parameters
eSpecifies the subtrahend.
Returns
The updated SparseULMatrix instance self.

◆ __imul__()

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

Performs the in-place multiplication operation self *= t.

Parameters
tSpecifies the multiplier.
Returns
The updated SparseULMatrix instance self.

◆ __idiv__()

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

Performs the in-place division operation self /= t.

Parameters
tSpecifies the divisor.
Returns
The updated SparseULMatrix instance self.

◆ __itruediv__()

SparseULMatrix CDPL.Math.SparseULMatrix.__itruediv__ ( int  t)
Parameters
t
Returns