Repository navigation
Install: pip install --upgrade bijective-gamut (Python 3.11 or later). MATLAB R2023b or later: open Gamut.mltbx below. Julia 1.10 or later, C and C++: the gamut-core-2.1.0-<platform> archive below. Rust: bijective-gamut = { git = "https://github.com/bijective-systems-org/gamut", tag = "v2.1.0" }.
The Python package is now bijective-gamut. Code still says import gamut. gamut-format, the name through 2.0.0, installs bijective-gamut at the same version, so existing instructions and requirements keep working.
Rust. The bijective-gamut crate (gamut in code) writes and reads the same files with the same calls as the other languages. Every example in the documentation now has a Rust tab.
One implementation. related() and model evaluation now run in the core, so every language gives the same answers and messages. MATLAB and C++ gain related(), and a C program can evaluate a model file itself. Along the way, evaluate:
- writes coordinates you give it per run, as the specification says (they were dropped for a fixed mesh);
- evaluates an int64 input past 2^53 instead of refusing it;
- refuses, before any model runs, a model file that reads one output at two widths.
Upgrading from 2.0. The file format (gamut/1) is unchanged, and the C interface only adds calls, so programs written for 2.0 build and run against 2.1. The changelog lists what evaluate now does differently.
Supported versions: Python 3.11, NumPy 1.26, MATLAB R2023b, Julia 1.10 and Rust 1.70, or later.