ワイエルシュトラス関数1

見た目のインパクトがすごい関数

デモ

マウスホイールで拡大縮小、クリックで中心移動

説明

ワイエルシュトラス関数(ワイエルシュトラスかんすう、英: Weierstrass function)は、 1872年にカール・ワイエルシュトラスにより提示された実数関数で、連続関数であるにもかか わらず至るところ微分不可能な関数である。 出典: フリー百科事典『ウィキペディア(Wikipedia)』

実装

\[ w(x) = \sum_{n=0}^{\infty} {a^n \cos(b ^ n \pi x)} \]

を使う。Wikipediaによれば、\(a\)および\(b\)は \(0\lt a \lt 1\)かつ \(b\)が奇数の整数かつ \(ab > 1 + \frac {3} {2} \pi \simeq 5.71 \)を満たすように選べばよい。

無限回の足し算はできないので、\(n\)回で切る。

    
    function weierstrass(n, x) {
      let res = 0;
      for (let i = 0; i < n; i++) {
        res += Math.pow(A, i) * Math.cos(Math.pow(B, i) * Math.PI * x);
      }
      return res;
    }
    
  

続き

ワイエルシュトラス関数の表式をよく見ると、フーリエ級数と似ている。

これについてはワイエルシュトラス関数2に書く。