Riemann sum III: Difference between revisions
From JSXGraph Wiki
A WASSERMANN (talk | contribs) No edit summary  | 
				A WASSERMANN (talk | contribs) No edit summary  | 
				||
| (15 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
Appromximate the integral of   | |||
<math>f: R\to R, x\mapsto x^2 </math>  | |||
<html>  | <html>  | ||
<form>Riemann sum type: <select id="sumtype" >  | <form>Riemann sum type: <select id="sumtype" onChange="brd.update()">  | ||
<option value='left' selected> left  | <option value='left' selected> left  | ||
<option value='right'> right  | <option value='right'> right  | ||
<option value='middle'> middle  | <option value='middle'> middle  | ||
<option value='  | <option value='trapezoidal'> trapezoidal  | ||
<option value='simpson'> simpson  | |||
<option value='lower'> lower  | <option value='lower'> lower  | ||
<option value='upper'> upper  | <option value='upper'> upper  | ||
</select></form>  | </select></form>  | ||
</html>  | </html>  | ||
<jsxgraph width="800" height="400" box="box">  | <jsxgraph width="800" height="400" box="box">  | ||
var brd = JXG.JSXGraph.initBoard('box', {axis:true, boundingbox:[-  | var brd = JXG.JSXGraph.initBoard('box', {axis:true, boundingbox:[-2,40,8,-5]});  | ||
var s = brd.create('slider',[[1,30],[  | var s = brd.create('slider',[[-1,30],[2,30],[3,50,500]],{name:'n',snapWidth:1});  | ||
var a = brd.create('slider',[[1,20],[  | var a = brd.create('slider',[[-1,20],[2,20],[-10,0,0]],{name:'start'});  | ||
var b = brd.create('slider',[[1,10],[  | var b = brd.create('slider',[[-1,10],[2,10],[0,6,10]],{name:'end'});  | ||
var f = function(x){ return x*x; };  | var f = function(x){ return x*x; };  | ||
var plot = brd.create('functiongraph',[f,function(){return a.Value();}, function(){return b.Value();}]);  | var plot = brd.create('functiongraph',[f,function(){return a.Value();}, function(){return b.Value();}]);  | ||
| Line 24: | Line 28: | ||
     {fillColor:'#ffff00', fillOpacity:0.3});  |      {fillColor:'#ffff00', fillOpacity:0.3});  | ||
brd.  | brd.create('text',  | ||
      [1,35,function(){ return 'Sum='+(JXG.Math.Numerics.riemannsum(f,s.Value(),document.getElementById('sumtype').value,a.Value(),b.Value())).toFixed(4); }]);  | |||
</jsxgraph>  | </jsxgraph>  | ||
===The underlying JavaScript code===  | ===The underlying JavaScript code===  | ||
<source lang="xml">  | <source lang="xml">  | ||
<  | <form>Riemann sum type: <select id="sumtype" onChange="brd.update()">  | ||
<option value='left' selected> left  | |||
<option value='right'> right  | |||
<option value='middle'> middle  | |||
<option value='trapezoidal'> trapezoidal  | |||
<option value='simpson'> simpson  | |||
<option value='lower'> lower  | |||
<option value='upper'> upper  | |||
</select></form>  | |||
</source>  | |||
var brd = JXG.JSXGraph.initBoard('box', {axis:true,   | <source lang="javascript">  | ||
var s = brd.  | var brd = JXG.JSXGraph.initBoard('box', {axis:true, boundingbox:[-2,40,8,-5]});  | ||
var a = brd.  | var s = brd.create('slider',[[-1,30],[2,30],[3,50,500]],{name:'n',snapWidth:1});  | ||
var b = brd.  | var a = brd.create('slider',[[-1,20],[2,20],[-10,0,0]],{name:'start'});  | ||
var f = function(x){ return   | var b = brd.create('slider',[[-1,10],[2,10],[0,6,10]],{name:'end'});  | ||
var plot = brd.  | var f = function(x){ return x*x; };  | ||
var plot = brd.create('functiongraph',[f,function(){return a.Value();}, function(){return b.Value();}]);  | |||
var os = brd.  | var os = brd.create('riemannsum',[f,    | ||
     function(){ return s.Value();}, function(){ return document.getElementById('sumtype').value;},  |      function(){ return s.Value();}, function(){ return document.getElementById('sumtype').value;},  | ||
     function(){return a.Value();},    |      function(){return a.Value();},    | ||
| Line 46: | Line 61: | ||
     {fillColor:'#ffff00', fillOpacity:0.3});  |      {fillColor:'#ffff00', fillOpacity:0.3});  | ||
brd.  | brd.create('text',  | ||
      [1,35,function(){ return 'Sum='+(JXG.Math.Numerics.riemannsum(f,s.Value(),document.getElementById('sumtype').value,a.Value(),b.Value())).toFixed(4); }]);  | |||
</source>  | </source>  | ||
[[Category:Examples]]  | [[Category:Examples]]  | ||
[[Category:Calculus]]  | [[Category:Calculus]]  | ||
Latest revision as of 09:16, 7 August 2013
Appromximate the integral of [math]\displaystyle{ f: R\to R, x\mapsto x^2 }[/math]
The underlying JavaScript code
<form>Riemann sum type: <select id="sumtype" onChange="brd.update()">
<option value='left' selected> left
<option value='right'> right
<option value='middle'> middle
<option value='trapezoidal'> trapezoidal
<option value='simpson'> simpson
<option value='lower'> lower
<option value='upper'> upper
</select></form>
var brd = JXG.JSXGraph.initBoard('box', {axis:true, boundingbox:[-2,40,8,-5]});
var s = brd.create('slider',[[-1,30],[2,30],[3,50,500]],{name:'n',snapWidth:1});
var a = brd.create('slider',[[-1,20],[2,20],[-10,0,0]],{name:'start'});
var b = brd.create('slider',[[-1,10],[2,10],[0,6,10]],{name:'end'});
var f = function(x){ return x*x; };
var plot = brd.create('functiongraph',[f,function(){return a.Value();}, function(){return b.Value();}]);
var os = brd.create('riemannsum',[f, 
    function(){ return s.Value();}, function(){ return document.getElementById('sumtype').value;},
    function(){return a.Value();}, 
    function(){return b.Value();}
    ], 
    {fillColor:'#ffff00', fillOpacity:0.3});
brd.create('text',
      [1,35,function(){ return 'Sum='+(JXG.Math.Numerics.riemannsum(f,s.Value(),document.getElementById('sumtype').value,a.Value(),b.Value())).toFixed(4); }]);