Utopia - a performance-portable C++ library for non-linear algebra

Package name
utopia
Group
Group KRAUSE
Repository
https://bitbucket.org/zulianp/utopia
Licence
The software is realized with NO WARRANTY and it is licenzed under BSD 3-Clause license (https://opensource.org/licenses/BSD-3-Clause)
Description

Utopia is a C++ embedded domain specific language designed for parallel non-linear solution strategies. Utopia combines advantages of high-level programming interfaces with the advantages of scripting languages. On the one hand, it allows using high-level abstractions while providing access to the native low-level data-structures. On the other hand, it facilitates expressing complex numerical procedures by means of few lines of code. This is achieved by separating the model from the computation, thus allowing us to keep the implementation details hidden from the code of applications such as non-linear solution algorithms and finite element assembly. This separation is realized by using C++ meta-programming and particular evaluation strategies which allow mapping an abstract representation of the computation to the actual code computing the result.

Contributors

Zulian Patrick; ICS;

Kapanicakova Alena; ICS;

Nestola Maria Giuseppina Chiara; ICS;

Krause Rolf; ICS;

Back to projects

cardio-centro-ticnic-logo

logo cscs

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Read more