Cyclic Support#
- class ansys.dpf.core.cyclic_support.CyclicSupport(cyclic_support, server=None)#
Represents a cyclic support, which describes a model with cyclic symmetry.
The model has the necessary data for cyclic (and multistage) expansion.
- Parameters:
cyclic_support (ansys.grpc.dpf.cyclic_support_pb2.CyclicSupport message) – Cyclic support.
server (DPFServer , 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.
Examples
Get a cyclic support from a model.
>>> from ansys.dpf import core as dpf >>> from ansys.dpf.core import examples >>> multi_stage = examples.download_multi_stage_cyclic_result() >>> model = dpf.Model(multi_stage) >>> result_info = model.metadata.result_info >>> cyc_support = result_info.cyclic_support >>> cyc_support.num_sectors() 6 >>> cyc_support.num_stages 2
- property num_stages: int#
Number of cyclic stages in the model
Examples
>>> from ansys.dpf.core import Model >>> from ansys.dpf.core import examples >>> multi_stage = examples.download_multi_stage_cyclic_result() >>> cyc_support = Model(multi_stage).metadata.result_info.cyclic_support >>> cyc_support.num_stages 2
- Returns:
Number of cyclic stages in the model.
- Return type:
int
- num_sectors(stage_num=0)#
Number of sectors to expand on 360 degrees.
- Parameters:
stage_num (int , optional) – Number of the stages required (from 0 to num_stages).
- Returns:
Number of sectors to expand on 360 degrees.
- Return type:
int
Examples
>>> from ansys.dpf.core import Model >>> from ansys.dpf.core import examples >>> multi_stage = examples.download_multi_stage_cyclic_result() >>> cyc_support = Model(multi_stage).metadata.result_info.cyclic_support >>> cyc_support.num_sectors(0) 6 >>> cyc_support.num_sectors(1) 12
- base_nodes_scoping(stage_num=0)#
Retrieve a nodal scoping containing node IDs in the base sector of the given stage.
- Parameters:
stage_num (int, optional) – Number of the stage required (from 0 to num_stages).
- Returns:
base_nodes_scoping – Nodes IDs in the base sector of the given stage.
- Return type:
Examples
>>> from ansys.dpf.core import Model >>> from ansys.dpf.core import examples >>> multi_stage = examples.download_multi_stage_cyclic_result() >>> cyc_support = Model(multi_stage).metadata.result_info.cyclic_support >>> base = cyc_support.base_nodes_scoping(0)
- base_elements_scoping(stage_num=0)#
Retrieve an elemental scoping containing elements IDs in the base sector of the given stage.
- Parameters:
stage_num (int, optional) – Number of the stage required (from 0 to num_stages).
- Returns:
base_elements_scoping – Elements ids in the base sector of the given stage.
- Return type:
Examples
>>> from ansys.dpf.core import Model >>> from ansys.dpf.core import examples >>> multi_stage = examples.download_multi_stage_cyclic_result() >>> cyc_support = Model(multi_stage).metadata.result_info.cyclic_support >>> base = cyc_support.base_elements_scoping(stage_num=1)
- sectors_set_for_expansion(stage_num=0)#
Retrieve a sector’s scoping of the already expanded results and mesh or the list of sectors that will be expanded by default.
A sector’s scoping starts from 0, with the maximum equal to num_sectors-1.
- Parameters:
stage_num (int, optional) – Number of the stage required (from 0 to num_stages).
- Returns:
sectors_set_for_expansion – List of sectors (starting from 0 to max = num_sectors-1).
- Return type:
Examples
>>> from ansys.dpf.core import Model >>> from ansys.dpf.core import examples >>> multi_stage = examples.download_multi_stage_cyclic_result() >>> cyc_support = Model(multi_stage).metadata.result_info.cyclic_support >>> sectors_scoping = cyc_support.sectors_set_for_expansion(stage_num=1) >>> print(sectors_scoping.ids) [...0... 1... 2... 3... 4... 5... 6... 7... 8... 9... 10... 11]
- expand_node_id(node_id, sectors=None, stage_num=0)#
Retrieve the node IDs corresponding to the base sector node ID given in the input after expansion.
- Parameters:
node_id (int) – Base sector’s node ID to expand.
sectors (Scoping , list of int, optional) – List of sectors to expand (from 0 to
num_sectors - 1
). The default isNone
, in which case all sectors are expanded.stage_num (int, optional) – Number of the stage required (from 0 to
num_stages
).
- Returns:
sectors_set_for_expansion – List of sectors (starting from 0 to
num_sectors - 1
).- Return type:
Examples
>>> from ansys.dpf.core import Model >>> from ansys.dpf.core import examples >>> multi_stage = examples.download_multi_stage_cyclic_result() >>> cyc_support = Model(multi_stage).metadata.result_info.cyclic_support >>> expanded_scoping = cyc_support.expand_node_id(1,stage_num=0) >>> print(expanded_scoping.ids) [...1... 3596... 5816... 8036... 10256... 12476]
- expand_element_id(element_id, sectors=None, stage_num=0)#
Retrieves the element IDs corresponding to the base sector element ID given in the input after expansion.
- Parameters:
element_id (int) – Base sector’s element ID to expand.
sectors (Scoping or list of int, optional) – List of sectors to expand (from 0 to
num_sectors - 1
). The default isNone
, in which case all sectors are expanded.stage_num (int, optional) – Number of the stage required (from 0 to
num_stages
).
- Returns:
sectors_set_for_expansion – List of sectors (starting from 0 to
num_sectors - 1
).- Return type:
Examples
>>> from ansys.dpf.core import Model >>> from ansys.dpf.core import examples >>> multi_stage = examples.download_multi_stage_cyclic_result() >>> cyc_support = Model(multi_stage).metadata.result_info.cyclic_support >>> expanded_scoping = cyc_support.expand_element_id(1,stage_num=0) >>> print(expanded_scoping.ids) [...1... 1558... 2533... 3508... 4483... 5458]