フーリエ変換を行い、それを二乗してから、逆フーリエ変換を行うことにより、矩形パルスをそれ自体で畳み込もうとしています。conv() 関数があることはわかっていますが、将来のより複雑な問題のために周波数ドメインで実行することをお勧めします。私の問題は、これを行うと、期待どおりに三角関数が生成されないことです。私が使用しているコードは以下のとおりです。
clc
clear all
x=-5:.01:5;
y=rectangularPulse(x);
Y=fft(y);
H=Y.^2;
h=ifft(H);
plot(x,h)