ComplexTensor

class ComplexTensor(*args)

Complex tensor.

Available constructors:

ComplexTensor(n_rows, n_columns, n_sheets)

ComplexTensor(n_rows, n_columns, n_sheets, values)

ComplexTensor(sequence)

Parameters:
n_rowsint, n_r > 0

Number of rows.

n_columnsint, n_c > 0

Number of columns.

n_sheetsint, n_s > 0

Number of sheets.

valuessequence of complex with size n_r \times n_c \times n_s, optional

Values. OpenTURNS uses column-major ordering (like Fortran) for reshaping the flat list of values. If not mentioned, a zero tensor is created.

sequencesequence of complex

Values.

Methods

clean(threshold)

Set elements smaller than a threshold to zero.

getClassName()

Accessor to the object's name.

getId()

Accessor to the object's id.

getImplementation()

Accessor to the underlying implementation.

getName()

Accessor to the object's name.

getNbColumns()

Accessor to the number of columns.

getNbRows()

Accessor to the number of rows.

getNbSheets()

Accessor to the number of sheets.

getSheet(k)

Get a sheet of the tensor.

imag()

Accessor tot the imaginary part of the tensor.

isEmpty()

Tell if the tensor is empty.

real()

Accessor tot the real part of the tensor.

setName(name)

Accessor to the object's name.

setSheet(k, m)

Set a matrix as a sheet of the complex tensor.

Examples

Create a tensor of complex values:

>>> import openturns as ot
>>> T = ot.ComplexTensor(2, 2, 2, range(2 * 2 * 2))
>>> print(T)
sheet #0
[[ (0,0) (2,0) ]
 [ (1,0) (3,0) ]]
sheet #1
[[ (4,0) (6,0) ]
 [ (5,0) (7,0) ]]

Get or set terms:

>>> print(T[0, 0, 0])
0j
>>> T[0, 0, 0] = 1.0
>>> print(T[0, 0, 0])
(1+0j)

Create an openturns tensor from a numpy 3d-array:

>>> import numpy as np
>>> np_3d_array = np.array([[[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]], [[7.0, 8.0, 9.0], [10.0, 11.0, 12.0]]])
>>> ot_tensor = ot.ComplexTensor(np_3d_array)

and back

>>> np_tensor = np.array(ot_tensor)
__init__(*args)
clean(threshold)

Set elements smaller than a threshold to zero.

Parameters:
thresholdfloat

Threshold for zeroing elements.

Returns:
cleaned_tensorComplexTensor

Input tensor with elements smaller than the threshold set to zero.

getClassName()

Accessor to the object’s name.

Returns:
class_namestr

The object class name (object.__class__.__name__).

getId()

Accessor to the object’s id.

Returns:
idint

Internal unique identifier.

getImplementation()

Accessor to the underlying implementation.

Returns:
implImplementation

A copy of the underlying implementation object.

getName()

Accessor to the object’s name.

Returns:
namestr

The name of the object.

getNbColumns()

Accessor to the number of columns.

Returns:
n_columnsint
getNbRows()

Accessor to the number of rows.

Returns:
n_rowsint
getNbSheets()

Accessor to the number of sheets.

Returns:
n_sheetsint
getSheet(k)

Get a sheet of the tensor.

Parameters:
sheetint

Index of sheet element.

Returns:
MComplexMatrix

The sheet element.

Examples

>>> import openturns as ot
>>> T = ot.ComplexTensor(2,2,3, range(2*2*3))
>>> print(T)
sheet #0
[[  (0,0)  (2,0) ]
 [  (1,0)  (3,0) ]]
sheet #1
[[  (4,0)  (6,0) ]
 [  (5,0)  (7,0) ]]
sheet #2
[[  (8,0) (10,0) ]
 [  (9,0) (11,0) ]]
>>> print(T.getSheet(0))
[[ (0,0) (2,0) ]
 [ (1,0) (3,0) ]]
imag()

Accessor tot the imaginary part of the tensor.

Returns:
tensorTensor

Imaginary part of the tensor

isEmpty()

Tell if the tensor is empty.

Returns:
is_emptybool

True if the tensor contains no element.

Examples

>>> import openturns as ot
>>> T = ot.ComplexTensor()
>>> T.isEmpty()
True
real()

Accessor tot the real part of the tensor.

Returns:
tensorTensor

Real part of the tensor

setName(name)

Accessor to the object’s name.

Parameters:
namestr

The name of the object.

setSheet(k, m)

Set a matrix as a sheet of the complex tensor.

Parameters:
sheetint

Index of sheet element.

MComplexMatrix

The matrix.

Examples

>>> import openturns as ot
>>> T = ot.ComplexTensor(2,2,3, range(2*2*3))
>>> print(T)
sheet #0
[[  (0,0)  (2,0) ]
 [  (1,0)  (3,0) ]]
sheet #1
[[  (4,0)  (6,0) ]
 [  (5,0)  (7,0) ]]
sheet #2
[[  (8,0) (10,0) ]
 [  (9,0) (11,0) ]]
>>> M = ot.ComplexMatrix([[1,2],[3,4]])
>>> T.setSheet(0, M)
>>> print(T)
sheet #0
[[  (1,0)  (2,0) ]
 [  (3,0)  (4,0) ]]
sheet #1
[[  (4,0)  (6,0) ]
 [  (5,0)  (7,0) ]]
sheet #2
[[  (8,0) (10,0) ]
 [  (9,0) (11,0) ]]