MeshesContainer#

Contains classes associated with the DPF MeshesContainer.

class ansys.dpf.core.meshes_container.MeshesContainer(meshes_container=None, server=None)#

Represents a meshes container, which contains meshes split on a given space.

Parameters
  • meshes_container (ansys.grpc.dpf.collection_pb2.Collection or) – ansys.dpf.core.MeshesContainer, optional Create a meshes container from a collection message or create a copy from an existing meshes container. The default is None.

  • server (ansys.dpf.core.server, optional) – Server with the channel connected to the remote or local instance. The default is None, in which case an attempt is made to use the global server.

plot(fields_container=None, **kwargs)#

Plot the meshes container with a specific result if fields_container is specified.

Parameters
  • fields_container (FieldsContainer, optional) – Data to plot. The default is None.

  • **kwargs (optional) – Additional keyword arguments for the plotter. For additional keyword arguments, see help(pyvista.plot).

Examples

>>> from ansys.dpf import core as dpf
>>> from ansys.dpf.core import examples
>>> model = dpf.Model(examples.multishells_rst)
>>> mesh = model.metadata.meshed_region
>>> split_mesh_op = dpf.operators.mesh.split_mesh(mesh=mesh, property="mat")
>>> meshes_cont = split_mesh_op.eval()
>>> disp_op = dpf.operators.result.displacement(
...     data_sources = dpf.DataSources(examples.multishells_rst),
...     mesh = meshes_cont
... )
>>> disp_fc = disp_op.outputs.fields_container()
>>> meshes_cont.plot(disp_fc)
get_meshes(label_space)#

Retrieve the meshes at a label space.

Parameters

label_space (dict[str,int]) – Meshes corresponding to a filter (label space) in the input. For example: {"elshape":1, "body":12}

Returns

meshes – Meshes corresponding to the request.

Return type

list[MeshedRegion]

get_mesh(label_space_or_index)#

Retrieve the mesh at a requested index or label space.

Raises an exception if the request returns more than one mesh.

Parameters

label_space_or_index (dict[str,int] , int) – Scoping of the requested mesh, such as {"time": 1, "complex": 0} or the index of the mesh.

Returns

mesh – Mesh corresponding to the request.

Return type

MeshedRegion

add_mesh(label_space, mesh)#

Add or update the scoping at a requested label space.

Parameters
  • label_space (dict[str,int]) – Label space of the requested meshes. For example, {“elshape”:1, “body”:12}.

  • mesh (MeshedRegion) – DPF mesh to add or update.

add_label(label, default_value=None)#

Add the requested label to scope the collection.

Parameters
  • label (str) – Labels to scope the entries to. For example, "time".

  • default_value (int, optional) – Default value for existing fields in the collection. The default is None.

Examples

>>> from ansys.dpf import core as dpf
>>> coll = dpf.Collection(dpf.types.field)
>>> coll.add_label('time')
get_available_ids_for_label(label='time')#

Retrieve the IDs assigned to an input label.

Parameters

label (str) – Name of the input label. The default is "time".

Returns

ids – List of IDs assigned to the input label.

Return type

list[int]

get_label_scoping(label='time')#

Retrieve the scoping for an input label.

This method allows you to retrieve a list of IDs for a given input label in the collection. For example, if the label el_type exists in the collection, you can use the get_lable_scoping method to retrieve a list of IDS with this label. You can then use these IDs to request a given entity inside the collection.

Parameters

label (str) – Name of the input label.

Returns

scoping – IDs scopped to the input label.

Return type

Scoping

get_label_space(index)#

Retrieve the label space of an entry at a requested index.

Parameters

index (int) – Index of the entry.

Returns

label_space – Scoping of the requested entry. For example, {"time": 1, "complex": 0}.

Return type

dict(str:int)

has_label(label)#

Check if a collection has a specified label.

Parameters

label (str) – Label to search for. For example, "time".

Returns

True when successful, False when failed.

Return type

bool

Examples

>>> from ansys.dpf import core as dpf
>>> coll = dpf.Collection(dpf.types.field)
>>> coll.add_label('time')
>>> coll.has_label('time')
True
>>> coll.has_label('complex')
False
static integral_collection(inpt, server: Optional[ansys.dpf.core.server.DpfServer] = None)#

Creates a collection of integral type with a list.

The collection of integral is the equivalent of an array of data sent server side. It can be used to efficiently stream large data to the server.

Parameters

inpt (list[float], list[int], numpy.array) – list to transfer server side

Return type

Collection

Notes

Used by default by the 'Operator' and the``’Workflow’`` when a list is connected or returned.

property labels#

Retrieve labels scoping the collection.

Returns

labels – List of labels that entries are scoped to. For example, ["time", "complex"].

Return type

list[str]

set_labels(labels)#

Set labels for scoping the collection.

Parameters

labels (list[str], optional) – Labels to scope entries to. For example, ["time", "complex"].