fft_multi_harmonic_minmax

class ansys.dpf.core.operators.math.fft_multi_harmonic_minmax.fft_multi_harmonic_minmax(fields_container=None, rpm_scoping=None, fs_ratio=None, num_subdivisions=None, max_num_subdivisions=None, config=None, server=None)

Evaluate min max fields on multi harmonic solution. min and max fields are calculated based on evaluating a fft wrt rpms and using the gradient method for adaptive time steping

available inputs:
  • fields_container (FieldsContainer)

  • rpm_scoping (Scoping) (optional)

  • fs_ratio (int) (optional)

  • num_subdivisions (int) (optional)

  • max_num_subdivisions (int) (optional)

available outputs:
  • field_min (FieldsContainer)

  • field_max (FieldsContainer)

  • all_fields (FieldsContainer)

Examples

>>> from ansys.dpf import core as dpf
>>> # Instantiate operator
>>> op = dpf.operators.math.fft_multi_harmonic_minmax()
>>> # Make input connections
>>> my_fields_container = dpf.FieldsContainer()
>>> op.inputs.fields_container.connect(my_fields_container)
>>> my_rpm_scoping = dpf.Scoping()
>>> op.inputs.rpm_scoping.connect(my_rpm_scoping)
>>> my_fs_ratio = int()
>>> op.inputs.fs_ratio.connect(my_fs_ratio)
>>> my_num_subdivisions = int()
>>> op.inputs.num_subdivisions.connect(my_num_subdivisions)
>>> my_max_num_subdivisions = int()
>>> op.inputs.max_num_subdivisions.connect(my_max_num_subdivisions)
>>> # Instantiate operator and connect inputs in one line
>>> op = dpf.operators.math.fft_multi_harmonic_minmax(fields_container=my_fields_container,rpm_scoping=my_rpm_scoping,fs_ratio=my_fs_ratio,num_subdivisions=my_num_subdivisions,max_num_subdivisions=my_max_num_subdivisions)
>>> # Get output data
>>> result_field_min = op.outputs.field_min()
>>> result_field_max = op.outputs.field_max()
>>> result_all_fields = op.outputs.all_fields()
static default_config()

Returns the default config for a given operator. This config can then be changed to the user needs and be used to instantiate the given operator

Parameters
  • name (str) – Name of the operator. For example ‘U’.

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

property inputs

Enables to connect inputs to the operator

Returns

inputs

Return type

InputsFftMultiHarmonicMinmax

property outputs

Enables to get outputs of the operator by evaluationg it

Returns

outputs

Return type

OutputsFftMultiHarmonicMinmax

property config

Returns a copy of the current config of the operator. To use the config that you modify, please use operator.config = new_config or create an operator with the new config as a parameter.

Returns

config

Return type

Config

connect(pin, inpt, pin_out=0)

Connect an input on the operator using a pin number.

Parameters

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)

Returns the output of the operator on the pin number.

Parameters
  • pin (int, optional) – Number of the output pin.

  • output_type (core.type enum, optional) – The requested type of the output.

run()

Evaluate this operator

class ansys.dpf.core.operators.math.fft_multi_harmonic_minmax.InputsFftMultiHarmonicMinmax(op: ansys.dpf.core.dpf_operator.Operator)

Intermediate class used to connect user inputs to fft_multi_harmonic_minmax operator

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.math.fft_multi_harmonic_minmax()
>>> my_fields_container = dpf.FieldsContainer()
>>> op.inputs.fields_container.connect(my_fields_container)
>>> my_rpm_scoping = dpf.Scoping()
>>> op.inputs.rpm_scoping.connect(my_rpm_scoping)
>>> my_fs_ratio = int()
>>> op.inputs.fs_ratio.connect(my_fs_ratio)
>>> my_num_subdivisions = int()
>>> op.inputs.num_subdivisions.connect(my_num_subdivisions)
>>> my_max_num_subdivisions = int()
>>> op.inputs.max_num_subdivisions.connect(my_max_num_subdivisions)
property fields_container

Allows to connect fields_container input to the operator

Parameters

my_fields_container (FieldsContainer,) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.math.fft_multi_harmonic_minmax()
>>> op.inputs.fields_container.connect(my_fields_container)
>>> #or
>>> op.inputs.fields_container(my_fields_container)
property rpm_scoping

Allows to connect rpm_scoping input to the operator

  • pindoc: rpm scoping, by default the fft is evaluted using all the rpms

Parameters

my_rpm_scoping (Scoping,) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.math.fft_multi_harmonic_minmax()
>>> op.inputs.rpm_scoping.connect(my_rpm_scoping)
>>> #or
>>> op.inputs.rpm_scoping(my_rpm_scoping)
property fs_ratio

Allows to connect fs_ratio input to the operator

  • pindoc: field or fields container with only one field is expected

Parameters

my_fs_ratio (int,) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.math.fft_multi_harmonic_minmax()
>>> op.inputs.fs_ratio.connect(my_fs_ratio)
>>> #or
>>> op.inputs.fs_ratio(my_fs_ratio)
property num_subdivisions

Allows to connect num_subdivisions input to the operator

  • pindoc: connect number subdivisions, used for uniform discretization

Parameters

my_num_subdivisions (int,) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.math.fft_multi_harmonic_minmax()
>>> op.inputs.num_subdivisions.connect(my_num_subdivisions)
>>> #or
>>> op.inputs.num_subdivisions(my_num_subdivisions)
property max_num_subdivisions

Allows to connect max_num_subdivisions input to the operator

  • pindoc: connect max number subdivisions, used to avoid huge number of sudivisions

Parameters

my_max_num_subdivisions (int,) –

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.math.fft_multi_harmonic_minmax()
>>> op.inputs.max_num_subdivisions.connect(my_max_num_subdivisions)
>>> #or
>>> op.inputs.max_num_subdivisions(my_max_num_subdivisions)
connect(inpt)

Allows you to connect any input (an entity or an operator output) to any input pin of this operator.

The matching input type corresponding to the output is looked for.

Parameters

inpt (str, int, double, Field, FieldsContainer, Scoping, DataSources, MeshedRegion, ScopingsContainer, CyclicSupport, ..., Output, Outputs, Operator) – input of the operator

class ansys.dpf.core.operators.math.fft_multi_harmonic_minmax.OutputsFftMultiHarmonicMinmax(op: ansys.dpf.core.dpf_operator.Operator)

Intermediate class used to get outputs from fft_multi_harmonic_minmax operator .. rubric:: Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.math.fft_multi_harmonic_minmax()
>>> # Connect inputs : op.inputs. ...
>>> result_field_min = op.outputs.field_min()
>>> result_field_max = op.outputs.field_max()
>>> result_all_fields = op.outputs.all_fields()
property field_min

Allows to get field_min output of the operator

Returns

my_field_min

Return type

FieldsContainer,

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.math.fft_multi_harmonic_minmax()
>>> # Connect inputs : op.inputs. ...
>>> result_field_min = op.outputs.field_min()
property field_max

Allows to get field_max output of the operator

Returns

my_field_max

Return type

FieldsContainer,

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.math.fft_multi_harmonic_minmax()
>>> # Connect inputs : op.inputs. ...
>>> result_field_max = op.outputs.field_max()
property all_fields

Allows to get all_fields output of the operator

Returns

my_all_fields

Return type

FieldsContainer,

Examples

>>> from ansys.dpf import core as dpf
>>> op = dpf.operators.math.fft_multi_harmonic_minmax()
>>> # Connect inputs : op.inputs. ...
>>> result_all_fields = op.outputs.all_fields()