cherab.imas.math.UnstructGridVectorFunction3DΒΆ

class cherab.imas.math.UnstructGridVectorFunction3DΒΆ

Bases: Function3D

Simple vector interpolator for the data defined on the 3D unstructured grid.

Find the cell containing the point (x, y, z) using the KDtree algorithm. Return the 3D vector value for this cell or the fill_vector if the grid does not contain the point.

Parameters:
vertex_coords : (N,3) array_like

3D array-like with the vertex coordinates of tetrahedra.

tetrahedra : (M,4) array_like

3D integer array-like with the vertex indices forming the tetrahedra.

tetra_to_cell_map : (M,) array_like

1D integer array-like with the indices of the grid cells (cube) containing the tetrahedra.

grid_vectors : (3,L) ndarray

Array containing 3D vectors in the grid cells.

fill_vector : Vector3D, optional

3D vector returned outside the grid, by default Vector3D(0, 0, 0).

Methods

__call__

Evaluate the function f(x, y, z)

instance(instance[,Β grid_vectors,Β fill_vector])

Create a new interpolator instance from an existing UnstructGridVectorFunction3D or UnstructGridFunction3D instance.

__call__()ΒΆ

Evaluate the function f(x, y, z)

Parameters:
x : float

function parameter x

y : float

function parameter y

Return type:

float

classmethod instance(instance, grid_vectors=None, fill_vector=None)ΒΆ

Create a new interpolator instance from an existing UnstructGridVectorFunction3D or UnstructGridFunction3D instance.

The new interpolator instance will share the same internal acceleration data as the original interpolator. The grid_vectors of the new instance can be redefined. This method should be used if the user has multiple datasets that lie on the same mesh geometry. Using this methods avoids the repeated rebuilding of the mesh acceleration structures by sharing the geometry data between multiple interpolator objects.

If created from the UnstructGridFunction3D instance, the grid_vectors and the fill_vector must not be None.

Parameters:
instance : UnstructGridVectorFunction3D | UnstructGridFunction3DΒΆ

The instance from which to create the new interpolator.

grid_vectors : (3,L) ndarray, optionalΒΆ

Array containing vector grid data.

fill_vector : Vector3D, optionalΒΆ

3D vector returned outside the grid, by default None. If None, inherited from the original instance.

Returns:

New interpolator instance.

Return type:

UnstructGridVectorFunction3D | UnstructGridFunction3D