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

Memory-efficient immutable vector where all elements have the value zero of type unsigned long. More...

+ Inheritance diagram for CDPL.Math.ULZeroVector:

Public Member Functions

None __init__ ()
 Constructs an empty zero vector.
 
None __init__ (ULZeroVector v)
 Constructs a copy of the zero vector v. More...
 
None __init__ (int n)
 Constructs a zero vector of size n. More...
 
None resize (int n)
 Resizes the logical element count to n. More...
 
int getObjectID ()
 Returns the numeric identifier (ID) of the wrapped C++ class instance. More...
 
bool isEmpty ()
 Tells whether the vector has zero logical size. More...
 
int getSize ()
 Returns the logical element count. More...
 
int getElement (int i)
 Returns the zero element. More...
 
object toArray ()
 Converts the ULZeroVector instance into a corresponding numpy.ndarray object. More...
 
ULZeroVector assign (ULZeroVector v)
 Copy-assigns the logical size from v. More...
 
None swap (ULZeroVector v)
 Swaps the logical sizes with v. More...
 
bool __eq__ (ULZeroVector 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__ (ULZeroVector 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 zero element. More...
 
int __getitem__ (int i)
 Returns the zero element. More...
 
int __len__ ()
 Returns the logical element count. More...
 
str __str__ ()
 Returns a string representation of the ULZeroVector instance. More...
 
ULZeroVector __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...
 

Properties

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

Detailed Description

Memory-efficient immutable vector where all elements have the value zero of type unsigned long.

Constructor & Destructor Documentation

◆ __init__() [1/2]

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

Constructs a copy of the zero vector v.

Parameters
vThe zero vector to copy.

◆ __init__() [2/2]

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

Constructs a zero vector of size n.

Parameters
nThe element count.

Member Function Documentation

◆ resize()

None CDPL.Math.ULZeroVector.resize ( int  n)

Resizes the logical element count to n.

Parameters
nThe new element count.

◆ getObjectID()

int CDPL.Math.ULZeroVector.getObjectID ( )

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

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

◆ isEmpty()

bool CDPL.Math.ULZeroVector.isEmpty ( )

Tells whether the vector has zero logical size.

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

◆ getSize()

int CDPL.Math.ULZeroVector.getSize ( )

Returns the logical element count.

Returns
The element count.

◆ getElement()

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

Returns the zero element.

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

◆ toArray()

object CDPL.Math.ULZeroVector.toArray ( )

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

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

◆ assign()

ULZeroVector CDPL.Math.ULZeroVector.assign ( ULZeroVector  v)

Copy-assigns the logical size from v.

Parameters
vThe source zero vector.
Returns
self.

◆ swap()

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

Swaps the logical sizes with v.

Parameters
vThe zero vector to swap with.

◆ __eq__() [1/2]

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

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

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

◆ __eq__() [2/2]

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

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

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

◆ __ne__() [2/2]

bool CDPL.Math.ULZeroVector.__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.ULZeroVector.__call__ ( int  i)

Returns the zero element.

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

◆ __getitem__()

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

Returns the zero element.

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

◆ __len__()

int CDPL.Math.ULZeroVector.__len__ ( )

Returns the logical element count.

Returns
The element count.

◆ __str__()

str CDPL.Math.ULZeroVector.__str__ ( )

Returns a string representation of the ULZeroVector instance.

Returns
The generated string representation.

◆ __pos__()

ULZeroVector CDPL.Math.ULZeroVector.__pos__ ( )

Returns self.

Returns
self.

◆ __neg__()

ConstULVectorExpression CDPL.Math.ULZeroVector.__neg__ ( )

Returns the result of the operation self * -1.

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

◆ __add__()

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

Returns the result of the subtraction operation self - e.

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

◆ __mul__() [1/2]

ConstULVectorExpression CDPL.Math.ULZeroVector.__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.ULZeroVector.__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.ULZeroVector.__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.ULZeroVector.__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.ULZeroVector.__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.