finam.data.Grid#

class finam.data.Grid[source]#

Bases: GridBase

Abstract grid specification.

Attributes:
axes_names

list of str: Axes names (xyz order).

cell_centers

np.ndarray: Grid cell centers.

cell_count

int: Number of grid cells.

cell_node_counts

np.ndarray: Node count for each cell.

cell_types

np.ndarray: Cell types.

cells

np.ndarray: Cell nodes in ESMF format.

crs

The coordinate reference system.

data_axes_names

list of str: Axes names of the data.

data_location

Location of the associated data (either CELLS or POINTS).

data_points

Points of the associated data (either cell_centers or points).

data_shape

tuple: Shape of the associated data.

data_size

int: Size of the associated data.

dim

int: Dimension of the grid or data.

mesh_dim

int: Maximal cell dimension.

name

Grid name.

order

str: Data order (C-like or F-like to flatten data).

point_count

int: Number of grid points.

points

np.ndarray: Grid points.

Methods

compatible_with(other)

Check for compatibility with other Grid.

export_vtk(path[, data, cell_data, ...])

Export grid and data to a VTK file.

from_canonical(data)

Convert canonical data to grid specific form.

get_transform_to(other)

Transformation between compatible grids.

to_canonical(data)

Convert grid specific data to canonical form.

abstract property crs#

The coordinate reference system.

abstract property point_count#

Number of grid points.

Type:

int

abstract property cell_count#

Number of grid cells.

Type:

int

abstract property points#

Grid points.

Type:

np.ndarray

abstract property cells#

Cell nodes in ESMF format.

Type:

np.ndarray

abstract property cell_types#

Cell types.

Type:

np.ndarray

property cell_centers#

Grid cell centers.

Type:

np.ndarray

property cell_node_counts#

Node count for each cell.

Type:

np.ndarray

property mesh_dim#

Maximal cell dimension.

Type:

int

abstract property data_location#

Location of the associated data (either CELLS or POINTS).

property data_points#

Points of the associated data (either cell_centers or points).

abstract property data_shape#

Shape of the associated data.

Type:

tuple

property data_size#

Size of the associated data.

Type:

int

abstract property order#

Data order (C-like or F-like to flatten data).

Type:

str

abstract property axes_names#

Axes names (xyz order).

Type:

list of str

property data_axes_names#

Axes names of the data.

Type:

list of str

compatible_with(other)[source]#

Check for compatibility with other Grid.

Parameters:

other (instance of Grid) – Other grid to compatibility with.

Returns:

compatibility

Return type:

bool

export_vtk(path, data=None, cell_data=None, point_data=None, field_data=None, mesh_type='unstructured')[source]#

Export grid and data to a VTK file.

Parameters:
  • path (pathlike) – File path. Suffix will be replaced according to mesh type (.vtu)

  • data (dict or None, optional) – Data in the corresponding shape given by name, by default None

  • cell_data (dict or None, optional) – Additional cell data, by default None

  • point_data (dict or None, optional) – Additional point data, by default None

  • field_data (dict or None, optional) – Additional field data, by default None

  • mesh_type (str, optional) – Mesh type, by default “unstructured”

Raises:

ValueError – If mesh type is not supported.

abstract property dim#

Dimension of the grid or data.

Type:

int

from_canonical(data)#

Convert canonical data to grid specific form.

get_transform_to(other)#

Transformation between compatible grids.

property name#

Grid name.

to_canonical(data)#

Convert grid specific data to canonical form.