Commit Graph

752 Commits

Author SHA1 Message Date
Mateusz Pusz
b4c08bb8fe feat: improve types readability by eliminating extraneous () for a value of a type for references
Resolves #533
2024-02-05 19:41:53 +01:00
Mateusz Pusz
3382cb4b30 fix: compilation issues fixed 2024-01-26 16:04:59 +01:00
Mateusz Pusz
8fb800670c refactor: 'o' replaced with '1' as a modifier for unit_symbol_solidus::one_denominator 2024-01-23 21:20:22 +01:00
Nebojsa Cvetkovic
64c351906d feat: fmod floating-point division remainder 2024-01-22 10:48:15 +00:00
Nebojsa Cvetkovic
057d659c1f feat: atan2 2-argument arctangent 2024-01-20 19:37:00 +00:00
Nebojša Cvetković
a62f061028 feat: ppm parts per million
Co-authored-by: Mateusz Pusz <mateusz.pusz@gmail.com>
2024-01-20 14:37:36 +00:00
Mateusz Pusz
1df2cc7b58 feat: do not print space between a number and percent or per_mille 2024-01-19 21:20:33 +01:00
Mateusz Pusz
d036af5647 fix: compilation errors after the last commit fixed 2024-01-19 11:09:29 +01:00
Mateusz Pusz
b4f07f6e7c refactor: 💥 ReferenceOf does not take a dimension anymore
It seems unneeded and removing this check greatly simplifies common compilation errors.
2024-01-19 10:35:32 +01:00
Mateusz Pusz
f2be389b57 feat: .view() member funciton added to fixed_string 2024-01-18 16:47:16 +01:00
Mateusz Pusz
9511995d04 build: find_package() calls don't spell CONFIG explicitly anymore 2024-01-12 12:32:12 +01:00
Mateusz Pusz
fb8552b1d9 refactor: core-fmt and core-ostream modules merged with core 2024-01-06 08:51:01 +01:00
Mateusz Pusz
0eaf6e2e56 refactor: modules support redesigned 2024-01-06 08:51:01 +01:00
Mateusz Pusz
b582e200a0 fix: clang-17 with modules build on ignores disabling conversion warnings 2024-01-06 08:51:01 +01:00
Johel Ernesto Guerrero Peña
7cb2099af5 feat: add module mp_units 2024-01-06 08:51:00 +01:00
Mateusz Pusz
6324f6dc2a Merge pull request #522 from mpusz/implicit_point_origin
feat: implementation of implicit point origins
2023-12-26 11:09:43 +01:00
Mateusz Pusz
7f0e7f8ca8 refactor: 💥 SI-related trigonometric functions moved to the si subnamespace 2023-12-26 09:31:11 +01:00
Mateusz Pusz
be1705bc4a refactor: zeroth_point_origin() renamed to default_point_origin() and implicit_zeroth_point_origin renamed to zeroth_point_origin 2023-12-22 17:29:02 +01:00
Mateusz Pusz
f2abaa28bc feat: quantity_from_zero() enabled for absolute point origins 2023-12-22 16:41:14 +01:00
Mateusz Pusz
a962182e13 feat: implicit point origins compatibility between different quantity specs added 2023-12-22 16:35:06 +01:00
Mateusz Pusz
641163a4c3 test: verify that the implicit point origin is properly set for the rest of the units and derived ones 2023-12-21 12:25:09 +01:00
Mateusz Pusz
fe099b5ad1 feat: propagation of point origins for scaled units added 2023-12-21 12:25:09 +01:00
Mateusz Pusz
10a2e6dc0d feat: 💥 initial implementation of implicit point origins 2023-12-21 12:25:09 +01:00
Nick Thompson
267db9e2a2 Update minimum cmake version to 3.5
Currently, cmake is emitting the following warning:

```
CMake Deprecation Warning at cmake/ccache.cmake:23 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.
```

