RpmOrderRepresentation#

class ansys.sound.core.order_analysis.RpmOrderRepresentation(signal=None, rpm_profile=None, max_order=160, order_resolution=2.0)#

Compute the RPM order representation of a signal.

This class computes an RPM-order representation of a signal, given an associated RPM profile. An RPM-order representation describes how the signal level varies depending on order value and RPM. The output takes the form of a matrix, where each row corresponds to a specific order value and each column corresponds to a specific RPM or time value. This class is used for extracting order levels over RPM or time, with the class OrderLevels.

The method to obtain the RPM-order representation consists of a short-time Fourier transform (STFT) applied to a resampled constant-angle version of the input signal, using the provided RPM profile.

See also

OrderLevels

Examples

Compute the RPM order representation of a signal with its RPM profile.

>>> from ansys.sound.core.order_analysis import RpmOrderRepresentation
>>> rpm_order_representation = RpmOrderRepresentation(
...     signal=my_signal,
...     rpm_profile=my_rpm_profile,
...     max_order=160,
...     order_resolution=2.0
... )
>>> rpm_order_representation.process()
>>> output = rpm_order_representation.get_output()

Added in DPF Sound plugin version 2027.1.0.

Class instantiation takes the following parameters.

Parameters:
signalField, default: None

Input signal.

rpm_profileField, default: None

RPM profile associated with the input signal.

max_orderint, default: 160

Maximum order to consider. This is the maximum order value included in the output RPM-order representation. Signal content beyond this order value is ignored.

order_resolutionfloat, default: 2.0

Order resolution, in percent of order. This corresponds to the order step between each row of the output RPM-order representation. Note that reducing this value increases the RPM step between each RPM value in the RPM-order representation.

Methods

RpmOrderRepresentation.get_orders()

Get the order values associated with the RPM-order representation.

RpmOrderRepresentation.get_output()

Get the RPM order representation.

RpmOrderRepresentation.get_output_as_nparray()

Get the RPM order representation as NumPy arrays.

RpmOrderRepresentation.get_rpm_order_representation()

Get the RPM-order representation.

RpmOrderRepresentation.get_rpm_scale()

Get the RPM scale associated with the RPM-order representation.

RpmOrderRepresentation.get_time_scale()

Get the time scale associated with the RPM-order representation.

RpmOrderRepresentation.plot()

Plot the output.

RpmOrderRepresentation.process()

Compute the RPM order representation.

Attributes

RpmOrderRepresentation.max_order

Maximum order to consider in the RPM-order representation.

RpmOrderRepresentation.order_resolution

Order resolution, in percent of order.

RpmOrderRepresentation.rpm_profile

RPM profile associated with signal.

RpmOrderRepresentation.signal

Input signal.