Calcify
A crate for 3-D and 4-D vector and matrix algebra, conceived for use in physics simulations. Builds out from a basic ThreeVec struct including most commonly used operations built in. Includes physics constants, 3 and 4-D vectors and matrices and many associated operations, collections, histograms, and output trees, which are serialized in json or MessagePack.
ICalcify
Python command line utility and module for analyzing Tree files.
Check it out here!
Usage
use error;
extern crate calcify;
use Tree;
use FeedTree;
use Collection;
use Bin;
use Point;
use ToFile;
use Projectile;
use Lab;
Example
cargo run --example universe_in_a_box --release
Notes about File IO
-
Even though json is supported for both reading and writing, it's not as efficiently implemented and may lead to slowdowns when reading large files. Consider only using it for debugging, so that you can read the results of tests, otherwise use msg.
-
Feel free to use Serde when implementing the Serialization traits for your types
Trees
| Write | Read |
|---|---|
| Supports all subtypes | Internal types only, and not Object |
FeedTrees
| Write | Read |
|---|---|
| Supports all subtypes | Supports all subtypes |
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.