Dynamically define and manipulate physical units and quantities in Julia
The Alicorn package serves a dual purpose:
- Dynamically define and combine physical units based on the International System of Units (SI). This functionality is provided by the
- Handle physical quantities and correctly treat their units. This functionality is provided by the
This documentation is divided into two parts: The Manual describes how to use Alicorn to define units and handle physical quantities. The Reference documents all types, methods, and constants that form the public API of Alicorn.
- Alicorn represents units as objects of type
AbstractUnitwith suitable methods to create and manipulate them
- Alicorn represents quantities as objects of type
AbstractQuantitywith suitable methods to create and manipulate them
- Units can be combined and quantities formed using intuitive arithmetic syntax, no parsing of strings representing units is required
- New units can be dynamically defined during runtime, no manipulation of source files or configuration files is required
Alicorn.jl package is registered in the General Julia registry and can be installed using Julia's package manager
Pkg.jl: In the Julia REPL, add Alicorn to your default Julia environment by running
julia> ] pkg> add Alicorn
The listing below shows a minimal example of how to use Alicorn. Refer to the Basic Usage section for more details.
julia> using Alicorn julia> ucat = UnitCatalogue() ; julia> mass = 2 * (ucat.kilo * ucat.gram) 2 kg julia> acceleration = 10 * ucat.meter * ucat.second^-2 10 m s^-2 julia> force = mass * acceleration 20 kg m s^-2 julia> inUnitsOf(force, ucat.kilo * ucat.newton) 0.02 kN
If you are interested in Alicorn, also have a look at the mature
Unitful.jl offers functionalities similar to
Alicorn.jl, and more.