Transfer Funktion
Übersetzung
- Übersetzung ins Deutsche in Arbeit.
The Transfer Function operation determines the frequency response between two signals, revealing how a system transforms an input signal into an output signal in the frequency domain.
Usage
Cheatsheet
- Input: Exactly two signals (input and output)
- Settings: Assign the correct signals as input and output
- Output: One or two new signals (magnitude and/or phase) in the frequency domain
Prerequisites
- Select exactly two signals as input
- Sufficient data length: At least 4 data points (perferably much more for meaningful results)
- Both signals should be time-aligned (covering the same time period)
- If not, alginment is performed automatically
- Both signals should be uniformly sampled
- If not, resampling is performed automatically
Settings
| Parameter | Values | Description |
|---|---|---|
| Input Signal | Signals | The system’s input signal |
| Output Signal | Signals | The system’s output signal |
| Magnitude | checked / unchecked | If checked, calculates the magnitude response (absolute value of the transfer function) |
| Phase | checked / unchecked | If checked, calculates the phase response (angle of the transfer function) |
| Start Frequency | 0 - End Frequency | Lower frequency limit for analysis; frequencies below this are excluded |
| End Frequency | Start Frequency - ∞ | Upper frequency limit for analysis; frequencies above this are excluded |
Advanced
| Parameter | Values | Description |
|---|---|---|
| Unit | linear / dB | Output unit for magnitude |
| Zero Padding | 0 - 10.000 | Number of zeros appended to improve frequency resolution |
Output
Depending on the selected Settings, this operation creates a magnitude and/ or a phase signal:
Magnitude Response
- Name:
{output_signal_name} - TF Magnitude - X-Axis: Frequency (Hz)
- Y-Axis: Magnitude (linear or dB)
- Interpretation: Shows how much the system amplifies or attenuates different frequencies
- Name:
Phase Response
- Name:
{output_signal_name} - TF Phase - X-Axis: Frequency (Hz)
- Y-Axis: Phase (radians)
- Interpretation: Shows the phase delay introduced by the system at different frequencies
- Name:
Info
The frequency resolution depends on the input signal length and sample rate. Zero Padding can slightly improve the resolution.
Example Workflow
When analyzing measurement data, a typical workflow might be:
Apply a Lowpass Filter to both signals.
Transfer Function
Take both signals as input and calculate the magnitude.
Moving Average
Apply a Moving Average to the result.
Repeat for multiple measurements of the same system.
Average
Use the Average operation to combine results.
The result is one signal containing the system behaivor characteristics.
This approach allows you to compare the transfer behavior of different systems.
Technical Details
Preprocessing
First, the operation preprocesses the selected signals using the following steps:
- Alignment
- NaN Handling
- Resample
- Zero Padding
Main Operations
The transfer function is computed in the frequency domain using the Fast Fourier Transform (FFT).
The FFT is calculated for both signals using numpy.fft.fft:
The corresponding frequency bins are computed with numpy.fft.fftfreq:
where is the number of samples and is the sample rate.
The transfer function is then calculated as:
Magnitude
The Magnitude is finally calculated by taking the absolute value of the transfer behavior using numpy.absolute:
dB Conversion
If dB is selected, the result is converted to decibels:
Phase
The phase response is calculated as the angle (argument) of the transfer function using numpy.angle:
Postprocessing
The result is filtered to the specified frequency range.
Common Use Cases
- System Identification: Measure the transfer function of an unknown system by applying a known input and measuring the output.
- Filter Charaterization: Analyze the frequency response of analog or digital filters.
- Vibration Analysis: Study how mechanical systems respond to different frequency excitations.
- Control System Design: Analyze plant dynamics for controller design.