Apatite is a fundamental package for scientific computing with Crystal
Go to file
Chris Watson d799f8b844 Fix issue with Vector 2021-10-18 13:33:14 -06:00
.github/workflows Updated workflow name 2019-09-10 19:18:18 -07:00
docs Update Matrix.zero documentation 2019-09-02 14:20:55 -07:00
spec Adds #map_with_index to Matrix 2019-09-21 04:26:30 +02:00
src Fix issue with Vector 2021-10-18 13:33:14 -06:00
.editorconfig Initial commit 2019-05-04 18:34:31 -07:00
.gitignore Changing the API around 2019-06-12 19:23:30 -07:00
.tool-versions Fix issue with Vector 2021-10-18 13:33:14 -06:00
.travis.yml Initial commit 2019-05-04 18:34:31 -07:00
LICENSE.md Update LICENSE and README 2019-05-04 19:33:41 -07:00
README.md Updated workflow name 2019-09-10 19:18:18 -07:00
shard.yml use crystal 1.0; add ameba 2021-08-05 12:21:34 -05:00

README.md

Apatite

Apatite is a collection of mathematical and scientific algorithms. Currently it implements the API from Ruby's Matrix class for both Matrix and Vector. This API will be added to as needs arise. The goal is for this project to eventually contain everything you could get from SciPy, but in pure Crystal.

Installation

  1. Add the dependency to your shard.yml:

    dependencies:
      apatite:
        github: watzon/apatite
    
  2. Run shards install

Usage

require "apatite"

Check out the documentation for usage examples.

Roadmap

  • Linear Algebra
    • Vector
    • Matrix
    • NDArray
    • Line
    • Plane
    • Polygon
    • LinkedList

Contributing

  1. Fork it (https://github.com/watzon/apatite/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors