.Modelica_Requirements.ChecksInFixedWindow_withFFT.Internal.fftScaled

Information

Compute scaled FFT

Interface

function fftScaled
  import Modelica.Utilities.Streams.print;
  input Real u_buf[:] "Signal for which FFT shall be computed; (size(u_buf,1) MUST be EVEN and should be an integer multiple of 2,3,5, that is size(u_buf,1) = 2^a*3^b*5^c, with a,b,c Integer >= 0)";
  input Integer nf(min = 1) "Number of frequency points that shall be returned in amplitudes and phases (typically: nf = max(1,min(integer(ceil(f_max/f_resolution))+1,nf_max))); the maximal possible value is nf_Max=div(size(u_buf,1),2)+1)";
  input Integer iTick "Number of sample points that have been stored in u_buf";
  input Modelica.SIunits.Time Ts "Sample period of FFT";
  input Boolean pre_periods_ok "Previous value of periods_ok";
  input String instanceName = "???";
  output Real A_buf[nf];
  output Boolean periods_ok;
end fftScaled;

Revisions

Date Description
Nov. 29, 2015 Initial version implemented by Martin R. Kuhn and Martin Otter (DLR Institute of System Dynamics and Control)
The research leading to these results has received funding from the European Union’s Seventh Framework Programme (FP7/2007-2016) for the Clean Sky Joint Technology Initiative under grant agreement no. CSJU-GAM-SGO-2008-001.

Generated at 2024-04-28T18:16:21Z by OpenModelicaOpenModelica 1.22.3 using GenerateDoc.mos