Git Product home page Git Product logo

ekf's Introduction

EKF

Package Description

EKF implements an extended kalman filter for estimating the motion of an object through space using tracking data.

Class Motion

The Motion class manages the motion of some object through space. It is responsible for managing the effect of added Action objects, and returning the acceleration driving motion at any time. It is also responsible for computing the partials of the Motion with respect to any Agent at any requested time.

Class Action

The Action class defines a force capable of effecting the evolution of a Motion object. It is the responsibility of the Action classes to define the state partial derivatives! - as well as the partial derivatives of any quantities they define with respect to all dependent parameters.

NOTE: Google C++ Style says to comment on class definintions (not declarations), but I dont think that makes sense here. I will provide a high-level overview of the class as a preamble comment, and then add comment documentation to class declarations (hpp).

03/21/2014:

Alright, so today I finished cleaning up how the Action classes compute and return the partials. Right now, partial calculation flow works like this:

  • Indicate desire to integrate by calling Motion::stepTo()
  • Motion::stepTo creates a vector called stateAndStm that has the current state and STM value, and passes it into OdeintHelper
  • OdeintHelper works iteratively with the integrator. Give the current state, it loops over all actions and collects the accel values. Given the current STM, it also loops over all the actions and gets the parameter partials. It compiles all the partials into an A matrix, and performs A * currentSTM to get the derivative of the STM.
  • OdeintHelper takes the accel and derivative of STM and puts them returns them to the integrator at every time step.

Now I need to:

  • X Modify my "observer" to also log the STM values.
  • X Understand what the STM values are (do they map me just back to the previous time step, or all the way back to the epoch?) They map all the way back to the epoch.
  • X Get a printStatePartials() method working on my Motion.
  • X Multiply the "partials" matrix in OdeintHelper ( which is really the A matrix ) by the STM part of the state vector to get the derivative of the STM.
  • X Verify partials at t=10 against python version.
  • Implement the partials of state wrt J2, Cd, etc in my Action classes.
  • Start working on my filter (in the knowlege class)
  • Write some unit tests?
  • Lots of other stuff.

ekf's People

Contributors

jeremiahbuddha avatar

Stargazers

Charis avatar YOOJIN K avatar skylook avatar

Watchers

James Cloos avatar  avatar bg8wj avatar

ekf's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.