2011年12月15日 星期四

數位訊號處理之傅立葉重建(Fourier Reconstruction)

開發語言:C#

說明:
程式內實作畫出弦波.方波.頻譜.傅立葉重建

重要程式碼:


l   Generate Square Wave:


SignalConfig sc = new SignalConfig(this.ConfigArray[(int)ConfigType.Frequency], 1.0, _range, this.acc);
Expression exp = new Expression(this.ConfigArray[(int)ConfigType.T_2], this.ConfigArray[(int)ConfigType.T]);
IGraphic ig = new SquareWave(sc, exp);

l   Generate Spectrum:
SignalConfig sc = new SignalConfig(this.ConfigArray[(int)ConfigType.Frequency], 1.0, _range, this.acc);
IGraphic ig = new Spectrum((uint)this.ConfigArray[(int)ConfigType.N]);

l   Generate Fourier Reconstruction:
SignalConfig sc = new SignalConfig(this.ConfigArray[(int)ConfigType.Frequency], 1.0, _range, this.acc);
Expression _exp = new Expression(this.ConfigArray[(int)ConfigType.T_2], this.ConfigArray[(int)ConfigType.T]);
IGraphic ig = new Fourier(sc, (uint)this.ConfigArray[(int)ConfigType.N], _exp);

l  Generate  Sinusoid  :
SignalConfig sc = new SignalConfig(this.ConfigArray[(int)ConfigType.Frequency], 1.0, _range, this.acc);
IGraphic ig = new Sinusoid (sc, Sinusoid.SinusoidType.Cosine );


程式碼下載 : Bin(Link)
                       Code(Link)
如果後續要使用本程式作畫圖的工作,可是圖形要與本程式不同的,請implement IGraphic介面,詳細實作內容請參照本程式的註解...




沒有留言: