Operator#
Provides an interface to the underlying gRPC operator.
- class ansys.dpf.core.dpf_operator.Operator(name, config=None, server=None)#
Represents an operator, which is an elementary operation.
The operator is the only object used to create and transform data. When the operator is evaluated, it processes the input information to compute its output with respect to its description.
- Parameters
name (str) – Name of the operator. For example,
"U"
. You can use the"html_doc"
operator to retrieve a list of existing operators.config (Config, optional) – The Configuration allows to customize how the operation will be processed by the operator. The default is
None
.server (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
Create an operator from the library of operators.
>>> from ansys.dpf import core as dpf >>> disp_oper = dpf.operators.result.displacement()
Create an operator from a model.
>>> from ansys.dpf.core import Model >>> from ansys.dpf.core import examples >>> model = Model(examples.static_rst) >>> disp_oper = model.results.displacement()
- 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
- 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 of int, list of doubles,) –
- Field, FieldsContainer, Scoping, ScopingsContainer, MeshedRegion,
MeshesContainer, DataSources, 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.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 array([[0.59428386, 0.00201751, 0.0006032 ]])
- 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
, optional) – Requested type of the output. The default isNone
.
- Returns
Output of the operator.
- Return type
type
- 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 create an operator with the new configuration as a parameter.- Returns
Copy of the operator’s current configuration.
- Return type
- property inputs#
Inputs connected to the operator.
- Returns
Inputs connected to the operator.
- Return type
Examples
Use the displacement operator.
>>> from ansys.dpf import core as dpf >>> from ansys.dpf.core import examples >>> data_src = dpf.DataSources(examples.multishells_rst) >>> disp_op = dpf.operators.result.displacement() >>> disp_op.inputs.data_sources(data_src)
- property outputs#
Outputs from the operator’s evaluation.
- Returns
Outputs from the operator’s evaluation.
- Return type
Examples
Use the displacement operator.
>>> from ansys.dpf import core as dpf >>> from ansys.dpf.core import examples >>> data_src = dpf.DataSources(examples.multishells_rst) >>> disp_op = dpf.operators.result.displacement() >>> disp_op.inputs.data_sources(data_src) >>> disp_fc = disp_op.outputs.fields_container()
- static default_config(name, server=None)#
Retrieve the default configuration for an operator.
You can change the copy of the default configuration to meet your needs before instantiating the operator. The Configuration allows to customize how the operation will be processed by the operator.
- Parameters
name (str) – Name of the operator. For example
"U"
. You can use the"html_doc"
operator to retrieve a list of existing operators.server (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.
- Returns
Default configuration for the operator.
- Return type
class”ansys.dpf.core.config.Config
- run()#
Evaluate this 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
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.multishells_rst) >>> disp_op = dpf.operators.result.displacement() >>> disp_op.inputs.data_sources(data_src) >>> normfc = math.norm_fc(disp_op).eval()
- static operator_specification(op_name, server=None)#
Put the grpc spec message in self._spec
- class ansys.dpf.core.dpf_operator.PinSpecification(name, type_names, optional, document, ellipsis)#
- name: str#
Alias for field number 0
- type_names: list#
Alias for field number 1
- optional: bool#
Alias for field number 2
- document: str#
Alias for field number 3
- ellipsis: bool#
Alias for field number 4
- count(value, /)#
Return number of occurrences of value.
- index(value, start=0, stop=9223372036854775807, /)#
Return first index of value.
Raises ValueError if the value is not present.
- class ansys.dpf.core.dpf_operator.OperatorSpecification(operator_name, description, properties, inputs, outputs)#
- operator_name: str#
Alias for field number 0
- description: str#
Alias for field number 1
- properties: dict#
Alias for field number 2
- inputs: dict#
Alias for field number 3
- outputs: dict#
Alias for field number 4
- count(value, /)#
Return number of occurrences of value.
- index(value, start=0, stop=9223372036854775807, /)#
Return first index of value.
Raises ValueError if the value is not present.
- ansys.dpf.core.dpf_operator.available_operator_names(server=None)#
Returns the list of operator names available in the server.
- Parameters
server (server.DPFServer, optional) – Server with channel connected to the remote or local instance. When
None
, attempts to use the the global server.- Return type
list