scifir-units 2.0.0
scifir-units is a library of units of measurement, angles, coordinates, fields, and related data, all lightweight, that help in the development of scientific software and scientific machines
|
Symbol | Use |
---|---|
θ | String literal of angle and used both in vector_unit_2d and vector_unit_3d. |
Φ | Angle phi, used in vector_unit_3d. |
° | Degree, used in vector_unit_nd and angle class. |
Ω | String literal of resistance. |
Å | String literal of angstrom. |
µ | Prefix micro, used as part of the string literals with micro. |
Still in beta version 2.0 (you can use it!)
Welcome! scifir-units is a C++ library, portable to other programming languages, that's a fundamental part of the Scifir collection. It allows to create units of measurement, vectors with units of measurement, coordinates, special units of measurement like percentage and pH, among other topics related to units of measurement. The units of measurement are very lightweight, size similar to a float, and can be used to do any math calculation necessary for any electronic invention and digital software. The prefixes of the dimensions can be changed, in order to display the unit in the more proper dimensions. Also, all the conversions are supported.
The unit classes of scifir-units are:
The Scifir collection is a set of scientific libraries, written in C++, for developing laboratory machines and scientific inventions. Also, any electronic device, medical machine, electrodomestic or vehicle can be benefited with the use of units and related classes. It provides units, molecules, among other features, to allow developers of scientific software to develop their software and firmware easy. Enjoy!
Learn how to use scifir-units in the website https://scifir.github.io/scifir-units (that documentation has been done with doxygen and uses the dox files located in the folder **./docs/dox**).
scifir-units has been developed under C++20 and uses cmake as build tool. It works in all platforms, including Linux distributions and Windows.
The reference of classes and functions can be read in the reference of scifir-units.
The current version of scifir-units is the beta-version-2.0. The version 1.0 has never been released because the version 2.0 was better by a great extent. The version 2.0 includes a better inheritance system and a wide simplification of all the programming of the library and, then, a better compilation and a saving of RAM for each instantiation of each class. Because of that reason, the version 2.0 has been preferred over the version 1.0.
prefix class can have all SI prefixes. dimension class has all SI base dimensions, all SI special names, among other more dimensions. coordinates classes and point classes use a space of metre, float or imaginary dimensions. aid class and zid class are a standard for astronomical ids and zone ids invented inside Scifir.
Base unit classes (they inherit scalar_unit):
It's mandatory to follow the data conventions of Scifir when using scifir-units, which is used not only for this library but also for every Scifir project. The data conventions of Scifir allow to handle data easy without multiple interpretations of the meaning of any value, because it doesn't has ambiguities.
The conventions are the following:
The conventions for storing informatic data are the following:
All the unit classes, and also the other related classes of this library, can be constructed with what is called here an initialization string. An initialization string is an string used to instantiate the class, and it's also used when converting the class to an string for any purpose (like printing it on the screen).
The initialization strings are like the following examples:
In order to store units inside a file an initialization string should be used. To store inside a table of a database, use an initialization string too. For any purpose, when converting some of those classes to an string, the string initialization has to be used always.
The Scifir Collection is developed by Ismael Correa Castro, a software developer of 32 years old. You can email him if you find bugs, you want to request new features, or have any other need, at ismael.correa.castro@gmail.com. His ORCID is 0009-0007-3815-7053, if you want to reference this work inside any publication.
The Scifir Foundation is looking for funding, in order to do some digital marketing and pay some other needs of the project. If you want to support this libraries, science will thank you for that, you can donate in this sponsors page.
The documentation is short to read! Take profit then to read it entirely!