# vectors.py¶

Define standard vector and matrix functions.

`petgem.vectors.``deleteDuplicateRows`(matrix)[source]

Delete duplicate rows in a matrix.

Parameters

matrix (ndarray) – input matrix to be processed.

Returns

matrix without duplicate rows

Return type

ndarray

`petgem.vectors.``findUniqueRows`(array, return_index=False, return_inverse=False)[source]

Find unique rows of a two-dimensional numpy array.

Parameters
• ndarray – array to be processed.

• return_index (bool) – the indices of array that result in the unique array.

• return_inverse (bool) – indices of the unique array that can be used to reconstruct array.

Returns

unique rows.

Return type

ndarray.

`petgem.vectors.``invConnectivity`(M, nP)[source]

Compute the opposite connectivity matrix of M.

Parameters
• M (ndarray) – connectivity matrix with dimensions = (nElems,eleOrder)

• nP (int) – number of nodes/edges/faces in matrix M.

Returns

connectivity matrix with dimensions = (nNodes,S), (nEdges,S) or (nFaces,S)

Return type

ndarray.

Note

eleOrder determines the number of entities per element in matrix M, therefore 4 is the nodal element order, 6 is the edge element order and 3 is the element order of faces. S in the output is the maximum number of elements sharing a given node/edge/face

If M represents a element/nodes connectivity, the function computes a node/elements connectivity.

If M represents a element/edges connectivity, the function computes a edge/elements connectivity.

If M represents a element/faces connectivity, the function computes a faces/elements connectivity.

`petgem.vectors.``is_duplicate_entry`(x)[source]

Compute number of duplicate entries in a vector.

Parameters

x (int-array) – matrix.

Returns

number of duplicate entries.

Return type

int.

`petgem.vectors.``unitary_test`()[source]

Unitary test for vectors.py script.