Difference between revisions of "Power Series for sine and cosine"

From JSXGraph Wiki
Jump to navigationJump to search
Line 22: Line 22:
 
var val = 0;
 
var val = 0;
 
for(var i = 0; i < Math.floor(s.X()) + 1; i++) {
 
for(var i = 0; i < Math.floor(s.X()) + 1; i++) {
                        f = board1.factorial(2*i+1);
+
   val = val + Math.pow(-1, i) * Math.pow(t, 2 * i + 1) / board1.factorial(2*i+1);
// var f = 1;
 
// var n = 1;
 
// while (n <= 2 * i + 1) { f = f * n++; }
 
   val = val + Math.pow(-1, i) * Math.pow(t, 2 * i + 1) / f;
 
 
}
 
}
 
return val;
 
return val;
Line 48: Line 44:
 
     var val = 0;
 
     var val = 0;
 
     for(var i = 0; i < Math.floor(s.X()) + 1; i++) {
 
     for(var i = 0; i < Math.floor(s.X()) + 1; i++) {
      var f = 1;
+
       val = val + Math.pow(-1, i) * Math.pow(t, 2 * i + 1) / board1.factorial(2*i+1);
      var n = 1;
 
      while (n <= 2 * i + 1) { f = f * n++; }
 
       val = val + Math.pow(-1, i) * Math.pow(t, 2 * i + 1) / f;
 
 
     }
 
     }
 
     return val;
 
     return val;
Line 78: Line 71:
 
var val = 0;
 
var val = 0;
 
for(var i = 0; i < Math.floor(s2.X()) + 1; i++) {
 
for(var i = 0; i < Math.floor(s2.X()) + 1; i++) {
var f = 1;
+
   val = val + Math.pow(-1, i) * Math.pow(t, 2 * i) / board2.factorial(2*i);
var n = 1;
 
while (n <= 2 * i) { f = f * n++; }
 
   val = val + Math.pow(-1, i) * Math.pow(t, 2 * i) / f;
 
 
}
 
}
 
return val;
 
return val;
Line 101: Line 91:
 
     var val = 0;
 
     var val = 0;
 
     for(var i = 0; i < Math.floor(s2.X()) + 1; i++) {
 
     for(var i = 0; i < Math.floor(s2.X()) + 1; i++) {
      var f = 1;
+
       val = val + Math.pow(-1, i) * Math.pow(t, 2 * i) / board2.factorial(2*i);
      var n = 1;
 
      while (n <= 2 * i) { f = f * n++; }
 
       val = val + Math.pow(-1, i) * Math.pow(t, 2 * i) / f;
 
 
     }
 
     }
 
     return val;
 
     return val;

Revision as of 16:24, 17 September 2008

Power Series for Sine

board1 = JXG.JSXGraph.initBoard('jxgbox1', {originX: 300, originY: 150, unitX: 50, unitY: 50});
board1.suspendUpdate();
board1.createElement('axis', [[1,0], [0,0]], {});
board1.createElement('axis', [[0,1], [0,0]], {});
board1.createElement('curve', [function(t){ return t; }, function(t){ return Math.sin(t); }, "t", -10, 10],{strokeColor: "#cccccc"});
var s = board1.createElement('slider', [0.75,-2.5,5,0,10,0], {name:'S'});
board1.createElement('curve', [
  't', 
  function(t) {
    var val = 0;
    for(var i = 0; i < Math.floor(s.X()) + 1; i++) {
      val = val + Math.pow(-1, i) * Math.pow(t, 2 * i + 1) / board1.factorial(2*i+1);
    }
    return val;
  }, "t", -10, 10], {strokeColor: "#bb0000", curveType:'plot'});
board1.unsuspendUpdate();

Power Series for Cosine

board2 = JXG.JSXGraph.initBoard('jxgbox2', {originX: 300, originY: 150, unitX: 50, unitY: 50});
board2.suspendUpdate();
board2.createElement('axis', [[1,0], [0,0]], {});
board2.createElement('axis', [[0,1], [0,0]], {});
board2.createElement('curve', [function(t){ return t; }, function(t){ return Math.cos(t); }, "t", -10, 10],{strokeColor: "#cccccc"});
var s2 = board2.createElement('slider', [0.75,-2.5,5,0,10,0], {name:'T'});
board2.createElement('curve', [
  't', 
  function(t) {
    var val = 0;
    for(var i = 0; i < Math.floor(s2.X()) + 1; i++) {
      val = val + Math.pow(-1, i) * Math.pow(t, 2 * i) / board2.factorial(2*i);
    }
    return val;
  }, "t", -10, 10],{strokeColor: "#009900", curveType:'plot'});						
board2.unsuspendUpdate();