Integration toolbox.
Diffusion expolit (master)
Recent Commits
Recent Commits
Commit | Author | Details | Committed | ||||
---|---|---|---|---|---|---|---|
5f68da4ee972 | frerot | detecting compiler from environment | Mar 2 2021 | ||||
a31a8ecdb3cd | frerot | updated copyright year | Feb 17 2021 | ||||
0cadc786764d | frerot | updated copyright years | May 5 2020 | ||||
9626661908d6 | frerot | removed Real as hardcoded type in main include | Jul 24 2019 | ||||
50c9ad3fc44c | frerot | compiling with clang | Feb 20 2019 | ||||
8e9487524e88 | frerot | made compatible with g++ 6 and c++14 | Jan 11 2019 | ||||
68316bd8d613 | frerot | removed warnings | Dec 20 2018 | ||||
c840265d2b99 | frerot | added benchmark for substitution integral | Dec 19 2018 | ||||
494e0422c6e3 | frerot | added some ignores | Dec 19 2018 | ||||
4093d6b1e050 | frerot | fixed integration with litterals | Dec 19 2018 | ||||
bcc1c649b320 | frerot | simpler substitution | Dec 18 2018 | ||||
67f3e97c607f | frerot | implemented differentiation of litterals | Dec 18 2018 | ||||
d590be3b61b1 | frerot | added litteral type for substitution | Dec 18 2018 | ||||
563e78bff9ec | frerot | added simple benchmark of integral evaluation | Dec 18 2018 | ||||
b8f48ca48ddd | frerot | added downcast to expression | Dec 17 2018 |
README.md
README.md
ExPolIt - Exponential/Polynomial Integration
This small header library is meant to integrate functions of the form exp(qx)*p(x) where p is a polynomial of any order. The code is designed so that the construction of the expression resulting from the integral is done at compile-time. There are however two limitations:
- if you use a coefficient type for the polynomial that cannot serve as a constant expression (constexpr);
- if the resulting expression contains an exponential, it cannot be numerically evaluated at compile time. However the integral expression is still built at compile time (provided the coefficient type can serve as constexpr).
It's a header only library, so just put the include directory in your include path and make sure your compiler is C++17 compliant. You can compile tests in the tests directory with SCons and GoogleTest.
License
This program is licensed under the GNU General Public License v3. A copy of the license is provided with the code.
c4science · Help