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

Memory-efficient immutable identity matrix with element values of type unsigned long. More...

+ Inheritance diagram for CDPL.Math.ULIdentityMatrix:

Public Member Functions

None __init__ ()
 Constructs an empty identity matrix.
 
None __init__ (ULIdentityMatrix m)
 Constructs a copy of the identity matrix m. More...
 
None __init__ (int m, int n)
 Constructs an identity matrix of size m×n (1 on the diagonal, 0 elsewhere). More...
 
None resize (int m, int n)
 Resizes the dimensions to m×n. More...
 
int getObjectID ()
 Returns the numeric identifier (ID) of the wrapped C++ class instance. 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. More...
 
int getElement (int i, int j)
 Returns a reference to either 1 (on the diagonal) or 0 (off the diagonal). More...
 
object toArray ()
 Converts the ULIdentityMatrix instance into a corresponding numpy.ndarray object. More...
 
ULIdentityMatrix assign (ULIdentityMatrix m)
 Copy-assigns the dimensions from m. More...
 
None swap (ULIdentityMatrix m)
 Swaps the dimensions with m. More...
 
int __call__ (int i, int j)
 Returns a reference to either 1 (on the diagonal) or 0 (off the diagonal). More...
 
int __getitem__ (tuple ij)
 Returns a reference to either 1 (on the diagonal) or 0 (off the diagonal). More...
 
int __len__ ()
 Returns the number of rows. More...
 
bool __eq__ (ULIdentityMatrix 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__ (ULIdentityMatrix 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 ULIdentityMatrix instance. More...
 
ULIdentityMatrix __pos__ ()
 Returns self. More...
 
ConstULMatrixExpression __neg__ ()
 Returns the result of the operation self * -1. More...
 
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...
 

Properties

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

Detailed Description

Memory-efficient immutable identity matrix with element values of type unsigned long.

Constructor & Destructor Documentation

◆ __init__() [1/2]

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

Constructs a copy of the identity matrix m.

Parameters
mThe identity matrix to copy.

◆ __init__() [2/2]

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

Constructs an identity matrix of size m×n (1 on the diagonal, 0 elsewhere).

Parameters
mThe number of rows.
nThe number of columns.

Member Function Documentation

◆ resize()

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

Resizes the dimensions to m×n.

Parameters
mThe new row count.
nThe new column count.

◆ getObjectID()

int CDPL.Math.ULIdentityMatrix.getObjectID ( )

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

Different Python ULIdentityMatrix 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 ULIdentityMatrix 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.

◆ getSize1()

int CDPL.Math.ULIdentityMatrix.getSize1 ( )

Returns the logical number of rows.

Returns
The number of rows.

◆ getSize2()

int CDPL.Math.ULIdentityMatrix.getSize2 ( )

Returns the logical number of columns.

Returns
The number of columns.

◆ isEmpty()

bool CDPL.Math.ULIdentityMatrix.isEmpty ( )

Tells whether the matrix is empty.

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

◆ getElement()

int CDPL.Math.ULIdentityMatrix.getElement ( int  i,
int  j 
)

Returns a reference to either 1 (on the diagonal) or 0 (off the diagonal).

Parameters
iThe zero-based row index.
jThe zero-based column index.
Returns
A reference to 1 (on the diagonal) or 0 (off the diagonal).
Exceptions
Base.IndexErrorif either index is out of range.

◆ toArray()

object CDPL.Math.ULIdentityMatrix.toArray ( )

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

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

◆ assign()

ULIdentityMatrix CDPL.Math.ULIdentityMatrix.assign ( ULIdentityMatrix  m)

Copy-assigns the dimensions from m.

Parameters
mThe source identity matrix.
Returns
self.

◆ swap()

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

Swaps the dimensions with m.

Parameters
mThe identity matrix to swap with.

◆ __call__()

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

Returns a reference to either 1 (on the diagonal) or 0 (off the diagonal).

Parameters
iThe zero-based row index.
jThe zero-based column index.
Returns
A reference to 1 (on the diagonal) or 0 (off the diagonal).
Exceptions
Base.IndexErrorif either index is out of range.

◆ __getitem__()

int CDPL.Math.ULIdentityMatrix.__getitem__ ( tuple  ij)

Returns a reference to either 1 (on the diagonal) or 0 (off the diagonal).

Parameters
iThe zero-based row index.
jThe zero-based column index.
Returns
A reference to 1 (on the diagonal) or 0 (off the diagonal).
Exceptions
Base.IndexErrorif either index is out of range.

◆ __len__()

int CDPL.Math.ULIdentityMatrix.__len__ ( )

Returns the number of rows.

Returns
The number of rows.

◆ __eq__() [1/2]

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

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

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

◆ __eq__() [2/2]

bool CDPL.Math.ULIdentityMatrix.__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.ULIdentityMatrix.__ne__ ( ULIdentityMatrix  m)

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

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

◆ __ne__() [2/2]

bool CDPL.Math.ULIdentityMatrix.__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.ULIdentityMatrix.__str__ ( )

Returns a string representation of the ULIdentityMatrix instance.

Returns
The generated string representation.

◆ __pos__()

ULIdentityMatrix CDPL.Math.ULIdentityMatrix.__pos__ ( )

Returns self.

Returns
self.

◆ __neg__()

ConstULMatrixExpression CDPL.Math.ULIdentityMatrix.__neg__ ( )

Returns the result of the operation self * -1.

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

◆ __add__()

ConstULMatrixExpression CDPL.Math.ULIdentityMatrix.__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.ULIdentityMatrix.__sub__ ( ConstULMatrixExpression  e)

Returns the result of the subtraction operation self - e.

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

◆ __mul__() [1/3]

ConstULMatrixExpression CDPL.Math.ULIdentityMatrix.__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.ULIdentityMatrix.__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.ULIdentityMatrix.__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.ULIdentityMatrix.__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.ULIdentityMatrix.__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.ULIdentityMatrix.__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.