sweep_design.utility_functions.source_sweep_correction

Module Contents

Functions

soft_clip(→ numpy.ndarray)

Custom function for correction amplitude.

get_correction_for_source(→ sweep_design.signal.Signal)

Sweep signal correction for realization on the vibration source.

sweep_design.utility_functions.source_sweep_correction.soft_clip(data: numpy.ndarray, limits: float, percent=0.85, coefficient: float = 1) numpy.ndarray[source]

Custom function for correction amplitude.

sweep_design.utility_functions.source_sweep_correction.get_correction_for_source(signal: sweep_design.signal.Signal, reaction_mass: float = 1.0, limits: float = None, limits_percent=0.85, limit_iteration: Optional[int] = 10, window_percent=0.01, coefficient_function: Callable[[float], float] = lambda x: ...) sweep_design.signal.Signal[source]

Sweep signal correction for realization on the vibration source.

Steps of corrections: 1. Calculate displacement from force. 2. Using EMD find first IMFs of displacement. 3. Apply suppression amplitude after limits. 4. Apply window at the start to ensure a zero first amplitude. 5. Return calculated force from displacement

Parameters
  • signal (Signal) – signal to be corrected.

  • reaction_mass (float, optional) – reaction mass of source. Defaults to 1.0.

  • limits (float, optional) – displacement limitation of source. Defaults to None.

  • limits_percent (float, optional) – from 0 to 1, determine the limits = limits*limits_percent up to which the displacement amplitude will not changed, after that, the limit amplitude will be changed using the soft_clip function. Defaults to 0.85.

  • limit_iteration (Optional[int], optional) – iterate corrections. Defaults to 10.

  • window_percent (float, optional) – apply window at the initial displacement to ensure a zero first amplitude. Defaults to 0.01.

  • coefficient_function (_type_, optional) – function to suppress.. Defaults to lambda x:x.

Returns

correct force signal.

Return type

Signal