Expand description
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!
Modules
Structs
A histogram is a Collection of Bins
Branch
A wrapper around the std::vec::vec
Tree of Collections of only a single type, which impl the Feed trait for added functionality
Four Matrix
Four Vector
Point, or Two Vector, depending on your perspective. A plot is a Collection of Points
A 2D histogram is a Collection of PointBins
Three dimensional scalar field
Three Matrix
Three Vector
Three dimensional vector field
Tree of Collections for saving to a file.
Enums
Variants of S space-time invariant
Traits
Deserialization trait which all types you intend to get out of a Tree need to implement. Really only designed to work with data that was serialized with the Calcify::Serializable trait and will not work on arbitrarily modified tree files
Serialization trait which all types you intend to put in a Tree need to implement.
Functions
Beta factor, |v| over the speed pf light in a vacuum, in SI.
Returns a FourVec, inside a Result, boosted into a frame of arbitrary velocity v.
Return the angle between two vectors in degrees
Gamma, the lorentz factor, in SI.
Return the angle between two vectors in radians