displacement#

class ansys.dpf.core.operators.result.displacement.displacement(time_scoping=None, mesh_scoping=None, fields_container=None, streams_container=None, data_sources=None, bool_rotate_to_global=None, mesh=None, read_cyclic=None, expanded_meshed_region=None, sectors_to_expand=None, phi=None, config=None, server=None)#

Bases: ansys.dpf.core.dpf_operator.Operator

Read/compute nodal displacements by calling the readers defined by the datasources.

Parameters:
  • time_scoping (Scoping or int or float or Field, optional) – time/freq values (use doubles or field), time/freq set ids (use ints or scoping) or time/freq step ids (use scoping with TimeFreq_steps location) required in output. To specify time/freq values at specific load steps, put a Field (and not a list) in input with a scoping located on “TimeFreq_steps”. Linear time freq intrapolation is performed if the values are not in the result files and the data at the max time or freq is taken when time/freqs are higher than available time/freqs in result files.

  • mesh_scoping (ScopingsContainer or Scoping, optional) – nodes or elements scoping required in output. The output fields will be scoped on these node or element IDs. To figure out the ordering of the fields data, look at their scoping IDs as they might not be ordered as the input scoping was. The scoping’s location indicates whether nodes or elements are asked for. Using scopings container allows you to split the result fields container into domains

  • fields_container (FieldsContainer, optional) – Fields container already allocated modified inplace

  • streams_container (StreamsContainer, optional) – result file container allowed to be kept open to cache data

  • data_sources (DataSources) – result file path container, used if no streams are set

  • bool_rotate_to_global (bool, optional) – if true the field is rotated to global coordinate system (default true). Please check your results carefully if ‘false’ is used for Elemental or ElementalNodal results averaged to the Nodes when adjacent elements do not share the same coordinate system, as results may be incorrect.

  • mesh (MeshedRegion or MeshesContainer, optional) – mesh. If cylic expansion is to be done, mesh of the base sector

  • read_cyclic (int, optional) – if 0 cyclic symmetry is ignored, if 1 cyclic sector is read, if 2 cyclic expansion is done, if 3 cyclic expansion is done and stages are merged (default is 1)

  • expanded_meshed_region (MeshedRegion or MeshesContainer, optional) – mesh expanded, use if cyclic expansion is to be done.

  • sectors_to_expand (Scoping or ScopingsContainer, optional) – sectors to expand (start at 0), for multistage: use scopings container with ‘stage’ label, use if cyclic expansion is to be done.

  • phi (float, optional) – angle phi in degrees (default value 0.0), use if cyclic expansion is to be done.

Returns:

fields_container

Return type:

FieldsContainer

Examples

>>> from ansys.dpf import core as dpf
>>> # Instantiate operator
>>> op = dpf.operators.result.displacement()
>>> # Make input connections
>>> my_time_scoping = dpf.Scoping()
>>> op.inputs.time_scoping.connect(my_time_scoping)
>>> my_mesh_scoping = dpf.ScopingsContainer()
>>> op.inputs.mesh_scoping.connect(my_mesh_scoping)
>>> my_fields_container = dpf.FieldsContainer()
>>> op.inputs.fields_container.connect(my_fields_container)
>>> my_streams_container = dpf.StreamsContainer()
>>> op.inputs.streams_container.connect(my_streams_container)
>>> my_data_sources = dpf.DataSources()
>>> op.inputs.data_sources.connect(my_data_sources)
>>> my_bool_rotate_to_global = bool()
>>> op.inputs.bool_rotate_to_global.connect(my_bool_rotate_to_global)
>>> my_mesh = dpf.MeshedRegion()
>>> op.inputs.mesh.connect(my_mesh)
>>> my_read_cyclic = int()
>>> op.inputs.read_cyclic.connect(my_read_cyclic)
>>> my_expanded_meshed_region = dpf.MeshedRegion()
>>> op.inputs.expanded_meshed_region.connect(my_expanded_meshed_region)
>>> my_sectors_to_expand = dpf.Scoping()
>>> op.inputs.sectors_to_expand.connect(my_sectors_to_expand)
>>> my_phi = float()
>>> op.inputs.phi.connect(my_phi)
>>> # Instantiate operator and connect inputs in one line
>>> op = dpf.operators.result.displacement(
...     time_scoping=my_time_scoping,
...     mesh_scoping=my_mesh_scoping,
...     fields_container=my_fields_container,
...     streams_container=my_streams_container,
...     data_sources=my_data_sources,
...     bool_rotate_to_global=my_bool_rotate_to_global,
...     mesh=my_mesh,
...     read_cyclic=my_read_cyclic,
...     expanded_meshed_region=my_expanded_meshed_region,
...     sectors_to_expand=my_sectors_to_expand,
...     phi=my_phi,
... )
>>> # Get output data
>>> result_fields_container = op.outputs.fields_container()

Overview#

connect

Connect an input on the operator using a pin number.

connect_operator_as_input

Connect an operator as an input on a pin.

get_output

Retrieve the output of the operator on the pin number.

run

Evaluate this operator.

eval

Evaluate this operator.

inputs

Enables to connect inputs to the operator

outputs

Enables to get outputs of the operator by evaluating it

progress_bar

Enable or disable progress bar display when requesting the operator’s output.

config

Copy of the operator’s current configuration.

id

Retrieve the unique identifier of the operator.

specification

Returns the Specification (or documentation) of this Operator.

default_config

Returns the default config of the operator.

operator_specification

Documents an Operator with its description (what the Operator does),its inputs and outputs and some properties.

__del__

Delete this instance.

__str__

Describe the entity.

__add__

Add two fields or two fields containers.

__sub__

Subtract two fields or two fields containers.

__pow__

Raise each element of a field or a fields container to power 2.

