Cargando…
A new advance on dimensional-aware scalar, vector and matrix operations in C++
We review the dimensional check problem of the high-level programming languages, discuss the existing solutions, and come up with a new solution suited for scientific and engineering computations. Then, we introduce Univec, our C++ library designed to make scalar, vector, and matrix operations using...
Autores principales: | , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
Nature Publishing Group UK
2023
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10551037/ https://www.ncbi.nlm.nih.gov/pubmed/37794159 http://dx.doi.org/10.1038/s41598-023-43683-w |
_version_ | 1785115679406424064 |
---|---|
author | Stan, Eduard George Ciubotaru, Dan Andrei Renda, Michele Alexa, Călin |
author_facet | Stan, Eduard George Ciubotaru, Dan Andrei Renda, Michele Alexa, Călin |
author_sort | Stan, Eduard George |
collection | PubMed |
description | We review the dimensional check problem of the high-level programming languages, discuss the existing solutions, and come up with a new solution suited for scientific and engineering computations. Then, we introduce Univec, our C++ library designed to make scalar, vector, and matrix operations using units of measurement. Moreover, Univec supports dimensional-aware operations for complex numbers, quaternions, octonions, and sedenions. We provide tables of the relevant functions and operators implemented. Our library was compared with several existing solutions, and the results are shown in the performance section. Finally, we present our future plans for improving the current implementation. |
format | Online Article Text |
id | pubmed-10551037 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2023 |
publisher | Nature Publishing Group UK |
record_format | MEDLINE/PubMed |
spelling | pubmed-105510372023-10-06 A new advance on dimensional-aware scalar, vector and matrix operations in C++ Stan, Eduard George Ciubotaru, Dan Andrei Renda, Michele Alexa, Călin Sci Rep Article We review the dimensional check problem of the high-level programming languages, discuss the existing solutions, and come up with a new solution suited for scientific and engineering computations. Then, we introduce Univec, our C++ library designed to make scalar, vector, and matrix operations using units of measurement. Moreover, Univec supports dimensional-aware operations for complex numbers, quaternions, octonions, and sedenions. We provide tables of the relevant functions and operators implemented. Our library was compared with several existing solutions, and the results are shown in the performance section. Finally, we present our future plans for improving the current implementation. Nature Publishing Group UK 2023-10-04 /pmc/articles/PMC10551037/ /pubmed/37794159 http://dx.doi.org/10.1038/s41598-023-43683-w Text en © The Author(s) 2023 https://creativecommons.org/licenses/by/4.0/Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/ (https://creativecommons.org/licenses/by/4.0/) . |
spellingShingle | Article Stan, Eduard George Ciubotaru, Dan Andrei Renda, Michele Alexa, Călin A new advance on dimensional-aware scalar, vector and matrix operations in C++ |
title | A new advance on dimensional-aware scalar, vector and matrix operations in C++ |
title_full | A new advance on dimensional-aware scalar, vector and matrix operations in C++ |
title_fullStr | A new advance on dimensional-aware scalar, vector and matrix operations in C++ |
title_full_unstemmed | A new advance on dimensional-aware scalar, vector and matrix operations in C++ |
title_short | A new advance on dimensional-aware scalar, vector and matrix operations in C++ |
title_sort | new advance on dimensional-aware scalar, vector and matrix operations in c++ |
topic | Article |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10551037/ https://www.ncbi.nlm.nih.gov/pubmed/37794159 http://dx.doi.org/10.1038/s41598-023-43683-w |
work_keys_str_mv | AT staneduardgeorge anewadvanceondimensionalawarescalarvectorandmatrixoperationsinc AT ciubotarudanandrei anewadvanceondimensionalawarescalarvectorandmatrixoperationsinc AT rendamichele anewadvanceondimensionalawarescalarvectorandmatrixoperationsinc AT alexacalin anewadvanceondimensionalawarescalarvectorandmatrixoperationsinc AT staneduardgeorge newadvanceondimensionalawarescalarvectorandmatrixoperationsinc AT ciubotarudanandrei newadvanceondimensionalawarescalarvectorandmatrixoperationsinc AT rendamichele newadvanceondimensionalawarescalarvectorandmatrixoperationsinc AT alexacalin newadvanceondimensionalawarescalarvectorandmatrixoperationsinc |