2013-09-16 41 views
0

我好奇由給定的值的函數什麼會是由具有一些連續的值(重構函數的有效方式X是一個整數,對應的十進制y值介於[0,1]))之間,如果可以爲用於獲得任意近似值的算法設置精度。重建使用傅立葉級數或其它算法

我碰到重建用傅立葉級數此類功能的可能性,但我對如何實現在C#我自己很大的不確定性。目的是通過實踐來學習,而不是使用已有的庫。對於如何(大約)構建函數的任何其他建議也是受歡迎的。爲了在運行時創建函數,我正在考慮元編程(使用Expression s)。

編輯:對於傅立葉級數,我發現一個相關的問題加上answer。但是,提供的解決方案在Mathematica中並使用其庫。

+0

你對點是如何分佈的(線性,多項式,樣條曲線)的想法? –

+0

「(說我有x值[0,10]之間的y值)」 - 這些離散值(例如,是x是一個整數)? – mbeckish

+0

@mbeckish:是的,在我的情況下,x是整數,y在[0..1]之間。 – user654123

回答

1

傅立葉級數不會從樣本的有限長度(除非樣品碰巧是從已知的純周期函數或信號的週期的精確的整數倍數)重建功能。它只會逼近與數據窗口變換相關的函數,並且會使用一系列正弦函數和餘弦函數,這些函數可能與「真正的」未加窗函數或信號相關或不相關。去卷積卷積函數(通常是一個週期Sinc函數)是非平凡的,但需要估計可能擴展到數據窗口之外的候選波形。

+0

感謝您的澄清。在我看來,在任何變化中使用傅里葉都不能回答給定輸入數據樣本的原始問題。你是否知道其他技術可以進行大致的重建? – user654123

+1

@ Quickie007 - 有無數的函數可以適用於任何固定數量的數據樣本,但一旦超出這些樣本就會產生不同的結果。通常,您應該知道您期望數據遵循哪種功能(線性,二次等),然後使用曲線擬合技術來查找該功能的參數。 – mbeckish