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

Adapter that exposes a quaternion as a 4-element vector expression (indices map to the components C1, C2, C3, C4). More...

+ Inheritance diagram for CDPL.Math.ULQuaternionVectorAdapter:

Public Member Functions

None __init__ (ULQuaternionVectorAdapter qa)
 Contructs a copy of the ULQuaternionVectorAdapter instance qa. More...
 
None __init__ (ULQuaternionExpression q)
 Constructs the adapter wrapping the quaternion q. More...
 
int getObjectID ()
 Returns the numeric identifier (ID) of the wrapped C++ class instance. More...
 
ULQuaternionVectorAdapter assign (ConstFVectorExpression e)
 Assigns the vector expression e to this view (writing through to the wrapped quaternion). More...
 
ULQuaternionVectorAdapter assign (ConstDVectorExpression e)
 Assigns the vector expression e to this view (writing through to the wrapped quaternion). More...
 
ULQuaternionVectorAdapter assign (ConstLVectorExpression e)
 Assigns the vector expression e to this view (writing through to the wrapped quaternion). More...
 
ULQuaternionVectorAdapter assign (ConstULVectorExpression e)
 Assigns the vector expression e to this view (writing through to the wrapped quaternion). More...
 
ULQuaternionVectorAdapter assign (ULQuaternionVectorAdapter qa)
 Copies the components of qa into this view (writing through to the wrapped quaternion). More...
 
ULQuaternionVectorAdapter assign (object a)
 Assigns the contents of the numpy.ndarray object a to this view. More...
 
bool isEmpty ()
 Tells whether the view is empty (always False). More...
 
int getSize ()
 Returns the dimensionality of the view (always 4). More...
 
int getElement (int i)
 Returns the quaternion component at index i. More...
 
object toArray ()
 Converts the ULQuaternionVectorAdapter instance into a corresponding numpy.ndarray object. More...
 
None swap (ULQuaternionVectorAdapter qa)
 Swaps the components of this view with those of qa. More...
 
None setElement (int i, int v)
 Sets the value of the quaternion component at index i to v. More...
 
ULQuaternionExpression getData ()
 Returns the wrapped quaternion. More...
 
bool __eq__ (ULQuaternionVectorAdapter qa)
 Returns the result of the comparison operation self == qa. More...
 
bool __eq__ (ConstULVectorExpression e)
 Returns the result of the comparison operation self == e. More...
 
bool __ne__ (ULQuaternionVectorAdapter qa)
 Returns the result of the comparison operation self != qa. More...
 
bool __ne__ (ConstULVectorExpression e)
 Returns the result of the comparison operation self != e. More...
 
int __call__ (int i)
 Returns the quaternion component at index i. More...
 
int __getitem__ (int i)
 Returns the quaternion component at index i. More...
 
int __len__ ()
 Returns the dimensionality of the view (always 4). More...
 
str __str__ ()
 Returns a string representation of the ULQuaternionVectorAdapter instance. More...
 
ULQuaternionVectorAdapter __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 quaternion component at index i to v. More...
 
ULQuaternionVectorAdapter __iadd__ (ULQuaternionVectorAdapter qa)
 Adds the quaternion adapter qa componentwise to this view. More...
 
ULQuaternionVectorAdapter __iadd__ (ConstULVectorExpression e)
 Adds the vector expression e componentwise to this view. More...
 
ULQuaternionVectorAdapter __isub__ (ULQuaternionVectorAdapter qa)
 Subtracts the quaternion adapter qa componentwise from this view. More...
 
ULQuaternionVectorAdapter __isub__ (ConstULVectorExpression e)
 Subtracts the vector expression e componentwise from this view. More...
 
ULQuaternionVectorAdapter __imul__ (int t)
 Multiplies every component of this view by the scalar t. More...
 
ULQuaternionVectorAdapter __idiv__ (int t)
 Divides every component of this view by the scalar t. More...
 
ULQuaternionVectorAdapter __itruediv__ (int t)
 Divides every component of this view by the scalar t. More...
 

Properties

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

Detailed Description

Adapter that exposes a quaternion as a 4-element vector expression (indices map to the components C1, C2, C3, C4).

Constructor & Destructor Documentation

◆ __init__() [1/2]

None CDPL.Math.ULQuaternionVectorAdapter.__init__ ( ULQuaternionVectorAdapter  qa)

Contructs a copy of the ULQuaternionVectorAdapter instance qa.

Parameters
qaThe ULQuaternionVectorAdapter instance to copy.

◆ __init__() [2/2]

None CDPL.Math.ULQuaternionVectorAdapter.__init__ ( ULQuaternionExpression  q)

Constructs the adapter wrapping the quaternion q.

Parameters
qThe quaternion to be viewed as a 4-element vector.

Member Function Documentation

◆ getObjectID()

int CDPL.Math.ULQuaternionVectorAdapter.getObjectID ( )

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

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

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

Assigns the vector expression e to this view (writing through to the wrapped quaternion).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [2/6]

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

Assigns the vector expression e to this view (writing through to the wrapped quaternion).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [3/6]

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

Assigns the vector expression e to this view (writing through to the wrapped quaternion).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [4/6]

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

Assigns the vector expression e to this view (writing through to the wrapped quaternion).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [5/6]

ULQuaternionVectorAdapter CDPL.Math.ULQuaternionVectorAdapter.assign ( ULQuaternionVectorAdapter  qa)

