fft_multi_harmonic_minmax#
Autogenerated DPF operator classes.
- 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, num_cycles=None, use_harmonic_zero=None, calculate_time_series=None, substeps_selector=None, config=None, server=None)#
Evaluate min max fields on multi harmonic solution. min and max fields are calculated based on evaluating a fourier series sum wrt rpms and using the gradient method for adaptive time steping
- Parameters:
fields_container (FieldsContainer) –
rpm_scoping (Scoping, optional) – Rpm scoping, by default the fourier series sum is evaluated using all the rpms
fs_ratio (int, optional) – Field or fields container with only one field is expected
num_subdivisions (int, optional) – Connect number subdivisions, used for uniform discretization
max_num_subdivisions (int, optional) – Connect max number subdivisions, used to avoid huge number of sudivisions
num_cycles (int, optional) – Number of cycle of the periodic signal (default is 2)
use_harmonic_zero (bool, optional) – Use harmonic zero for first rpm (default is false)
calculate_time_series (bool, optional) – Calculates time series output (output pin 2), setting it to false enhance performance if only min/max are required (default is true)
substeps_selector (optional) – Substeps to evaluate (frequencies), by default the operator is evaluated using all the available steps
- Returns:
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) >>> my_num_cycles = int() >>> op.inputs.num_cycles.connect(my_num_cycles) >>> my_use_harmonic_zero = bool() >>> op.inputs.use_harmonic_zero.connect(my_use_harmonic_zero) >>> my_calculate_time_series = bool() >>> op.inputs.calculate_time_series.connect(my_calculate_time_series) >>> my_substeps_selector = dpf.() >>> op.inputs.substeps_selector.connect(my_substeps_selector)
>>> # 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, ... num_cycles=my_num_cycles, ... use_harmonic_zero=my_use_harmonic_zero, ... calculate_time_series=my_calculate_time_series, ... substeps_selector=my_substeps_selector, ... )
>>> # 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(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:
- property outputs#
Enables to get outputs of the operator by evaluating it
- Returns:
outputs
- Return 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 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:
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 isNone
. :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:
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 isNone
.
- 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:
- 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) >>> my_num_cycles = int() >>> op.inputs.num_cycles.connect(my_num_cycles) >>> my_use_harmonic_zero = bool() >>> op.inputs.use_harmonic_zero.connect(my_use_harmonic_zero) >>> my_calculate_time_series = bool() >>> op.inputs.calculate_time_series.connect(my_calculate_time_series) >>> my_substeps_selector = dpf.() >>> op.inputs.substeps_selector.connect(my_substeps_selector)
- 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.
Rpm scoping, by default the fourier series sum is evaluated 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.
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.
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.
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)
- property num_cycles#
Allows to connect num_cycles input to the operator.
Number of cycle of the periodic signal (default is 2)
- Parameters:
my_num_cycles (int) –
Examples
>>> from ansys.dpf import core as dpf >>> op = dpf.operators.math.fft_multi_harmonic_minmax() >>> op.inputs.num_cycles.connect(my_num_cycles) >>> # or >>> op.inputs.num_cycles(my_num_cycles)
- property use_harmonic_zero#
Allows to connect use_harmonic_zero input to the operator.
Use harmonic zero for first rpm (default is false)
- Parameters:
my_use_harmonic_zero (bool) –
Examples
>>> from ansys.dpf import core as dpf >>> op = dpf.operators.math.fft_multi_harmonic_minmax() >>> op.inputs.use_harmonic_zero.connect(my_use_harmonic_zero) >>> # or >>> op.inputs.use_harmonic_zero(my_use_harmonic_zero)
- property calculate_time_series#
Allows to connect calculate_time_series input to the operator.
Calculates time series output (output pin 2), setting it to false enhance performance if only min/max are required (default is true)
- Parameters:
my_calculate_time_series (bool) –
Examples
>>> from ansys.dpf import core as dpf >>> op = dpf.operators.math.fft_multi_harmonic_minmax() >>> op.inputs.calculate_time_series.connect(my_calculate_time_series) >>> # or >>> op.inputs.calculate_time_series(my_calculate_time_series)
- property substeps_selector#
Allows to connect substeps_selector input to the operator.
Substeps to evaluate (frequencies), by default the operator is evaluated using all the available steps
- Parameters:
my_substeps_selector –
Examples
>>> from ansys.dpf import core as dpf >>> op = dpf.operators.math.fft_multi_harmonic_minmax() >>> op.inputs.substeps_selector.connect(my_substeps_selector) >>> # or >>> op.inputs.substeps_selector(my_substeps_selector)
- 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.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.
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:
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:
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:
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()