The Altair Community is migrating to a new platform to provide a better experience for you. In preparation for the migration, the Altair Community is on read-only mode from October 28 - November 6, 2024. Technical support via cases will continue to work as is. For any urgent requests from Students/Faculty members, please submit the form linked here
"Windowing and Fourier Transform"
Hello everybody. Hopefully a quick question... I'm currently attempting to use the series windowing operator along with the fft operator. My goal is to move through the series, 128 samples at a time, performing an fft on each window. I've setup a process as follows but I think that I may be fundamentally misunderstanding how the windowing operator works since I am getting an error related to nesting the FFT operator inside of the series windowing operator. Do you guys have any suggestions? My desired output would be the spectral data for each windowed chunk of data.
Your help is much appreciated.
Your help is much appreciated.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<process version="5.1.006">
<context>
<input/>
<output/>
<macros/>
</context>
<operator activated="true" class="process" compatibility="5.1.006" expanded="true" name="Root">
<parameter key="random_seed" value="-1"/>
<process expanded="true" height="733" width="882">
<operator activated="true" class="series:generate_series_sinus" compatibility="5.1.002" expanded="true" height="60" name="Generate Series (Sinus)" width="90" x="45" y="120">
<list key="frequency">
<parameter key="10.0" value="10.0"/>
</list>
</operator>
<operator activated="true" class="series:windowing_series" compatibility="5.1.002" expanded="true" height="60" name="Windowing (Series)" width="90" x="246" y="120">
<parameter key="step_size" value="1"/>
<parameter key="window_size" value="128"/>
<process expanded="true" height="733" width="882">
<operator activated="true" class="series:fast_fourier_transformation" compatibility="5.1.002" expanded="true" height="60" name="Fast Fourier Transformation" width="90" x="246" y="30"/>
<connect from_port="series source" to_op="Fast Fourier Transformation" to_port="series"/>
<connect from_op="Fast Fourier Transformation" from_port="series" to_port="series sink"/>
<portSpacing port="source_series source" spacing="0"/>
<portSpacing port="sink_series sink" spacing="0"/>
</process>
</operator>
<operator activated="true" class="series:series_to_data" compatibility="5.1.002" expanded="true" height="60" name="Series To Data" width="90" x="447" y="120"/>
<connect from_op="Generate Series (Sinus)" from_port="output" to_op="Windowing (Series)" to_port="series in"/>
<connect from_op="Windowing (Series)" from_port="series out" to_op="Series To Data" to_port="series"/>
<connect from_op="Series To Data" from_port="example set" to_port="result 1"/>
<portSpacing port="source_input 1" spacing="0"/>
<portSpacing port="sink_result 1" spacing="0"/>
<portSpacing port="sink_result 2" spacing="0"/>
</process>
</operator>
</process>
Tagged:
0
Answers
The problem with your setting is the parameter overlap of the Windowing (Series) operator. You should use a value between 0.0 and 1.0.
Best regards,
Helge