Commit Graph

46 Commits

Author SHA1 Message Date
Mateusz Pusz e2e490f0cd refactor: scaling algorithm and concepts simplified 2026-04-11 19:00:33 +02:00
Mateusz Pusz d8b72fc431 refactor: scaling the value by magnitude heavily refactored 2026-03-19 00:28:15 +01:00
Mateusz Pusz 490d18b649 feat: representation concepts now detects nested quantity types 2026-03-15 07:10:37 +01:00
Mateusz Pusz cdb228d5f5 fix: cartesian_vector fixed to work properly as a representation type and enable multiply syntax 2026-03-15 07:04:02 +01:00
Mateusz Pusz aa2a0020cb feat: all constants now use named_constant 2026-02-23 17:35:30 +01:00
Mateusz Pusz 9a374a5646 refactor: isq::time swapped with isq::duration 2026-01-09 09:22:37 +01:00
Mateusz Pusz 00a2e06eb1 test: duplicated unit tests removed 2026-01-07 12:38:52 +01:00
Mateusz Pusz e770a40910 feat: 💥 natural units reworked from scratch
`system_reference` and `AssociatedUnit` removed
2026-01-04 20:11:53 +01:00
Mateusz Pusz 4e94399243 fix(unit test): the hidden usage of natural units API branched out when OFF 2025-12-18 21:17:28 +01:00
Mateusz Pusz 2e154ff4f4 fix: concepts tests compilation fixed for MP_UNITS_API_NATURAL_UNITS OFF 2025-12-18 19:42:42 +01:00
Mateusz Pusz c09d8f7861 fix(test): natural.h should not be included when natural units support is OFF 2025-12-18 19:28:22 +01:00
Mateusz Pusz e058a47baf feat: natural units support is now opt-in 2025-07-09 20:05:03 +02:00
Mateusz Pusz 4b1f7cd217 feat: 💥 Representation concept removed 2025-02-12 18:57:06 +01:00
Mateusz Pusz 836880c3a1 test: quantity character concepts tests for quantities added 2025-02-11 20:58:53 +01:00
Mateusz Pusz 47a82f466c refactor: scalar and complex renamed to real_scalar and complex_scalar respectively + concepts refactoring + electromagnetism fixes 2025-02-11 17:26:19 +01:00
jvocht 44cbf82012 Fix clang-format error caused by missing to run pre-commit. 2025-01-11 17:41:56 +01:00
jvocht f6940e224c Add new tests for base dimension of quanties of the same kind and for derived dimensions. Remove temporary helper objects. 2025-01-11 17:31:03 +01:00
jvocht c758cb37e6 Add static tests for concept DimensionOf 2025-01-04 16:32:30 +01:00
Mateusz Pusz 06cbfae3b3 feat: quantity_spec conversions improved 2024-12-28 14:02:03 +01:00
Mateusz Pusz db64534f34 test: tests to check if quantity satisfies Scalar 2024-12-01 14:15:56 +01:00
Mateusz Pusz 52e95f9b2e test: a few more natural units tests added 2024-11-29 11:11:13 +01:00
Mateusz Pusz a223c08a39 refactor: multiplication and division by scalars was a bad idea for Complex and Vector 2024-11-28 23:02:11 +01:00
Mateusz Pusz 465f88d500 refactor: 💥 is_XXX customization points for representation types removed 2024-11-26 14:48:08 +01:00
Mateusz Pusz 1581fa59ad test: extend concepts tests with cartesian_vector as a representation 2024-11-14 20:42:21 +01:00
Mateusz Pusz 2590aa4b80 refactor: MP_UNITS_NONCONST_TYPE introduced to benefit from the C++23 feature 2024-11-13 21:13:22 +01:00
Mateusz Pusz 06853b7aeb fix: const was leaking to some SymbolicConstants 2024-11-08 12:57:29 +01:00
Mateusz Pusz 75b50b8d2c feat: complex.h added 2024-11-07 10:58:51 +01:00
Mateusz Pusz c7303cc5fb refactor: representation concepts refactored + some quantities switched to complex 2024-11-05 19:09:16 +01:00
Mateusz Pusz 569f27af8b fix: common_unit handling fixed for some corner cases 2024-10-05 17:52:52 +02:00
Mateusz Pusz 45013f6752 fix: inline restored for non-template constexpr global variables 2024-09-05 10:06:43 +02:00
Mateusz Pusz 2e840cfdb4 refactor: Repetitive inline constexpr removed as no longer needed
Not needed anymore as stated in cplusplus/draft#4601
2024-09-05 08:43:36 +02:00
Mateusz Pusz 77625d63cb feat: 💥 unit_can_be_prefixed removed - from now on all named units can be prefixed
Resolves #604
2024-08-22 08:06:00 +02:00
Mateusz Pusz b870b85c25 feat: import std; support added
Resolves #595
2024-07-16 17:36:00 +02:00
Mateusz Pusz 0010d868a7 feat: tag types-related operators are now hidden friends as well
Resolves #591
2024-07-12 16:01:03 +02:00
Mateusz Pusz 05fc1e29c8 refactor: 💥 from now on point origins must be marked final + absolute_point_origin does not use CRTP anymore 2024-06-13 19:24:40 +02:00
Mateusz Pusz 5f67523a8a feat: 💥 from now on quantity specifications have to be marked as final 2024-06-13 12:05:16 +02:00
Mateusz Pusz 6aa848a456 feat: 💥 from now on dimnensions have to be marked as final 2024-06-12 14:17:32 +02:00
Mateusz Pusz 4aea85656b refactor: units no longer inherit from each other 2024-06-06 13:16:13 +02:00
Mateusz Pusz fb77585593 refactor: system's units do not inherit from one another anymore
Resolves #512
2024-06-05 08:16:02 +02:00
Mateusz Pusz 1ea2df9209 refactor: most std::remove_const_t removed and some replaced with the GCC-specific workaround 2024-06-01 09:12:16 +02:00
Mateusz Pusz cd36e6f974 feat: freestanding support added
Resolves #564, #565, and #556
2024-05-30 19:50:02 +02:00
Mateusz Pusz 8ea346be1c refactor: 💥 header files with the entire system definitions moved up in the directory tree 2024-04-25 16:34:11 +02:00
Mateusz Pusz c066104af7 refactor: 💥 framework.h introduced + IWYU 2024-04-24 21:09:29 +02:00
Mateusz Pusz 5ca9168381 feat: proper exports implemented for C++ modules 2024-02-23 21:09:17 +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 0eaf6e2e56 refactor: modules support redesigned 2024-01-06 08:51:01 +01:00