Socket
Book a DemoInstallSign in
Socket

ode-euler

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ode-euler

Integrate a system of ODEs using the Euler method

latest
Source
npmnpm
Version
1.0.6
Version published
Maintainers
1
Created
Source

ode-euler Build Status npm version Dependency Status

Integrate a system of ODEs using the Euler method

Introduction

This module integrates a system of ordinary differential equations of the form

undefined

undefined

where undefined is a vector of length undefined. Given time step undefined, the Euler method integrates the ODE with update

undefined

Install

$ npm install ode-euler

Example

var euler = require('ode-euler')

var deriv = function(dydt, y, t) {
  dydt[0] = -y[1]
  dydt[1] =  y[0]
}

var y0 = [1,0]
var n = 1000
var t0 = 0
var dt = 2.0 * Math.PI / n

var integrator = euler( y0, deriv, t0, dt )

// Integrate 1000 steps:
integrator.steps(n)

// Integrate all the way around a circle:
// => integrator.y = [ 1.0199349143076457, -0.00008432969374211775 ]

API

require('ode-euler')( y0, deriv, t0, dt )

Arguments:

  • y0: an array or typed array containing initial conditions. This vector is updated in-place with each integrator step.
  • deriv: a function that calculates the derivative. Format is function( dydt, y, t ). Inputs are current state y and current time t, output is calcualted derivative dydt.
  • t0: initial time undefined.
  • dt: time step undefined.

Returns: Initialized integrator object.

Properties:

  • n: dimension of y0.
  • y: current state. Initialized as a shallow copy of input y0.
  • deriv: function that calcualtes derivative. Initialized from input. May be changed.
  • t: current time, incremented by dt with each time step.
  • dt: time step undefined. Initialized from input dt. May be changed.

Methods:

  • .step(): takes a single step of the Euler integrator and stores the result in-place in the y property.
  • .steps( n ): takes n steps of the Euler integrator, storing the result in-place in the y property.

Credits

(c) 2015 Ricky Reusser. MIT License

Keywords

scijs

FAQs

Package last updated on 01 Aug 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts