CyclicSupport

class ansys.dpf.core.cyclic_support.CyclicSupport(cyclic_support, server=None)

A class used to represent a CyclicSupport which describes a model with cyclic symmetry. It has the necessary data for cyclic (and multistage) expansion

Parameters
  • cyclic_support (ansys.grpc.dpf.cyclic_support_pb2.CyclicSupport message) –

  • server (DPFServer , optional) – Server with channel connected to the remote or local instance. When None, attempts to use the the global server.

Examples

Get a CyclicSupport 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
num_sectors(stage_num=0)int

Number of sectors to expand on 360°

Parameters

stage_num (int , optional) – number of the stage required (from 0 to num_stages)

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)int

Get a nodal scoping containing nodes 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

Scoping

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)int

Get 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

Scoping

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)int

Get a sectors scoping (starting from 0 to max = num_sectors-1) of the already expanded results and mesh or the the list of sectors that will be expanded by default

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

Scoping

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
>>> print(cyc_support.sectors_set_for_expansion(stage_num=1).ids)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
expand_node_id(node_id, sectors=None, stage_num=0)

Returns the node ids corresponding to the base sector node_id given in 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 max = num_sectors-1) default is all the sectors

  • 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

Scoping

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
>>> print(cyc_support.expand_node_id(1,stage_num=0).ids)
[1, 3596, 5816, 8036, 10256, 12476]
expand_element_id(element_id, sectors=None, stage_num=0)

Returns the element ids corresponding to the base sector element_id given in input after expansion

Parameters
  • element_id (int) – base sector’s element id to expand

  • (optional) (sectors) – list of sectors to expand (from 0 to max = num_sectors-1) default is all the sectors

  • 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

Scoping

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
>>> print(cyc_support.expand_element_id(1,stage_num=0).ids)
[1, 1558, 2533, 3508, 4483, 5458]