Update the CMake min version to 3.5 to unclutter the build logs and ensure users don't get broken by the deprecation.
2023-12-16 11:51:58 -08:00
Mateusz Pusz
06e7c04214 test: fma() tests refactored 2023-12-16 20:24:52 +01:00
Nick Thompson
7a270a6fd9 Floating point classification functions
Add the ability for `isnan`, `isfinite`, and `isinf` to work on dimensioned quantities.
2023-12-16 08:08:44 -08:00
Nick
dd84873ac9 Merge branch 'master' into add_fma 2023-12-15 13:01:38 -08:00
Nick
f32aafe0df Merge branch 'mpusz:master' into add_fma 2023-12-11 18:01:52 -08:00
Nick Thompson
51f8b47071 Add fma to math.h 2023-12-09 13:26:38 -08:00
Mateusz Pusz
40c2ecb2aa feat: equivalent point origins handling improved 2023-12-03 18:57:34 +01:00
Mateusz Pusz
da8721b997 feat: users are now allowed to inherit their ow types from absolute point origins 2023-12-03 16:15:38 +01:00
Mateusz Pusz
29c83c0d84 feat: 💥 symbol_text definition simplified 2023-11-30 09:25:29 +01:00
Mateusz Pusz
d195e2b3bf fix: equality for dimensions fixed to provide transitivity 2023-11-03 21:18:57 +01:00
Mateusz Pusz
a0dc3885e5 fix(unit test): degree Fahrenheit unit test fixed 2023-10-18 17:21:30 +02:00
Mateusz Pusz
8e48906729 refactor: quantity_from_origin_ data member now has much less friendly name 2023-10-17 14:29:59 +02:00
Mateusz Pusz
abafd1d38e refactor: numerical_value_ data member now has much less friendly name 2023-10-17 14:16:22 +02:00
Mateusz Pusz
98d07b9ed1 feat: 💥 quantity_spec and its kind should not compare equal 2023-10-17 09:45:31 +02:00
Mateusz Pusz
1230eb6d25 test: inherited dimension test added 2023-10-17 09:32:53 +02:00
Mateusz Pusz
b17c354080 refactor(tests): unit_symbol_test.cpp updated with new unit_symbol() signature 2023-10-17 09:12:51 +02:00
Mateusz Pusz
556df31590 feat: equality for dimensions now will allow derived classes as well (but not from derived_dimension) 2023-10-15 17:08:19 +02:00
Mateusz Pusz
b96be72457 feat: 💥 quantity_point does not provide zero() anymore 2023-10-15 09:39:18 +02:00
Mateusz Pusz
c9978dd479 refactor: some internal headers moce to the _bits/external_ subdirectory 2023-10-14 11:43:18 +02:00
Mateusz Pusz
e23f038173 Merge branch 'master' into unit_compose_ext 2023-10-06 23:38:04 +02:00
Mateusz Pusz
9017aab28d test: unit tests added for muliplication and divsion of a quantity by reference 2023-10-06 15:20:20 -06:00
Mateusz Pusz
0d66089853 feat: 💥 inverse() support added for dimensions, quantity_spec, units, and references (1 / s will now create quantity and not a Unit) 2023-10-06 12:53:18 -06:00
Mateusz Pusz
5a74cd66ba feat: interoperability with other libraries redesigned 2023-09-30 22:23:18 -06:00
Mateusz Pusz
b2423bfded feat: quantities can now be multiplied and divided by units 2023-09-29 21:40:24 -06:00
Mateusz Pusz
833851d1cb test: tests for printing of a symbol of a dimensionless unit with the ratio = 1 2023-09-29 06:31:32 +02:00
Mateusz Pusz
caf0e66cb2 test: more unit tests for unit conversions 2023-09-28 09:01:52 +02:00
Mateusz Pusz
bbdf290009 fix: clang-17 compilation fixed 2023-09-26 19:15:57 +02:00