How do I do a Fourier Transform of a Signal using DPF?
import matplotlib.pyplot as plt import numpy as np from ansys.dpf import core as dpf dpf.start_local_server(ansys_path=r"C:\Program Files\ANSYS Inc\v252") fs = 1000 # Sampling frequency (Hz) t = np.arange(0, 1.0, 1/fs) # Time vector (1 second) signal = np.sin(2 * np.pi * 50 * t) + 0.5 * np.sin(2 * np.pi * 120 * t) plt.plot(range(1, len(signal) + 1), signal, "r", label="Time Domain") plt.xlabel("Freq") plt.ylabel("Mag.") plt.legend() plt.show() field = dpf.fields_factory.create_scalar_field(num_entities=len(signal)) field.data = signal field.scoping.ids = list(range(1, len(signal) + 1)) fft_out = dpf.operators.mapping.fft(scale_right_amplitude=True, field=field).eval() plt.plot(fft_out[0].scoping.ids, np.sqrt(fft_out[0].data**2 + fft_out[1].data**2), "r", label="Freq Domain") plt.xlabel("Freq") plt.ylabel("Mag.") plt.xticks(np.arange(0, 150, 25.0)) plt.xlim(0, 150) plt.legend() plt.show()