<< jwcad 自動作図(2)パラメータ | top | Design Spark Mechanical >>

スポンサーサイト

一定期間更新がないため広告を表示しています

スポンサードリンク | - | | - | - |

フーリエ級数で矩形波

なんてことはない、矩形をフーリエ級数展開してみた。

周期dの関数をフーリエ展開する。

 

0/1の矩形波は

となる。N=±5までの範囲とN=±50までの範囲で比べてみた。

 

#include <iostream>
#include <vector>
#include <cmath>
#include <complex>
const double PI = 3.14159265358979323846;
using namespace std;
int main(void) {

    double d = 1;
    auto a = [&](int n)
    {
        if (n == 0) return 0.5;
        else return 1. / PI / (double)n * sin(n*PI / 2.);
    };

    for (double x = -2; x<2; x += 0.01)
    {
        complex<double> val = 0;
        for (int n = -10; n<=10; n++)
        {
            val += a(n) * exp(2 * PI*n*x / d*complex<double>(0, 1));
        }
        std::cout << x << " " << val.real() << std::endl;

    }

}

ジャジャガッチ | C/C++ | 23:03 | comments(0) | trackbacks(0) |

スポンサーサイト

スポンサードリンク | - | 23:03 | - | - |
Comment









Trackback
URL:

07
--
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
--
>>
<<
--
PR
RECOMMEND
RECENT COMMENT
MOBILE
qrcode
OTHERS
Since 2013/09/17
LATEST ENTRY
CATEGORY
ARCHIVE
LINKS
PROFILE
SEARCH