|
Nestedsums library
|
Bsums arise from Hoelder convolutions. More...
#include <Bsum.h>
Public Member Functions | |
| Bsum (const GiNaC::ex &nc, const GiNaC::ex &llc) | |
| void | archive (GiNaC::archive_node &node) const override |
| void | read_archive (const GiNaC::archive_node &node, GiNaC::lst &sym_lst) override |
| unsigned | return_type (void) const override |
| void | print (const GiNaC::print_context &c, unsigned level=0) const override |
| unsigned | precedence (void) const override |
| GiNaC::ex | eval () const override |
| GiNaC::ex | subs (const GiNaC::exmap &m, unsigned options=0) const override |
| virtual GiNaC::ex | convert_to_Ssum_exvector (const GiNaC::exvector &Z1) const |
| virtual GiNaC::ex | expand_members (int level=0) const |
| GiNaC::ex | get_index (void) const |
| GiNaC::ex | get_letter_list (void) const |
| unsigned | get_depth (void) const |
Protected Member Functions | |
| GiNaC::ex | eval_ncmul (const GiNaC::exvector &v) const override |
| GiNaC::ex | derivative (const GiNaC::symbol &s) const override |
| unsigned | calchash (void) const override |
Protected Attributes | |
| GiNaC::ex | n |
| GiNaC::ex | letter_list |
Friends | |
| GiNaC::ex | convert_Bsum_to_Ssum (const GiNaC::ex &C) |
| GiNaC::ex | convert_Bsum_to_Zsum (const GiNaC::ex &C) |
Bsums arise from Hoelder convolutions.
A Bsum is defined by
![\[
\sum\limits_{i_1=n+1}^N
\sum\limits_{i_2=i_1+1}^N ...
\sum\limits_{i_k=i_{k-1}+1}^N
\frac{x_1^{i_1}}{i_1^{m_1}}
\frac{x_2^{i_2}}{i_2^{m_2}} ...
\frac{x_k^{i_k}}{i_k^{m_k}}
\]](form_24.png)
This is equivalent to
![\[
\left( x_k^+ \right)^{m_k} \left( x_{k-1}^+ \right)^{m_{k-1}} ...
\left( x_1^+ \right)^{m_1}
\frac{x_k}{1-x_k} \frac{x_{k-1}x_k}{1-x_{k-1}x_k} ...
\frac{x_1 ... x_k}{1-x_1 ... x_k}
\left( x_1 ... x_k \right)^n
\]](form_25.png)
up to terms of the form
![\[
\left( x^+ \right)^m \frac{x}{1-x} x^N = \sum\limits_{i=N+1}^\infty \frac{x^i}{i^m}
\]](form_26.png)
|
virtual |
The basic object is
![\[
\left( \sum\limits_{j_1=1}^{n'} \sum\limits_{j_2=1}^{j_1} ... \sum\limits_{n=1}^{j_{l-1}}
\frac{y_1^{j_1}}{j_1^{g_1}} ... \frac{y_l^{n}}{n^{g_l}} \right)
\sum\limits_{i_1=n+1}^{N} ... \sum\limits_{i_k = i_{k-1}+1}^{N}
\frac{x_1^{i_1}}{i_1^{m_1}} ... \frac{x_k^{i_k}}{i_k^{m_k}}
\]](form_19.png)
We use
![\[
\sum\limits_{i_1=n+1}^{N} ... \sum\limits_{i_k = i_{k-1}+1}^{N}
\frac{x_1^{i_1}}{i_1^{m_1}} ... \frac{x_k^{i_k}}{i_k^{m_k}}
\]](form_20.png)
![\[
= (-1)^k S(n;m_1,...m_k;x_1,...,x_k) - (-1)^k S(N;m_1,...m_k;x_1,...,x_k)
\]](form_21.png)
![\[
+ (-1)^k S(N;m_2,...m_k;x_2,...,x_k)
\sum\limits_{i_1=n+1}^{N} \frac{x_1^{i_1}}{i_1^{m_1}}
...
\]](form_22.png)
![\[
+ (-1)^k S(N;m_k;x_k)
\sum\limits_{i_1=n+1}^{N} ... \sum\limits_{i_{k-1} = i_{k-2}+1}^{N}
\frac{x_1^{i_1}}{i_1^{m_1}} ... \frac{x_{k-1}^{i_{k-1}}}{i_{k-1}^{m_{k-1}}}
\]](form_23.png)
|
override |
No automatic simplifications
|
overrideprotected |
No automatic simplifications
|
inline |
Returns the depth.
|
inline |
Returns the upper summation limit.
|
inline |
Returns the letter_list.