make_producer_consumer_for_each_iterator#

Autogenerated DPF operator classes.

class ansys.dpf.core.operators.utility.make_producer_consumer_for_each_iterator.make_producer_consumer_for_each_iterator(try_generate_iterable=None, iterable=None, operator_to_iterate=None, pin_index=None, valueA=None, valueB=None, valueC1=None, valueC2=None, producer_op11=None, producer_op12=None, output_pin_of_producer_op11=None, output_pin_of_producer_op12=None, input_pin_of_consumer_op11=None, input_pin_of_consumer_op12=None, consumer_op11=None, consumer_op12=None, config=None, server=None)#

Generates an iterator that can be consumed by the for_each operator.The chain of Operators are split into a first part : the producers and a second part : the consumers.Asynchronous buffers are indeed to connect the producers and the consumers.

Parameters:
  • try_generate_iterable (bool, optional) – If true, already iterable values connected in pin 3 like vectors, scoping, timefreqsupport, containers and datasources are split to iterate on it (default is true)

  • iterable (optional) – Iterable object, generated by make_for_each_range oeprator, that can be combined with the one currently generated.

  • operator_to_iterate (Operator) – Operator that must be reconnected with the range values.

  • pin_index (int) –

  • valueA (default: None) –

  • valueB (default: None) –

  • valueC1 (default: None) –

  • valueC2 (default: None) –

  • producer_op11 (Operator) –

  • producer_op12 (Operator) –

  • output_pin_of_producer_op11 (int) –

  • output_pin_of_producer_op12 (int) –

  • input_pin_of_consumer_op11 (int) –

  • input_pin_of_consumer_op12 (int) –

  • consumer_op11 (Operator) –

  • consumer_op12 (Operator) –

Examples

>>> from ansys.dpf import core as dpf
>>> # Instantiate operator
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> # Make input connections
>>> my_try_generate_iterable = bool()
>>> op.inputs.try_generate_iterable.connect(my_try_generate_iterable)
>>> my_iterable = dpf.()
>>> op.inputs.iterable.connect(my_iterable)
>>> my_operator_to_iterate = dpf.Operator()
>>> op.inputs.operator_to_iterate.connect(my_operator_to_iterate)
>>> my_pin_index = int()
>>> op.inputs.pin_index.connect(my_pin_index)
>>> my_valueA = dpf.()
>>> op.inputs.valueA.connect(my_valueA)
>>> my_valueB = dpf.()
>>> op.inputs.valueB.connect(my_valueB)
>>> my_valueC1 = dpf.()
>>> op.inputs.valueC1.connect(my_valueC1)
>>> my_valueC2 = dpf.()
>>> op.inputs.valueC2.connect(my_valueC2)
>>> my_producer_op11 = dpf.Operator()
>>> op.inputs.producer_op11.connect(my_producer_op11)
>>> my_producer_op12 = dpf.Operator()
>>> op.inputs.producer_op12.connect(my_producer_op12)
>>> my_output_pin_of_producer_op11 = int()
>>> op.inputs.output_pin_of_producer_op11.connect(my_output_pin_of_producer_op11)
>>> my_output_pin_of_producer_op12 = int()
>>> op.inputs.output_pin_of_producer_op12.connect(my_output_pin_of_producer_op12)
>>> my_input_pin_of_consumer_op11 = int()
>>> op.inputs.input_pin_of_consumer_op11.connect(my_input_pin_of_consumer_op11)
>>> my_input_pin_of_consumer_op12 = int()
>>> op.inputs.input_pin_of_consumer_op12.connect(my_input_pin_of_consumer_op12)
>>> my_consumer_op11 = dpf.Operator()
>>> op.inputs.consumer_op11.connect(my_consumer_op11)
>>> my_consumer_op12 = dpf.Operator()
>>> op.inputs.consumer_op12.connect(my_consumer_op12)
>>> # Instantiate operator and connect inputs in one line
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator(
...     try_generate_iterable=my_try_generate_iterable,
...     iterable=my_iterable,
...     operator_to_iterate=my_operator_to_iterate,
...     pin_index=my_pin_index,
...     valueA=my_valueA,
...     valueB=my_valueB,
...     valueC1=my_valueC1,
...     valueC2=my_valueC2,
...     producer_op11=my_producer_op11,
...     producer_op12=my_producer_op12,
...     output_pin_of_producer_op11=my_output_pin_of_producer_op11,
...     output_pin_of_producer_op12=my_output_pin_of_producer_op12,
...     input_pin_of_consumer_op11=my_input_pin_of_consumer_op11,
...     input_pin_of_consumer_op12=my_input_pin_of_consumer_op12,
...     consumer_op11=my_consumer_op11,
...     consumer_op12=my_consumer_op12,
... )
>>> # Get output data
>>> result_iterator = op.outputs.iterator()
static default_config(server=None)#

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.DPFServer, optional) – Server with channel connected to the remote or local instance. When None, attempts to use the global server.