__mul__

Multiply two fields or two fields containers.

__truediv__

Perform division with another operator or a scalar.

Import detail#

from ansys.dpf.core.operators.result.displacement import displacement

Property detail#

property displacement.inputs: InputsDisplacement#

Enables to connect inputs to the operator

Returns:

An instance of InputsDisplacement.

Return type:

inputs

property displacement.outputs: OutputsDisplacement#

Enables to get outputs of the operator by evaluating it

Returns:

An instance of OutputsDisplacement.

Return type:

outputs

property displacement.progress_bar: bool#

Enable or disable progress bar display when requesting the operator’s output.

With this property, the user can choose to print a progress bar when the operator’s output is requested, default is False

property displacement.config#

Copy of the operator’s current configuration.

You can modify the copy of the configuration and then use operator.config = new_config or instantiate an operator with the new configuration as a parameter.

For information on an operator’s options, see the documentation for that operator.

Returns:

Copy of the operator’s current configuration.

Return type:

ansys.dpf.core.config.Config

Examples

Modify the copy of an operator’s configuration and set it as current config of the operator.

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.math.add()
>>> config_add = op.config
>>> config_add.set_work_by_index_option(True)
>>> op.config = config_add
property displacement.id: int#

Retrieve the unique identifier of the operator.

This property returns the unique ID associated with the operator. This property is lazily initialized.

Returns:

The unique identifier of the operator.

Return type:

int

Notes

Property available with server’s version starting at 10.0.

property displacement.specification#

Returns the Specification (or documentation) of this Operator.

Return type:

Specification

Attribute detail#

displacement.name = None#

Method detail#

static displacement.default_config(server: ansys.dpf.core.server_types.AnyServerType = None) ansys.dpf.core.config.Config#

Returns the default config of the operator.

This config can then be changed to the user needs and be used to instantiate the operator. The Configuration allows to customize how the operation will be processed by the operator.

Parameters:

server – Server with channel connected to the remote or local instance. When None, attempts to use the global server.

Returns:

A new Config instance equivalent to the default config for this operator.

Return type:

config

displacement.connect(pin, inpt, pin_out=0)#

Connect an input on the operator using a pin number.

Parameters:
  • pin (int) – Number of the input pin.

  • inpt (str, int, double, bool, list[int], list[float], Field, FieldsContainer, Scoping,)

  • ScopingsContainer – Operator, os.PathLike Object to connect to.

  • MeshedRegion – Operator, os.PathLike Object to connect to.

  • MeshesContainer – Operator, os.PathLike Object to connect to.

  • DataSources – Operator, os.PathLike Object to connect to.

  • CyclicSupport – Operator, os.PathLike Object to connect to.

  • dict – Operator, os.PathLike Object to connect to.

  • Outputs – Operator, os.PathLike Object to connect to.

  • pin_out (int, optional) – If the input is an operator, the output pin of the input operator. The default is 0.

Examples

Compute the minimum of displacement by chaining the "U" and "min_max_fc" operators.

>>> from ansys.dpf import core as dpf
>>> from ansys.dpf.core import examples
>>> data_src = dpf.DataSources(examples.find_multishells_rst())
>>> disp_op = dpf.operators.result.displacement()
>>> disp_op.inputs.data_sources(data_src)
>>> max_fc_op = dpf.operators.min_max.min_max_fc()
>>> max_fc_op.inputs.connect(disp_op.outputs)
>>> max_field = max_fc_op.outputs.field_max()
>>> max_field.data
DPFArray([[0.59428386, 0.00201751, 0.0006032 ]]...
displacement.connect_operator_as_input(pin, op)#

Connect an operator as an input on a pin.

Parameters:
displacement.get_output(pin=0, output_type=None)#

Retrieve the output of the operator on the pin number.

To activate the progress bar for server version higher or equal to 3.0, use my_op.progress_bar=True

Parameters:
  • pin (int, optional) – Number of the output pin. The default is 0.

  • output_type (ansys.dpf.core.common.types, type, optional) – Requested type of the output. The default is None.

Returns:

Output of the operator.

Return type:

type

displacement.__del__()#

Delete this instance.

displacement.__str__()#

Describe the entity.

Returns:

Description of the entity.

Return type:

str

displacement.run()#

Evaluate this operator.

displacement.eval(pin=None)#

Evaluate this operator.

Parameters:

pin (int) – Number of the output pin. The default is None.

Returns:

output – Returns the first output of the operator by default and the output of a given pin when specified. Or, it only evaluates the operator without output.

Return type:

FieldsContainer, Field, MeshedRegion, Scoping

Examples

Use the eval method.

>>> from ansys.dpf import core as dpf
>>> import ansys.dpf.core.operators.math as math
>>> from ansys.dpf.core import examples
>>> data_src = dpf.DataSources(examples.find_multishells_rst())
>>> disp_op = dpf.operators.result.displacement()
>>> disp_op.inputs.data_sources(data_src)
>>> normfc = math.norm_fc(disp_op).eval()
displacement.__add__(fields_b)#

Add two fields or two fields containers.

Returns:

add

Return type:

operators.math.add_fc

displacement.__sub__(fields_b)#

Subtract two fields or two fields containers.

Returns:

minus

Return type:

operators.math.minus_fc

displacement.__pow__(value)#

Raise each element of a field or a fields container to power 2.

displacement.__mul__(value)#

Multiply two fields or two fields containers.

Returns:

mul

Return type:

operators.math.generalized_inner_product_fc

static displacement.operator_specification(op_name, server=None)#

Documents an Operator with its description (what the Operator does),its inputs and outputs and some properties.

displacement.__truediv__(inpt)#

Perform division with another operator or a scalar.

This method allows the use of the division operator (/) between an Operator instance and either another Operator or a scalar value (float).