UnstructuredData¶
-
class
subsurface.structs.base_structures.unstructured_data.
UnstructuredData
(data: xarray.core.dataset.Dataset, cells_attr_name: str = 'cell_attrs', vertex_attr_name: str = 'vertex_attrs')[source]¶ Bases:
object
Attributes Summary
Primary structure definition for unstructured data
Methods Summary
create_default_cells_arg
(cells, n_vertex)from_array
(vertex, cells[, cells_attr, …])Constructor of UnstructuredData from arrays or pandas DataFrames.
from_data_arrays_dict
(xarray_dict[, coords, …])from_raw_data
(raw_data[, coords, …])to_binary
([order])vertex_and_cells_arrays_to_data_array
(cells, …)Attributes Documentation
-
attributes
¶
-
attributes_to_dict
¶
-
cells
¶
-
cells_attr_name
: str = 'cell_attrs'¶
-
extent
¶
-
n_elements
¶
-
n_points
¶
-
n_vertex_per_element
¶
-
points_attributes
¶
-
points_attributes_to_dict
¶
-
vertex
¶
-
vertex_attr_name
: str = 'vertex_attrs'¶ Primary structure definition for unstructured data
-
data
¶ Data structure where we store
- Type
xarray.Dataset
- Parameters
ds (xarray.Dataset) – Directly a dataset with the expected structured. This arg is specially thought for loading data from disk
Notes
Depending on the shape of edge the following unstructured elements can be created:
cells NDArray[(Any, 0), IntX] or NDArray[(Any, 1), IntX] -> Point cloud. E.g. Outcrop scan with lidar
cells NDArray[(Any, 2), IntX] -> Lines. E.g. Borehole
cells NDArray[(Any, 3), IntX] -> Mesh. E.g surface-DEM Topography
- cells NDArray[(Any, 4), IntX]
-> tetrahedron
-> quadrilateral (or tetragon) UNSUPPORTED?
cells NDArray[(Any, 8), IntX] -> Hexahedron: Unstructured grid/Prisms
-
Methods Documentation
-
classmethod
create_default_cells_arg
(cells: Literal[points, lines], n_vertex: int) → numpy.ndarray[source]¶
-
classmethod
data_array_attributes_from_raw_data
(raw_data: Union[None, pandas.core.frame.DataFrame], dims: List[str], n_rows: int) → xarray.core.dataarray.DataArray[source]¶
-
classmethod
from_array
(vertex: numpy.ndarray, cells: Union[numpy.ndarray, Literal[lines, points]], cells_attr: Union[None, pandas.core.frame.DataFrame, Dict[str, xarray.core.dataarray.DataArray]] = None, vertex_attr: Union[None, pandas.core.frame.DataFrame, Dict[str, xarray.core.dataarray.DataArray]] = None, coords: Optional[Mapping[Hashable, Any]] = None, xarray_attributes: Optional[Mapping[Hashable, Any]] = None, default_cells_attr_name: str = 'cell_attrs', default_points_attr_name: str = 'vertex_attrs', attributes: Union[None, pandas.core.frame.DataFrame, Dict[str, xarray.core.dataarray.DataArray]] = None)[source]¶ Constructor of UnstructuredData from arrays or pandas DataFrames.
- Parameters
vertex (np.ndarray) – NDArray[(Any, 3), FloatX]: XYZ point data
cells (Union[np.ndarray, Literal["lines", "points"]]) – NDArray[(Any, …), IntX]: Combination of vertex that create different geometric elements. If str use default values for either points or lines
(Union[None (vertex_attr) – Number associated to an element
pd.DataFrame – Number associated to an element
Dict[str – Number associated to an element
xr.DataArray]]] – Number associated to an element
(Union[None – Number associated to points
pd.DataFrame – Number associated to points
Dict[str – Number associated to points
xr.DataArray]]] – Number associated to points
coords –
xarray_attributes –
attributes –
default_cells_attr_name –
default_points_attr_name –
Returns:
-
classmethod
from_data_arrays_dict
(xarray_dict: Dict[str, xarray.core.dataarray.DataArray], coords: Optional[Mapping[Hashable, Any]] = None, xarray_attributes: Optional[Mapping[Hashable, Any]] = None, default_cells_attributes_name='cell_attrs', default_points_attributes_name='vertex_attrs')[source]¶
-
classmethod
from_raw_data
(raw_data: subsurface.reader.readers_data.RawDataUnstructured, coords: Optional[Mapping[Hashable, Any]] = None, xarray_attributes: Optional[Mapping[Hashable, Any]] = None, default_cells_attributes_name: str = 'cell_attrs', default_points_attributes_name: str = 'vertex_attrs')[source]¶
-
classmethod
raw_attributes_to_dict_data_arrays
(default_attributes_name: str, n_items: int, dims: List[str], raw_attributes: Union[None, pandas.core.frame.DataFrame, Dict[str, xarray.core.dataarray.DataArray]]) → Dict[str, xarray.core.dataarray.DataArray][source]¶
-
classmethod
vertex_and_cells_arrays_to_data_array
(cells: Union[numpy.ndarray, Literal[lines, points]], vertex: numpy.ndarray)[source]¶
-