Takagi–Landsberg curve: Difference between revisions

From JSXGraph Wiki
No edit summary
No edit summary
Line 14: Line 14:
<jsxgraph width="500" height="500" box="box">
<jsxgraph width="500" height="500" box="box">
  var bd = JXG.JSXGraph.initBoard('box', {axis:true,originX: 25, originY: 400, unitX: 450, unitY: 25});
  var bd = JXG.JSXGraph.initBoard('box', {axis:true,originX: 25, originY: 400, unitX: 450, unitY: 25});
  var w = bd.createElement('slider', [[0,8],[0.8,8],[0,0.25,1.5]], {name:'w'});
  var w = bd.create('slider', [[0,8],[0.8,8],[0,0.25,1.5]], {name:'w'});
  var N = bd.createElement('slider', [[0,7],[0.8,7],[0,5,40]], {name:'N'});  
  var N = bd.create('slider', [[0,7],[0.8,7],[0,5,40]], {name:'N'});  
  var s = function(x){ return Math.abs(x-Math.round(x)); };
  var s = function(x){ return Math.abs(x-Math.round(x)); };
  var c = bd.createElement('functiongraph', [
  var c = bd.create('functiongraph', [
     function(x){
     function(x){
         var n, su, wval;
         var n, su, wval;
Line 34: Line 34:
<jsxgraph width="500" height="500" box="box">
<jsxgraph width="500" height="500" box="box">
  var bd = JXG.JSXGraph.initBoard('box', {axis:true,originX: 25, originY: 400, unitX: 450, unitY: 25});
  var bd = JXG.JSXGraph.initBoard('box', {axis:true,originX: 25, originY: 400, unitX: 450, unitY: 25});
  var w = bd.createElement('slider', [[0,8],[0.8,8],[0,0.25,1.5]], {name:'w'});
  var w = bd.create('slider', [[0,8],[0.8,8],[0,0.25,1.5]], {name:'w'});
  var N = bd.createElement('slider', [[0,7],[0.8,7],[0,5,40]], {name:'N'});  
  var N = bd.create('slider', [[0,7],[0.8,7],[0,5,40]], {name:'N'});  
  var s = function(x){ return Math.abs(x-Math.round(x)); };
  var s = function(x){ return Math.abs(x-Math.round(x)); };
  var c = bd.createElement('functiongraph', [
  var c = bd.create('functiongraph', [
     function(x){
     function(x){
         var n, su, wval;
         var n, su, wval;

Revision as of 10:14, 25 March 2011

The blancmange function is defined on the unit interval by

[math]\displaystyle{ {\rm blanc}(x) = \sum_{n=0}^\infty {s(2^{n}x)\over 2^n}, }[/math]

where [math]\displaystyle{ s(x) }[/math] is defined by [math]\displaystyle{ s(x)=\min_{n\in{\bold Z}}|x-n| }[/math], that is, [math]\displaystyle{ s(x) }[/math] is the distance from x to the nearest integer. The infinite sum defining [math]\displaystyle{ blanc(x) }[/math] converges absolutely for all x, but the resulting curve is a fractal. The blancmange function is continuous but nowhere differentiable.

The Takagi–Landsberg curve is a slight generalization, given by

[math]\displaystyle{ T_w(x) = \sum_{n=0}^\infty w^n s(2^{n}x) }[/math]

for a parameter w; thus the blancmange curve is the case [math]\displaystyle{ w = 1 / 2 }[/math]. For [math]\displaystyle{ w = 1 / 4 }[/math], one obtains the parabola: the construction of the parabola by midpoint subdivision was described by Archimedes.


The JavaScript code to produce this picture

<jsxgraph width="500" height="500" box="box">
 var bd = JXG.JSXGraph.initBoard('box', {axis:true,originX: 25, originY: 400, unitX: 450, unitY: 25});
 var w = bd.create('slider', [[0,8],[0.8,8],[0,0.25,1.5]], {name:'w'});
 var N = bd.create('slider', [[0,7],[0.8,7],[0,5,40]], {name:'N'}); 
 var s = function(x){ return Math.abs(x-Math.round(x)); };
 var c = bd.create('functiongraph', [
     function(x){
        var n, su, wval;
        su = 0.0;
        wval = w.Value();
        for (n=0;n<N.Value();n++) {
           su += Math.pow(wval,n)*s(Math.pow(2,n)*x);
        }
        return su;
     },0,1],{strokeColor:'red'});      
</jsxgraph>

References

  • Teiji Takagi, "A Simple Example of a Continuous Function without Derivative", Proc. Phys. Math. Japan, (1903) Vol. 1, pp. 176-177.

External links