property inputs#

Enables to connect inputs to the operator

Returns:

inputs

Return type:

InputsMakeProducerConsumerForEachIterator

property outputs#

Enables to get outputs of the operator by evaluating it

Returns:

outputs

Return type:

OutputsMakeProducerConsumerForEachIterator

property 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
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 ]]...
connect_operator_as_input(pin, op)#

Connects an operator as an input on a pin. :type pin: :param pin: Number of the output pin. The default is 0. :type pin: int :type op: :param op: Requested type of the output. The default is None. :type op: ansys.dpf.core.dpf_operator.Operator

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

static operator_specification(op_name, server=None)#

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

property progress_bar: bool#

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

run()#

Evaluate this operator.

property specification#

Returns the Specification (or documentation) of this Operator

Return type:

Specification

class ansys.dpf.core.operators.utility.make_producer_consumer_for_each_iterator.InputsMakeProducerConsumerForEachIterator(op: ansys.dpf.core.dpf_operator.Operator)#

Intermediate class used to connect user inputs to make_producer_consumer_for_each_iterator operator.

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> my_try_generate_iterable = bool()
>>> op.inputs.try_generate_iterable.connect(my_try_generate_iterable)
>>> my_iterable = dpf.()
>>> op.inputs.iterable.connect(my_iterable)
>>> my_operator_to_iterate = dpf.Operator()
>>> op.inputs.operator_to_iterate.connect(my_operator_to_iterate)
>>> my_pin_index = int()
>>> op.inputs.pin_index.connect(my_pin_index)
>>> my_valueA = dpf.()
>>> op.inputs.valueA.connect(my_valueA)
>>> my_valueB = dpf.()
>>> op.inputs.valueB.connect(my_valueB)
>>> my_valueC1 = dpf.()
>>> op.inputs.valueC1.connect(my_valueC1)
>>> my_valueC2 = dpf.()
>>> op.inputs.valueC2.connect(my_valueC2)
>>> my_producer_op11 = dpf.Operator()
>>> op.inputs.producer_op11.connect(my_producer_op11)
>>> my_producer_op12 = dpf.Operator()
>>> op.inputs.producer_op12.connect(my_producer_op12)
>>> my_output_pin_of_producer_op11 = int()
>>> op.inputs.output_pin_of_producer_op11.connect(my_output_pin_of_producer_op11)
>>> my_output_pin_of_producer_op12 = int()
>>> op.inputs.output_pin_of_producer_op12.connect(my_output_pin_of_producer_op12)
>>> my_input_pin_of_consumer_op11 = int()
>>> op.inputs.input_pin_of_consumer_op11.connect(my_input_pin_of_consumer_op11)
>>> my_input_pin_of_consumer_op12 = int()
>>> op.inputs.input_pin_of_consumer_op12.connect(my_input_pin_of_consumer_op12)
>>> my_consumer_op11 = dpf.Operator()
>>> op.inputs.consumer_op11.connect(my_consumer_op11)
>>> my_consumer_op12 = dpf.Operator()
>>> op.inputs.consumer_op12.connect(my_consumer_op12)
property try_generate_iterable#

Allows to connect try_generate_iterable input to the operator.

If true, already iterable values connected in pin 3 like vectors, scoping, timefreqsupport, containers and datasources are split to iterate on it (default is true)

Parameters:

my_try_generate_iterable (bool) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.try_generate_iterable.connect(my_try_generate_iterable)
>>> # or
>>> op.inputs.try_generate_iterable(my_try_generate_iterable)
property iterable#

Allows to connect iterable input to the operator.

Iterable object, generated by make_for_each_range oeprator, that can be combined with the one currently generated.

Parameters:

my_iterable

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.iterable.connect(my_iterable)
>>> # or
>>> op.inputs.iterable(my_iterable)
property operator_to_iterate#

Allows to connect operator_to_iterate input to the operator.

Operator that must be reconnected with the range values.

Parameters:

my_operator_to_iterate (Operator) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.operator_to_iterate.connect(my_operator_to_iterate)
>>> # or
>>> op.inputs.operator_to_iterate(my_operator_to_iterate)
property pin_index#

Allows to connect pin_index input to the operator.

Parameters:

my_pin_index (int) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.pin_index.connect(my_pin_index)
>>> # or
>>> op.inputs.pin_index(my_pin_index)
property valueA#

Allows to connect valueA input to the operator.

Parameters:

my_valueA

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.valueA.connect(my_valueA)
>>> # or
>>> op.inputs.valueA(my_valueA)
property valueB#

Allows to connect valueB input to the operator.

Parameters:

my_valueB

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.valueB.connect(my_valueB)
>>> # or
>>> op.inputs.valueB(my_valueB)
property valueC1#

Allows to connect valueC1 input to the operator.

Parameters:

my_valueC1

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.valueC1.connect(my_valueC1)
>>> # or
>>> op.inputs.valueC1(my_valueC1)
property valueC2#

Allows to connect valueC2 input to the operator.

Parameters:

my_valueC2

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.valueC2.connect(my_valueC2)
>>> # or
>>> op.inputs.valueC2(my_valueC2)
property producer_op11#

Allows to connect producer_op11 input to the operator.

Parameters:

my_producer_op11 (Operator) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.producer_op11.connect(my_producer_op11)
>>> # or
>>> op.inputs.producer_op11(my_producer_op11)
property producer_op12#

Allows to connect producer_op12 input to the operator.

Parameters:

my_producer_op12 (Operator) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.producer_op12.connect(my_producer_op12)
>>> # or
>>> op.inputs.producer_op12(my_producer_op12)
property output_pin_of_producer_op11#

Allows to connect output_pin_of_producer_op11 input to the operator.

Parameters:

my_output_pin_of_producer_op11 (int) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.output_pin_of_producer_op11.connect(my_output_pin_of_producer_op11)
>>> # or
>>> op.inputs.output_pin_of_producer_op11(my_output_pin_of_producer_op11)
property output_pin_of_producer_op12#

Allows to connect output_pin_of_producer_op12 input to the operator.

Parameters:

my_output_pin_of_producer_op12 (int) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.output_pin_of_producer_op12.connect(my_output_pin_of_producer_op12)
>>> # or
>>> op.inputs.output_pin_of_producer_op12(my_output_pin_of_producer_op12)
property input_pin_of_consumer_op11#

Allows to connect input_pin_of_consumer_op11 input to the operator.

Parameters:

my_input_pin_of_consumer_op11 (int) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.input_pin_of_consumer_op11.connect(my_input_pin_of_consumer_op11)
>>> # or
>>> op.inputs.input_pin_of_consumer_op11(my_input_pin_of_consumer_op11)
property input_pin_of_consumer_op12#

Allows to connect input_pin_of_consumer_op12 input to the operator.

Parameters:

my_input_pin_of_consumer_op12 (int) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.input_pin_of_consumer_op12.connect(my_input_pin_of_consumer_op12)
>>> # or
>>> op.inputs.input_pin_of_consumer_op12(my_input_pin_of_consumer_op12)
property consumer_op11#

Allows to connect consumer_op11 input to the operator.

Parameters:

my_consumer_op11 (Operator) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.consumer_op11.connect(my_consumer_op11)
>>> # or
>>> op.inputs.consumer_op11(my_consumer_op11)
property consumer_op12#

Allows to connect consumer_op12 input to the operator.

Parameters:

my_consumer_op12 (Operator) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> op.inputs.consumer_op12.connect(my_consumer_op12)
>>> # or
>>> op.inputs.consumer_op12(my_consumer_op12)
connect(inpt)#

Connect any input (an entity or an operator output) to any input pin of this operator. Searches for the input type corresponding to the output.

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

  • ScopingsContainer (E501) – Input of the operator.

  • MeshedRegion (E501) – Input of the operator.

  • MeshesContainer (E501) – Input of the operator.

  • DataSources (E501) – Input of the operator.

  • CyclicSupport (E501) – Input of the operator.

  • Outputs (E501) – Input of the operator.

  • noqa (os.PathLike #) – Input of the operator.

class ansys.dpf.core.operators.utility.make_producer_consumer_for_each_iterator.OutputsMakeProducerConsumerForEachIterator(op: ansys.dpf.core.dpf_operator.Operator)#

Intermediate class used to get outputs from make_producer_consumer_for_each_iterator operator.

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> # Connect inputs : op.inputs. ...
>>> result_iterator = op.outputs.iterator()
property iterator#

Allows to get iterator output of the operator

Return type:

my_iterator

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.utility.make_producer_consumer_for_each_iterator()
>>> # Connect inputs : op.inputs. ...
>>> result_iterator = op.outputs.iterator()