field_data_interfaces#
Common interfaces for field data.
Classes:
Abstract base class for accessing field data. |
|
Abstract base class for field information retrieval. |
|
Abstract base class for handling field data batches. |
|
Abstract base class for accessing field data. |
|
|
Class that enables object-style access to pathlines data structure. |
|
Container storing parameters for path-lines field data request. |
|
Container storing parameters for scalar field data request. |
|
Class that enables object-style access to surface data structures. |
|
Provides surface data types. |
|
Container storing parameters for surface data request. |
|
Container storing parameters for vector field data request. |
Exceptions:
Raised when field is unavailable. |
Functions:
|
Extract surface names or identifiers from a list of surfaces. |
- class ansys.fluent.core.field_data_interfaces.BaseFieldDataSource#
Bases:
ABC
Abstract base class for accessing field data.
This class defines the interface for retrieving field data based on user requests. It provides abstract methods that allow users to implement their own data sources for fetching field data related to surfaces, scalars, vectors, or pathlines.
Implementing classes should define: - A method to obtain surface IDs from user-provided surface names or numerical identifiers. - A method to retrieve field data based on a given request.
Subclasses must provide concrete implementations for all abstract methods.
Methods:
get_field_data
(obj)Retrieve the field data for a given request.
get_surface_ids
(surfaces)Retrieve a list of surface IDs based on input surface names or numerical identifiers.
- abstract get_field_data(obj)#
Retrieve the field data for a given request.
This method processes the specified request and returns the corresponding field data in a structured format.
- abstract get_surface_ids(surfaces)#
Retrieve a list of surface IDs based on input surface names or numerical identifiers.
- class ansys.fluent.core.field_data_interfaces.BaseFieldInfo#
Bases:
ABC
Abstract base class for field information retrieval.
This class defines the interface for obtaining metadata about scalar and vector fields, as well as surface details. It provides abstract methods that allow users to implement their own data sources for retrieving field value ranges, field characteristics, and surface information.
Implementing classes should define: - Methods to retrieve the range of scalar fields. - Methods to obtain metadata about scalar and vector fields. - Methods to retrieve surface-related information.
Subclasses must provide concrete implementations for all abstract methods.
Methods:
get_scalar_field_range
(field[, node_value, ...])Retrieve the range (minimum and maximum values) of a scalar field.
Retrieve information about available scalar fields.
Retrieve information about available surfaces.
- abstract get_scalar_field_range(field, node_value=False, surface_ids=None)#
Retrieve the range (minimum and maximum values) of a scalar field.
- Parameters:
- field (str): The name of the scalar field.
- node_value (bool, optional): Whether to retrieve node-based values instead of element-based. Defaults to False.
- surface_ids (List[int], optional): List of surface IDs for filtering data. Defaults to None.
- Returns:
- abstract get_scalar_fields_info()#
Retrieve information about available scalar fields.
This includes field names, associated domains, and sections.
- class ansys.fluent.core.field_data_interfaces.FieldBatch#
Bases:
ABC
Abstract base class for handling field data batches.
This class defines the interface for requesting field data based on user inputs and retrieving responses from the server. It provides abstract methods that allow users to develop their own implementations for interacting with different field data sources.
Implementing classes should define: - Methods to obtain surface IDs from user-provided surface names or identifiers. - A mechanism to add requests for different types of field data (surface, scalar,
vector, or pathlines).
A method to fetch the response containing the requested field data.
Subclasses must provide concrete implementations for all abstract methods.
Methods:
add_requests
(obj, *args)Add field data requests for surfaces, scalars, vectors, or pathlines.
Retrieve the response containing data for previously added field requests.
get_surface_ids
(surfaces)Retrieve a list of surface IDs based on input surface names or numerical identifiers.
- abstract add_requests(obj, *args)#
Add field data requests for surfaces, scalars, vectors, or pathlines.
This method allows users to specify multiple field data requests, which will later be processed when retrieving responses.
- abstract get_response()#
Retrieve the response containing data for previously added field requests.
This method processes all pending requests and returns the corresponding field data.
- abstract get_surface_ids(surfaces)#
Retrieve a list of surface IDs based on input surface names or numerical identifiers.
- class ansys.fluent.core.field_data_interfaces.FieldDataSource#
Bases:
BaseFieldDataSource
,ABC
Abstract base class for accessing field data.
This class defines the interface for retrieving field data based on user requests. In addition to the methods in BaseFieldDataSource it provides a method to create new field batch objects.
Implementing classes should define: - A method to obtain surface IDs from user-provided surface names or numerical identifiers. - A method to retrieve field data based on a given request. - A method to create new field batch.
Subclasses must provide concrete implementations for all abstract methods.
Methods:
Create a new field batch.
- abstract new_batch()#
Create a new field batch.
Bases:
RuntimeError
Raised when field is unavailable.
- class ansys.fluent.core.field_data_interfaces.PathlinesData(pathlines_data_for_surface)#
Bases:
object
Class that enables object-style access to pathlines data structure.
- Attributes:
- scalar_field_name: str
- vertices: npt.NDArray[np.float64] | None
- lines: list[npt.NDArray[np.float64]] | None
- scalar_field: npt.NDArray[np.float64] | None
- pathlines_count: npt.NDArray[np.float64] | None
- particle_time: npt.NDArray[np.float64] | None
Methods:
__init__
(pathlines_data_for_surface)__init__ method of PathlinesData class.
- __init__(pathlines_data_for_surface)#
__init__ method of PathlinesData class.
- class ansys.fluent.core.field_data_interfaces.PathlinesFieldDataRequest(field_name: str, surfaces: List[int | str | object], additional_field_name: str = '', provide_particle_time_field: bool | None = False, node_value: bool | None = True, steps: int | None = 500, step_size: float | None = 500, skip: int | None = 0, reverse: bool | None = False, accuracy_control_on: bool | None = False, tolerance: float | None = 0.001, coarsen: int | None = 1, velocity_domain: str | None = 'all-phases', zones: list | None = None, flatten_connectivity: bool = False)#
Bases:
NamedTuple
Container storing parameters for path-lines field data request.
Attributes:
Alias for field number 9
Alias for field number 2
Alias for field number 11
Alias for field number 0
Alias for field number 14
Alias for field number 4
Alias for field number 3
Alias for field number 8
Alias for field number 7
Alias for field number 6
Alias for field number 5
Alias for field number 1
Alias for field number 10
Alias for field number 12
Alias for field number 13
- class ansys.fluent.core.field_data_interfaces.ScalarFieldDataRequest(field_name: str, surfaces: List[int | str | object], node_value: bool | None = True, boundary_value: bool | None = True)#
Bases:
NamedTuple
Container storing parameters for scalar field data request.
Attributes:
Alias for field number 3
Alias for field number 0
Alias for field number 2
Alias for field number 1
- class ansys.fluent.core.field_data_interfaces.SurfaceData(surf_data)#
Bases:
object
Class that enables object-style access to surface data structures.
- Attributes:
- vertices: npt.NDArray[np.float64] | None
- connectivity: list[npt.NDArray[np.float64]] | None
- face_centroids: npt.NDArray[np.float64] | None
- face_normals: npt.NDArray[np.float64] | None
Methods:
__init__
(surf_data)__init__ method of SurfaceData class.
- __init__(surf_data)#
__init__ method of SurfaceData class.
- class ansys.fluent.core.field_data_interfaces.SurfaceDataType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)#
Bases:
Enum
Provides surface data types.
Attributes:
- FacesCentroid = 'centroid'#
- FacesConnectivity = 'faces'#
- FacesNormal = 'face-normal'#
- Vertices = 'vertices'#
- class ansys.fluent.core.field_data_interfaces.SurfaceFieldDataRequest(data_types: List[SurfaceDataType] | List[str], surfaces: List[int | str | object], overset_mesh: bool | None = False, flatten_connectivity: bool = False)#
Bases:
NamedTuple
Container storing parameters for surface data request.
Attributes:
Alias for field number 0
Alias for field number 3
Alias for field number 2
Alias for field number 1
- class ansys.fluent.core.field_data_interfaces.VectorFieldDataRequest(field_name: str, surfaces: List[int | str | object])#
Bases:
NamedTuple
Container storing parameters for vector field data request.
Attributes:
Alias for field number 0
Alias for field number 1
- ansys.fluent.core.field_data_interfaces.get_surfaces_from_objects(surfaces)#
Extract surface names or identifiers from a list of surfaces.
- Parameters:
- Returns:
List
- A flattened list of surface names/identifiers:
If an element has a name() method, the result of surface.name() is used.
Otherwise, the element itself is returned as-is.