Skip to content

BrianChevalier/re-state

Repository files navigation

Re-state

Re-state is a Clojure(Script) library in development for computing numerically accurate and reproducible mechanical responses of systems. The core algorithm code is completely shared providing more extensive testing and easier implementation of new problems. Currently, there is support for solving non-linear particle and rigid body dynamic systems.

See a demo of this library in action here.

Why Clojure?

Clojure is a Lisp dialect and functional programming language with a rich set of persistent data structures. Immutable data structures allow for easier to reason about systems, as well as concurrency.

In addition, Clojure can be run in a Java runtime or in a JavaScript runtime. This means code can be shared across a high performance runtime and in a standard browser for serverless demos.

Development

Run the following at a terminal in the root directory to get started.

make dev

Project Structure

The user interface components are available under src/app. The dynamic specific solving code is available under src/dynamic. Some math helper functions are available under src/math.

Technologies

Contributing

  • File issues/bugs here
  • Have some Equations of Motions you'd like to see in action? I'd be happy to add them to the list of examples! Add an issue to get started

About

Clojure(Script) library for computing numerically accurate and reproducible mechanical responses of systems.

Topics

Resources

License

Stars

Watchers

Forks

Languages