Copies the components of qa into this view (writing through to the wrapped quaternion).

Parameters
qaThe source adapter.
Returns
self.

◆ assign() [6/6]

ULQuaternionVectorAdapter CDPL.Math.ULQuaternionVectorAdapter.assign ( object  a)

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

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

◆ isEmpty()

bool CDPL.Math.ULQuaternionVectorAdapter.isEmpty ( )

Tells whether the view is empty (always False).

Returns
False.

◆ getSize()

int CDPL.Math.ULQuaternionVectorAdapter.getSize ( )

Returns the dimensionality of the view (always 4).

Returns
4.

◆ getElement()

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

Returns the quaternion component at index i.

Parameters
iThe zero-based component index (0 = C1, 1 = C2, 2 = C3, 3 = C4).
Returns
The value of the component.
Exceptions
Base.IndexErrorif i is not in the range [0, 3].

◆ toArray()

object CDPL.Math.ULQuaternionVectorAdapter.toArray ( )

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

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

◆ swap()

None CDPL.Math.ULQuaternionVectorAdapter.swap ( ULQuaternionVectorAdapter  qa)

Swaps the components of this view with those of qa.

Parameters
qaThe adapter to swap with.

◆ setElement()

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

Sets the value of the quaternion component at index i to v.

Parameters
iThe zero-based component index (0 = C1, 1 = C2, 2 = C3, 3 = C4).
vThe new value of the component.
Exceptions
Base.IndexErrorif i is not in the range [0, 3].

◆ getData()

ULQuaternionExpression CDPL.Math.ULQuaternionVectorAdapter.getData ( )

Returns the wrapped quaternion.

Returns
The wrapped quaternion closure.

◆ __eq__() [1/2]

bool CDPL.Math.ULQuaternionVectorAdapter.__eq__ ( ULQuaternionVectorAdapter  qa)

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

Parameters
qaThe ULQuaternionVectorAdapter instance to be compared with.
Returns
The result of the comparison operation.

◆ __eq__() [2/2]

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

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

Parameters
qaThe ULQuaternionVectorAdapter instance to be compared with.
Returns
The result of the comparison operation.

◆ __ne__() [2/2]

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

Returns the quaternion component at index i.

Parameters
iThe zero-based component index (0 = C1, 1 = C2, 2 = C3, 3 = C4).
Returns
The value of the component.
Exceptions
Base.IndexErrorif i is not in the range [0, 3].

◆ __getitem__()

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

Returns the quaternion component at index i.

Parameters
iThe zero-based component index (0 = C1, 1 = C2, 2 = C3, 3 = C4).
Returns
The value of the component.
Exceptions
Base.IndexErrorif i is not in the range [0, 3].

◆ __len__()

int CDPL.Math.ULQuaternionVectorAdapter.__len__ ( )

Returns the dimensionality of the view (always 4).

Returns
4.

◆ __str__()

str CDPL.Math.ULQuaternionVectorAdapter.__str__ ( )

Returns a string representation of the ULQuaternionVectorAdapter instance.

Returns
The generated string representation.

◆ __pos__()

ULQuaternionVectorAdapter CDPL.Math.ULQuaternionVectorAdapter.__pos__ ( )

Returns self.

Returns
self.

◆ __neg__()

ConstULVectorExpression CDPL.Math.ULQuaternionVectorAdapter.__neg__ ( )

Returns the result of the operation self * -1.

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

◆ __add__()

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

Returns the result of the subtraction operation self - e.

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

◆ __mul__() [1/2]

ConstULVectorExpression CDPL.Math.ULQuaternionVectorAdapter.__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.ULQuaternionVectorAdapter.__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.ULQuaternionVectorAdapter.__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.ULQuaternionVectorAdapter.__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.ULQuaternionVectorAdapter.__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.ULQuaternionVectorAdapter.__setitem__ ( int  i,
int  v 
)

Sets the value of the quaternion component at index i to v.

Parameters
iThe zero-based component index (0 = C1, 1 = C2, 2 = C3, 3 = C4).
vThe new value of the component.
Exceptions
Base.IndexErrorif i is not in the range [0, 3].

◆ __iadd__() [1/2]

ULQuaternionVectorAdapter CDPL.Math.ULQuaternionVectorAdapter.__iadd__ ( ULQuaternionVectorAdapter  qa)

Adds the quaternion adapter qa componentwise to this view.

Parameters
qaThe quaternion adapter to add.
Returns
self.

◆ __iadd__() [2/2]

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

Adds the vector expression e componentwise to this view.

Parameters
eThe vector expression to add.
Returns
self.

◆ __isub__() [1/2]

ULQuaternionVectorAdapter CDPL.Math.ULQuaternionVectorAdapter.__isub__ ( ULQuaternionVectorAdapter  qa)

Subtracts the quaternion adapter qa componentwise from this view.

Parameters
qaThe quaternion adapter to subtract.
Returns
self.

◆ __isub__() [2/2]

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

Subtracts the vector expression e componentwise from this view.

Parameters
eThe vector expression to subtract.
Returns
self.

◆ __imul__()

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

Multiplies every component of this view by the scalar t.

Parameters
tThe scalar multiplier.
Returns
self.

◆ __idiv__()

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

Divides every component of this view by the scalar t.

Parameters
tThe scalar divisor.
Returns
self.

◆ __itruediv__()

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

Divides every component of this view by the scalar t.

Parameters
tThe scalar divisor.
Returns
self.