hw4 (no graphics)
Euler's method
by SunnyHsu
JavaScript
var m = 1, k = 5, c = .51;
var x = [];
init();
animate();
function deriv (x) {
var ff = [];
ff.push (x[1]); // x_dot = v;
ff.push (-(c*x[1] + k*x[0])/m); // v_dot = 1/m *(-cx_dot -kx)
return ff;
}
function ODESolver(x, dt) {
var n = x.length;
// Euler's method
// var f = deriv(x);
for (var i = 0; i < n; i++) {
x[i] += f[i] * dt;
}
}
function init() {
// INITIIALIZE ODE
x.push (20);
x.push (0);
}
function animate() {
requestAnimationFrame(animate);
var dt = 0.1;
ODESolver (x,dt);
console.log (x[0]);
}