From 6ab5752942880f693936a2f3d28a1a963a426850 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Tue, 19 Sep 2023 15:02:52 +0300 Subject: [PATCH 01/18] Energy-preserving non linear conditions --- RK-coeff-opt/nonlinear_constraints.m | 37 ++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/RK-coeff-opt/nonlinear_constraints.m b/RK-coeff-opt/nonlinear_constraints.m index 249a191..640e9d3 100644 --- a/RK-coeff-opt/nonlinear_constraints.m +++ b/RK-coeff-opt/nonlinear_constraints.m @@ -120,3 +120,40 @@ res = polyval(poly_coef, constrain_emb_stability); con = [con, res .* conj(res) - 1]; end + +% Energy Preserving conditions +% Choose pseudo-energy-preserving q (up to 6) +q=6; +if q>=1 + coneq(end+1) = sum(b)-1; +end +if q>=2 + coneq(end+1) = c'*b-1/2; +end +if q >= 3 + coneq(end+1) = c'.^2*b-1/3; +end +if q >= 4 + coneq(end+1) = b'*A^2*c-b'*A*c+1/8; + coneq(end+1) = c'.^3*b-1/4; + coneq(end+1) = ((b'.*c')*A*c)-(b'*A*c.^2)/2-1/12; +end +if q >= 5 + coneq(end+1) = (b'*A^2*c.^2)/2 + (b.*c)'*A^2*c-b'*A^2*c-(b'*A*c.^2)/2 + (b'*A*c)/2 - 1/24; + coneq(end+1) = c'.^4*b-1/5; + coneq(end+1) = 2*(b'*A*diag(c)*A*c)-(b'*(A*c).^2) - (b'*A^2*c)-(b'*A*c.^2)+(b'*A*c)-1/24; + coneq(end+1) = (b.*c.^2)'*A*c-(b'*A*c.^3)/3 - 1/12; +end +if q >= 6 + coneq(end+1) = -(b'*A*c)^2 + (b'*A^2*c)- 2 *(b'*A^3*c)+ 2* (b'*A^4*c); + coneq(end+1) = 6* (3* (b'*A*c)+ ((b'.*c')*A*c)+ 3* ( (b'*A^2*c.^2)+ 4* (b'*diag(c)*A^3*c))) - 2 - 3* (b'*A*c.^2)- 24* (b'*A^2*c)- 36* ((b.*c)'*A^2*c)- 36* (b'*A^3*c.^2); + coneq(end+1) = 1 - 12* (b'*A*c)+ 24* ((b'.*c')*A*c)- 36* ((b.*c.^2)'*A*c)+ 24* (b'*A*c.^2)- 12* (b'*A*c.^3)+ 24* (b'*A^2*c)- 72* ((b.*c)'*A^2*c)+ 72* (b'*diag(c).^2*A^2*c)- 36* (b'*A^2*c.^2)+ 24* (b'*A^2*c.^3); + coneq(end+1) = 12 *(2* ((b'.*c')*A*c)+ 6* ((b.*c.^2)'*A*c)+ 6* (b'*(A*c).^2)+ 5* (b'*A*c.^2)+ 2* (b'*A^2*c)+ 12* b'*A*diag(c).^2*A*c) - 5 - 24* (b'*A*c)- 144* (b'*diag(c)*(A*c).^2)- 72* (b'*A*c.^3)- 144* (b'*A*diag(c)*A*c); + coneq(end+1) = 1 + 60* ((b'.*c')*A*c)+ 120* (b'*diag(c).^3*A*c)+ 60* (b'*A*c.^3)- 30* (6* ((b.*c.^2)'*A*c)+ (b'*A*c.^2)+ (b'*A*c.^4)); + coneq(end+1) = 1 + 12* ((b'.*c')*A*c)+ 36* (b'*diag(c).^2*A*c.^2)+ 12* (b'*A*c.^3)-6* (6* ((b.*c.^2)'*A*c)+ (b'*A*c.^2)+ 4* (b'*diag(c)*A*c.^3)); + coneq(end+1) = -1 + 6 * (b'*A*c)+ 6* ((b'.*c')*A*c)- 3* (b'*A*c.^2)+ 12* (b'*A^2*c)- 36* ((b.*c)'*A^2*c)- 18* (b'*A^2*c.^2)+ 36* (b'*diag(c)*A^2*c.^2); + coneq(end+1) = -(5/144) - (b'*A*c)/6 + (2* ((b'.*c')*A*c))/3 - (b'*(A*c).^2)/2 + (b'*A*c.^2)/6 + (b'*A^2*c)/6 - (b'*A*diag(c)*A*c)+ (b'*A*(A*c).^2); + coneq(end+1) = c'.^5*b-1/6; + coneq(end+1) = 8 *( (b'*A*c)+ 3* ( (b'*(A*c).^2)+ (b'*A^2*c.^2)+ 2* (b'*A*diag(c)*A^2*c))) - 1 - 12* (b'*A*c.^2)- 8 * (b'*A^2*c)- 48* (b'*((A^2*c).*(A*c)))-48* (b'*A^2*diag(c)*A*c); + coneq(end+1) = 2* (6* ((b'.*c')*A*c)+ 12* (b'*(A*c).^2)+ 9* (b'*A*c.^2)+ 8* (b'*A^2*c)+ 24* (b'*diag(c)*A*diag(c)*A*c)+ 12* (b'*A*diag(c)*A*c.^2)) -1 - 4* (b'*A*c)- 24* ((b.*c)'*A*c.^2)- 24* (b'*((A*c.^2).*(A*c)))- 24* ((b.*c)'*A^2*c)- 48* (b'*A*diag(c)*A*c)- 12* (b'*A^2*c.^2); +end \ No newline at end of file From fbd9bdde44f563ce5a2a123f4a7e95ce02f448ee Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Sun, 24 Sep 2023 14:03:14 -0600 Subject: [PATCH 02/18] Nonlinear constraints --- RK-coeff-opt/nonlinear_constraints.m | 1 + 1 file changed, 1 insertion(+) diff --git a/RK-coeff-opt/nonlinear_constraints.m b/RK-coeff-opt/nonlinear_constraints.m index 640e9d3..3104af5 100644 --- a/RK-coeff-opt/nonlinear_constraints.m +++ b/RK-coeff-opt/nonlinear_constraints.m @@ -144,6 +144,7 @@ coneq(end+1) = 2*(b'*A*diag(c)*A*c)-(b'*(A*c).^2) - (b'*A^2*c)-(b'*A*c.^2)+(b'*A*c)-1/24; coneq(end+1) = (b.*c.^2)'*A*c-(b'*A*c.^3)/3 - 1/12; end + if q >= 6 coneq(end+1) = -(b'*A*c)^2 + (b'*A^2*c)- 2 *(b'*A^3*c)+ 2* (b'*A^4*c); coneq(end+1) = 6* (3* (b'*A*c)+ ((b'.*c')*A*c)+ 3* ( (b'*A^2*c.^2)+ 4* (b'*diag(c)*A^3*c))) - 2 - 3* (b'*A*c.^2)- 24* (b'*A^2*c)- 36* ((b.*c)'*A^2*c)- 36* (b'*A^3*c.^2); From c1fe8662ac3d29773c605697b500ea78d66ca243 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Mon, 20 Nov 2023 20:35:05 -0600 Subject: [PATCH 03/18] Conditions for PEP 7 --- RK-coeff-opt/nonlinear_constraints.m | 35 ++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/RK-coeff-opt/nonlinear_constraints.m b/RK-coeff-opt/nonlinear_constraints.m index 3104af5..8349dff 100644 --- a/RK-coeff-opt/nonlinear_constraints.m +++ b/RK-coeff-opt/nonlinear_constraints.m @@ -157,4 +157,39 @@ coneq(end+1) = c'.^5*b-1/6; coneq(end+1) = 8 *( (b'*A*c)+ 3* ( (b'*(A*c).^2)+ (b'*A^2*c.^2)+ 2* (b'*A*diag(c)*A^2*c))) - 1 - 12* (b'*A*c.^2)- 8 * (b'*A^2*c)- 48* (b'*((A^2*c).*(A*c)))-48* (b'*A^2*diag(c)*A*c); coneq(end+1) = 2* (6* ((b'.*c')*A*c)+ 12* (b'*(A*c).^2)+ 9* (b'*A*c.^2)+ 8* (b'*A^2*c)+ 24* (b'*diag(c)*A*diag(c)*A*c)+ 12* (b'*A*diag(c)*A*c.^2)) -1 - 4* (b'*A*c)- 24* ((b.*c)'*A*c.^2)- 24* (b'*((A*c.^2).*(A*c)))- 24* ((b.*c)'*A^2*c)- 48* (b'*A*diag(c)*A*c)- 12* (b'*A^2*c.^2); +end +if q >= 6 + coneq(end+1) = -(b'*A*c)^2 + (b'*A^2*c)- 2 *(b'*A^3*c)+ 2* (b'*A^4*c); + coneq(end+1) = 6* (3* (b'*A*c)+ ((b'.*c')*A*c)+ 3* ( (b'*A^2*c.^2)+ 4* (b'*diag(c)*A^3*c))) - 2 - 3* (b'*A*c.^2)- 24* (b'*A^2*c)- 36* ((b.*c)'*A^2*c)- 36* (b'*A^3*c.^2); + coneq(end+1) = 1 - 12* (b'*A*c)+ 24* ((b'.*c')*A*c)- 36* ((b.*c.^2)'*A*c)+ 24* (b'*A*c.^2)- 12* (b'*A*c.^3)+ 24* (b'*A^2*c)- 72* ((b.*c)'*A^2*c)+ 72* (b'*diag(c).^2*A^2*c)- 36* (b'*A^2*c.^2)+ 24* (b'*A^2*c.^3); + coneq(end+1) = 12 *(2* ((b'.*c')*A*c)+ 6* ((b.*c.^2)'*A*c)+ 6* (b'*(A*c).^2)+ 5* (b'*A*c.^2)+ 2* (b'*A^2*c)+ 12* b'*A*diag(c).^2*A*c) - 5 - 24* (b'*A*c)- 144* (b'*diag(c)*(A*c).^2)- 72* (b'*A*c.^3)- 144* (b'*A*diag(c)*A*c); + coneq(end+1) = 1 + 60* ((b'.*c')*A*c)+ 120* (b'*diag(c).^3*A*c)+ 60* (b'*A*c.^3)- 30* (6* ((b.*c.^2)'*A*c)+ (b'*A*c.^2)+ (b'*A*c.^4)); + coneq(end+1) = 1 + 12* ((b'.*c')*A*c)+ 36* (b'*diag(c).^2*A*c.^2)+ 12* (b'*A*c.^3)-6* (6* ((b.*c.^2)'*A*c)+ (b'*A*c.^2)+ 4* (b'*diag(c)*A*c.^3)); + coneq(end+1) = -1 + 6 * (b'*A*c)+ 6* ((b'.*c')*A*c)- 3* (b'*A*c.^2)+ 12* (b'*A^2*c)- 36* ((b.*c)'*A^2*c)- 18* (b'*A^2*c.^2)+ 36* (b'*diag(c)*A^2*c.^2); + coneq(end+1) = -(5/144) - (b'*A*c)/6 + (2* ((b'.*c')*A*c))/3 - (b'*(A*c).^2)/2 + (b'*A*c.^2)/6 + (b'*A^2*c)/6 - (b'*A*diag(c)*A*c)+ (b'*A*(A*c).^2); + coneq(end+1) = c'.^5*b-1/6; + coneq(end+1) = 8 *( (b'*A*c)+ 3* ( (b'*(A*c).^2)+ (b'*A^2*c.^2)+ 2* (b'*A*diag(c)*A^2*c))) - 1 - 12* (b'*A*c.^2)- 8 * (b'*A^2*c)- 48* (b'*((A^2*c).*(A*c)))-48* (b'*A^2*diag(c)*A*c); + coneq(end+1) = 2* (6* ((b'.*c')*A*c)+ 12* (b'*(A*c).^2)+ 9* (b'*A*c.^2)+ 8* (b'*A^2*c)+ 24* (b'*diag(c)*A*diag(c)*A*c)+ 12* (b'*A*diag(c)*A*c.^2)) -1 - 4* (b'*A*c)- 24* ((b.*c)'*A*c.^2)- 24* (b'*((A*c.^2).*(A*c)))- 24* ((b.*c)'*A^2*c)- 48* (b'*A*diag(c)*A*c)- 12* (b'*A^2*c.^2); +end +if q >= 7 + coneq(end+1) = -(b'*A^4*c) + (b'*((A*(A*(A*(A*c)))).*c)) + (b'*((A*(A*(A*(A*c.^2))))))/2 + (b'*A^3*c)/2 - (b'*diag(c)*A^3*c)/2 - (b'*A^3*c.^2)/4 - (b'*A^2*c)/12 + ((b.*c)'*A^2*c)/12 + (b'*A^2*c.^2)/24 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - ((b'*A*c) - 1/6)*(-(b'*A*c)/2 + c'.^3*b/2 + 1/24)/2; + coneq(end+1) = -(b'*A^4*c)/2 + (b'*((A*(A*c.*(A*(A*c)))))) + (b'*A^3*c)/2 - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*c)).*(A*(A*c))))/2 - (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/4 + ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c.^2)/3 + (b'*A^2*c.^2)/12 + (b'*(A*c).^2)/12 + (b'*A*c)/12 - ((b'.*c')*A*c)/12 - c'.^3*b/12 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - 5*((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6)/2 + 3*((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6)/2 - 2*((b'*A*c)/2 - 1/12)*((b'*A^2*c) - (b'*A*c) + 1/8); + coneq(end+1) = (b'*diag(c)*A^3*c)/2 - (b'*((A*(A*(A*c))).*c.^2))/2 - (b'*A^3*c.^2)/4 + (b'*((A*(A*(A*c.^3)))))/6 - (b'*A^2*c)/12 - ((b.*c)'*A^2*c)/6 + (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/6 - (b'*A^2*c.^3)/12 + (b'*A*c)/24 - ((b.*c.^2)'*A*c)/24 - c'.^3*b/24 + (b'*A*c.^3)/72 + ((b'*A*c)/2 - 1/12)*(c'.^3*b - 1/4)/2 - ((b'*A*c) - 1/6)*(c'.^3*b/2 - 1/8)/6; + coneq(end+1) = -((b.*c.^2)'*A*c)/12 + (b'*diag(c).^3*A*c)/12 + (b'*diag(c).^2*A*c.^2)/8 - (b'*((A*c.^2).*c.^3))/12 + (b'*A*c.^3)/36 - (b'*diag(c)*A*c.^3)/12 - (b'*A*c.^4)/48 + (b'*((A*c.^4).*c))/24 + c'.^3*b/72 - 5*(c'.^4*b)/288; + coneq(end+1) = (b'*((A*(A*(A*c).*(A*c)))))/2 - (b'*((A*(A*c).*(A*(A*c))))) + (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*A*(A*c).^2)/4 + (b'*((A^2*c).*(A*c)))/2 - ((b.*c)'*A^2*c)/3 + (b'*A*diag(c)*A*c.^2)/12 + (b'*A^2*c.^2)/12 - 7*(b'*(A*c).^2)/24 + (b'*A*c)/24 + ((b'.*c')*A*c)/6 - c'.^3*b/12 + ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A^2*c) - (b'*A*c) + 1/8) - 1/144; + coneq(end+1) = (b'*A^3*c)/6 - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*c.*(A*c.*(A*c))))) - (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/6 + ((b.*c)'*A^2*c)/2 + (b'*((A*c.*(A*c)).*(A*c))) + 2*(b'*A*diag(c)*A*c.^2)/3 - (b'*diag(c)*A*diag(c)*A*c) + (b'*A^2*c.^2)/6 - (b'*A*diag(c)*A*c.^2)/2 + (b'*(A*c).^2)/4 - (b'*A*c)/180 - ((b'.*c')*A*c)/4 - (b'*((A*c.^2).*(A*c)))/2 - c'.^3*b/6 + ((b.*c)'*A*c.^2)/2 - 2*((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - 2*((b'*A*c) - 1/6)*(-(b'*A*c)/4 + ((b'.*c')*A*c)/2 - 1/48) + 149/15120; + coneq(end+1) = ((b.*c)'*A^2*c)/12 - (b'*diag(c).^2*A^2*c)/4 + (b'*((A*(A*c)).*c.^3))/6 + (b'*A^2*c.^2)/24 - (b'*A^2*c.^3)/12 + (b'*((A*(A*c.^4))))/24 + ((b.*c.^2)'*A*c)/12 - (b'*diag(c).^3*A*c)/12 - c'.^3*b/24 + (b'*A*c.^3)/18 - (b'*A*c.^4)/48 - c'.^3*b/72 + 5*(c'.^4*b)/288 - ((b'*A*c)/2 - 1/12)*(c'.^3*b - 1/4)/6; + coneq(end+1) = ((b.*c)'*A^2*c)/4 - (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/8 - (b'*diag(c)*A^2*c.^2)/2 + (b'*((A*(A*c.^2)).*c.^2))/4 - (b'*A^2*c.^3)/12 + (b'*((A*(A*(A*c.^2))).*c))/6 - (b'*A*c)/24 + ((b.*c.^2)'*A*c)/24 + c'.^3*b/24 - (b'*A*c.^3)/72; + coneq(end+1) = -3*(b'*A*(A*c).^2)/4 + (b'*((A*(A*c).*(A*c)).*c))/2 + ((b.*c)'*A^2*c)/12 + 5*(b'*A*diag(c)*A*c.^2)/12 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*c.^2.*(A*(A*c)))))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + 7*(b'*(A*c).^2)/24 - (b'*A*c)/24 - ((b'.*c')*A*c)/6 - (b'*((A*c.^2).*(A*c)))/4 - c'.^3*b/24 + ((b.*c)'*A*c.^2)/4 + 1/144; + coneq(end+1) = ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c.^2)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*A^2*c.^2)/12 - (b'*diag(c)*A^2*c.^2)/4 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*c.*(A*c.^2)).*c))/2 - (b'*(A*c).^2)/12 - (b'*A*c)/12 + ((b'.*c')*A*c)/12 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c.^2)))/8 + c'.^3*b/24; + coneq(end+1) = -(b'*A*(A*c).^2)/4 + (b'*((A*c.*(A*c).*(A*c))))/2 + (b'*A*diag(c)*A*c.^2)/4 - (b'*A*diag(c).^2*A*c)/2 - (b'*((A*c).*(A*c).*(A*c)))/6 + (b'*(A*c).^2)/8 - ((b'.*c')*A*c)/4 + ((b.*c.^2)'*A*c)/4 + (b'*A*c.^3)/12 - c'.^3*b/12 + 1/48; + coneq(end+1) = (b'*A*diag(c)*A*c.^2)/12 - (b'*A*diag(c).^2*A*c)/4 + (b'*((A*c.^3.*(A*c))))/6 - (b'*(A*c).^2)/24 + (b'*diag(c)*(A*c).^2)/4 - (b'*((A*c).*(A*c).*c.^2))/4 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/24 + (b'*diag(c).^3*A*c)/6 + 7*(b'*A*c.^3)/72 - (b'*A*c.^4)/12 - 7*c'.^3*b/72 + (c'.^4*b)/72 + 1/48; + coneq(end+1) = -((b.*c.^2)'*A*c)/24 + (b'*diag(c).^3*A*c)/12 - (b'*((A*c).*c.^4))/24 + (b'*A*c.^3)/72 - (b'*A*c.^4)/48 + (b'*((A*c.^5)))/120 - c'.^3*b/72 - 5*(c'.^4*b)/288 + (c'.^5*b)/60 + 1/240; + coneq(end+1) = -(b'*A^4*c) + (b'*((A*c.*(A*(A*(A*c)))))) + (b'*((A*(A*(A*c.*(A*c)))))) - (b'*((A*(A*(A*c))).*(A*c))) + (b'*A^3*c) - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 - (b'*A^3*c.^2)/2 + (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/2 + ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c.^2)/6 + (b'*A^2*c.^2)/3 - (b'*(A*c).^2)/12 + (b'*A*c)/8 - ((b'.*c')*A*c)/12 - c'.^3*b/12 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + c'.^3*b + 1/12) + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - ((b'*A*c) - 1/6)*(-(b'*A*c)/4 + ((b'.*c')*A*c)/2 - 1/48); + coneq(end+1) = (b'*diag(c)*A^3*c)/2 + (b'*A*diag(c)*A^2*c)/2 - (b'*((A*c.*(A*(A*c))).*c)) - (b'*A^2*diag(c)*A*c)/2 - (b'*A^3*c.^2)/4 + (b'*((A*(A*c.*(A*c.^2)))))/2 - (b'*((A^2*c).*(A*c)))/2 + (b'*((A*(A*c)).*(A*c.^2)))/2 - (b'*A^2*c)/4 + (b'*A*diag(c)*A*c.^2)/6 + (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*A^2*c.^2)/4 - (b'*A*diag(c)*A*c.^2)/4 + (b'*(A*c).^2)/6 + (b'*A*c)/6 - ((b'.*c')*A*c)/6 - (b'*((A*c.^2).*(A*c)))/4 - c'.^3*b/8 - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + c'.^3*b + 1/12)/2 + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24); + coneq(end+1) = -(b'*diag(c)*A^3*c)/2 + (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*c.*(A*c))).*c)) + (b'*A^3*c.^2)/4 - (b'*((A*c.*(A*(A*c.^2)))))/2 - (b'*((A^2*c).*(A*c)))/2 + (b'*A^2*c)/4 + ((b.*c)'*A^2*c)/12 - (b'*A*diag(c)*A*c.^2)/6 + (b'*((A*(A*c.^2)).*(A*c)))/2 + (b'*A^2*c.^2)/24 - (b'*diag(c)*A^2*c.^2)/2 + (b'*(A*c).^2)/12 - (b'*A*c)/8 + ((b'.*c')*A*c)/12 + c'.^3*b/12; + coneq(end+1) = (b'*A*diag(c)*A^2*c)/2 - (b'*((A*(A*c).*(A*c.^2))))/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*c.^2.*(A*c)))))/2 - (b'*((A^2*c).*(A*c)))/2 + (b'*((A*(A*c)).*(A*c).*c)) - ((b.*c)'*A^2*c)/12 - (b'*diag(c).^2*A^2*c)/4 + (b'*A*diag(c)*A*c.^2)/6 + 5*(b'*A^2*c.^2)/24 - (b'*A^2*c.^3)/4 + (b'*(A*c).^2)/6 - (b'*diag(c)*(A*c).^2)/2 + (b'*A*c)/24 + ((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/8 - 5*c'.^3*b/24 + (b'*A*c.^3)/8 + ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + c'.^3*b + 1/12)/2 - ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - 1/144; + coneq(end+1) = ((b.*c)'*A^2*c)/6 - (b'*diag(c).^2*A^2*c)/4 + (b'*A*diag(c)*A*c.^2)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*c.*(A*c)).*c.^2))/2 + (b'*A^2*c.^2)/12 - (b'*A*diag(c)*A*c.^2)/4 - (b'*A^2*c.^3)/12 + (b'*((A*c.*(A*c.^3))))/6 - (b'*(A*c).^2)/12 - ((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - c'.^3*b/12 + ((b.*c)'*A*c.^2)/4 - (b'*diag(c).^2*A*c.^2)/4 - (b'*((A*c.^3).*(A*c)))/6 + (b'*A*c.^3)/24; + coneq(end+1) = ((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c.^2)/3 - (b'*diag(c)*A*diag(c)*A*c)/2 - (b'*A*diag(c).^2*A*c)/2 + (b'*((A*c.^2.*(A*c)).*c))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*c.^2.*(A*c.^2))))/4 - (b'*(A*c).^2)/6 + (b'*diag(c)*(A*c).^2)/2 - (b'*A*c)/24 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c).*c))/2 - c'.^3*b/24 + ((b.*c)'*A*c.^2)/4 + (b'*diag(c).^2*A*c.^2)/8 + (b'*A*c.^3)/8 - (b'*diag(c)*A*c.^3)/4 + 1/144; + coneq(end+1) = (c'.^4*b)/288 - (c'.^5*b)/240 + b'*(c.^6)/720 - 1/5040; end \ No newline at end of file From 53a9a97a9d7f85973bcbddcb3bac81a651f450dc Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Wed, 22 Nov 2023 13:15:11 -0600 Subject: [PATCH 04/18] Eliminate duplication --- RK-coeff-opt/nonlinear_constraints.m | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/RK-coeff-opt/nonlinear_constraints.m b/RK-coeff-opt/nonlinear_constraints.m index 8349dff..acc2389 100644 --- a/RK-coeff-opt/nonlinear_constraints.m +++ b/RK-coeff-opt/nonlinear_constraints.m @@ -144,20 +144,6 @@ coneq(end+1) = 2*(b'*A*diag(c)*A*c)-(b'*(A*c).^2) - (b'*A^2*c)-(b'*A*c.^2)+(b'*A*c)-1/24; coneq(end+1) = (b.*c.^2)'*A*c-(b'*A*c.^3)/3 - 1/12; end - -if q >= 6 - coneq(end+1) = -(b'*A*c)^2 + (b'*A^2*c)- 2 *(b'*A^3*c)+ 2* (b'*A^4*c); - coneq(end+1) = 6* (3* (b'*A*c)+ ((b'.*c')*A*c)+ 3* ( (b'*A^2*c.^2)+ 4* (b'*diag(c)*A^3*c))) - 2 - 3* (b'*A*c.^2)- 24* (b'*A^2*c)- 36* ((b.*c)'*A^2*c)- 36* (b'*A^3*c.^2); - coneq(end+1) = 1 - 12* (b'*A*c)+ 24* ((b'.*c')*A*c)- 36* ((b.*c.^2)'*A*c)+ 24* (b'*A*c.^2)- 12* (b'*A*c.^3)+ 24* (b'*A^2*c)- 72* ((b.*c)'*A^2*c)+ 72* (b'*diag(c).^2*A^2*c)- 36* (b'*A^2*c.^2)+ 24* (b'*A^2*c.^3); - coneq(end+1) = 12 *(2* ((b'.*c')*A*c)+ 6* ((b.*c.^2)'*A*c)+ 6* (b'*(A*c).^2)+ 5* (b'*A*c.^2)+ 2* (b'*A^2*c)+ 12* b'*A*diag(c).^2*A*c) - 5 - 24* (b'*A*c)- 144* (b'*diag(c)*(A*c).^2)- 72* (b'*A*c.^3)- 144* (b'*A*diag(c)*A*c); - coneq(end+1) = 1 + 60* ((b'.*c')*A*c)+ 120* (b'*diag(c).^3*A*c)+ 60* (b'*A*c.^3)- 30* (6* ((b.*c.^2)'*A*c)+ (b'*A*c.^2)+ (b'*A*c.^4)); - coneq(end+1) = 1 + 12* ((b'.*c')*A*c)+ 36* (b'*diag(c).^2*A*c.^2)+ 12* (b'*A*c.^3)-6* (6* ((b.*c.^2)'*A*c)+ (b'*A*c.^2)+ 4* (b'*diag(c)*A*c.^3)); - coneq(end+1) = -1 + 6 * (b'*A*c)+ 6* ((b'.*c')*A*c)- 3* (b'*A*c.^2)+ 12* (b'*A^2*c)- 36* ((b.*c)'*A^2*c)- 18* (b'*A^2*c.^2)+ 36* (b'*diag(c)*A^2*c.^2); - coneq(end+1) = -(5/144) - (b'*A*c)/6 + (2* ((b'.*c')*A*c))/3 - (b'*(A*c).^2)/2 + (b'*A*c.^2)/6 + (b'*A^2*c)/6 - (b'*A*diag(c)*A*c)+ (b'*A*(A*c).^2); - coneq(end+1) = c'.^5*b-1/6; - coneq(end+1) = 8 *( (b'*A*c)+ 3* ( (b'*(A*c).^2)+ (b'*A^2*c.^2)+ 2* (b'*A*diag(c)*A^2*c))) - 1 - 12* (b'*A*c.^2)- 8 * (b'*A^2*c)- 48* (b'*((A^2*c).*(A*c)))-48* (b'*A^2*diag(c)*A*c); - coneq(end+1) = 2* (6* ((b'.*c')*A*c)+ 12* (b'*(A*c).^2)+ 9* (b'*A*c.^2)+ 8* (b'*A^2*c)+ 24* (b'*diag(c)*A*diag(c)*A*c)+ 12* (b'*A*diag(c)*A*c.^2)) -1 - 4* (b'*A*c)- 24* ((b.*c)'*A*c.^2)- 24* (b'*((A*c.^2).*(A*c)))- 24* ((b.*c)'*A^2*c)- 48* (b'*A*diag(c)*A*c)- 12* (b'*A^2*c.^2); -end if q >= 6 coneq(end+1) = -(b'*A*c)^2 + (b'*A^2*c)- 2 *(b'*A^3*c)+ 2* (b'*A^4*c); coneq(end+1) = 6* (3* (b'*A*c)+ ((b'.*c')*A*c)+ 3* ( (b'*A^2*c.^2)+ 4* (b'*diag(c)*A^3*c))) - 2 - 3* (b'*A*c.^2)- 24* (b'*A^2*c)- 36* ((b.*c)'*A^2*c)- 36* (b'*A^3*c.^2); From 7a8eaa118083bc81dd3b5220f23995e44079d8d1 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Thu, 23 Nov 2023 14:58:37 -0600 Subject: [PATCH 05/18] Fix PEP 7th order --- RK-coeff-opt/nonlinear_constraints.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RK-coeff-opt/nonlinear_constraints.m b/RK-coeff-opt/nonlinear_constraints.m index acc2389..931f9e7 100644 --- a/RK-coeff-opt/nonlinear_constraints.m +++ b/RK-coeff-opt/nonlinear_constraints.m @@ -165,7 +165,7 @@ coneq(end+1) = (b'*((A*(A*(A*c).*(A*c)))))/2 - (b'*((A*(A*c).*(A*(A*c))))) + (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*A*(A*c).^2)/4 + (b'*((A^2*c).*(A*c)))/2 - ((b.*c)'*A^2*c)/3 + (b'*A*diag(c)*A*c.^2)/12 + (b'*A^2*c.^2)/12 - 7*(b'*(A*c).^2)/24 + (b'*A*c)/24 + ((b'.*c')*A*c)/6 - c'.^3*b/12 + ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A^2*c) - (b'*A*c) + 1/8) - 1/144; coneq(end+1) = (b'*A^3*c)/6 - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*c.*(A*c.*(A*c))))) - (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/6 + ((b.*c)'*A^2*c)/2 + (b'*((A*c.*(A*c)).*(A*c))) + 2*(b'*A*diag(c)*A*c.^2)/3 - (b'*diag(c)*A*diag(c)*A*c) + (b'*A^2*c.^2)/6 - (b'*A*diag(c)*A*c.^2)/2 + (b'*(A*c).^2)/4 - (b'*A*c)/180 - ((b'.*c')*A*c)/4 - (b'*((A*c.^2).*(A*c)))/2 - c'.^3*b/6 + ((b.*c)'*A*c.^2)/2 - 2*((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - 2*((b'*A*c) - 1/6)*(-(b'*A*c)/4 + ((b'.*c')*A*c)/2 - 1/48) + 149/15120; coneq(end+1) = ((b.*c)'*A^2*c)/12 - (b'*diag(c).^2*A^2*c)/4 + (b'*((A*(A*c)).*c.^3))/6 + (b'*A^2*c.^2)/24 - (b'*A^2*c.^3)/12 + (b'*((A*(A*c.^4))))/24 + ((b.*c.^2)'*A*c)/12 - (b'*diag(c).^3*A*c)/12 - c'.^3*b/24 + (b'*A*c.^3)/18 - (b'*A*c.^4)/48 - c'.^3*b/72 + 5*(c'.^4*b)/288 - ((b'*A*c)/2 - 1/12)*(c'.^3*b - 1/4)/6; - coneq(end+1) = ((b.*c)'*A^2*c)/4 - (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/8 - (b'*diag(c)*A^2*c.^2)/2 + (b'*((A*(A*c.^2)).*c.^2))/4 - (b'*A^2*c.^3)/12 + (b'*((A*(A*(A*c.^2))).*c))/6 - (b'*A*c)/24 + ((b.*c.^2)'*A*c)/24 + c'.^3*b/24 - (b'*A*c.^3)/72; + coneq(end+1) = ((b.*c)'*A^2*c)/4 - (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/8 - (b'*diag(c)*A^2*c.^2)/2 + (b'*((A*(A*c.^2)).*c.^2))/4 - (b'*A^2*c.^3)/12 + (b'*((A*(A*c.^3)).*c))/6 - (b'*A*c)/24 + ((b.*c.^2)'*A*c)/24 + c'.^3*b/24 - (b'*A*c.^3)/72; coneq(end+1) = -3*(b'*A*(A*c).^2)/4 + (b'*((A*(A*c).*(A*c)).*c))/2 + ((b.*c)'*A^2*c)/12 + 5*(b'*A*diag(c)*A*c.^2)/12 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*c.^2.*(A*(A*c)))))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + 7*(b'*(A*c).^2)/24 - (b'*A*c)/24 - ((b'.*c')*A*c)/6 - (b'*((A*c.^2).*(A*c)))/4 - c'.^3*b/24 + ((b.*c)'*A*c.^2)/4 + 1/144; coneq(end+1) = ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c.^2)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*A^2*c.^2)/12 - (b'*diag(c)*A^2*c.^2)/4 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*c.*(A*c.^2)).*c))/2 - (b'*(A*c).^2)/12 - (b'*A*c)/12 + ((b'.*c')*A*c)/12 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c.^2)))/8 + c'.^3*b/24; coneq(end+1) = -(b'*A*(A*c).^2)/4 + (b'*((A*c.*(A*c).*(A*c))))/2 + (b'*A*diag(c)*A*c.^2)/4 - (b'*A*diag(c).^2*A*c)/2 - (b'*((A*c).*(A*c).*(A*c)))/6 + (b'*(A*c).^2)/8 - ((b'.*c')*A*c)/4 + ((b.*c.^2)'*A*c)/4 + (b'*A*c.^3)/12 - c'.^3*b/12 + 1/48; From 48eebed26d5a2fae1550f944c146f54e837e2204 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Mon, 4 Dec 2023 22:35:57 -0600 Subject: [PATCH 06/18] Nonlinear constraints PEP order 7 --- RK-coeff-opt/nonlinear_constraints.m | 34 ++++++++++++++-------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/RK-coeff-opt/nonlinear_constraints.m b/RK-coeff-opt/nonlinear_constraints.m index 931f9e7..d22e8eb 100644 --- a/RK-coeff-opt/nonlinear_constraints.m +++ b/RK-coeff-opt/nonlinear_constraints.m @@ -159,23 +159,23 @@ end if q >= 7 coneq(end+1) = -(b'*A^4*c) + (b'*((A*(A*(A*(A*c)))).*c)) + (b'*((A*(A*(A*(A*c.^2))))))/2 + (b'*A^3*c)/2 - (b'*diag(c)*A^3*c)/2 - (b'*A^3*c.^2)/4 - (b'*A^2*c)/12 + ((b.*c)'*A^2*c)/12 + (b'*A^2*c.^2)/24 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - ((b'*A*c) - 1/6)*(-(b'*A*c)/2 + c'.^3*b/2 + 1/24)/2; - coneq(end+1) = -(b'*A^4*c)/2 + (b'*((A*(A*c.*(A*(A*c)))))) + (b'*A^3*c)/2 - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*c)).*(A*(A*c))))/2 - (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/4 + ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c.^2)/3 + (b'*A^2*c.^2)/12 + (b'*(A*c).^2)/12 + (b'*A*c)/12 - ((b'.*c')*A*c)/12 - c'.^3*b/12 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - 5*((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6)/2 + 3*((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6)/2 - 2*((b'*A*c)/2 - 1/12)*((b'*A^2*c) - (b'*A*c) + 1/8); - coneq(end+1) = (b'*diag(c)*A^3*c)/2 - (b'*((A*(A*(A*c))).*c.^2))/2 - (b'*A^3*c.^2)/4 + (b'*((A*(A*(A*c.^3)))))/6 - (b'*A^2*c)/12 - ((b.*c)'*A^2*c)/6 + (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/6 - (b'*A^2*c.^3)/12 + (b'*A*c)/24 - ((b.*c.^2)'*A*c)/24 - c'.^3*b/24 + (b'*A*c.^3)/72 + ((b'*A*c)/2 - 1/12)*(c'.^3*b - 1/4)/2 - ((b'*A*c) - 1/6)*(c'.^3*b/2 - 1/8)/6; + coneq(end+1) = -(b'*A^4*c)/2 + (b'*((A*(A*diag(c)*(A*(A*c)))))) + (b'*A^3*c)/2 - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*c)).*(A*(A*c))))/2 - (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/4 + ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c)/3 + (b'*A^2*c.^2)/12 + (b'*(A*c).^2)/12 + (b'*A*c)/12 - ((b'.*c')*A*c)/12 - (b'*A*c.^2)/12 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - 5*((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6)/2 + 3*((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6)/2 - 2*((b'*A*c)/2 - 1/12)*((b'*A^2*c) - (b'*A*c) + 1/8); + coneq(end+1) = (b'*diag(c)*A^3*c)/2 - (b'*((A*(A*(A*c))).*c.^2))/2 - (b'*A^3*c.^2)/4 + (b'*((A*(A*(A*c.^3)))))/6 - (b'*A^2*c)/12 - ((b.*c)'*A^2*c)/6 + (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/6 - (b'*A^2*c.^3)/12 + (b'*A*c)/24 - ((b.*c.^2)'*A*c)/24 - (b'*A*c.^2)/24 + (b'*A*c.^3)/72 + ((b'*A*c)/2 - 1/12)*((c'.^3*b) - 1/4)/2 - ((b'*A*c) - 1/6)*((c'.^3*b)/2 - 1/8)/6; coneq(end+1) = -((b.*c.^2)'*A*c)/12 + (b'*diag(c).^3*A*c)/12 + (b'*diag(c).^2*A*c.^2)/8 - (b'*((A*c.^2).*c.^3))/12 + (b'*A*c.^3)/36 - (b'*diag(c)*A*c.^3)/12 - (b'*A*c.^4)/48 + (b'*((A*c.^4).*c))/24 + c'.^3*b/72 - 5*(c'.^4*b)/288; - coneq(end+1) = (b'*((A*(A*(A*c).*(A*c)))))/2 - (b'*((A*(A*c).*(A*(A*c))))) + (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*A*(A*c).^2)/4 + (b'*((A^2*c).*(A*c)))/2 - ((b.*c)'*A^2*c)/3 + (b'*A*diag(c)*A*c.^2)/12 + (b'*A^2*c.^2)/12 - 7*(b'*(A*c).^2)/24 + (b'*A*c)/24 + ((b'.*c')*A*c)/6 - c'.^3*b/12 + ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A^2*c) - (b'*A*c) + 1/8) - 1/144; - coneq(end+1) = (b'*A^3*c)/6 - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*c.*(A*c.*(A*c))))) - (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/6 + ((b.*c)'*A^2*c)/2 + (b'*((A*c.*(A*c)).*(A*c))) + 2*(b'*A*diag(c)*A*c.^2)/3 - (b'*diag(c)*A*diag(c)*A*c) + (b'*A^2*c.^2)/6 - (b'*A*diag(c)*A*c.^2)/2 + (b'*(A*c).^2)/4 - (b'*A*c)/180 - ((b'.*c')*A*c)/4 - (b'*((A*c.^2).*(A*c)))/2 - c'.^3*b/6 + ((b.*c)'*A*c.^2)/2 - 2*((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - 2*((b'*A*c) - 1/6)*(-(b'*A*c)/4 + ((b'.*c')*A*c)/2 - 1/48) + 149/15120; - coneq(end+1) = ((b.*c)'*A^2*c)/12 - (b'*diag(c).^2*A^2*c)/4 + (b'*((A*(A*c)).*c.^3))/6 + (b'*A^2*c.^2)/24 - (b'*A^2*c.^3)/12 + (b'*((A*(A*c.^4))))/24 + ((b.*c.^2)'*A*c)/12 - (b'*diag(c).^3*A*c)/12 - c'.^3*b/24 + (b'*A*c.^3)/18 - (b'*A*c.^4)/48 - c'.^3*b/72 + 5*(c'.^4*b)/288 - ((b'*A*c)/2 - 1/12)*(c'.^3*b - 1/4)/6; - coneq(end+1) = ((b.*c)'*A^2*c)/4 - (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/8 - (b'*diag(c)*A^2*c.^2)/2 + (b'*((A*(A*c.^2)).*c.^2))/4 - (b'*A^2*c.^3)/12 + (b'*((A*(A*c.^3)).*c))/6 - (b'*A*c)/24 + ((b.*c.^2)'*A*c)/24 + c'.^3*b/24 - (b'*A*c.^3)/72; - coneq(end+1) = -3*(b'*A*(A*c).^2)/4 + (b'*((A*(A*c).*(A*c)).*c))/2 + ((b.*c)'*A^2*c)/12 + 5*(b'*A*diag(c)*A*c.^2)/12 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*c.^2.*(A*(A*c)))))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + 7*(b'*(A*c).^2)/24 - (b'*A*c)/24 - ((b'.*c')*A*c)/6 - (b'*((A*c.^2).*(A*c)))/4 - c'.^3*b/24 + ((b.*c)'*A*c.^2)/4 + 1/144; - coneq(end+1) = ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c.^2)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*A^2*c.^2)/12 - (b'*diag(c)*A^2*c.^2)/4 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*c.*(A*c.^2)).*c))/2 - (b'*(A*c).^2)/12 - (b'*A*c)/12 + ((b'.*c')*A*c)/12 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c.^2)))/8 + c'.^3*b/24; - coneq(end+1) = -(b'*A*(A*c).^2)/4 + (b'*((A*c.*(A*c).*(A*c))))/2 + (b'*A*diag(c)*A*c.^2)/4 - (b'*A*diag(c).^2*A*c)/2 - (b'*((A*c).*(A*c).*(A*c)))/6 + (b'*(A*c).^2)/8 - ((b'.*c')*A*c)/4 + ((b.*c.^2)'*A*c)/4 + (b'*A*c.^3)/12 - c'.^3*b/12 + 1/48; - coneq(end+1) = (b'*A*diag(c)*A*c.^2)/12 - (b'*A*diag(c).^2*A*c)/4 + (b'*((A*c.^3.*(A*c))))/6 - (b'*(A*c).^2)/24 + (b'*diag(c)*(A*c).^2)/4 - (b'*((A*c).*(A*c).*c.^2))/4 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/24 + (b'*diag(c).^3*A*c)/6 + 7*(b'*A*c.^3)/72 - (b'*A*c.^4)/12 - 7*c'.^3*b/72 + (c'.^4*b)/72 + 1/48; - coneq(end+1) = -((b.*c.^2)'*A*c)/24 + (b'*diag(c).^3*A*c)/12 - (b'*((A*c).*c.^4))/24 + (b'*A*c.^3)/72 - (b'*A*c.^4)/48 + (b'*((A*c.^5)))/120 - c'.^3*b/72 - 5*(c'.^4*b)/288 + (c'.^5*b)/60 + 1/240; - coneq(end+1) = -(b'*A^4*c) + (b'*((A*c.*(A*(A*(A*c)))))) + (b'*((A*(A*(A*c.*(A*c)))))) - (b'*((A*(A*(A*c))).*(A*c))) + (b'*A^3*c) - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 - (b'*A^3*c.^2)/2 + (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/2 + ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c.^2)/6 + (b'*A^2*c.^2)/3 - (b'*(A*c).^2)/12 + (b'*A*c)/8 - ((b'.*c')*A*c)/12 - c'.^3*b/12 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + c'.^3*b + 1/12) + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - ((b'*A*c) - 1/6)*(-(b'*A*c)/4 + ((b'.*c')*A*c)/2 - 1/48); - coneq(end+1) = (b'*diag(c)*A^3*c)/2 + (b'*A*diag(c)*A^2*c)/2 - (b'*((A*c.*(A*(A*c))).*c)) - (b'*A^2*diag(c)*A*c)/2 - (b'*A^3*c.^2)/4 + (b'*((A*(A*c.*(A*c.^2)))))/2 - (b'*((A^2*c).*(A*c)))/2 + (b'*((A*(A*c)).*(A*c.^2)))/2 - (b'*A^2*c)/4 + (b'*A*diag(c)*A*c.^2)/6 + (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*A^2*c.^2)/4 - (b'*A*diag(c)*A*c.^2)/4 + (b'*(A*c).^2)/6 + (b'*A*c)/6 - ((b'.*c')*A*c)/6 - (b'*((A*c.^2).*(A*c)))/4 - c'.^3*b/8 - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + c'.^3*b + 1/12)/2 + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24); - coneq(end+1) = -(b'*diag(c)*A^3*c)/2 + (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*c.*(A*c))).*c)) + (b'*A^3*c.^2)/4 - (b'*((A*c.*(A*(A*c.^2)))))/2 - (b'*((A^2*c).*(A*c)))/2 + (b'*A^2*c)/4 + ((b.*c)'*A^2*c)/12 - (b'*A*diag(c)*A*c.^2)/6 + (b'*((A*(A*c.^2)).*(A*c)))/2 + (b'*A^2*c.^2)/24 - (b'*diag(c)*A^2*c.^2)/2 + (b'*(A*c).^2)/12 - (b'*A*c)/8 + ((b'.*c')*A*c)/12 + c'.^3*b/12; - coneq(end+1) = (b'*A*diag(c)*A^2*c)/2 - (b'*((A*(A*c).*(A*c.^2))))/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*c.^2.*(A*c)))))/2 - (b'*((A^2*c).*(A*c)))/2 + (b'*((A*(A*c)).*(A*c).*c)) - ((b.*c)'*A^2*c)/12 - (b'*diag(c).^2*A^2*c)/4 + (b'*A*diag(c)*A*c.^2)/6 + 5*(b'*A^2*c.^2)/24 - (b'*A^2*c.^3)/4 + (b'*(A*c).^2)/6 - (b'*diag(c)*(A*c).^2)/2 + (b'*A*c)/24 + ((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/8 - 5*c'.^3*b/24 + (b'*A*c.^3)/8 + ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + c'.^3*b + 1/12)/2 - ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - 1/144; - coneq(end+1) = ((b.*c)'*A^2*c)/6 - (b'*diag(c).^2*A^2*c)/4 + (b'*A*diag(c)*A*c.^2)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*c.*(A*c)).*c.^2))/2 + (b'*A^2*c.^2)/12 - (b'*A*diag(c)*A*c.^2)/4 - (b'*A^2*c.^3)/12 + (b'*((A*c.*(A*c.^3))))/6 - (b'*(A*c).^2)/12 - ((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - c'.^3*b/12 + ((b.*c)'*A*c.^2)/4 - (b'*diag(c).^2*A*c.^2)/4 - (b'*((A*c.^3).*(A*c)))/6 + (b'*A*c.^3)/24; - coneq(end+1) = ((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c.^2)/3 - (b'*diag(c)*A*diag(c)*A*c)/2 - (b'*A*diag(c).^2*A*c)/2 + (b'*((A*c.^2.*(A*c)).*c))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*c.^2.*(A*c.^2))))/4 - (b'*(A*c).^2)/6 + (b'*diag(c)*(A*c).^2)/2 - (b'*A*c)/24 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c).*c))/2 - c'.^3*b/24 + ((b.*c)'*A*c.^2)/4 + (b'*diag(c).^2*A*c.^2)/8 + (b'*A*c.^3)/8 - (b'*diag(c)*A*c.^3)/4 + 1/144; + coneq(end+1) = b'*((A*(A*((A*c).*(A*c)))))/2 - (b'*((A*((A*c).*(A*(A*c)))))) + (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*A*(A*c).^2)/4 + (b'*((A^2*c).*(A*c)))/2 - ((b.*c)'*A^2*c)/3 + (b'*A*diag(c)*A*c)/12 + (b'*A^2*c.^2)/12 - 7*(b'*(A*c).^2)/24 + (b'*A*c)/24 + ((b'.*c')*A*c)/6 - (b'*A*c.^2)/12 + ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A^2*c) - (b'*A*c) + 1/8) - 1/144; + coneq(end+1) = (b'*A^3*c)/6 - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*diag(c)*(A*diag(c)*(A*c))))) - (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/6 + ((b.*c)'*A^2*c)/2 + (b'*((A*diag(c)*(A*c)).*(A*c))) + 2*(b'*A*diag(c)*A*c)/3 - (b'*diag(c)*A*diag(c)*A*c) + (b'*A^2*c.^2)/6 - (b'*A*diag(c)*A*c.^2)/2 + (b'*(A*c).^2)/4 - (b'*A*c)/180 - ((b'.*c')*A*c)/4 - (b'*((A*c.^2).*(A*c)))/2 - (b'*A*c.^2)/6 + ((b.*c)'*A*c.^2)/2 - 2*((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - 2*((b'*A*c) - 1/6)*(-(b'*A*c)/4 + ((b'.*c')*A*c)/2 - 1/48) + 149/15120; + coneq(end+1) = ((b.*c)'*A^2*c)/12 - (b'*diag(c).^2*A^2*c)/4 + (b'*((A*(A*c)).*c.^3))/6 + (b'*A^2*c.^2)/24 - (b'*A^2*c.^3)/12 + (b'*((A*(A*c.^4))))/24 + ((b.*c.^2)'*A*c)/12 - (b'*diag(c).^3*A*c)/12 - (b'*A*c.^2)/24 + (b'*A*c.^3)/18 - (b'*A*c.^4)/48 - (c'.^3*b)/72 + 5*(c'.^4*b)/288 - ((b'*A*c)/2 - 1/12)*((c'.^3*b) - 1/4)/6; + coneq(end+1) = ((b.*c)'*A^2*c)/4 - (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/8 - (b'*diag(c)*A^2*c.^2)/2 + (b'*((A*(A*c.^2)).*c.^2))/4 - (b'*A^2*c.^3)/12 + (b'*((A*(A*c.^3)).*c))/6 - (b'*A*c)/24 + ((b.*c.^2)'*A*c)/24 + (b'*A*c.^2)/24 - (b'*A*c.^3)/72; + coneq(end+1) = -3*(b'*A*(A*c).^2)/4 + (b'*((A*((A*c).*(A*c))).*c))/2 + ((b.*c)'*A^2*c)/12 + 5*(b'*A*diag(c)*A*c)/12 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*(c.^2.*(A*(A*c))))))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + 7*(b'*(A*c).^2)/24 - (b'*A*c)/24 - ((b'.*c')*A*c)/6 - (b'*((A*c.^2).*(A*c)))/4 - (b'*A*c.^2)/24 + ((b.*c)'*A*c.^2)/4 + 1/144; + coneq(end+1) = ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*A^2*c.^2)/12 - (b'*diag(c)*A^2*c.^2)/4 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*(c.*(A*c.^2))).*c))/2 - (b'*(A*c).^2)/12 - (b'*A*c)/12 + ((b'.*c')*A*c)/12 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c.^2)))/8 + (b'*A*c.^2)/24; + coneq(end+1) = -(b'*A*(A*c).^2)/4 + (b'*((A*(c.*(A*c).*(A*c)))))/2 + (b'*A*diag(c)*A*c)/4 - (b'*A*diag(c).^2*A*c)/2 - (b'*((A*c).*(A*c).*(A*c)))/6 + (b'*(A*c).^2)/8 - ((b'.*c')*A*c)/4 + ((b.*c.^2)'*A*c)/4 + (b'*A*c.^3)/12 - (c'.^3*b)/12 + 1/48; + coneq(end+1) = (b'*A*diag(c)*A*c)/12 - (b'*A*diag(c).^2*A*c)/4 + (b'*((A*(c.^3.*(A*c)))))/6 - (b'*(A*c).^2)/24 + (b'*diag(c)*(A*c).^2)/4 - (b'*((A*c).*(A*c).*c.^2))/4 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/24 + (b'*diag(c).^3*A*c)/6 + 7*(b'*A*c.^3)/72 - (b'*A*c.^4)/12 - 7*(c'.^3*b)/72 + (c'.^4*b)/72 + 1/48; + coneq(end+1) = -((b.*c.^2)'*A*c)/24 + (b'*diag(c).^3*A*c)/12 - (b'*((A*c).*c.^4))/24 + (b'*A*c.^3)/72 - (b'*A*c.^4)/48 + (b'*((A*c.^5)))/120 - (c'.^3*b)/72 - 5*(c'.^4*b)/288 + (c'.^5*b)/60 + 1/240; + coneq(end+1) = -(b'*A^4*c) + (b'*((A*(c.*(A*(A*(A*c))))))) + (b'*((A*(A*(A*(c.*(A*c))))))) - (b'*((A*(A*(A*c))).*(A*c))) + (b'*A^3*c) - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 - (b'*A^3*c.^2)/2 + (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/2 + ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c)/6 + (b'*A^2*c.^2)/3 - (b'*(A*c).^2)/12 + (b'*A*c)/8 - ((b'.*c')*A*c)/12 - (b'*A*c.^2)/12 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + (b'*A*c.^2) + 1/12) + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - ((b'*A*c) - 1/6)*(-(b'*A*c)/4 + ((b'.*c')*A*c)/2 - 1/48); + coneq(end+1) = (b'*diag(c)*A^3*c)/2 + (b'*A*diag(c)*A^2*c)/2 - (b'*((A*(c.*(A*(A*c)))).*c)) - (b'*A^2*diag(c)*A*c)/2 - (b'*A^3*c.^2)/4 + (b'*((A*(A*(c.*(A*c.^2))))))/2 - (b'*((A^2*c).*(A*c)))/2 + (b'*((A*(A*c)).*(A*c.^2)))/2 - (b'*A^2*c)/4 + (b'*A*diag(c)*A*c)/6 + (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*A^2*c.^2)/4 - (b'*A*diag(c)*A*c.^2)/4 + (b'*(A*c).^2)/6 + (b'*A*c)/6 - ((b'.*c')*A*c)/6 - (b'*((A*c.^2).*(A*c)))/4 - (b'*A*c.^2)/8 - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + (b'*A*c.^2) + 1/12)/2 + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24); + coneq(end+1) = (b'*diag(c)*A^3*c)/2 - (b'*A*diag(c)*A^2*c)/2 + (b'*A^2*diag(c)*A*c)/2 - (b'*((A*(A*(c.*(A*c)))).*c)) - (b'*A^3*c.^2)/4 + (b'*((A*(c.*(A*(A*c.^2))))))/2 + (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/4 - ((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c)/6 - (b'*((A*(A*c.^2)).*(A*c)))/2 - (b'*A^2*c.^2)/24 + (b'*diag(c)*A^2*c.^2)/2 - (b'*(A*c).^2)/12 + (b'*A*c)/8 - ((b'.*c')*A*c)/12 - (b'*A*c.^2)/12; + coneq(end+1) = (b'*A^3*c)/6 - (b'*A*diag(c)*A^2*c)/2 + (b'*((A*(c.^2.*(A*(A*c))))))/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*(c.^2.*(A*c))))))/2 + (b'*((A^2*c).*(A*c)))/2 - (b'*((A*(A*c)).*(A*c).*c)) - (b'*A^2*c)/6 + ((b.*c)'*A^2*c)/12 + (b'*diag(c).^2*A^2*c)/4 + (b'*A*diag(c)*A*c)/2 - (b'*A*diag(c).^2*A*c)/2 + 5*(b'*A^2*c.^2)/24 - (b'*A^2*c.^3)/4 - (b'*(A*c).^2)/6 + (b'*diag(c)*(A*c).^2)/2 + 3*(b'*A*c)/40 - ((b'.*c')*A*c)/4 - ((b.*c.^2)'*A*c)/24 - 5*(b'*A*c.^2)/24 + 5*(b'*A*c.^3)/24 - (c'.^3*b)/12 - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + (b'*A*c.^2) + 1/12)/2 + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) + 59/1680; + coneq(end+1) = ((b.*c)'*A^2*c)/6 - (b'*diag(c).^2*A^2*c)/4 + (b'*A*diag(c)*A*c)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*(c.*(A*c))).*c.^2))/2 + (b'*A^2*c.^2)/12 - (b'*A*diag(c)*A*c.^2)/4 - (b'*A^2*c.^3)/12 + (b'*((A*(c.*(A*c.^3)))))/6 - (b'*(A*c).^2)/12 - ((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*A*c.^2)/12 + ((b.*c)'*A*c.^2)/4 - (b'*diag(c).^2*A*c.^2)/4 - (b'*((A*c.^3).*(A*c)))/6 + (b'*A*c.^3)/24; + coneq(end+1) = ((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c)/3 - (b'*diag(c)*A*diag(c)*A*c)/2 - (b'*A*diag(c).^2*A*c)/2 + (b'*((A*(c.^2.*(A*c))).*c))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*(c.^2.*(A*c.^2)))))/4 - (b'*(A*c).^2)/6 + (b'*diag(c)*(A*c).^2)/2 - (b'*A*c)/24 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c).*c))/2 - (b'*A*c.^2)/24 + ((b.*c)'*A*c.^2)/4 + (b'*diag(c).^2*A*c.^2)/8 + (b'*A*c.^3)/8 - (b'*diag(c)*A*c.^3)/4 + 1/144; coneq(end+1) = (c'.^4*b)/288 - (c'.^5*b)/240 + b'*(c.^6)/720 - 1/5040; end \ No newline at end of file From 7b06e40b1d350d75ad162380ed7b66496d751d57 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Sun, 24 Dec 2023 22:54:33 -0600 Subject: [PATCH 07/18] PEP7 --- RK-coeff-opt/nonlinear_constraints.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RK-coeff-opt/nonlinear_constraints.m b/RK-coeff-opt/nonlinear_constraints.m index d22e8eb..e986763 100644 --- a/RK-coeff-opt/nonlinear_constraints.m +++ b/RK-coeff-opt/nonlinear_constraints.m @@ -123,7 +123,7 @@ % Energy Preserving conditions % Choose pseudo-energy-preserving q (up to 6) -q=6; +q=7; if q>=1 coneq(end+1) = sum(b)-1; end From e252998c5c22c4628d3df29b7f8c6674b5e660d9 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Sun, 24 Dec 2023 23:13:19 -0600 Subject: [PATCH 08/18] instructions --- README.md | 68 --------------------------------------- RK-coeff-opt/PEP_search.m | 17 ++++++++++ 2 files changed, 17 insertions(+), 68 deletions(-) delete mode 100644 README.md create mode 100644 RK-coeff-opt/PEP_search.m diff --git a/README.md b/README.md deleted file mode 100644 index 6c7d4db..0000000 --- a/README.md +++ /dev/null @@ -1,68 +0,0 @@ - -# RK-Opt: A Package for the Design of Numerical ODE solvers - -[![Docs-stable](https://img.shields.io/badge/docs-stable-blue.svg)](https://rk-opt.readthedocs.io/en/latest/) -[![License: BSD-3-Clause](https://img.shields.io/badge/License-BSD%203--Clause-success.svg)](https://opensource.org/licenses/BSD-3-Clause) -[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4138076.svg)](https://doi.org/10.5281/zenodo.4138076) -[![DOI](https://joss.theoj.org/papers/10.21105/joss.02514/status.svg)](https://doi.org/10.21105/joss.02514) - -See the full documentation [here](https://rk-opt.readthedocs.io/en/latest/). - -RK-Opt is a collection of MATLAB codes for designing optimized numerical ODE solvers. -The main emphasis is on Runge-Kutta methods, but some routines deal with other classes of methods. -It is primarily developed and used by the -[KAUST Numerical Mathematics Group](http://numerics.kaust.edu.sa). -It includes the following sub-packages: - - - **polyopt**: Find optimal stability polynomials of a given degree and order of - accuracy for a specified spectrum. - - **RK-coeff-opt**: Find optimal Runge-Kutta method coefficients, for a prescribed - order of accuracy and number of stages. - - **am_rad-opt**: Find stability functions with optimal radius of absolute monotonicity. - Includes capabilities for both multistep and multistage methods. - - **RKtools**: A collection of routines for analyzing or computing various - properties of Runge-Kutta methods. For a much more extensive package along these - lines, see [NodePy](http://nodepy.readthedocs.io/en/latest/). - -A common workflow for designing Runge-Kutta methods is to use **polyopt** to find an -appropriate stability function and then **RK-coeff-opt** to determine the Runge-Kutta -method coefficients. - -To run the tests, execute the MATLAB script `test.m`. This requires a relatively recent -version of MATLAB (tested with R2018a and later) with the following toolboxes. - - MATLAB Optimization Toolbox - - MATLAB Global Optimization Toolbox - - CVX (http://cvxr.com/cvx/) - - MATLAB Parallel Computing Toolbox (optional; allows faster searching for optimal methods in RK-Coeff-Opt) - -# Citing -If you use RK-Opt in published work, please cite the following paper: - -Ketcheson et al., (2020). RK-Opt: A package for the design of numerical ODE solvers. Journal of Open Source Software, 5(54), 2514, https://doi.org/10.21105/joss.02514 - -You can use the following bibtex entry: - -``` -@article{Ketcheson2020, - doi = {10.21105/joss.02514}, - url = {https://doi.org/10.21105/joss.02514}, - year = {2020}, - publisher = {The Open Journal}, - volume = {5}, - number = {54}, - pages = {2514}, - author = {David I. Ketcheson and Matteo Parsani and Zachary J. Grant and Aron J. Ahmadia and Hendrik Ranocha}, - title = {`RK-Opt`: A package for the design of numerical ODE solvers}, - journal = {Journal of Open Source Software} -} -``` - -# Authors -The code is primarily developed and maintained by David Ketcheson. -The following people have also made important contributions to RK-Opt (listed alphabetically): - - - Aron Ahmadia: Co-developer of **polyopt** algorithm and routines. - - Zachary Grant: Extension of order conditions to multistep RK with more than two stages and - addition of order conditions for orders 9-11. - - Matteo Parsani: Many improvements to **RK-coeff-opt** routines and organization. - - Hendrik Ranocha: General improvements and updates, including updating the test routines. diff --git a/RK-coeff-opt/PEP_search.m b/RK-coeff-opt/PEP_search.m new file mode 100644 index 0000000..2808c24 --- /dev/null +++ b/RK-coeff-opt/PEP_search.m @@ -0,0 +1,17 @@ +% Code to look for PEP methods +% stages and classical order of accuracy +s = 6 +p = 2 +% Number of cores (4 in my computer) +n_cores = 4 + +% This line was recommended by David: it creates a loop which looks for methods satisfying the nonlinear conditions. +% We want to make 1000 searches with each algorithm (sqp, interior-point, active-set). +% If no method is found, then we can move to the next number of stages. +rk = rk_opt(s,p,'erk','acc', 'algorithm', 'sqp','np',6,'solveorderconditions',1,'num_starting_points',1500,'suppress_warnings',1); + +% I think the the last command may run forever until it finds a solution (correct me if I am wrong). Since I don't +% know how to keep track of the number of searches, I made another loop. I can include it later in this file +% if necessary. + + From b2f1fa3000a3e25dbd3c25eaecfde8b4269b0b66 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Sun, 24 Dec 2023 23:45:43 -0600 Subject: [PATCH 09/18] restore --- README.md | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..b5dd774 --- /dev/null +++ b/README.md @@ -0,0 +1,68 @@ + +# RK-Opt: A Package for the Design of Numerical ODE solvers + +[![Docs-stable](https://img.shields.io/badge/docs-stable-blue.svg)](https://rk-opt.readthedocs.io/en/latest/) +[![License: BSD-3-Clause](https://img.shields.io/badge/License-BSD%203--Clause-success.svg)](https://opensource.org/licenses/BSD-3-Clause) +[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4138076.svg)](https://doi.org/10.5281/zenodo.4138076) +[![DOI](https://joss.theoj.org/papers/10.21105/joss.02514/status.svg)](https://doi.org/10.21105/joss.02514) + +See the full documentation [here](https://rk-opt.readthedocs.io/en/latest/). + +RK-Opt is a collection of MATLAB codes for designing optimized numerical ODE solvers. +The main emphasis is on Runge-Kutta methods, but some routines deal with other classes of methods. +It is primarily developed and used by the +[KAUST Numerical Mathematics Group](http://numerics.kaust.edu.sa). +It includes the following sub-packages: + + - **polyopt**: Find optimal stability polynomials of a given degree and order of + accuracy for a specified spectrum. + - **RK-coeff-opt**: Find optimal Runge-Kutta method coefficients, for a prescribed + order of accuracy and number of stages. + - **am_rad-opt**: Find stability functions with optimal radius of absolute monotonicity. + Includes capabilities for both multistep and multistage methods. + - **RKtools**: A collection of routines for analyzing or computing various + properties of Runge-Kutta methods. For a much more extensive package along these + lines, see [NodePy](http://nodepy.readthedocs.io/en/latest/). + +A common workflow for designing Runge-Kutta methods is to use **polyopt** to find an +appropriate stability function and then **RK-coeff-opt** to determine the Runge-Kutta +method coefficients. + +To run the tests, execute the MATLAB script `test.m`. This requires a relatively recent +version of MATLAB (tested with R2018a and later) with the following toolboxes. + - MATLAB Optimization Toolbox + - MATLAB Global Optimization Toolbox + - CVX (http://cvxr.com/cvx/) + - MATLAB Parallel Computing Toolbox (optional; allows faster searching for optimal methods in RK-Coeff-Opt) + +# Citing +If you use RK-Opt in published work, please cite the following paper: + +Ketcheson et al., (2020). RK-Opt: A package for the design of numerical ODE solvers. Journal of Open Source Software, 5(54), 2514, https://doi.org/10.21105/joss.02514 + +You can use the following bibtex entry: + +``` +@article{Ketcheson2020, + doi = {10.21105/joss.02514}, + url = {https://doi.org/10.21105/joss.02514}, + year = {2020}, + publisher = {The Open Journal}, + volume = {5}, + number = {54}, + pages = {2514}, + author = {David I. Ketcheson and Matteo Parsani and Zachary J. Grant and Aron J. Ahmadia and Hendrik Ranocha}, + title = {`RK-Opt`: A package for the design of numerical ODE solvers}, + journal = {Journal of Open Source Software} +} +``` + +# Authors +The code is primarily developed and maintained by David Ketcheson. +The following people have also made important contributions to RK-Opt (listed alphabetically): + + - Aron Ahmadia: Co-developer of **polyopt** algorithm and routines. + - Zachary Grant: Extension of order conditions to multistep RK with more than two stages and + addition of order conditions for orders 9-11. + - Matteo Parsani: Many improvements to **RK-coeff-opt** routines and organization. + - Hendrik Ranocha: General improvements and updates, including updating the test routines. From e28e460fb24ee7d56d0690f7f54a8b25ae8a4fa4 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Sun, 24 Dec 2023 23:47:11 -0600 Subject: [PATCH 10/18] restore --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b5dd774..6c7d4db 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ See the full documentation [here](https://rk-opt.readthedocs.io/en/latest/). -RK-Opt is a collection of MATLAB codes for designing optimized numerical ODE solvers. +RK-Opt is a collection of MATLAB codes for designing optimized numerical ODE solvers. The main emphasis is on Runge-Kutta methods, but some routines deal with other classes of methods. It is primarily developed and used by the [KAUST Numerical Mathematics Group](http://numerics.kaust.edu.sa). From ab742703bdde246ad3c5bd7b6d3c7c86cf620e4a Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Tue, 16 Jan 2024 11:46:14 +0100 Subject: [PATCH 11/18] Generate q=7 constraints --- .../Energy-preserving_conjugates.ipynb | 1399 +++++++++++++++++ RK-coeff-opt/PEP_Generator/PEPGenerator.jl | 17 + RK-coeff-opt/PEP_Generator/README.txt | 6 + RK-coeff-opt/PEP_Generator/Translator.ipynb | 372 +++++ 4 files changed, 1794 insertions(+) create mode 100644 RK-coeff-opt/PEP_Generator/Energy-preserving_conjugates.ipynb create mode 100644 RK-coeff-opt/PEP_Generator/PEPGenerator.jl create mode 100644 RK-coeff-opt/PEP_Generator/README.txt create mode 100644 RK-coeff-opt/PEP_Generator/Translator.ipynb diff --git a/RK-coeff-opt/PEP_Generator/Energy-preserving_conjugates.ipynb b/RK-coeff-opt/PEP_Generator/Energy-preserving_conjugates.ipynb new file mode 100644 index 0000000..dc2972f --- /dev/null +++ b/RK-coeff-opt/PEP_Generator/Energy-preserving_conjugates.ipynb @@ -0,0 +1,1399 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "91808bdb-650f-435b-bdde-78e3f275ab75", + "metadata": {}, + "outputs": [], + "source": [ + "using BSeries\n", + "using RootedTrees\n", + "using Plots" + ] + }, + { + "cell_type": "markdown", + "id": "1fa58e6d-5016-45b3-bc8d-d4a38aa9817e", + "metadata": { + "jp-MarkdownHeadingCollapsed": true + }, + "source": [ + "# Printing the energy-preserving conjugates" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "ce8fb075-3cfb-42ce-9504-51d5fd3e70b6", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1, 2, 3]\n", + "Conjugates:\n", + "+self\n", + "\n", + "[1, 2, 2]\n", + "Conjugates:\n", + "-self\n", + "\n" + ] + } + ], + "source": [ + "for tree in RootedTreeIterator(7)\n", + " println(tree.level_sequence)\n", + " println(\"Conjugates:\")\n", + " for t in BSeries.equivalent_trees(tree.level_sequence)\n", + " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", + " if (-1)^BSeries.num_branches(t) == -1\n", + " print(\"-\")\n", + " else\n", + " print(\"+\")\n", + " end\n", + " if energy_preserving_conjugate == rootedtree(t)\n", + " println(\"self\")\n", + " else\n", + " println(energy_preserving_conjugate.level_sequence)\n", + " end\n", + " end\n", + " println(\"\")\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "21b147da-116e-4016-937b-4e1783c0b48c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1, 2, 3, 4]\n", + "Conjugates:\n", + "-self\n", + "\n", + "[1, 2, 3, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 3]\n", + "-self\n", + "\n", + "[1, 2, 2, 2]\n", + "Conjugates:\n", + "-self\n", + "\n" + ] + } + ], + "source": [ + "for tree in RootedTreeIterator(4)\n", + " println(tree.level_sequence)\n", + " println(\"Conjugates:\")\n", + " for t in BSeries.equivalent_trees(tree.level_sequence)\n", + " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", + " if (-1)^BSeries.num_branches(t) == -1\n", + " print(\"-\")\n", + " else\n", + " print(\"+\")\n", + " end\n", + " if energy_preserving_conjugate == rootedtree(t)\n", + " println(\"self\")\n", + " else\n", + " println(energy_preserving_conjugate.level_sequence)\n", + " end\n", + " end\n", + " println(\"\")\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2dfc509a-94f1-4e8e-aabc-33d73d6dcc2a", + "metadata": {}, + "outputs": [], + "source": [ + "for tree in RootedTreeIterator(5)\n", + " println(tree.level_sequence)\n", + " println(\"Conjugates:\")\n", + " for t in BSeries.equivalent_trees(tree.level_sequence)\n", + " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", + " if (-1)^BSeries.num_branches(t) == -1\n", + " print(\"-\")\n", + " else\n", + " print(\"+\")\n", + " end\n", + " if energy_preserving_conjugate == rootedtree(t)\n", + " println(\"self\")\n", + " else\n", + " println(energy_preserving_conjugate.level_sequence)\n", + " end\n", + " end\n", + " println(\"\")\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "dfee010d-d82c-430c-b636-1aad031e79fd", + "metadata": {}, + "outputs": [], + "source": [ + "for tree in RootedTreeIterator(6)\n", + " println(tree.level_sequence)\n", + " println(\"Conjugates:\")\n", + " for t in BSeries.equivalent_trees(tree.level_sequence)\n", + " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", + " if (-1)^BSeries.num_branches(t) == -1\n", + " print(\"-\")\n", + " else\n", + " print(\"+\")\n", + " end\n", + " if energy_preserving_conjugate == rootedtree(t)\n", + " println(\"self\")\n", + " else\n", + " println(energy_preserving_conjugate.level_sequence)\n", + " end\n", + " end\n", + " println(\"\")\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "21beb238-5431-49ac-8fdf-14714873a570", + "metadata": {}, + "outputs": [], + "source": [ + "for tree in RootedTreeIterator(7)\n", + " println(tree.level_sequence)\n", + " println(\"Conjugates:\")\n", + " for t in BSeries.equivalent_trees(tree.level_sequence)\n", + " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", + " if (-1)^BSeries.num_branches(t) == -1\n", + " print(\"-\")\n", + " else\n", + " print(\"+\")\n", + " end\n", + " if energy_preserving_conjugate == rootedtree(t)\n", + " println(\"self\")\n", + " else\n", + " println(energy_preserving_conjugate.level_sequence)\n", + " end\n", + " end\n", + " println(\"\")\n", + "end" + ] + }, + { + "cell_type": "markdown", + "id": "e51b9ca2-6b4c-4ae8-84cc-d522db3bd9db", + "metadata": {}, + "source": [ + "# Printing each subset only once" + ] + }, + { + "cell_type": "markdown", + "id": "b1eca398-f234-4bcc-8ea2-79160e7f718e", + "metadata": {}, + "source": [ + "## Order 4" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ec06eed8-21c2-4a88-9c53-4c1edc142b7b", + "metadata": {}, + "outputs": [], + "source": [ + "treelist = []\n", + "for tree in RootedTreeIterator(4)\n", + " if !(tree in treelist)\n", + " push!(treelist,copy(tree))\n", + " println(tree.level_sequence)\n", + " println(\"Conjugates:\")\n", + " for t in BSeries.equivalent_trees(tree.level_sequence)\n", + " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", + " if (-1)^BSeries.num_branches(t) == -1\n", + " print(\"-\")\n", + " else\n", + " print(\"+\")\n", + " end\n", + " if energy_preserving_conjugate == rootedtree(t)\n", + " println(\"self\")\n", + " else\n", + " println(energy_preserving_conjugate.level_sequence)\n", + " end\n", + " if !(energy_preserving_conjugate in treelist)\n", + " push!(treelist,copy(energy_preserving_conjugate))\n", + " end\n", + " end\n", + " println(\"\")\n", + " end\n", + "end" + ] + }, + { + "cell_type": "markdown", + "id": "8eb06600-4e29-4ace-8328-3a3a07f896a5", + "metadata": {}, + "source": [ + "## Order 5" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3bc3c8ee-defc-4fc7-bdb5-61d1e1cfeea5", + "metadata": {}, + "outputs": [], + "source": [ + "treelist = []\n", + "for tree in RootedTreeIterator(5)\n", + " if !(tree in treelist)\n", + " push!(treelist,copy(tree))\n", + " println(tree.level_sequence)\n", + " println(\"Conjugates:\")\n", + " for t in BSeries.equivalent_trees(tree.level_sequence)\n", + " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", + " if (-1)^BSeries.num_branches(t) == -1\n", + " print(\"-\")\n", + " else\n", + " print(\"+\")\n", + " end\n", + " if energy_preserving_conjugate == rootedtree(t)\n", + " println(\"self\")\n", + " else\n", + " println(energy_preserving_conjugate.level_sequence)\n", + " end\n", + " if !(energy_preserving_conjugate in treelist)\n", + " push!(treelist,copy(energy_preserving_conjugate))\n", + " end\n", + " end\n", + " println(\"\")\n", + " end\n", + "end" + ] + }, + { + "cell_type": "markdown", + "id": "1b7ed813-995e-440c-97ec-b3312ab0536e", + "metadata": {}, + "source": [ + "## Order 6" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6914bbea-daf2-412f-a65b-06e97b13ff51", + "metadata": {}, + "outputs": [], + "source": [ + "treelist = []\n", + "for tree in RootedTreeIterator(6)\n", + " if !(tree in treelist)\n", + " push!(treelist,copy(tree))\n", + " println(tree.level_sequence)\n", + " println(\"Conjugates:\")\n", + " for t in BSeries.equivalent_trees(tree.level_sequence)\n", + " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", + " if (-1)^BSeries.num_branches(t) == -1\n", + " print(\"-\")\n", + " else\n", + " print(\"+\")\n", + " end\n", + " if energy_preserving_conjugate == rootedtree(t)\n", + " println(\"self\")\n", + " else\n", + " println(energy_preserving_conjugate.level_sequence)\n", + " end\n", + " if !(energy_preserving_conjugate in treelist)\n", + " push!(treelist,copy(energy_preserving_conjugate))\n", + " end\n", + " end\n", + " println(\"\")\n", + " end\n", + "end" + ] + }, + { + "cell_type": "markdown", + "id": "1bd2e89d-40bb-4812-bf15-fb9065823905", + "metadata": {}, + "source": [ + "## Order 7" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "68987f93-5d71-4eb4-bc16-7989ba6cf9d2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1, 2, 3, 4, 5, 6, 7]\n", + "Conjugates:\n", + "+self\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 3]\n", + "+[1, 2, 3, 4, 5, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 4]\n", + "Conjugates:\n", + "-self\n", + "-[1, 2, 3, 4, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 2]\n", + "-[1, 2, 3, 4, 2, 3, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 2]\n", + "+[1, 2, 3, 4, 4, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 2]\n", + "Conjugates:\n", + "+self\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 4, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 3]\n", + "-[1, 2, 3, 4, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 3]\n", + "Conjugates:\n", + "+self\n", + "-[1, 2, 3, 4, 3, 2, 3]\n", + "+[1, 2, 3, 4, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 2, 2]\n", + "+[1, 2, 3, 3, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 2]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 4, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 3, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 4, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 3, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 3, 2]\n", + "+[1, 2, 3, 3, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 3, 2]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 3, 2, 3, 3]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 3, 4, 3]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 2, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 3, 3, 3]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 2, 3, 2, 2]\n", + "\n", + "[1, 2, 3, 3, 3, 3, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 2, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 3, 3, 3, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 3, 2, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 3, 3, 2, 2]\n", + "Conjugates:\n", + "+self\n", + "-self\n", + "\n", + "[1, 2, 2, 2, 2, 2, 2]\n", + "Conjugates:\n", + "-self\n", + "\n", + "Total conditions (possibly including some free ones): 23" + ] + } + ], + "source": [ + "treelist = []\n", + "n_cond = 0\n", + "for tree in RootedTreeIterator(7)\n", + " if !(tree in treelist)\n", + " n_cond += 1\n", + " push!(treelist,copy(tree))\n", + " println(tree.level_sequence)\n", + " println(\"Conjugates:\")\n", + " for t in BSeries.equivalent_trees(tree.level_sequence)\n", + " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", + " if (-1)^BSeries.num_branches(t) == -1\n", + " print(\"-\")\n", + " else\n", + " print(\"+\")\n", + " end\n", + " if energy_preserving_conjugate == rootedtree(t)\n", + " println(\"self\")\n", + " else\n", + " println(energy_preserving_conjugate.level_sequence)\n", + " end\n", + " if !(energy_preserving_conjugate in treelist)\n", + " push!(treelist,copy(energy_preserving_conjugate))\n", + " end\n", + " end\n", + " println(\"\")\n", + " end\n", + "end\n", + "print(\"Total conditions (possibly including some free ones): \", n_cond)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "0c01a1d6-fc52-46fb-b6ba-2edd7d3c75e8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1, 2, 3, 4, 5, 6, 7, 8]\n", + "Conjugates:\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 7]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 6]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 3]\n", + "-[1, 2, 3, 4, 5, 6, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 4]\n", + "+[1, 2, 3, 4, 5, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 6]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 5]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 3, 2]\n", + "+[1, 2, 3, 4, 5, 2, 3, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 4, 2]\n", + "-[1, 2, 3, 4, 4, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 5, 2]\n", + "+[1, 2, 3, 4, 5, 5, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 2]\n", + "Conjugates:\n", + "-self\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 6]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 5]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 3, 3]\n", + "+[1, 2, 3, 4, 5, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 4, 3]\n", + "+[1, 2, 3, 4, 5, 3, 2, 3]\n", + "-[1, 2, 3, 4, 3, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 3]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 4, 5, 4, 2, 3]\n", + "+[1, 2, 3, 4, 5, 4, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 4, 5]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 4, 5, 3, 4, 5]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 4, 4]\n", + "Conjugates:\n", + "-self\n", + "-[1, 2, 3, 4, 2, 3, 4, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 2, 2]\n", + "-[1, 2, 3, 4, 2, 3, 3, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 2, 2]\n", + "+[1, 2, 3, 4, 4, 4, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 5, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 4, 2]\n", + "+[1, 2, 3, 4, 5, 3, 4, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 3, 2]\n", + "-[1, 2, 3, 4, 2, 3, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 3, 2]\n", + "-[1, 2, 3, 4, 3, 2, 3, 3]\n", + "+[1, 2, 3, 4, 4, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 5, 3, 2]\n", + "-[1, 2, 3, 4, 4, 2, 3, 3]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 3, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 5, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 3, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 4, 2]\n", + "+[1, 2, 3, 4, 4, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 5, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 4, 3]\n", + "-[1, 2, 3, 4, 2, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 5, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 3, 4]\n", + "+[1, 2, 3, 4, 3, 4, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 4, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 3, 3]\n", + "-[1, 2, 3, 4, 2, 3, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 4, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 3, 3]\n", + "-[1, 2, 3, 4, 3, 2, 3, 2]\n", + "+[1, 2, 3, 4, 3, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 4, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 2, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 4, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 2, 2, 2]\n", + "+[1, 2, 3, 3, 3, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 4, 2]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 4, 2, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 4, 3, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 4, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 4, 3, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 3, 2, 2]\n", + "+[1, 2, 3, 3, 3, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 3, 2]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 4, 3, 2, 2]\n", + "+[1, 2, 3, 3, 3, 2, 3, 3]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 4, 2, 2]\n", + "Conjugates:\n", + "-self\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 3, 4, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 4, 3, 4, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 3, 4, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 4, 3, 2]\n", + "-self\n", + "+[1, 2, 3, 3, 2, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 4, 3, 3, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 3, 3, 2]\n", + "+[1, 2, 3, 3, 2, 3, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 3, 3, 2]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 3, 2, 3, 3, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 3, 4, 3, 4]\n", + "Conjugates:\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 3, 4, 3, 3]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 2, 3, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 3, 3, 3, 3]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 2, 3, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 3, 3, 3, 3, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 2, 2, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 3, 3, 3, 3, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 3, 2, 2, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 3, 3, 3, 2, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 3, 3, 2, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 2, 2, 2, 2, 2, 2]\n", + "Conjugates:\n", + "-self\n", + "\n", + "Total conditions (possibly including some free ones): 47" + ] + } + ], + "source": [ + "treelist = []\n", + "n_cond = 0\n", + "for tree in RootedTreeIterator(8)\n", + " if !(tree in treelist)\n", + " n_cond += 1\n", + " push!(treelist,copy(tree))\n", + " println(tree.level_sequence)\n", + " println(\"Conjugates:\")\n", + " for t in BSeries.equivalent_trees(tree.level_sequence)\n", + " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", + " if (-1)^BSeries.num_branches(t) == -1\n", + " print(\"-\")\n", + " else\n", + " print(\"+\")\n", + " end\n", + " if energy_preserving_conjugate == rootedtree(t)\n", + " println(\"self\")\n", + " else\n", + " println(energy_preserving_conjugate.level_sequence)\n", + " end\n", + " if !(energy_preserving_conjugate in treelist)\n", + " push!(treelist,copy(energy_preserving_conjugate))\n", + " end\n", + " end\n", + " println(\"\")\n", + " end\n", + "end\n", + "print(\"Total conditions (possibly including some free ones): \", n_cond)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "e15257c4-3802-45c8-a987-0800c2545754", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1, 2, 3, 4, 5, 6, 7, 8, 9]\n", + "Conjugates:\n", + "+self\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 8, 8]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 7, 8, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 8, 7]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 7, 8, 3]\n", + "+[1, 2, 3, 4, 5, 6, 7, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 8, 6]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 7, 8, 4]\n", + "-[1, 2, 3, 4, 5, 6, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 8, 5]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 4, 5, 2, 3, 4, 5]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 7, 7]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 7, 6]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 3, 2]\n", + "-[1, 2, 3, 4, 5, 6, 2, 3, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 7, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 4, 2]\n", + "+[1, 2, 3, 4, 5, 2, 3, 4, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 7, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 5, 2]\n", + "-[1, 2, 3, 4, 5, 5, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 7, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 6, 2]\n", + "+[1, 2, 3, 4, 5, 6, 6, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 7, 2]\n", + "Conjugates:\n", + "+self\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 6, 7]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 6, 6]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 3, 3]\n", + "-[1, 2, 3, 4, 5, 6, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 6, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 4, 3]\n", + "-[1, 2, 3, 4, 5, 6, 3, 2, 3]\n", + "+[1, 2, 3, 4, 5, 2, 3, 4, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 6, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 5, 3]\n", + "-[1, 2, 3, 4, 5, 6, 4, 2, 3]\n", + "-[1, 2, 3, 4, 5, 4, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 6, 3]\n", + "Conjugates:\n", + "+self\n", + "-[1, 2, 3, 4, 5, 6, 5, 2, 3]\n", + "+[1, 2, 3, 4, 5, 6, 5, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 5, 6]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 4, 5]\n", + "-[1, 2, 3, 4, 5, 6, 3, 4, 5]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 5, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 6, 7, 4, 4]\n", + "+[1, 2, 3, 4, 5, 2, 3, 4, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 7, 5, 4]\n", + "Conjugates:\n", + "+self\n", + "+[1, 2, 3, 4, 5, 3, 2, 3, 4]\n", + "-[1, 2, 3, 4, 5, 3, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 6, 6]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 6, 5]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 3, 2, 2]\n", + "+[1, 2, 3, 4, 5, 2, 3, 3, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 6, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 4, 2, 2]\n", + "-[1, 2, 3, 4, 4, 4, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 6, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 5, 2, 2]\n", + "+[1, 2, 3, 4, 5, 5, 5, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 6, 2]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 6, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 5, 6]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 3, 4, 2]\n", + "-[1, 2, 3, 4, 5, 6, 3, 4, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 5, 5]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 3, 3, 2]\n", + "+[1, 2, 3, 4, 5, 2, 3, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 5, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 4, 3, 2]\n", + "+[1, 2, 3, 4, 5, 3, 2, 3, 3]\n", + "-[1, 2, 3, 4, 4, 3, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 5, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 5, 3, 2]\n", + "+[1, 2, 3, 4, 5, 4, 2, 3, 3]\n", + "+[1, 2, 3, 4, 5, 5, 4, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 5, 2]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 6, 3, 2]\n", + "+[1, 2, 3, 4, 5, 5, 2, 3, 3]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 4, 5]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 4, 5, 2]\n", + "+[1, 2, 3, 4, 5, 5, 3, 4, 5]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 4, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 4, 4, 2]\n", + "-[1, 2, 3, 4, 4, 2, 3, 4, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 4, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 5, 4, 2]\n", + "-[1, 2, 3, 4, 4, 2, 3, 4, 3]\n", + "+[1, 2, 3, 4, 5, 5, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 4, 2]\n", + "Conjugates:\n", + "-self\n", + "-[1, 2, 3, 4, 4, 2, 3, 4, 4]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 3, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 5, 6, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 6, 6, 3, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 5, 5, 2]\n", + "+[1, 2, 3, 4, 5, 5, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 6, 5]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 3, 4, 3]\n", + "+[1, 2, 3, 4, 5, 2, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 6, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 4, 3, 4]\n", + "-[1, 2, 3, 4, 3, 4, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 6, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 5, 3, 4]\n", + "+[1, 2, 3, 4, 5, 4, 5, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 5, 5]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 3, 3, 3]\n", + "+[1, 2, 3, 4, 5, 2, 3, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 5, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 4, 3, 3]\n", + "+[1, 2, 3, 4, 5, 3, 2, 3, 2]\n", + "-[1, 2, 3, 4, 3, 3, 2, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 5, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 5, 3, 3]\n", + "+[1, 2, 3, 4, 5, 4, 2, 3, 2]\n", + "+[1, 2, 3, 4, 5, 4, 4, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 4, 5]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 4, 5, 3]\n", + "+[1, 2, 3, 4, 5, 3, 4, 2, 3]\n", + "+[1, 2, 3, 4, 5, 4, 3, 4, 5]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 4, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 5, 6, 4, 4, 3]\n", + "+[1, 2, 3, 4, 5, 3, 3, 2, 3]\n", + "-[1, 2, 3, 4, 3, 2, 3, 4, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 5, 4, 3]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 4, 5, 4, 3, 2, 3]\n", + "-[1, 2, 3, 4, 3, 2, 3, 4, 3]\n", + "+[1, 2, 3, 4, 5, 4, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 4, 5, 6]\n", + "Conjugates:\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 6, 4, 5, 5]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 4, 5, 3, 4, 5, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 4, 5, 4]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 4, 5, 3, 4, 5, 3]\n", + "-[1, 2, 3, 4, 2, 3, 4, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 6, 4, 4, 4]\n", + "Conjugates:\n", + "-self\n", + "-[1, 2, 3, 4, 2, 3, 4, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 5, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 2, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 5, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 2, 2, 2]\n", + "-[1, 2, 3, 4, 2, 3, 3, 3, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 5, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 2, 2, 2]\n", + "+[1, 2, 3, 4, 4, 4, 4, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 5, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 5, 2, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 4, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 4, 2, 2]\n", + "+[1, 2, 3, 4, 5, 3, 4, 4, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 4, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 3, 2, 2]\n", + "-[1, 2, 3, 4, 2, 3, 3, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 4, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 3, 2, 2]\n", + "-[1, 2, 3, 4, 3, 2, 3, 3, 3]\n", + "+[1, 2, 3, 4, 4, 4, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 4, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 5, 3, 2, 2]\n", + "-[1, 2, 3, 4, 4, 2, 3, 3, 3]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 3, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 5, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 3, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 4, 2, 2]\n", + "+[1, 2, 3, 4, 4, 4, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 3, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 5, 4, 2, 2]\n", + "+[1, 2, 3, 4, 4, 4, 2, 3, 3]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 5, 2, 2]\n", + "Conjugates:\n", + "+self\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 5, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 4, 4, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 5, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 4, 3, 2]\n", + "+[1, 2, 3, 4, 5, 3, 4, 4, 3]\n", + "-[1, 2, 3, 4, 2, 3, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 5, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 3, 4, 2]\n", + "+[1, 2, 3, 4, 5, 4, 3, 4, 4]\n", + "+[1, 2, 3, 4, 4, 3, 4, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 5, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 5, 3, 4, 2]\n", + "+[1, 2, 3, 4, 5, 5, 3, 4, 4]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 4, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 3, 3, 2]\n", + "-[1, 2, 3, 4, 2, 3, 3, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 4, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 3, 3, 2]\n", + "-[1, 2, 3, 4, 3, 2, 3, 3, 2]\n", + "+[1, 2, 3, 4, 4, 3, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 4, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 5, 3, 3, 2]\n", + "-[1, 2, 3, 4, 4, 2, 3, 3, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 3, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 5, 3, 2]\n", + "-[1, 2, 3, 4, 3, 4, 2, 3, 3]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 3, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 4, 3, 2]\n", + "-[1, 2, 3, 4, 3, 3, 2, 3, 3]\n", + "+[1, 2, 3, 4, 4, 3, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 4, 3, 2]\n", + "Conjugates:\n", + "+self\n", + "-[1, 2, 3, 4, 4, 3, 2, 3, 3]\n", + "+[1, 2, 3, 4, 4, 3, 2, 3, 3]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 5, 3, 4, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 5, 4, 2]\n", + "-self\n", + "+[1, 2, 3, 4, 4, 2, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 5, 3, 3, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 4, 4, 2]\n", + "+[1, 2, 3, 4, 4, 2, 3, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 5, 4, 5]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 4, 3, 4]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 5, 4, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 4, 3, 3]\n", + "-[1, 2, 3, 4, 2, 3, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 5, 4, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 3, 4, 3]\n", + "-[1, 2, 3, 4, 3, 2, 3, 2, 3]\n", + "+[1, 2, 3, 4, 3, 4, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 5, 3, 4]\n", + "Conjugates:\n", + "+self\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 5, 4, 5, 3, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 4, 3, 4]\n", + "+[1, 2, 3, 4, 3, 4, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 4, 4, 4]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 3, 3, 3, 3]\n", + "-[1, 2, 3, 4, 2, 3, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 4, 4, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 4, 5, 4, 3, 3, 3]\n", + "-[1, 2, 3, 4, 3, 2, 3, 2, 2]\n", + "+[1, 2, 3, 4, 3, 3, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 5, 4, 4, 3, 3]\n", + "Conjugates:\n", + "+self\n", + "-[1, 2, 3, 4, 3, 3, 2, 3, 2]\n", + "+[1, 2, 3, 4, 3, 3, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 4, 4, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 2, 2, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 4, 4, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 2, 2, 2, 2]\n", + "+[1, 2, 3, 3, 3, 3, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 4, 4, 2]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 4, 2, 2, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 4, 4, 3, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 4, 2, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 4, 4, 3, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 3, 2, 2, 2]\n", + "+[1, 2, 3, 3, 3, 3, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 4, 3, 2]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 4, 3, 2, 2, 2]\n", + "+[1, 2, 3, 3, 3, 3, 2, 3, 3]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 4, 4, 2, 2]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 4, 4, 2, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 4, 3, 4, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 4, 3, 4, 2, 2]\n", + "-[1, 2, 3, 4, 4, 4, 3, 4, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 3, 4, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 4, 3, 2, 2]\n", + "-self\n", + "+[1, 2, 3, 3, 3, 2, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 3, 3, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 3, 3, 2, 2]\n", + "+[1, 2, 3, 3, 3, 2, 3, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 4, 3, 3, 2]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 4, 3, 3, 2, 2]\n", + "+[1, 2, 3, 3, 3, 2, 3, 3, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 4, 3, 2, 2]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 3, 3, 2, 3, 3, 3]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 3, 4, 4, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 4, 3, 4, 3, 2]\n", + "+[1, 2, 3, 3, 2, 3, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 4, 3, 4, 4, 2]\n", + "Conjugates:\n", + "-self\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 3, 4, 3, 4]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 4, 3, 4, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 4, 3, 4, 3, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 4, 3, 3, 2]\n", + "-self\n", + "+[1, 2, 3, 3, 2, 3, 2, 3, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 3, 3, 3, 3]\n", + "Conjugates:\n", + "-[1, 2, 3, 4, 3, 3, 3, 3, 2]\n", + "+[1, 2, 3, 3, 2, 3, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 4, 3, 3, 3, 2]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 3, 2, 3, 3, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 4, 3, 4, 3, 4, 3]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 2, 3, 2, 3, 2, 3]\n", + "\n", + "[1, 2, 3, 4, 3, 4, 3, 3, 3]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 2, 3, 2, 3, 2, 2]\n", + "\n", + "[1, 2, 3, 4, 3, 3, 3, 3, 3]\n", + "Conjugates:\n", + "-self\n", + "+[1, 2, 3, 2, 3, 2, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 3, 3, 3, 3, 3, 3]\n", + "Conjugates:\n", + "+[1, 2, 3, 2, 2, 2, 2, 2, 2]\n", + "\n", + "[1, 2, 3, 3, 3, 3, 3, 3, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 3, 2, 2, 2, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 3, 3, 3, 3, 2, 2]\n", + "Conjugates:\n", + "+[1, 2, 3, 3, 3, 2, 2, 2, 2]\n", + "-self\n", + "\n", + "[1, 2, 3, 3, 3, 3, 2, 2, 2]\n", + "Conjugates:\n", + "+self\n", + "-self\n", + "\n", + "[1, 2, 2, 2, 2, 2, 2, 2, 2]\n", + "Conjugates:\n", + "-self\n", + "\n", + "Total conditions (possibly including some free ones): 106" + ] + } + ], + "source": [ + "treelist = []\n", + "n_cond = 0\n", + "for tree in RootedTreeIterator(9)\n", + " if !(tree in treelist)\n", + " n_cond += 1\n", + " push!(treelist,copy(tree))\n", + " println(tree.level_sequence)\n", + " println(\"Conjugates:\")\n", + " for t in BSeries.equivalent_trees(tree.level_sequence)\n", + " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", + " if (-1)^BSeries.num_branches(t) == -1\n", + " print(\"-\")\n", + " else\n", + " print(\"+\")\n", + " end\n", + " if energy_preserving_conjugate == rootedtree(t)\n", + " println(\"self\")\n", + " else\n", + " println(energy_preserving_conjugate.level_sequence)\n", + " end\n", + " if !(energy_preserving_conjugate in treelist)\n", + " push!(treelist,copy(energy_preserving_conjugate))\n", + " end\n", + " end\n", + " println(\"\")\n", + " end\n", + "end\n", + "print(\"Total conditions (possibly including some free ones): \", n_cond)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0882e685", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Julia 1.8.5", + "language": "julia", + "name": "julia-1.8" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/RK-coeff-opt/PEP_Generator/PEPGenerator.jl b/RK-coeff-opt/PEP_Generator/PEPGenerator.jl new file mode 100644 index 0000000..621454d --- /dev/null +++ b/RK-coeff-opt/PEP_Generator/PEPGenerator.jl @@ -0,0 +1,17 @@ +using BSeries, SymPy + +#set order +q = 7 +# generate series +series = bseries(q) do t, series + return symbols("a_$(butcher_representation(t))", real=true) +end + +# Our interest relies on the modified equation +modi = modified_equation(series) +renormalize!(modi) + +# show the result for every condition (this expression involves from 1 to 4 trees). +# The conditions can be obtained from David's Jupyter Notebook 'Energy-preserving +# conjugates'. +println(modi[rootedtree([1,2,3,4,4,4,3])] + modi[rootedtree([1,2,3,4,3,2,2])] - modi[rootedtree([1,2,3,3,3,2,3])]) \ No newline at end of file diff --git a/RK-coeff-opt/PEP_Generator/README.txt b/RK-coeff-opt/PEP_Generator/README.txt new file mode 100644 index 0000000..01f9e2f --- /dev/null +++ b/RK-coeff-opt/PEP_Generator/README.txt @@ -0,0 +1,6 @@ +1. The list of PEP conditions is obtained from 'Energy-preserving_conjugates.ipynb' + +2. This conditions must be applied to the file 'PEPGenerator.jl', which generates PEP conditions, +one by one, in Butcher Notation. + +3. Finally, copy-paste the output in 'Translator.ipynb', which returns the PEP condition in Matlab format. \ No newline at end of file diff --git a/RK-coeff-opt/PEP_Generator/Translator.ipynb b/RK-coeff-opt/PEP_Generator/Translator.ipynb new file mode 100644 index 0000000..e8e846c --- /dev/null +++ b/RK-coeff-opt/PEP_Generator/Translator.ipynb @@ -0,0 +1,372 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 54, + "id": "102b4a6a", + "metadata": { + "scrolled": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a_[τ⁵] - (1)^6/6 - (1)^4*((1/2) - (1)^2/2) - 5*(1)^3*((1/3) - (1)^3/3 - (1)*((1/2) - (1)^2/2))/2 - 10*(1)^2*((1/4) - (1)^4/4 - (1)^2*((1/2) - (1)^2/2) - 3*(1)*((1/3) - (1)^3/3 - (1)*((1/2) - (1)^2/2))/2)/3 - 5*(1)*((1/5) - (1)^5/5 - (1)^3*((1/2) - (1)^2/2) - 2*(1)^2*((1/3) - (1)^3/3 - (1)*((1/2) - (1)^2/2)) - 2*(1)*((1/4) - (1)^4/4 - (1)^2*((1/2) - (1)^2/2) - 3*(1)*((1/3) - (1)^3/3 - (1)*((1/2) - (1)^2/2))/2))/2\n" + ] + } + ], + "source": [ + "def substitute_text(input_text):\n", + " # Define the substitution dictionary\n", + " substitutions = {\n", + " 'a_τ': '(1)',\n", + " 'a_[τ]': '(1/2)',\n", + " 'a_[[τ]]': 'a123',\n", + " 'a_[τ²]': '(1/3)',\n", + " 'a_[[[τ]]]':'a1234',\n", + " 'a_[[τ²]]': 'a1233',\n", + " 'a_[[τ]τ]': 'a1232',\n", + " 'a_[τ³]': '(1/4)',\n", + " 'a_[[[[τ]]]]': 'a12345',\n", + " 'a_[[[τ²]]]': 'a12344',\n", + " 'a_[[[τ]τ]]': 'a12343',\n", + " 'a_[[[τ]]τ]': 'a12342',\n", + " 'a_[[τ³]]': 'a12333',\n", + " 'a_[[τ²]τ]': 'a12332',\n", + " 'a_[[τ][τ]]': 'a12323',\n", + " 'a_[[τ]τ²]': 'a12322',\n", + " 'a_[τ⁴]': '(1/5)',\n", + " # Add more substitutions as needed\n", + " }\n", + "\n", + " # Iterate through the dictionary and perform substitutions\n", + " for old_text, new_text in substitutions.items():\n", + " input_text = input_text.replace(old_text, new_text)\n", + "\n", + " return input_text\n", + "b123456 = \"a_[[[[[τ]]]]] - a_τ^6/720 - a_τ^4*(a_[τ]/120 - a_τ^2/240) - a_τ^4*(a_[τ] - a_τ^2/2)/30 - a_τ^3*(a_[[τ]]/24 - a_τ^3/144 - a_τ*(a_[τ]/2 - a_τ^2/4)/24 - a_τ*(a_[τ] - a_τ^2/2)/48) - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/8 - 3*a_τ^2*(a_[τ]/24 - a_τ^2/48)*(a_[τ] - a_τ^2/2) - a_τ^2*(a_[τ] - a_τ^2/2)^2/8 - a_τ^2*(a_[[[τ]]]/6 - a_τ^4/144 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/6 - a_τ^2*(a_[τ] - a_τ^2/2)/18 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/6 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/12 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/6) - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[[[τ]]]]/2 - a_τ^5/240 - a_τ^3*(a_[τ]/24 - a_τ^2/48)/2 - a_τ^3*(a_[τ] - a_τ^2/2)/16 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12)/2 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/12 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/4 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2) - a_τ*(a_[[[[τ]]]] - a_τ^5/120 - a_τ^3*(a_[τ]/24 - a_τ^2/48) - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - (a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)^2 - (a_[τ]/2 - a_τ^2/4)*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - (a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", + "b123455 = \"a_[[[[τ²]]]] - a_τ^6/360 - a_τ^4*(a_[τ] - a_τ^2/2)/15 - a_τ^3*(a_[τ²]/24 - a_τ^3/72 - a_τ*(a_[τ] - a_τ^2/2)/24) - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - a_τ^2*(a_[[τ²]]/6 - a_τ^4/72 - a_τ^2*(a_[τ] - a_τ^2/2)/9 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6) - 2*a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[[τ²]]]/2 - a_τ^5/120 - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6)/2 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2)/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[[τ]]]] - a_τ^5/120 - a_τ^3*(a_[τ]/24 - a_τ^2/48) - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)) - (a_[τ] - a_τ^2/2)*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - (a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", + "b123454 = \"a_[[[[τ]τ]]] - a_τ^6/240 - 11*a_τ^4*(a_[τ] - a_τ^2/2)/120 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - 7*a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/24 - a_τ^2*(a_[τ]/24 - a_τ^2/48)*(a_[τ] - a_τ^2/2) - 7*a_τ^2*(a_[τ] - a_τ^2/2)^2/24 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/6 - a_τ^2*(a_[[τ]τ]/6 - a_τ^4/48 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/36 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/12 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/12 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/6) - 2*a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[[τ²]]] - a_τ^5/60 - a_τ^3*(a_[τ] - a_τ^2/2)/4 - a_τ^2*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[[τ]τ]]/2 - a_τ^5/80 - a_τ^3*(a_[τ] - a_τ^2/2)/6 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/12 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)/2 - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/4 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/4 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[[τ]]]] - a_τ^5/120 - a_τ^3*(a_[τ]/24 - a_τ^2/48) - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - (a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)^2 - (a_[τ]/2 - a_τ^2/4)*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2)\"\n", + "b123453 = \"a_[[[[τ]]τ]] - a_τ^6/180 - 7*a_τ^4*(a_[τ] - a_τ^2/2)/60 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ^2*(a_[τ]/24 - a_τ^2/48)*(a_[τ] - a_τ^2/2) - 3*a_τ^2*(a_[τ] - a_τ^2/2)^2/8 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/6 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - 5*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[[[τ]]τ]/2 - a_τ^5/60 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/24 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/12 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)/2 - a_τ*(a_[τ] - a_τ^2/2)^2/4 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2) - a_τ*(a_[[[τ]τ]] - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/3 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[[[τ]]]] - a_τ^5/120 - a_τ^3*(a_[τ]/24 - a_τ^2/48) - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", + "b123452 = \"a_[[[[τ]]]τ] - a_τ^6/144 - 17*a_τ^4*(a_[τ] - a_τ^2/2)/120 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - 3*a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/8 - a_τ^2*(a_[τ]/24 - a_τ^2/48)*(a_[τ] - a_τ^2/2) - 11*a_τ^2*(a_[τ] - a_τ^2/2)^2/24 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - 5*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[[[τ]]τ] - a_τ^5/30 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/12 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - a_τ*(a_[[[[τ]]]] - a_τ^5/120 - a_τ^3*(a_[τ]/24 - a_τ^2/48) - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - (a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)^2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - (a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)\"\n", + "b123444 = \"a_[[[τ³]]] - a_τ^6/120 - 3*a_τ^4*(a_[τ] - a_τ^2/2)/20 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/8 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - a_τ^2*(a_[τ³]/6 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4) - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ³]]/2 - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/4 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4)/2 - 3*a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/4) - 3*a_τ*(a_[[[τ²]]] - a_τ^5/60 - a_τ^3*(a_[τ] - a_τ^2/2)/4 - a_τ^2*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - (a_[τ] - a_τ^2/2)*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4)\"\n", + "b123443 = \"a_[[[τ²]τ]] - a_τ^6/90 - 11*a_τ^4*(a_[τ] - a_τ^2/2)/60 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ^2*(a_[τ] - a_τ^2/2)^2/3 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[[τ²]]] - a_τ^5/60 - a_τ^3*(a_[τ] - a_τ^2/2)/4 - a_τ^2*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ²]τ]/2 - a_τ^5/30 - 7*a_τ^3*(a_[τ] - a_τ^2/2)/24 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/4 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[τ]τ]] - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/3 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", + "b123442 = \"a_[[[τ²]]τ] - a_τ^6/72 - 13*a_τ^4*(a_[τ] - a_τ^2/2)/60 - 5*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - 5*a_τ^2*(a_[τ] - a_τ^2/2)^2/12 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/3 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[[τ²]]] - a_τ^5/60 - a_τ^3*(a_[τ] - a_τ^2/2)/4 - a_τ^2*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[[τ]]τ] - a_τ^5/30 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/12 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)) - (a_[τ] - a_τ^2/2)*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - (a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))\"\n", + "b123434 = \"a_[[[τ][τ]]] - a_τ^6/120 - a_τ^4*(a_[τ]/40 - a_τ^2/80) - a_τ^4*(a_[τ] - a_τ^2/2)/8 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/12 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ^2*(a_[τ]/12 - a_τ^2/24)*(a_[τ] - a_τ^2/2) - a_τ^2*(a_[τ]/8 - a_τ^2/16)*(a_[τ] - a_τ^2/2) - 5*a_τ^2*(a_[τ] - a_τ^2/2)^2/24 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/3 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[τ][τ]]/2 - a_τ^5/40 - a_τ^3*(a_[τ]/8 - a_τ^2/16)/2 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/16 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - a_τ*(a_[[[τ]τ]] - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/3 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2)^2 - 2*(a_[τ]/2 - a_τ^2/4)*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))\"\n", + "b123433 = \"a_[[[τ]τ²]] - a_τ^6/60 - a_τ^4*(a_[τ] - a_τ^2/2)/4 - 5*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - 7*a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/12 - 5*a_τ^2*(a_[τ] - a_τ^2/2)^2/12 - a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/6 - 5*a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/6 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[τ³]] - a_τ^5/20 - a_τ^3*(a_[τ] - a_τ^2/2)/2 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4) - 3*a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2)/2 - a_τ*(a_[[τ]τ²]/2 - a_τ^5/20 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/8 - 5*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/12 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/4 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2) - a_τ*(a_[[[τ]τ]] - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/3 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))\"\n", + "b123432 = \"a_[[[τ]τ]τ] - a_τ^6/48 - 7*a_τ^4*(a_[τ] - a_τ^2/2)/24 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - 7*a_τ^2*(a_[τ] - a_τ^2/2)^2/12 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/3 - 5*a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ²]τ] - a_τ^5/15 - 7*a_τ^3*(a_[τ] - a_τ^2/2)/12 - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[[τ]]τ] - a_τ^5/30 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/12 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - a_τ*(a_[[[τ]τ]] - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/3 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - (a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)^2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2)\"\n", + "b123423 = \"a_[[[τ]][τ]] - a_τ^6/72 - a_τ^4*(a_[τ]/30 - a_τ^2/60) - 11*a_τ^4*(a_[τ] - a_τ^2/2)/60 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/8 - 7*a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/24 - 3*a_τ^2*(a_[τ]/8 - a_τ^2/16)*(a_[τ] - a_τ^2/2) - 3*a_τ^2*(a_[τ] - a_τ^2/2)^2/8 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/6 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - 2*a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ][τ]] - a_τ^5/20 - a_τ^3*(a_[τ]/8 - a_τ^2/16) - 3*a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - 2*(a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[[τ]]τ] - a_τ^5/30 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/12 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - (a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2)^2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", + "b123422 = \"a_[[[τ]]τ²] - a_τ^6/36 - 11*a_τ^4*(a_[τ] - a_τ^2/2)/30 - 7*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - 3*a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/6 - 2*a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - 5*a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[τ]τ²] - a_τ^5/10 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/4 - 5*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)))/2 - a_τ*(a_[[[τ]]τ] - a_τ^5/30 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/12 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)) - (a_[τ]/2 - a_τ^2/4)*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2) - (a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)\"\n", + "b123333 = \"a_[[τ⁴]] - a_τ^6/30 - 2*a_τ^4*(a_[τ] - a_τ^2/2)/5 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - 2*a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/3 - 2*a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - a_τ*(a_[τ⁴]/2 - a_τ^5/10 - a_τ^3*(a_[τ] - a_τ^2/2)/2 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)) - 2*a_τ*(a_[[τ³]] - a_τ^5/20 - a_τ^3*(a_[τ] - a_τ^2/2)/2 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4) - 3*a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2)\"\n", + "b123332 = \"a_[[τ³]τ] - a_τ^6/24 - 9*a_τ^4*(a_[τ] - a_τ^2/2)/20 - 5*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/8 - 3*a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/3 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ³]] - a_τ^5/20 - a_τ^3*(a_[τ] - a_τ^2/2)/2 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4) - 3*a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2)/2 - 3*a_τ*(a_[[τ²]τ] - a_τ^5/15 - 7*a_τ^3*(a_[τ] - a_τ^2/2)/12 - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - (a_[τ] - a_τ^2/2)*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4)\"\n", + "b123323 = \"a_[[τ²][τ]] - a_τ^6/36 - a_τ^4*(a_[τ]/15 - a_τ^2/30) - 4*a_τ^4*(a_[τ] - a_τ^2/2)/15 - 3*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/8 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ^2*(a_[τ]/8 - a_τ^2/16)*(a_[τ] - a_τ^2/2) - a_τ^2*(a_[τ]/4 - a_τ^2/8)*(a_[τ] - a_τ^2/2) - a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/6 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - 2*a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[τ²]τ] - a_τ^5/15 - 7*a_τ^3*(a_[τ] - a_τ^2/2)/12 - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ][τ]] - a_τ^5/20 - a_τ^3*(a_[τ]/8 - a_τ^2/16) - 3*a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - 2*(a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", + "b123322 = \"a_[[τ²]τ²] - a_τ^6/18 - 8*a_τ^4*(a_[τ] - a_τ^2/2)/15 - 5*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ^2*(a_[τ] - a_τ^2/2)^2/2 - a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/3 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/3 - 4*a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[[τ]τ²] - a_τ^5/10 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/4 - 5*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))) - a_τ*(a_[[τ²]τ] - a_τ^5/15 - 7*a_τ^3*(a_[τ] - a_τ^2/2)/12 - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))\"\n", + "b123232 = \"a_[[τ][τ]τ] - a_τ^6/24 - 9*a_τ^4*(a_[τ] - a_τ^2/2)/20 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - a_τ^2*(a_[τ]/8 - a_τ^2/16)*(a_[τ] - a_τ^2/2) - 7*a_τ^2*(a_[τ] - a_τ^2/2)^2/8 - a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/3 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[τ]τ²] - a_τ^5/10 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/4 - 5*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))) - a_τ*(a_[[τ][τ]] - a_τ^5/20 - a_τ^3*(a_[τ]/8 - a_τ^2/16) - 3*a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - 2*(a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - (a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2)^2 - 2*(a_[τ]/2 - a_τ^2/4)*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))\"\n", + "b123222 = \"a_[[τ]τ³] - a_τ^6/12 - 7*a_τ^4*(a_[τ] - a_τ^2/2)/10 - 9*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/8 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - 3*a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - 7*a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/6 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ⁴] - a_τ^5/5 - a_τ^3*(a_[τ] - a_τ^2/2) - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - 2*a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2))/2 - 3*a_τ*(a_[[τ]τ²] - a_τ^5/10 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/4 - 5*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)\"\n", + "b122222 = \"a_[τ⁵] - a_τ^6/6 - a_τ^4*(a_[τ] - a_τ^2/2) - 5*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - 10*a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/3 - 5*a_τ*(a_[τ⁴] - a_τ^5/5 - a_τ^3*(a_[τ] - a_τ^2/2) - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - 2*a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2))/2\"\n", + "\n", + "\n", + "\n", + "# Example usage:\n", + "plain_text = b122222\n", + "result_text = substitute_text(plain_text)\n", + "print(result_text)\n", + "\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "id": "86c5cba0", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c)/3 - (b'*diag(c)*A*diag(c)*A*c)/2 - (b'*A*diag(c).^2*A*c)/2 + (b'*((A*(c.^2.*(A*c))).*c))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*(c.^2.*(A*c.^2)))))/4 - (b'*(A*c).^2)/6 + (b'*diag(c)*(A*c).^2)/2 - (b'*A*c)/24 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c).*c))/2 - (b'*A*c.^2)/24 + ((b.*c)'*A*c.^2)/4 + (b'*diag(c).^2*A*c.^2)/8 + (b'*A*c.^3)/8 - (b'*diag(c)*A*c.^3)/4 + 1/144\n" + ] + } + ], + "source": [ + "# Convert to matlab conditions\n", + "def substitute_text(input_text):\n", + " # Define the substitution dictionary\n", + " substitutions = {\n", + " # order 3\n", + " \"a_[[τ]]\": \"(b'*A*c)\",\n", + " # order 4\n", + " \"a_[[[τ]]]\": \"(b'*A^2*c)\",\n", + " \"a_[[[τ²]]]\": \"(b'*A*c.^2)\",\n", + " \"a_[[τ]τ]\": \"((b'.*c')*A*c)\",\n", + " \"a_[τ³]\": \"(c'.^3*b)\",\n", + " \"a_[[τ²]]\": \"(b'*A*c.^2)\",\n", + " # order 5\n", + " \"a_[[[[τ]]]]\": \"(b'*A^3*c)\",\n", + " \"a_[[[τ²]]]\": \"(b'*A^2*c.^2)\",\n", + " \"a_[[[τ]τ]]\": \"(b'*A*diag(c)*A*c)\",\n", + " \"a_[[[τ]]τ]\": \"((b.*c)'*A^2*c)\",\n", + " \"a_[[τ³]]\": \"(b'*A*c.^3)\",\n", + " \"a_[[τ²]τ]\": \"((b.*c)'*A*c.^2)\",\n", + " \"a_[[τ][τ]]\": \"(b'*(A*c).^2)\",\n", + " \"a_[[τ]τ²]\": \"((b.*c.^2)'*A*c)\",\n", + " \"a_[τ⁴]\": \"(c'.^4*b)\",\n", + " # order 6\n", + " \"a_[[[[[τ]]]]]\": \"(b'*A^4*c)\",\n", + " \"a_[[[[τ²]]]]\": \"(b'*A^3*c.^2)\",\n", + " \"a_[[[[τ]τ]]]\": \"(b'*A^2*diag(c)*A*c)\",\n", + " \"a_[[[[τ]]τ]]\": \"(b'*A*diag(c)*A^2*c)\",\n", + " \"a_[[[[τ]]]τ]\": \"(b'*diag(c)*A^3*c)\",\n", + " \"a_[[[τ³]]]\": \"(b'*A^2*c.^3)\",\n", + " \"a_[[[τ²]τ]]\": \"(b'*A*diag(c)*A*c.^2)\",\n", + " \"a_[[[τ²]]τ]\": \"(b'*diag(c)*A^2*c.^2)\",\n", + " \"a_[[[τ][τ]]]\": \"(b'*A*(A*c).^2)\",\n", + " \"a_[[[τ]τ²]]\": \"(b'*A*diag(c).^2*A*c)\",\n", + " \"a_[[[τ]τ]τ]\": \"(b'*diag(c)*A*diag(c)*A*c)\",\n", + " \"a_[[[τ]][τ]]\": \"(b'*((A^2*c).*(A*c)))\",\n", + " \"a_[[[τ]]τ²]\": \"(b'*diag(c).^2*A^2*c)\",\n", + " \"a_[[τ⁴]]\": \"(b'*A*c.^4)\",\n", + " \"a_[[τ³]τ]\": \"(b'*diag(c)*A*c.^3)\",\n", + " \"a_[[τ²][τ]]\": \"(b'*((A*c.^2).*(A*c)))\",\n", + " \"a_[[τ²]τ²]\": \"(b'*diag(c).^2*A*c.^2)\",\n", + " \"a_[[τ][τ]τ]\": \"(b'*diag(c)*(A*c).^2)\",\n", + " \"a_[[τ]τ³]\": \"(b'*diag(c).^3*A*c)\",\n", + " \"a_[τ⁵]\": \"(c'.^5*b)\",\n", + " # order 7\n", + " \"a_[τ⁶]\": \"b'*(c.^6)\",\n", + " \"a_[[[[[[τ]]]]]]\": \"(b'*((A*(A*(A*(A*(A*c)))))))\",\n", + " \"a_[[[[[τ²]]]]]\": \"(b'*((A*(A*(A*(A*c.^2))))))\",\n", + " \"a_[[[[[τ]τ]]]]\": \"(b'*((A*(A*(A*(c.*(A*c)))))))\",\n", + " \"a_[[[[[τ]]τ]]]\": \"(b'*((A*(A*diag(c)*(A*(A*c))))))\",\n", + " \"a_[[[[[τ]]]τ]]\": \"(b'*((A*(c.*(A*(A*(A*c)))))))\", \n", + " \"a_[[[[[τ]]]]τ]\": \"(b'*((A*(A*(A*(A*c)))).*c))\",\n", + " \"a_[[[[τ³]]]]\": \"(b'*((A*(A*(A*c.^3)))))\",\n", + " \"a_[[[[τ²]τ]]]\": \"(b'*((A*(A*(c.*(A*c.^2))))))\",\n", + " \"a_[[[[τ²]]τ]]\": \"(b'*((A*(c.*(A*(A*c.^2))))))\",\n", + " \"a_[[[[τ²]]]τ]\": \"(b'*((A*(A*(A*c.^2))).*c))\",\n", + " \"a_[[[[τ][τ]]]]\": \"b'*((A*(A*((A*c).*(A*c)))))\",\n", + " \"a_[[[[τ]τ²]]]\": \"(b'*((A*(A*(c.^2.*(A*c))))))\",\n", + " \"a_[[[[τ]τ]τ]]\": \"(b'*((A*diag(c)*(A*diag(c)*(A*c)))))\",\n", + " \"a_[[[[τ]τ]]τ]\": \"(b'*((A*(A*(c.*(A*c)))).*c))\",\n", + " \"a_[[[[τ]][τ]]]\": \"(b'*((A*((A*c).*(A*(A*c))))))\",\n", + " \"a_[[[[τ]]τ²]]\": \"(b'*((A*(c.^2.*(A*(A*c))))))\",\n", + " \"a_[[[[τ]]τ]τ]\": \"(b'*((A*(c.*(A*(A*c)))).*c))\",\n", + " \"a_[[[[τ]]][τ]]\": \"(b'*((A*(A*(A*c))).*(A*c)))\",\n", + " \"a_[[[[τ]]]τ²]\": \"(b'*((A*(A*(A*c))).*c.^2))\",\n", + " \"a_[[[τ⁴]]]\": \"(b'*((A*(A*c.^4))))\",\n", + " \"a_[[[τ³]τ]]\": \"(b'*((A*(c.*(A*c.^3)))))\",\n", + " \"a_[[[τ³]]τ]\": \"(b'*((A*(A*c.^3)).*c))\",\n", + " \"a_[[[τ²][τ]]]\": \"(b'*((A*(c.^2.*(A*(A*c))))))\",\n", + " \"a_[[[τ²]τ²]]\": \"(b'*((A*(c.^2.*(A*c.^2)))))\",\n", + " \"a_[[[τ²]τ]τ]\": \"(b'*((A*(c.*(A*c.^2))).*c))\",\n", + " \"a_[[[τ²]][τ]]\": \"(b'*((A*(A*c.^2)).*(A*c)))\",\n", + " \"a_[[[τ²]]τ²]\": \"(b'*((A*(A*c.^2)).*c.^2))\",\n", + " \"a_[[[τ][τ]τ]]\": \"(b'*((A*(c.*(A*c).*(A*c)))))\",\n", + " \"a_[[[τ][τ]]τ]\": \"(b'*((A*((A*c).*(A*c))).*c))\",\n", + " \"a_[[[τ]τ³]]\": \"(b'*((A*(c.^3.*(A*c)))))\",\n", + " \"a_[[[τ]τ²]τ]\": \"(b'*((A*(c.^2.*(A*c))).*c))\",\n", + " \"a_[[[τ]τ][τ]]\": \"(b'*((A*diag(c)*(A*c)).*(A*c)))\",\n", + " \"a_[[[τ]τ]τ²]\": \"(b'*((A*(c.*(A*c))).*c.^2))\",\n", + " \"a_[[[τ]][[τ]]]\": \"(b'*((A*(A*c)).*(A*(A*c))))\",\n", + " \"a_[[[τ]][τ²]]\": \"(b'*((A*(A*c)).*(A*c.^2)))\",\n", + " \"a_[[[τ]][τ]τ]\": \"(b'*((A*(A*c)).*(A*c).*c))\",\n", + " \"a_[[[τ]]τ³]\": \"(b'*((A*(A*c)).*c.^3))\",\n", + " \"a_[[τ⁵]]\": \"(b'*((A*c.^5)))\",\n", + " \"a_[[τ⁴]τ]\": \"(b'*((A*c.^4).*c))\",\n", + " \"a_[[τ³][τ]]\": \"(b'*((A*c.^3).*(A*c)))\",\n", + " \"a_[[τ³]τ²]\": \"(b'*((A*c.^3).*c.^2))\",\n", + " \"a_[[τ²][τ²]]\": \"(b'*((A*c.^2).*(A*c.^2)))\",\n", + " \"a_[[τ²][τ]τ]\": \"(b'*((A*c.^2).*(A*c).*c))\",\n", + " \"a_[[τ²]τ³]\": \"(b'*((A*c.^2).*c.^3))\",\n", + " \"a_[[τ][τ][τ]]\": \"(b'*((A*c).*(A*c).*(A*c)))\",\n", + " \"a_[[τ][τ]τ²]\": \"(b'*((A*c).*(A*c).*c.^2))\",\n", + " \"a_[[τ]τ⁴]\": \"(b'*((A*c).*c.^4))\",\n", + " # order 8\n", + " \n", + " # Add more substitutions as needed\n", + " }\n", + "\n", + " # Iterate through the dictionary and perform substitutions\n", + " for old_text, new_text in substitutions.items():\n", + " input_text = input_text.replace(old_text, new_text)\n", + "\n", + " return input_text\n", + "\n", + "\n", + "\n", + "# Example usage:\n", + "plain_text = \"a_[[[τ]]τ]/12 + a_[[[τ]τ]]/3 - a_[[[τ]τ]τ]/2 - a_[[[τ]τ²]]/2 + a_[[[τ]τ²]τ]/2 + a_[[[τ²]]]/24 - a_[[[τ²]τ]]/4 + a_[[[τ²]τ²]]/4 - a_[[τ][τ]]/6 + a_[[τ][τ]τ]/2 - a_[[τ]]/24 - a_[[τ]τ]/12 - a_[[τ]τ²]/8 + a_[[τ²][τ]]/4 - a_[[τ²][τ]τ]/2 - a_[[τ²]]/24 + a_[[τ²]τ]/4 + a_[[τ²]τ²]/8 + a_[[τ³]]/8 - a_[[τ³]τ]/4 + 1/144\"\n", + "result_text = substitute_text(plain_text)\n", + "print(result_text)\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "id": "f690180b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1/2 (- 1/4^2 + 1/8- 2 1/16+ 2 1/32 ) \n" + ] + } + ], + "source": [ + "# Convert to numerical values\n", + "def substitute_text(input_text):\n", + " # Define the substitution dictionary\n", + " substitutions = {\n", + " \"a123 \": \"1/4\",\n", + " \"a1234 \": \"1/8\",\n", + " \"a1233 \": \"1/6\",\n", + " \"a1232 \": \"1/6\",\n", + " \"a12345 \": \"1/16\",\n", + " \"a12344 \": \"1/12\",\n", + " \"a12343 \": \"1/12\",\n", + " \"a12342 \": \"1/12\",\n", + " \"a12333 \": \"1/8\",\n", + " \"a12332 \": \"1/9\",\n", + " \"a12323 \": \"1/12\",\n", + " \"a12322 \": \"1/8\",\n", + " \"a123456\": \"1/32\",\n", + " \"a123455 \": \"1/24\",\n", + " \"a123454 \": \"1/24\",\n", + " \"a123453 \": \"1/24\",\n", + " \"a123452 \": \"1/24\",\n", + " \"a123444 \": \"1/16\",\n", + " \"a123443 \": \"1/18\",\n", + " \"a123442 \": \"1/18\",\n", + " \"a123434 \": \"1/24\",\n", + " \"a123433 \": \"1/16\",\n", + " \"a123432 \": \"1/18\",\n", + " \"a123423 \": \"1/24\",\n", + " \"a123422 \": \"1/16\",\n", + " \"a123333 \": \"1/10\",\n", + " \"a123332 \": \"1/12\",\n", + " \"a123323 \": \"1/18\",\n", + " \"a123322 \": \"1/12\",\n", + " \"a123232 \": \"1/16\",\n", + " \"a123222 \": \"1/10\",\n", + " # Add more substitutions as needed\n", + " }\n", + "\n", + " # Iterate through the dictionary and perform substitutions\n", + " for old_text, new_text in substitutions.items():\n", + " input_text = input_text.replace(old_text, new_text)\n", + "\n", + " return input_text\n", + "\n", + "\n", + "\n", + "# Example usage:\n", + "plain_text = \"1/2 (- a123 ^2 + a1234 - 2 a12345 + 2 a123456 ) \"\n", + "result_text = substitute_text(plain_text)\n", + "print(result_text)" + ] + }, + { + "cell_type": "code", + "execution_count": 142, + "id": "16620042", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2 (6 \\coeff_{\\rt[[[]][]]}+ 12 \\coeff_{\\rt[[[]][[]]]}+ 9 \\coeff_{\\rt[[[][]]]}+ 8 \\coeff_{\\r[[[[]]]]}+ 24 \\coeff_{\\rt[[[[]][]][]]}+ 12 \\coeff_{\\rt[[[[][]][]]]}) = 1 + 4 \\coeff_{\\rt[[[]]]}+ 24 \\coeff_{\\rt[[[][]][]]}+ 24 \\coeff_{\\rt[[[][]][][]]}+ 24 \\coeff_{\\rt[[[[]]][]]}+ 48 \\coeff_{\\rt[[[[]][]]]}+ 12 \\coeff_{\\rt[[[[][]]]]}\n" + ] + } + ], + "source": [ + "# Convert to Latex\n", + "import re\n", + "\n", + "# Define the substitution dictionary\n", + "def substitute_text(input_text):\n", + " substitutions = {\n", + " \"a123 \": \"\\\\coeff_{\\\\rt[[[]]]}\",\n", + " \"a1234 \": \"\\\\coeff_{\\\\r[[[[]]]]}\",\n", + " \"a1233 \": \"\\\\coeff_{\\\\rt[[[][]]]}\",\n", + " \"a1232 \": \"\\\\coeff_{\\\\rt[[[]][]]}\",\n", + " \"a12345 \": \"\\\\coeff_{\\\\rt[[[[[]]]]]}\",\n", + " \"a12344 \": \"\\\\coeff_{\\\\rt[[[[][]]]]}\",\n", + " \"a12343 \": \"\\\\coeff_{\\\\rt[[[[]][]]]}\",\n", + " \"a12342 \": \"\\\\coeff_{\\\\rt[[[[]]][]]}\",\n", + " \"a12333 \": \"\\\\coeff_{\\\\rt[[[][][]]]}\",\n", + " \"a12332 \": \"\\\\coeff_{\\\\rt[[[][]][]]}\",\n", + " \"a12323 \": \"\\\\coeff_{\\\\rt[[[]][[]]]}\",\n", + " \"a12322 \": \"\\\\coeff_{\\\\rt[[[]][][]]}\",\n", + " \"a123456\": \"\\\\coeff_{\\\\rt[[[[[[]]]]]]}\",\n", + " \"a123455 \": \"\\\\coeff_{\\\\rt[[[[[][]]]]]}\",\n", + " \"a123454 \": \"\\\\coeff_{\\\\rt[[[[[]][]]]]}\",\n", + " \"a123453 \": \"\\\\coeff_{\\\\rt[[[[[]]][]]]}\",\n", + " \"a123452 \": \"\\\\coeff_{\\\\rt[[[[[]]]][]]}\",\n", + " \"a123444 \": \"\\\\coeff_{\\\\rt[[[[][][]]]]}\",\n", + " \"a123443 \": \"\\\\coeff_{\\\\rt[[[[][]][]]]}\",\n", + " \"a123442 \": \"\\\\coeff_{\\\\rt[[[[][]]][]]}\",\n", + " \"a123434 \": \"\\\\coeff_{\\\\rt[[[[]][[]]]]}\",\n", + " \"a123433 \": \"\\\\coeff_{\\\\rt[[[[]][][]]]}\",\n", + " \"a123432 \": \"\\\\coeff_{\\\\rt[[[[]][]][]]}\",\n", + " \"a123423 \": \"\\\\coeff_{\\\\rt[[[[]]][[]]]}\",\n", + " \"a123422 \": \"\\\\coeff_{\\\\rt[[[[]]][[]]]}\",\n", + " \"a123333 \": \"\\\\coeff_{\\\\rt[[[][][][]]]}\",\n", + " \"a123332 \": \"\\\\coeff_{\\\\rt[[[][][]][]]}\",\n", + " \"a123323 \": \"\\\\coeff_{\\\\rt[[[][]][][]]}\",\n", + " \"a123322 \": \"\\\\coeff_{\\\\rt[[[][]][][]]}\",\n", + " \"a123232 \": \"\\\\coeff_{\\\\rt[[[]][[]][]]}\",\n", + " \"a123222 \": \"\\\\coeff_{\\\\rt[[[]][][][]]}\",\n", + " # Add more substitutions as needed\n", + " }\n", + " \n", + " # Iterate through the dictionary and perform substitutions\n", + " for old_text, new_text in substitutions.items():\n", + " input_text = input_text.replace(old_text, new_text)\n", + "\n", + " return input_text\n", + "\n", + "\n", + "\n", + "# Example usage:\n", + "plain_text = \"2 (6 a1232 + 12 a12323 + 9 a1233 + 8 a1234 + 24 a123432 + 12 a123443 ) = 1 + 4 a123 + 24 a12332 + 24 a123323 + 24 a12342 + 48 a12343 + 12 a12344 \"\n", + "result_text = substitute_text(plain_text)\n", + "print(result_text)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "107cb1b3", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.9" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From bb658bf0b0897ce162cb25381efe484f7ce14d55 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Thu, 14 Mar 2024 13:03:04 -0600 Subject: [PATCH 12/18] Project and Manifest --- RK-coeff-opt/PEP_Generator/Manifest.toml | 339 +++++++++++++++++++++++ RK-coeff-opt/PEP_Generator/Project.toml | 3 + 2 files changed, 342 insertions(+) create mode 100644 RK-coeff-opt/PEP_Generator/Manifest.toml create mode 100644 RK-coeff-opt/PEP_Generator/Project.toml diff --git a/RK-coeff-opt/PEP_Generator/Manifest.toml b/RK-coeff-opt/PEP_Generator/Manifest.toml new file mode 100644 index 0000000..ba566ef --- /dev/null +++ b/RK-coeff-opt/PEP_Generator/Manifest.toml @@ -0,0 +1,339 @@ +# This file is machine-generated - editing it directly is not advised + +[[ArgTools]] +uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f" + +[[Artifacts]] +uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" + +[[BSeries]] +deps = ["Combinatorics", "Latexify", "LinearAlgebra", "OrderedCollections", "Polynomials", "Reexport", "Requires", "RootedTrees", "SparseArrays"] +git-tree-sha1 = "0ab58c0f5a6554c4d76e9e863170a6b9180a03bf" +uuid = "ebb8d67c-85b4-416c-b05f-5f409e808f32" +version = "0.1.58" + +[[Base64]] +uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" + +[[ChainRulesCore]] +deps = ["Compat", "LinearAlgebra", "SparseArrays"] +git-tree-sha1 = "575cd02e080939a33b6df6c5853d14924c08e35b" +uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" +version = "1.23.0" + +[[ChangesOfVariables]] +deps = ["InverseFunctions", "LinearAlgebra", "Test"] +git-tree-sha1 = "2fba81a302a7be671aefe194f0525ef231104e7f" +uuid = "9e997f8a-9a97-42d5-a9f1-ce6bfc15e2c0" +version = "0.1.8" + +[[Combinatorics]] +git-tree-sha1 = "08c8b6831dc00bfea825826be0bc8336fc369860" +uuid = "861a8166-3701-5b0c-9a16-15d98fcdc6aa" +version = "1.0.2" + +[[CommonEq]] +git-tree-sha1 = "6b0f0354b8eb954cdba708fb262ef00ee7274468" +uuid = "3709ef60-1bee-4518-9f2f-acd86f176c50" +version = "0.2.1" + +[[CommonSolve]] +git-tree-sha1 = "0eee5eb66b1cf62cd6ad1b460238e60e4b09400c" +uuid = "38540f10-b2f7-11e9-35d8-d573e4eb0ff2" +version = "0.2.4" + +[[Compat]] +deps = ["Dates", "LinearAlgebra", "TOML", "UUIDs"] +git-tree-sha1 = "c955881e3c981181362ae4088b35995446298b80" +uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" +version = "4.14.0" + +[[CompilerSupportLibraries_jll]] +deps = ["Artifacts", "Libdl"] +uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" + +[[Conda]] +deps = ["Downloads", "JSON", "VersionParsing"] +git-tree-sha1 = "51cab8e982c5b598eea9c8ceaced4b58d9dd37c9" +uuid = "8f4d0f93-b110-5947-807f-2305c1781a2d" +version = "1.10.0" + +[[Dates]] +deps = ["Printf"] +uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" + +[[DocStringExtensions]] +deps = ["LibGit2"] +git-tree-sha1 = "2fb1e02f2b635d0845df5d7c167fec4dd739b00d" +uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" +version = "0.9.3" + +[[Downloads]] +deps = ["ArgTools", "LibCURL", "NetworkOptions"] +uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6" + +[[Format]] +git-tree-sha1 = "f3cf88025f6d03c194d73f5d13fee9004a108329" +uuid = "1fa38f19-a742-5d3f-a2b9-30dd87b9d5f8" +version = "1.3.6" + +[[InteractiveUtils]] +deps = ["Markdown"] +uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" + +[[InverseFunctions]] +deps = ["Test"] +git-tree-sha1 = "68772f49f54b479fa88ace904f6127f0a3bb2e46" +uuid = "3587e190-3f89-42d0-90ee-14403ec27112" +version = "0.1.12" + +[[IrrationalConstants]] +git-tree-sha1 = "630b497eafcc20001bba38a4651b327dcfc491d2" +uuid = "92d709cd-6900-40b7-9082-c6be49f344b6" +version = "0.2.2" + +[[JLLWrappers]] +deps = ["Artifacts", "Preferences"] +git-tree-sha1 = "7e5d6779a1e09a36db2a7b6cff50942a0a7d0fca" +uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210" +version = "1.5.0" + +[[JSON]] +deps = ["Dates", "Mmap", "Parsers", "Unicode"] +git-tree-sha1 = "31e996f0a15c7b280ba9f76636b3ff9e2ae58c9a" +uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" +version = "0.21.4" + +[[LaTeXStrings]] +git-tree-sha1 = "50901ebc375ed41dbf8058da26f9de442febbbec" +uuid = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f" +version = "1.3.1" + +[[Latexify]] +deps = ["Format", "InteractiveUtils", "LaTeXStrings", "MacroTools", "Markdown", "OrderedCollections", "Requires"] +git-tree-sha1 = "cad560042a7cc108f5a4c24ea1431a9221f22c1b" +uuid = "23fbe1c1-3f47-55db-b15f-69d7ec21a316" +version = "0.16.2" + +[[LibCURL]] +deps = ["LibCURL_jll", "MozillaCACerts_jll"] +uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21" + +[[LibCURL_jll]] +deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"] +uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0" + +[[LibGit2]] +deps = ["Base64", "NetworkOptions", "Printf", "SHA"] +uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" + +[[LibSSH2_jll]] +deps = ["Artifacts", "Libdl", "MbedTLS_jll"] +uuid = "29816b5a-b9ab-546f-933c-edad1886dfa8" + +[[Libdl]] +uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" + +[[LinearAlgebra]] +deps = ["Libdl"] +uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" + +[[LogExpFunctions]] +deps = ["ChainRulesCore", "ChangesOfVariables", "DocStringExtensions", "InverseFunctions", "IrrationalConstants", "LinearAlgebra"] +git-tree-sha1 = "18144f3e9cbe9b15b070288eef858f71b291ce37" +uuid = "2ab3a3ac-af41-5b50-aa03-7779005ae688" +version = "0.3.27" + +[[Logging]] +uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" + +[[MacroTools]] +deps = ["Markdown", "Random"] +git-tree-sha1 = "2fa9ee3e63fd3a4f7a9a4f4744a52f4856de82df" +uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" +version = "0.5.13" + +[[MakieCore]] +deps = ["Observables", "REPL"] +git-tree-sha1 = "9b11acd07f21c4d035bd4156e789532e8ee2cc70" +uuid = "20f20a25-4f0e-4fdf-b5d1-57303727442b" +version = "0.6.9" + +[[Markdown]] +deps = ["Base64"] +uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" + +[[MbedTLS_jll]] +deps = ["Artifacts", "Libdl"] +uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" + +[[Mmap]] +uuid = "a63ad114-7e13-5084-954f-fe012c677804" + +[[MozillaCACerts_jll]] +uuid = "14a3606d-f60d-562e-9121-12d972cd8159" + +[[MutableArithmetics]] +deps = ["LinearAlgebra", "SparseArrays", "Test"] +git-tree-sha1 = "302fd161eb1c439e4115b51ae456da4e9984f130" +uuid = "d8a4904e-b15c-11e9-3269-09a3773c0cb0" +version = "1.4.1" + +[[NetworkOptions]] +uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" + +[[Observables]] +git-tree-sha1 = "7438a59546cf62428fc9d1bc94729146d37a7225" +uuid = "510215fc-4207-5dde-b226-833fc4488ee2" +version = "0.5.5" + +[[OpenLibm_jll]] +deps = ["Artifacts", "Libdl"] +uuid = "05823500-19ac-5b8b-9628-191a04bc5112" + +[[OpenSpecFun_jll]] +deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] +git-tree-sha1 = "13652491f6856acfd2db29360e1bbcd4565d04f1" +uuid = "efe28fd5-8261-553b-a9e1-b2916fc3738e" +version = "0.5.5+0" + +[[OrderedCollections]] +git-tree-sha1 = "dfdf5519f235516220579f949664f1bf44e741c5" +uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" +version = "1.6.3" + +[[Parsers]] +deps = ["Dates", "PrecompileTools", "UUIDs"] +git-tree-sha1 = "8489905bcdbcfac64d1daa51ca07c0d8f0283821" +uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" +version = "2.8.1" + +[[Pkg]] +deps = ["Artifacts", "Dates", "Downloads", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"] +uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" + +[[Polynomials]] +deps = ["ChainRulesCore", "LinearAlgebra", "MakieCore", "MutableArithmetics", "RecipesBase"] +git-tree-sha1 = "3aa2bb4982e575acd7583f01531f241af077b163" +uuid = "f27b6e38-b328-58d1-80ce-0feddd5e7a45" +version = "3.2.13" + +[[PrecompileTools]] +deps = ["Preferences"] +git-tree-sha1 = "5aa36f7049a63a1528fe8f7c3f2113413ffd4e1f" +uuid = "aea7be01-6a6a-4083-8856-8a6e6704d82a" +version = "1.2.1" + +[[Preferences]] +deps = ["TOML"] +git-tree-sha1 = "9306f6085165d270f7e3db02af26a400d580f5c6" +uuid = "21216c6a-2e73-6563-6e65-726566657250" +version = "1.4.3" + +[[Printf]] +deps = ["Unicode"] +uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" + +[[PyCall]] +deps = ["Conda", "Dates", "Libdl", "LinearAlgebra", "MacroTools", "Serialization", "VersionParsing"] +git-tree-sha1 = "9816a3826b0ebf49ab4926e2b18842ad8b5c8f04" +uuid = "438e738f-606a-5dbb-bf0a-cddfbfd45ab0" +version = "1.96.4" + +[[REPL]] +deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"] +uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" + +[[Random]] +deps = ["Serialization"] +uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" + +[[RecipesBase]] +deps = ["PrecompileTools"] +git-tree-sha1 = "5c3d09cc4f31f5fc6af001c250bf1278733100ff" +uuid = "3cdcf5f2-1ef4-517c-9805-6587b60abb01" +version = "1.3.4" + +[[Reexport]] +git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b" +uuid = "189a3867-3050-52da-a836-e630ba90ab69" +version = "1.2.2" + +[[Requires]] +deps = ["UUIDs"] +git-tree-sha1 = "838a3a4188e2ded87a4f9f184b4b0d78a1e91cb7" +uuid = "ae029012-a4dd-5104-9daa-d747884805df" +version = "1.3.0" + +[[RootedTrees]] +deps = ["LaTeXStrings", "Latexify", "LinearAlgebra", "Preferences", "RecipesBase", "Requires"] +git-tree-sha1 = "056631b852ff2b349fc4fc30c7ec01d5ffff5834" +uuid = "47965b36-3f3e-11e9-0dcf-4570dfd42a8c" +version = "2.21.0" + +[[SHA]] +uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" + +[[Serialization]] +uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" + +[[Sockets]] +uuid = "6462fe0b-24de-5631-8697-dd941f90decc" + +[[SparseArrays]] +deps = ["LinearAlgebra", "Random"] +uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" + +[[SpecialFunctions]] +deps = ["ChainRulesCore", "IrrationalConstants", "LogExpFunctions", "OpenLibm_jll", "OpenSpecFun_jll"] +git-tree-sha1 = "e2cfc4012a19088254b3950b85c3c1d8882d864d" +uuid = "276daf66-3868-5448-9aa4-cd146d93841b" +version = "2.3.1" + +[[SymPy]] +deps = ["CommonEq", "CommonSolve", "LinearAlgebra", "PyCall", "SpecialFunctions", "SymPyCore"] +git-tree-sha1 = "8d727c118eb31ffad73cce569b7bb29eef5fb9ad" +uuid = "24249f21-da20-56a4-8eb1-6a02cf4ae2e6" +version = "2.0.1" + +[[SymPyCore]] +deps = ["CommonEq", "CommonSolve", "Latexify", "LinearAlgebra", "Markdown", "RecipesBase", "SpecialFunctions"] +git-tree-sha1 = "4c5a53625f0e53ce1e726a6dab1c870017303728" +uuid = "458b697b-88f0-4a86-b56b-78b75cfb3531" +version = "0.1.16" + +[[TOML]] +deps = ["Dates"] +uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" + +[[Tar]] +deps = ["ArgTools", "SHA"] +uuid = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e" + +[[Test]] +deps = ["InteractiveUtils", "Logging", "Random", "Serialization"] +uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" + +[[UUIDs]] +deps = ["Random", "SHA"] +uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" + +[[Unicode]] +uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" + +[[VersionParsing]] +git-tree-sha1 = "58d6e80b4ee071f5efd07fda82cb9fbe17200868" +uuid = "81def892-9a0e-5fdd-b105-ffc91e053289" +version = "1.3.0" + +[[Zlib_jll]] +deps = ["Libdl"] +uuid = "83775a58-1f1d-513f-b197-d71354ab007a" + +[[nghttp2_jll]] +deps = ["Artifacts", "Libdl"] +uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" + +[[p7zip_jll]] +deps = ["Artifacts", "Libdl"] +uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" diff --git a/RK-coeff-opt/PEP_Generator/Project.toml b/RK-coeff-opt/PEP_Generator/Project.toml new file mode 100644 index 0000000..a7b02b6 --- /dev/null +++ b/RK-coeff-opt/PEP_Generator/Project.toml @@ -0,0 +1,3 @@ +[deps] +BSeries = "ebb8d67c-85b4-416c-b05f-5f409e808f32" +SymPy = "24249f21-da20-56a4-8eb1-6a02cf4ae2e6" From 0f84f6fd03f1ee31a4c3d9f8d145e23496218f4a Mon Sep 17 00:00:00 2001 From: Sondar74 <79122393+Sondar74@users.noreply.github.com> Date: Thu, 14 Mar 2024 16:52:13 -0600 Subject: [PATCH 13/18] Update RK-coeff-opt/PEP_Generator/README.txt Co-authored-by: Hendrik Ranocha --- RK-coeff-opt/PEP_Generator/README.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/RK-coeff-opt/PEP_Generator/README.txt b/RK-coeff-opt/PEP_Generator/README.txt index 01f9e2f..76ef8cc 100644 --- a/RK-coeff-opt/PEP_Generator/README.txt +++ b/RK-coeff-opt/PEP_Generator/README.txt @@ -3,4 +3,6 @@ 2. This conditions must be applied to the file 'PEPGenerator.jl', which generates PEP conditions, one by one, in Butcher Notation. -3. Finally, copy-paste the output in 'Translator.ipynb', which returns the PEP condition in Matlab format. \ No newline at end of file +3. Finally, copy-paste the output in 'Translator.ipynb', which returns the PEP condition in Matlab format. + +This code was written for Julia v1.6. The versions of the Julia packages are recorded in the `Project.toml` and `Manifest.toml` files. \ No newline at end of file From 8e48274fb283260dfca49273729eef3d04b5fa70 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Mon, 15 Apr 2024 14:28:13 -0600 Subject: [PATCH 14/18] closing PR --- .../Energy-preserving_conjugates.ipynb | 1399 ----------------- RK-coeff-opt/PEP_Generator/Manifest.toml | 339 ---- RK-coeff-opt/PEP_Generator/PEPGenerator.jl | 17 - RK-coeff-opt/PEP_Generator/Project.toml | 3 - RK-coeff-opt/PEP_Generator/README.txt | 6 - RK-coeff-opt/PEP_Generator/Translator.ipynb | 372 ----- RK-coeff-opt/PEP_search.m | 17 - 7 files changed, 2153 deletions(-) delete mode 100644 RK-coeff-opt/PEP_Generator/Energy-preserving_conjugates.ipynb delete mode 100644 RK-coeff-opt/PEP_Generator/Manifest.toml delete mode 100644 RK-coeff-opt/PEP_Generator/PEPGenerator.jl delete mode 100644 RK-coeff-opt/PEP_Generator/Project.toml delete mode 100644 RK-coeff-opt/PEP_Generator/README.txt delete mode 100644 RK-coeff-opt/PEP_Generator/Translator.ipynb delete mode 100644 RK-coeff-opt/PEP_search.m diff --git a/RK-coeff-opt/PEP_Generator/Energy-preserving_conjugates.ipynb b/RK-coeff-opt/PEP_Generator/Energy-preserving_conjugates.ipynb deleted file mode 100644 index dc2972f..0000000 --- a/RK-coeff-opt/PEP_Generator/Energy-preserving_conjugates.ipynb +++ /dev/null @@ -1,1399 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "id": "91808bdb-650f-435b-bdde-78e3f275ab75", - "metadata": {}, - "outputs": [], - "source": [ - "using BSeries\n", - "using RootedTrees\n", - "using Plots" - ] - }, - { - "cell_type": "markdown", - "id": "1fa58e6d-5016-45b3-bc8d-d4a38aa9817e", - "metadata": { - "jp-MarkdownHeadingCollapsed": true - }, - "source": [ - "# Printing the energy-preserving conjugates" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "id": "ce8fb075-3cfb-42ce-9504-51d5fd3e70b6", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[1, 2, 3]\n", - "Conjugates:\n", - "+self\n", - "\n", - "[1, 2, 2]\n", - "Conjugates:\n", - "-self\n", - "\n" - ] - } - ], - "source": [ - "for tree in RootedTreeIterator(7)\n", - " println(tree.level_sequence)\n", - " println(\"Conjugates:\")\n", - " for t in BSeries.equivalent_trees(tree.level_sequence)\n", - " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", - " if (-1)^BSeries.num_branches(t) == -1\n", - " print(\"-\")\n", - " else\n", - " print(\"+\")\n", - " end\n", - " if energy_preserving_conjugate == rootedtree(t)\n", - " println(\"self\")\n", - " else\n", - " println(energy_preserving_conjugate.level_sequence)\n", - " end\n", - " end\n", - " println(\"\")\n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "id": "21b147da-116e-4016-937b-4e1783c0b48c", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[1, 2, 3, 4]\n", - "Conjugates:\n", - "-self\n", - "\n", - "[1, 2, 3, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 3]\n", - "-self\n", - "\n", - "[1, 2, 2, 2]\n", - "Conjugates:\n", - "-self\n", - "\n" - ] - } - ], - "source": [ - "for tree in RootedTreeIterator(4)\n", - " println(tree.level_sequence)\n", - " println(\"Conjugates:\")\n", - " for t in BSeries.equivalent_trees(tree.level_sequence)\n", - " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", - " if (-1)^BSeries.num_branches(t) == -1\n", - " print(\"-\")\n", - " else\n", - " print(\"+\")\n", - " end\n", - " if energy_preserving_conjugate == rootedtree(t)\n", - " println(\"self\")\n", - " else\n", - " println(energy_preserving_conjugate.level_sequence)\n", - " end\n", - " end\n", - " println(\"\")\n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "2dfc509a-94f1-4e8e-aabc-33d73d6dcc2a", - "metadata": {}, - "outputs": [], - "source": [ - "for tree in RootedTreeIterator(5)\n", - " println(tree.level_sequence)\n", - " println(\"Conjugates:\")\n", - " for t in BSeries.equivalent_trees(tree.level_sequence)\n", - " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", - " if (-1)^BSeries.num_branches(t) == -1\n", - " print(\"-\")\n", - " else\n", - " print(\"+\")\n", - " end\n", - " if energy_preserving_conjugate == rootedtree(t)\n", - " println(\"self\")\n", - " else\n", - " println(energy_preserving_conjugate.level_sequence)\n", - " end\n", - " end\n", - " println(\"\")\n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "dfee010d-d82c-430c-b636-1aad031e79fd", - "metadata": {}, - "outputs": [], - "source": [ - "for tree in RootedTreeIterator(6)\n", - " println(tree.level_sequence)\n", - " println(\"Conjugates:\")\n", - " for t in BSeries.equivalent_trees(tree.level_sequence)\n", - " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", - " if (-1)^BSeries.num_branches(t) == -1\n", - " print(\"-\")\n", - " else\n", - " print(\"+\")\n", - " end\n", - " if energy_preserving_conjugate == rootedtree(t)\n", - " println(\"self\")\n", - " else\n", - " println(energy_preserving_conjugate.level_sequence)\n", - " end\n", - " end\n", - " println(\"\")\n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "21beb238-5431-49ac-8fdf-14714873a570", - "metadata": {}, - "outputs": [], - "source": [ - "for tree in RootedTreeIterator(7)\n", - " println(tree.level_sequence)\n", - " println(\"Conjugates:\")\n", - " for t in BSeries.equivalent_trees(tree.level_sequence)\n", - " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", - " if (-1)^BSeries.num_branches(t) == -1\n", - " print(\"-\")\n", - " else\n", - " print(\"+\")\n", - " end\n", - " if energy_preserving_conjugate == rootedtree(t)\n", - " println(\"self\")\n", - " else\n", - " println(energy_preserving_conjugate.level_sequence)\n", - " end\n", - " end\n", - " println(\"\")\n", - "end" - ] - }, - { - "cell_type": "markdown", - "id": "e51b9ca2-6b4c-4ae8-84cc-d522db3bd9db", - "metadata": {}, - "source": [ - "# Printing each subset only once" - ] - }, - { - "cell_type": "markdown", - "id": "b1eca398-f234-4bcc-8ea2-79160e7f718e", - "metadata": {}, - "source": [ - "## Order 4" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ec06eed8-21c2-4a88-9c53-4c1edc142b7b", - "metadata": {}, - "outputs": [], - "source": [ - "treelist = []\n", - "for tree in RootedTreeIterator(4)\n", - " if !(tree in treelist)\n", - " push!(treelist,copy(tree))\n", - " println(tree.level_sequence)\n", - " println(\"Conjugates:\")\n", - " for t in BSeries.equivalent_trees(tree.level_sequence)\n", - " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", - " if (-1)^BSeries.num_branches(t) == -1\n", - " print(\"-\")\n", - " else\n", - " print(\"+\")\n", - " end\n", - " if energy_preserving_conjugate == rootedtree(t)\n", - " println(\"self\")\n", - " else\n", - " println(energy_preserving_conjugate.level_sequence)\n", - " end\n", - " if !(energy_preserving_conjugate in treelist)\n", - " push!(treelist,copy(energy_preserving_conjugate))\n", - " end\n", - " end\n", - " println(\"\")\n", - " end\n", - "end" - ] - }, - { - "cell_type": "markdown", - "id": "8eb06600-4e29-4ace-8328-3a3a07f896a5", - "metadata": {}, - "source": [ - "## Order 5" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "3bc3c8ee-defc-4fc7-bdb5-61d1e1cfeea5", - "metadata": {}, - "outputs": [], - "source": [ - "treelist = []\n", - "for tree in RootedTreeIterator(5)\n", - " if !(tree in treelist)\n", - " push!(treelist,copy(tree))\n", - " println(tree.level_sequence)\n", - " println(\"Conjugates:\")\n", - " for t in BSeries.equivalent_trees(tree.level_sequence)\n", - " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", - " if (-1)^BSeries.num_branches(t) == -1\n", - " print(\"-\")\n", - " else\n", - " print(\"+\")\n", - " end\n", - " if energy_preserving_conjugate == rootedtree(t)\n", - " println(\"self\")\n", - " else\n", - " println(energy_preserving_conjugate.level_sequence)\n", - " end\n", - " if !(energy_preserving_conjugate in treelist)\n", - " push!(treelist,copy(energy_preserving_conjugate))\n", - " end\n", - " end\n", - " println(\"\")\n", - " end\n", - "end" - ] - }, - { - "cell_type": "markdown", - "id": "1b7ed813-995e-440c-97ec-b3312ab0536e", - "metadata": {}, - "source": [ - "## Order 6" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "6914bbea-daf2-412f-a65b-06e97b13ff51", - "metadata": {}, - "outputs": [], - "source": [ - "treelist = []\n", - "for tree in RootedTreeIterator(6)\n", - " if !(tree in treelist)\n", - " push!(treelist,copy(tree))\n", - " println(tree.level_sequence)\n", - " println(\"Conjugates:\")\n", - " for t in BSeries.equivalent_trees(tree.level_sequence)\n", - " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", - " if (-1)^BSeries.num_branches(t) == -1\n", - " print(\"-\")\n", - " else\n", - " print(\"+\")\n", - " end\n", - " if energy_preserving_conjugate == rootedtree(t)\n", - " println(\"self\")\n", - " else\n", - " println(energy_preserving_conjugate.level_sequence)\n", - " end\n", - " if !(energy_preserving_conjugate in treelist)\n", - " push!(treelist,copy(energy_preserving_conjugate))\n", - " end\n", - " end\n", - " println(\"\")\n", - " end\n", - "end" - ] - }, - { - "cell_type": "markdown", - "id": "1bd2e89d-40bb-4812-bf15-fb9065823905", - "metadata": {}, - "source": [ - "## Order 7" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "id": "68987f93-5d71-4eb4-bc16-7989ba6cf9d2", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[1, 2, 3, 4, 5, 6, 7]\n", - "Conjugates:\n", - "+self\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 3]\n", - "+[1, 2, 3, 4, 5, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 4]\n", - "Conjugates:\n", - "-self\n", - "-[1, 2, 3, 4, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 2]\n", - "-[1, 2, 3, 4, 2, 3, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 2]\n", - "+[1, 2, 3, 4, 4, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 2]\n", - "Conjugates:\n", - "+self\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 4, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 3]\n", - "-[1, 2, 3, 4, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 3]\n", - "Conjugates:\n", - "+self\n", - "-[1, 2, 3, 4, 3, 2, 3]\n", - "+[1, 2, 3, 4, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 2, 2]\n", - "+[1, 2, 3, 3, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 2]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 4, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 3, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 4, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 3, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 3, 2]\n", - "+[1, 2, 3, 3, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 3, 2]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 3, 2, 3, 3]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 3, 4, 3]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 2, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 3, 3, 3]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 2, 3, 2, 2]\n", - "\n", - "[1, 2, 3, 3, 3, 3, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 2, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 3, 3, 3, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 3, 2, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 3, 3, 2, 2]\n", - "Conjugates:\n", - "+self\n", - "-self\n", - "\n", - "[1, 2, 2, 2, 2, 2, 2]\n", - "Conjugates:\n", - "-self\n", - "\n", - "Total conditions (possibly including some free ones): 23" - ] - } - ], - "source": [ - "treelist = []\n", - "n_cond = 0\n", - "for tree in RootedTreeIterator(7)\n", - " if !(tree in treelist)\n", - " n_cond += 1\n", - " push!(treelist,copy(tree))\n", - " println(tree.level_sequence)\n", - " println(\"Conjugates:\")\n", - " for t in BSeries.equivalent_trees(tree.level_sequence)\n", - " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", - " if (-1)^BSeries.num_branches(t) == -1\n", - " print(\"-\")\n", - " else\n", - " print(\"+\")\n", - " end\n", - " if energy_preserving_conjugate == rootedtree(t)\n", - " println(\"self\")\n", - " else\n", - " println(energy_preserving_conjugate.level_sequence)\n", - " end\n", - " if !(energy_preserving_conjugate in treelist)\n", - " push!(treelist,copy(energy_preserving_conjugate))\n", - " end\n", - " end\n", - " println(\"\")\n", - " end\n", - "end\n", - "print(\"Total conditions (possibly including some free ones): \", n_cond)" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "id": "0c01a1d6-fc52-46fb-b6ba-2edd7d3c75e8", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[1, 2, 3, 4, 5, 6, 7, 8]\n", - "Conjugates:\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 7]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 6]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 3]\n", - "-[1, 2, 3, 4, 5, 6, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 4]\n", - "+[1, 2, 3, 4, 5, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 6]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 5]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 3, 2]\n", - "+[1, 2, 3, 4, 5, 2, 3, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 4, 2]\n", - "-[1, 2, 3, 4, 4, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 5, 2]\n", - "+[1, 2, 3, 4, 5, 5, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 2]\n", - "Conjugates:\n", - "-self\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 6]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 5]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 3, 3]\n", - "+[1, 2, 3, 4, 5, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 4, 3]\n", - "+[1, 2, 3, 4, 5, 3, 2, 3]\n", - "-[1, 2, 3, 4, 3, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 3]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 4, 5, 4, 2, 3]\n", - "+[1, 2, 3, 4, 5, 4, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 4, 5]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 4, 5, 3, 4, 5]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 4, 4]\n", - "Conjugates:\n", - "-self\n", - "-[1, 2, 3, 4, 2, 3, 4, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 2, 2]\n", - "-[1, 2, 3, 4, 2, 3, 3, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 2, 2]\n", - "+[1, 2, 3, 4, 4, 4, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 5, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 4, 2]\n", - "+[1, 2, 3, 4, 5, 3, 4, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 3, 2]\n", - "-[1, 2, 3, 4, 2, 3, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 3, 2]\n", - "-[1, 2, 3, 4, 3, 2, 3, 3]\n", - "+[1, 2, 3, 4, 4, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 5, 3, 2]\n", - "-[1, 2, 3, 4, 4, 2, 3, 3]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 3, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 5, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 3, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 4, 2]\n", - "+[1, 2, 3, 4, 4, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 5, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 4, 3]\n", - "-[1, 2, 3, 4, 2, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 5, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 3, 4]\n", - "+[1, 2, 3, 4, 3, 4, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 4, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 3, 3]\n", - "-[1, 2, 3, 4, 2, 3, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 4, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 3, 3]\n", - "-[1, 2, 3, 4, 3, 2, 3, 2]\n", - "+[1, 2, 3, 4, 3, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 4, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 2, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 4, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 2, 2, 2]\n", - "+[1, 2, 3, 3, 3, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 4, 2]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 4, 2, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 4, 3, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 4, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 4, 3, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 3, 2, 2]\n", - "+[1, 2, 3, 3, 3, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 3, 2]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 4, 3, 2, 2]\n", - "+[1, 2, 3, 3, 3, 2, 3, 3]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 4, 2, 2]\n", - "Conjugates:\n", - "-self\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 3, 4, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 4, 3, 4, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 3, 4, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 4, 3, 2]\n", - "-self\n", - "+[1, 2, 3, 3, 2, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 4, 3, 3, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 3, 3, 2]\n", - "+[1, 2, 3, 3, 2, 3, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 3, 3, 2]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 3, 2, 3, 3, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 3, 4, 3, 4]\n", - "Conjugates:\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 3, 4, 3, 3]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 2, 3, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 3, 3, 3, 3]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 2, 3, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 3, 3, 3, 3, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 2, 2, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 3, 3, 3, 3, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 3, 2, 2, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 3, 3, 3, 2, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 3, 3, 2, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 2, 2, 2, 2, 2, 2]\n", - "Conjugates:\n", - "-self\n", - "\n", - "Total conditions (possibly including some free ones): 47" - ] - } - ], - "source": [ - "treelist = []\n", - "n_cond = 0\n", - "for tree in RootedTreeIterator(8)\n", - " if !(tree in treelist)\n", - " n_cond += 1\n", - " push!(treelist,copy(tree))\n", - " println(tree.level_sequence)\n", - " println(\"Conjugates:\")\n", - " for t in BSeries.equivalent_trees(tree.level_sequence)\n", - " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", - " if (-1)^BSeries.num_branches(t) == -1\n", - " print(\"-\")\n", - " else\n", - " print(\"+\")\n", - " end\n", - " if energy_preserving_conjugate == rootedtree(t)\n", - " println(\"self\")\n", - " else\n", - " println(energy_preserving_conjugate.level_sequence)\n", - " end\n", - " if !(energy_preserving_conjugate in treelist)\n", - " push!(treelist,copy(energy_preserving_conjugate))\n", - " end\n", - " end\n", - " println(\"\")\n", - " end\n", - "end\n", - "print(\"Total conditions (possibly including some free ones): \", n_cond)" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "id": "e15257c4-3802-45c8-a987-0800c2545754", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[1, 2, 3, 4, 5, 6, 7, 8, 9]\n", - "Conjugates:\n", - "+self\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 8, 8]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 7, 8, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 8, 7]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 7, 8, 3]\n", - "+[1, 2, 3, 4, 5, 6, 7, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 8, 6]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 7, 8, 4]\n", - "-[1, 2, 3, 4, 5, 6, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 8, 5]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 4, 5, 2, 3, 4, 5]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 7, 7]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 7, 6]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 3, 2]\n", - "-[1, 2, 3, 4, 5, 6, 2, 3, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 7, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 4, 2]\n", - "+[1, 2, 3, 4, 5, 2, 3, 4, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 7, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 5, 2]\n", - "-[1, 2, 3, 4, 5, 5, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 7, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 6, 2]\n", - "+[1, 2, 3, 4, 5, 6, 6, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 7, 2]\n", - "Conjugates:\n", - "+self\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 6, 7]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 6, 6]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 3, 3]\n", - "-[1, 2, 3, 4, 5, 6, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 6, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 4, 3]\n", - "-[1, 2, 3, 4, 5, 6, 3, 2, 3]\n", - "+[1, 2, 3, 4, 5, 2, 3, 4, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 6, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 5, 3]\n", - "-[1, 2, 3, 4, 5, 6, 4, 2, 3]\n", - "-[1, 2, 3, 4, 5, 4, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 6, 3]\n", - "Conjugates:\n", - "+self\n", - "-[1, 2, 3, 4, 5, 6, 5, 2, 3]\n", - "+[1, 2, 3, 4, 5, 6, 5, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 5, 6]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 4, 5]\n", - "-[1, 2, 3, 4, 5, 6, 3, 4, 5]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 5, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 6, 7, 4, 4]\n", - "+[1, 2, 3, 4, 5, 2, 3, 4, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 7, 5, 4]\n", - "Conjugates:\n", - "+self\n", - "+[1, 2, 3, 4, 5, 3, 2, 3, 4]\n", - "-[1, 2, 3, 4, 5, 3, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 6, 6]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 6, 5]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 3, 2, 2]\n", - "+[1, 2, 3, 4, 5, 2, 3, 3, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 6, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 4, 2, 2]\n", - "-[1, 2, 3, 4, 4, 4, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 6, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 5, 2, 2]\n", - "+[1, 2, 3, 4, 5, 5, 5, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 6, 2]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 6, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 5, 6]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 3, 4, 2]\n", - "-[1, 2, 3, 4, 5, 6, 3, 4, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 5, 5]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 3, 3, 2]\n", - "+[1, 2, 3, 4, 5, 2, 3, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 5, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 4, 3, 2]\n", - "+[1, 2, 3, 4, 5, 3, 2, 3, 3]\n", - "-[1, 2, 3, 4, 4, 3, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 5, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 5, 3, 2]\n", - "+[1, 2, 3, 4, 5, 4, 2, 3, 3]\n", - "+[1, 2, 3, 4, 5, 5, 4, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 5, 2]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 6, 3, 2]\n", - "+[1, 2, 3, 4, 5, 5, 2, 3, 3]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 4, 5]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 4, 5, 2]\n", - "+[1, 2, 3, 4, 5, 5, 3, 4, 5]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 4, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 4, 4, 2]\n", - "-[1, 2, 3, 4, 4, 2, 3, 4, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 4, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 5, 4, 2]\n", - "-[1, 2, 3, 4, 4, 2, 3, 4, 3]\n", - "+[1, 2, 3, 4, 5, 5, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 4, 2]\n", - "Conjugates:\n", - "-self\n", - "-[1, 2, 3, 4, 4, 2, 3, 4, 4]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 3, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 5, 6, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 6, 6, 3, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 5, 5, 2]\n", - "+[1, 2, 3, 4, 5, 5, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 6, 5]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 3, 4, 3]\n", - "+[1, 2, 3, 4, 5, 2, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 6, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 4, 3, 4]\n", - "-[1, 2, 3, 4, 3, 4, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 6, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 5, 3, 4]\n", - "+[1, 2, 3, 4, 5, 4, 5, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 5, 5]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 3, 3, 3]\n", - "+[1, 2, 3, 4, 5, 2, 3, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 5, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 4, 3, 3]\n", - "+[1, 2, 3, 4, 5, 3, 2, 3, 2]\n", - "-[1, 2, 3, 4, 3, 3, 2, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 5, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 5, 3, 3]\n", - "+[1, 2, 3, 4, 5, 4, 2, 3, 2]\n", - "+[1, 2, 3, 4, 5, 4, 4, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 4, 5]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 4, 5, 3]\n", - "+[1, 2, 3, 4, 5, 3, 4, 2, 3]\n", - "+[1, 2, 3, 4, 5, 4, 3, 4, 5]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 4, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 5, 6, 4, 4, 3]\n", - "+[1, 2, 3, 4, 5, 3, 3, 2, 3]\n", - "-[1, 2, 3, 4, 3, 2, 3, 4, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 5, 4, 3]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 4, 5, 4, 3, 2, 3]\n", - "-[1, 2, 3, 4, 3, 2, 3, 4, 3]\n", - "+[1, 2, 3, 4, 5, 4, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 4, 5, 6]\n", - "Conjugates:\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 6, 4, 5, 5]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 4, 5, 3, 4, 5, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 4, 5, 4]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 4, 5, 3, 4, 5, 3]\n", - "-[1, 2, 3, 4, 2, 3, 4, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 6, 4, 4, 4]\n", - "Conjugates:\n", - "-self\n", - "-[1, 2, 3, 4, 2, 3, 4, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 5, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 2, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 5, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 2, 2, 2]\n", - "-[1, 2, 3, 4, 2, 3, 3, 3, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 5, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 2, 2, 2]\n", - "+[1, 2, 3, 4, 4, 4, 4, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 5, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 5, 2, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 4, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 4, 2, 2]\n", - "+[1, 2, 3, 4, 5, 3, 4, 4, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 4, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 3, 2, 2]\n", - "-[1, 2, 3, 4, 2, 3, 3, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 4, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 3, 2, 2]\n", - "-[1, 2, 3, 4, 3, 2, 3, 3, 3]\n", - "+[1, 2, 3, 4, 4, 4, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 4, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 5, 3, 2, 2]\n", - "-[1, 2, 3, 4, 4, 2, 3, 3, 3]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 3, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 5, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 3, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 4, 2, 2]\n", - "+[1, 2, 3, 4, 4, 4, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 3, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 5, 4, 2, 2]\n", - "+[1, 2, 3, 4, 4, 4, 2, 3, 3]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 5, 2, 2]\n", - "Conjugates:\n", - "+self\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 5, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 4, 4, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 5, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 4, 3, 2]\n", - "+[1, 2, 3, 4, 5, 3, 4, 4, 3]\n", - "-[1, 2, 3, 4, 2, 3, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 5, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 3, 4, 2]\n", - "+[1, 2, 3, 4, 5, 4, 3, 4, 4]\n", - "+[1, 2, 3, 4, 4, 3, 4, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 5, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 5, 3, 4, 2]\n", - "+[1, 2, 3, 4, 5, 5, 3, 4, 4]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 4, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 3, 3, 2]\n", - "-[1, 2, 3, 4, 2, 3, 3, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 4, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 3, 3, 2]\n", - "-[1, 2, 3, 4, 3, 2, 3, 3, 2]\n", - "+[1, 2, 3, 4, 4, 3, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 4, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 5, 3, 3, 2]\n", - "-[1, 2, 3, 4, 4, 2, 3, 3, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 3, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 5, 3, 2]\n", - "-[1, 2, 3, 4, 3, 4, 2, 3, 3]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 3, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 4, 3, 2]\n", - "-[1, 2, 3, 4, 3, 3, 2, 3, 3]\n", - "+[1, 2, 3, 4, 4, 3, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 4, 3, 2]\n", - "Conjugates:\n", - "+self\n", - "-[1, 2, 3, 4, 4, 3, 2, 3, 3]\n", - "+[1, 2, 3, 4, 4, 3, 2, 3, 3]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 5, 3, 4, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 5, 4, 2]\n", - "-self\n", - "+[1, 2, 3, 4, 4, 2, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 5, 3, 3, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 4, 4, 2]\n", - "+[1, 2, 3, 4, 4, 2, 3, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 5, 4, 5]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 4, 3, 4]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 5, 4, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 4, 3, 3]\n", - "-[1, 2, 3, 4, 2, 3, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 5, 4, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 3, 4, 3]\n", - "-[1, 2, 3, 4, 3, 2, 3, 2, 3]\n", - "+[1, 2, 3, 4, 3, 4, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 5, 3, 4]\n", - "Conjugates:\n", - "+self\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 5, 4, 5, 3, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 4, 3, 4]\n", - "+[1, 2, 3, 4, 3, 4, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 4, 4, 4]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 3, 3, 3, 3]\n", - "-[1, 2, 3, 4, 2, 3, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 4, 4, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 4, 5, 4, 3, 3, 3]\n", - "-[1, 2, 3, 4, 3, 2, 3, 2, 2]\n", - "+[1, 2, 3, 4, 3, 3, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 5, 4, 4, 3, 3]\n", - "Conjugates:\n", - "+self\n", - "-[1, 2, 3, 4, 3, 3, 2, 3, 2]\n", - "+[1, 2, 3, 4, 3, 3, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 4, 4, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 2, 2, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 4, 4, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 2, 2, 2, 2]\n", - "+[1, 2, 3, 3, 3, 3, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 4, 4, 2]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 4, 2, 2, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 4, 4, 3, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 4, 2, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 4, 4, 3, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 3, 2, 2, 2]\n", - "+[1, 2, 3, 3, 3, 3, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 4, 3, 2]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 4, 3, 2, 2, 2]\n", - "+[1, 2, 3, 3, 3, 3, 2, 3, 3]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 4, 4, 2, 2]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 4, 4, 2, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 4, 3, 4, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 4, 3, 4, 2, 2]\n", - "-[1, 2, 3, 4, 4, 4, 3, 4, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 3, 4, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 4, 3, 2, 2]\n", - "-self\n", - "+[1, 2, 3, 3, 3, 2, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 3, 3, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 3, 3, 2, 2]\n", - "+[1, 2, 3, 3, 3, 2, 3, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 4, 3, 3, 2]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 4, 3, 3, 2, 2]\n", - "+[1, 2, 3, 3, 3, 2, 3, 3, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 4, 3, 2, 2]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 3, 3, 2, 3, 3, 3]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 3, 4, 4, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 4, 3, 4, 3, 2]\n", - "+[1, 2, 3, 3, 2, 3, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 4, 3, 4, 4, 2]\n", - "Conjugates:\n", - "-self\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 3, 4, 3, 4]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 4, 3, 4, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 4, 3, 4, 3, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 4, 3, 3, 2]\n", - "-self\n", - "+[1, 2, 3, 3, 2, 3, 2, 3, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 3, 3, 3, 3]\n", - "Conjugates:\n", - "-[1, 2, 3, 4, 3, 3, 3, 3, 2]\n", - "+[1, 2, 3, 3, 2, 3, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 4, 3, 3, 3, 2]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 3, 2, 3, 3, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 4, 3, 4, 3, 4, 3]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 2, 3, 2, 3, 2, 3]\n", - "\n", - "[1, 2, 3, 4, 3, 4, 3, 3, 3]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 2, 3, 2, 3, 2, 2]\n", - "\n", - "[1, 2, 3, 4, 3, 3, 3, 3, 3]\n", - "Conjugates:\n", - "-self\n", - "+[1, 2, 3, 2, 3, 2, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 3, 3, 3, 3, 3, 3]\n", - "Conjugates:\n", - "+[1, 2, 3, 2, 2, 2, 2, 2, 2]\n", - "\n", - "[1, 2, 3, 3, 3, 3, 3, 3, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 3, 2, 2, 2, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 3, 3, 3, 3, 2, 2]\n", - "Conjugates:\n", - "+[1, 2, 3, 3, 3, 2, 2, 2, 2]\n", - "-self\n", - "\n", - "[1, 2, 3, 3, 3, 3, 2, 2, 2]\n", - "Conjugates:\n", - "+self\n", - "-self\n", - "\n", - "[1, 2, 2, 2, 2, 2, 2, 2, 2]\n", - "Conjugates:\n", - "-self\n", - "\n", - "Total conditions (possibly including some free ones): 106" - ] - } - ], - "source": [ - "treelist = []\n", - "n_cond = 0\n", - "for tree in RootedTreeIterator(9)\n", - " if !(tree in treelist)\n", - " n_cond += 1\n", - " push!(treelist,copy(tree))\n", - " println(tree.level_sequence)\n", - " println(\"Conjugates:\")\n", - " for t in BSeries.equivalent_trees(tree.level_sequence)\n", - " energy_preserving_conjugate = RootedTree(BSeries.rightmost_energy_preserving_tree(t))\n", - " if (-1)^BSeries.num_branches(t) == -1\n", - " print(\"-\")\n", - " else\n", - " print(\"+\")\n", - " end\n", - " if energy_preserving_conjugate == rootedtree(t)\n", - " println(\"self\")\n", - " else\n", - " println(energy_preserving_conjugate.level_sequence)\n", - " end\n", - " if !(energy_preserving_conjugate in treelist)\n", - " push!(treelist,copy(energy_preserving_conjugate))\n", - " end\n", - " end\n", - " println(\"\")\n", - " end\n", - "end\n", - "print(\"Total conditions (possibly including some free ones): \", n_cond)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "0882e685", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Julia 1.8.5", - "language": "julia", - "name": "julia-1.8" - }, - "language_info": { - "file_extension": ".jl", - "mimetype": "application/julia", - "name": "julia", - "version": "1.8.5" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/RK-coeff-opt/PEP_Generator/Manifest.toml b/RK-coeff-opt/PEP_Generator/Manifest.toml deleted file mode 100644 index ba566ef..0000000 --- a/RK-coeff-opt/PEP_Generator/Manifest.toml +++ /dev/null @@ -1,339 +0,0 @@ -# This file is machine-generated - editing it directly is not advised - -[[ArgTools]] -uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f" - -[[Artifacts]] -uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" - -[[BSeries]] -deps = ["Combinatorics", "Latexify", "LinearAlgebra", "OrderedCollections", "Polynomials", "Reexport", "Requires", "RootedTrees", "SparseArrays"] -git-tree-sha1 = "0ab58c0f5a6554c4d76e9e863170a6b9180a03bf" -uuid = "ebb8d67c-85b4-416c-b05f-5f409e808f32" -version = "0.1.58" - -[[Base64]] -uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" - -[[ChainRulesCore]] -deps = ["Compat", "LinearAlgebra", "SparseArrays"] -git-tree-sha1 = "575cd02e080939a33b6df6c5853d14924c08e35b" -uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" -version = "1.23.0" - -[[ChangesOfVariables]] -deps = ["InverseFunctions", "LinearAlgebra", "Test"] -git-tree-sha1 = "2fba81a302a7be671aefe194f0525ef231104e7f" -uuid = "9e997f8a-9a97-42d5-a9f1-ce6bfc15e2c0" -version = "0.1.8" - -[[Combinatorics]] -git-tree-sha1 = "08c8b6831dc00bfea825826be0bc8336fc369860" -uuid = "861a8166-3701-5b0c-9a16-15d98fcdc6aa" -version = "1.0.2" - -[[CommonEq]] -git-tree-sha1 = "6b0f0354b8eb954cdba708fb262ef00ee7274468" -uuid = "3709ef60-1bee-4518-9f2f-acd86f176c50" -version = "0.2.1" - -[[CommonSolve]] -git-tree-sha1 = "0eee5eb66b1cf62cd6ad1b460238e60e4b09400c" -uuid = "38540f10-b2f7-11e9-35d8-d573e4eb0ff2" -version = "0.2.4" - -[[Compat]] -deps = ["Dates", "LinearAlgebra", "TOML", "UUIDs"] -git-tree-sha1 = "c955881e3c981181362ae4088b35995446298b80" -uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" -version = "4.14.0" - -[[CompilerSupportLibraries_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" - -[[Conda]] -deps = ["Downloads", "JSON", "VersionParsing"] -git-tree-sha1 = "51cab8e982c5b598eea9c8ceaced4b58d9dd37c9" -uuid = "8f4d0f93-b110-5947-807f-2305c1781a2d" -version = "1.10.0" - -[[Dates]] -deps = ["Printf"] -uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" - -[[DocStringExtensions]] -deps = ["LibGit2"] -git-tree-sha1 = "2fb1e02f2b635d0845df5d7c167fec4dd739b00d" -uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" -version = "0.9.3" - -[[Downloads]] -deps = ["ArgTools", "LibCURL", "NetworkOptions"] -uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6" - -[[Format]] -git-tree-sha1 = "f3cf88025f6d03c194d73f5d13fee9004a108329" -uuid = "1fa38f19-a742-5d3f-a2b9-30dd87b9d5f8" -version = "1.3.6" - -[[InteractiveUtils]] -deps = ["Markdown"] -uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" - -[[InverseFunctions]] -deps = ["Test"] -git-tree-sha1 = "68772f49f54b479fa88ace904f6127f0a3bb2e46" -uuid = "3587e190-3f89-42d0-90ee-14403ec27112" -version = "0.1.12" - -[[IrrationalConstants]] -git-tree-sha1 = "630b497eafcc20001bba38a4651b327dcfc491d2" -uuid = "92d709cd-6900-40b7-9082-c6be49f344b6" -version = "0.2.2" - -[[JLLWrappers]] -deps = ["Artifacts", "Preferences"] -git-tree-sha1 = "7e5d6779a1e09a36db2a7b6cff50942a0a7d0fca" -uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210" -version = "1.5.0" - -[[JSON]] -deps = ["Dates", "Mmap", "Parsers", "Unicode"] -git-tree-sha1 = "31e996f0a15c7b280ba9f76636b3ff9e2ae58c9a" -uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" -version = "0.21.4" - -[[LaTeXStrings]] -git-tree-sha1 = "50901ebc375ed41dbf8058da26f9de442febbbec" -uuid = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f" -version = "1.3.1" - -[[Latexify]] -deps = ["Format", "InteractiveUtils", "LaTeXStrings", "MacroTools", "Markdown", "OrderedCollections", "Requires"] -git-tree-sha1 = "cad560042a7cc108f5a4c24ea1431a9221f22c1b" -uuid = "23fbe1c1-3f47-55db-b15f-69d7ec21a316" -version = "0.16.2" - -[[LibCURL]] -deps = ["LibCURL_jll", "MozillaCACerts_jll"] -uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21" - -[[LibCURL_jll]] -deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"] -uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0" - -[[LibGit2]] -deps = ["Base64", "NetworkOptions", "Printf", "SHA"] -uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" - -[[LibSSH2_jll]] -deps = ["Artifacts", "Libdl", "MbedTLS_jll"] -uuid = "29816b5a-b9ab-546f-933c-edad1886dfa8" - -[[Libdl]] -uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" - -[[LinearAlgebra]] -deps = ["Libdl"] -uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" - -[[LogExpFunctions]] -deps = ["ChainRulesCore", "ChangesOfVariables", "DocStringExtensions", "InverseFunctions", "IrrationalConstants", "LinearAlgebra"] -git-tree-sha1 = "18144f3e9cbe9b15b070288eef858f71b291ce37" -uuid = "2ab3a3ac-af41-5b50-aa03-7779005ae688" -version = "0.3.27" - -[[Logging]] -uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" - -[[MacroTools]] -deps = ["Markdown", "Random"] -git-tree-sha1 = "2fa9ee3e63fd3a4f7a9a4f4744a52f4856de82df" -uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" -version = "0.5.13" - -[[MakieCore]] -deps = ["Observables", "REPL"] -git-tree-sha1 = "9b11acd07f21c4d035bd4156e789532e8ee2cc70" -uuid = "20f20a25-4f0e-4fdf-b5d1-57303727442b" -version = "0.6.9" - -[[Markdown]] -deps = ["Base64"] -uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" - -[[MbedTLS_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" - -[[Mmap]] -uuid = "a63ad114-7e13-5084-954f-fe012c677804" - -[[MozillaCACerts_jll]] -uuid = "14a3606d-f60d-562e-9121-12d972cd8159" - -[[MutableArithmetics]] -deps = ["LinearAlgebra", "SparseArrays", "Test"] -git-tree-sha1 = "302fd161eb1c439e4115b51ae456da4e9984f130" -uuid = "d8a4904e-b15c-11e9-3269-09a3773c0cb0" -version = "1.4.1" - -[[NetworkOptions]] -uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" - -[[Observables]] -git-tree-sha1 = "7438a59546cf62428fc9d1bc94729146d37a7225" -uuid = "510215fc-4207-5dde-b226-833fc4488ee2" -version = "0.5.5" - -[[OpenLibm_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "05823500-19ac-5b8b-9628-191a04bc5112" - -[[OpenSpecFun_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "13652491f6856acfd2db29360e1bbcd4565d04f1" -uuid = "efe28fd5-8261-553b-a9e1-b2916fc3738e" -version = "0.5.5+0" - -[[OrderedCollections]] -git-tree-sha1 = "dfdf5519f235516220579f949664f1bf44e741c5" -uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" -version = "1.6.3" - -[[Parsers]] -deps = ["Dates", "PrecompileTools", "UUIDs"] -git-tree-sha1 = "8489905bcdbcfac64d1daa51ca07c0d8f0283821" -uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" -version = "2.8.1" - -[[Pkg]] -deps = ["Artifacts", "Dates", "Downloads", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"] -uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" - -[[Polynomials]] -deps = ["ChainRulesCore", "LinearAlgebra", "MakieCore", "MutableArithmetics", "RecipesBase"] -git-tree-sha1 = "3aa2bb4982e575acd7583f01531f241af077b163" -uuid = "f27b6e38-b328-58d1-80ce-0feddd5e7a45" -version = "3.2.13" - -[[PrecompileTools]] -deps = ["Preferences"] -git-tree-sha1 = "5aa36f7049a63a1528fe8f7c3f2113413ffd4e1f" -uuid = "aea7be01-6a6a-4083-8856-8a6e6704d82a" -version = "1.2.1" - -[[Preferences]] -deps = ["TOML"] -git-tree-sha1 = "9306f6085165d270f7e3db02af26a400d580f5c6" -uuid = "21216c6a-2e73-6563-6e65-726566657250" -version = "1.4.3" - -[[Printf]] -deps = ["Unicode"] -uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" - -[[PyCall]] -deps = ["Conda", "Dates", "Libdl", "LinearAlgebra", "MacroTools", "Serialization", "VersionParsing"] -git-tree-sha1 = "9816a3826b0ebf49ab4926e2b18842ad8b5c8f04" -uuid = "438e738f-606a-5dbb-bf0a-cddfbfd45ab0" -version = "1.96.4" - -[[REPL]] -deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"] -uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" - -[[Random]] -deps = ["Serialization"] -uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" - -[[RecipesBase]] -deps = ["PrecompileTools"] -git-tree-sha1 = "5c3d09cc4f31f5fc6af001c250bf1278733100ff" -uuid = "3cdcf5f2-1ef4-517c-9805-6587b60abb01" -version = "1.3.4" - -[[Reexport]] -git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b" -uuid = "189a3867-3050-52da-a836-e630ba90ab69" -version = "1.2.2" - -[[Requires]] -deps = ["UUIDs"] -git-tree-sha1 = "838a3a4188e2ded87a4f9f184b4b0d78a1e91cb7" -uuid = "ae029012-a4dd-5104-9daa-d747884805df" -version = "1.3.0" - -[[RootedTrees]] -deps = ["LaTeXStrings", "Latexify", "LinearAlgebra", "Preferences", "RecipesBase", "Requires"] -git-tree-sha1 = "056631b852ff2b349fc4fc30c7ec01d5ffff5834" -uuid = "47965b36-3f3e-11e9-0dcf-4570dfd42a8c" -version = "2.21.0" - -[[SHA]] -uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" - -[[Serialization]] -uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" - -[[Sockets]] -uuid = "6462fe0b-24de-5631-8697-dd941f90decc" - -[[SparseArrays]] -deps = ["LinearAlgebra", "Random"] -uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" - -[[SpecialFunctions]] -deps = ["ChainRulesCore", "IrrationalConstants", "LogExpFunctions", "OpenLibm_jll", "OpenSpecFun_jll"] -git-tree-sha1 = "e2cfc4012a19088254b3950b85c3c1d8882d864d" -uuid = "276daf66-3868-5448-9aa4-cd146d93841b" -version = "2.3.1" - -[[SymPy]] -deps = ["CommonEq", "CommonSolve", "LinearAlgebra", "PyCall", "SpecialFunctions", "SymPyCore"] -git-tree-sha1 = "8d727c118eb31ffad73cce569b7bb29eef5fb9ad" -uuid = "24249f21-da20-56a4-8eb1-6a02cf4ae2e6" -version = "2.0.1" - -[[SymPyCore]] -deps = ["CommonEq", "CommonSolve", "Latexify", "LinearAlgebra", "Markdown", "RecipesBase", "SpecialFunctions"] -git-tree-sha1 = "4c5a53625f0e53ce1e726a6dab1c870017303728" -uuid = "458b697b-88f0-4a86-b56b-78b75cfb3531" -version = "0.1.16" - -[[TOML]] -deps = ["Dates"] -uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" - -[[Tar]] -deps = ["ArgTools", "SHA"] -uuid = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e" - -[[Test]] -deps = ["InteractiveUtils", "Logging", "Random", "Serialization"] -uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" - -[[UUIDs]] -deps = ["Random", "SHA"] -uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" - -[[Unicode]] -uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" - -[[VersionParsing]] -git-tree-sha1 = "58d6e80b4ee071f5efd07fda82cb9fbe17200868" -uuid = "81def892-9a0e-5fdd-b105-ffc91e053289" -version = "1.3.0" - -[[Zlib_jll]] -deps = ["Libdl"] -uuid = "83775a58-1f1d-513f-b197-d71354ab007a" - -[[nghttp2_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" - -[[p7zip_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" diff --git a/RK-coeff-opt/PEP_Generator/PEPGenerator.jl b/RK-coeff-opt/PEP_Generator/PEPGenerator.jl deleted file mode 100644 index 621454d..0000000 --- a/RK-coeff-opt/PEP_Generator/PEPGenerator.jl +++ /dev/null @@ -1,17 +0,0 @@ -using BSeries, SymPy - -#set order -q = 7 -# generate series -series = bseries(q) do t, series - return symbols("a_$(butcher_representation(t))", real=true) -end - -# Our interest relies on the modified equation -modi = modified_equation(series) -renormalize!(modi) - -# show the result for every condition (this expression involves from 1 to 4 trees). -# The conditions can be obtained from David's Jupyter Notebook 'Energy-preserving -# conjugates'. -println(modi[rootedtree([1,2,3,4,4,4,3])] + modi[rootedtree([1,2,3,4,3,2,2])] - modi[rootedtree([1,2,3,3,3,2,3])]) \ No newline at end of file diff --git a/RK-coeff-opt/PEP_Generator/Project.toml b/RK-coeff-opt/PEP_Generator/Project.toml deleted file mode 100644 index a7b02b6..0000000 --- a/RK-coeff-opt/PEP_Generator/Project.toml +++ /dev/null @@ -1,3 +0,0 @@ -[deps] -BSeries = "ebb8d67c-85b4-416c-b05f-5f409e808f32" -SymPy = "24249f21-da20-56a4-8eb1-6a02cf4ae2e6" diff --git a/RK-coeff-opt/PEP_Generator/README.txt b/RK-coeff-opt/PEP_Generator/README.txt deleted file mode 100644 index 01f9e2f..0000000 --- a/RK-coeff-opt/PEP_Generator/README.txt +++ /dev/null @@ -1,6 +0,0 @@ -1. The list of PEP conditions is obtained from 'Energy-preserving_conjugates.ipynb' - -2. This conditions must be applied to the file 'PEPGenerator.jl', which generates PEP conditions, -one by one, in Butcher Notation. - -3. Finally, copy-paste the output in 'Translator.ipynb', which returns the PEP condition in Matlab format. \ No newline at end of file diff --git a/RK-coeff-opt/PEP_Generator/Translator.ipynb b/RK-coeff-opt/PEP_Generator/Translator.ipynb deleted file mode 100644 index e8e846c..0000000 --- a/RK-coeff-opt/PEP_Generator/Translator.ipynb +++ /dev/null @@ -1,372 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 54, - "id": "102b4a6a", - "metadata": { - "scrolled": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "a_[τ⁵] - (1)^6/6 - (1)^4*((1/2) - (1)^2/2) - 5*(1)^3*((1/3) - (1)^3/3 - (1)*((1/2) - (1)^2/2))/2 - 10*(1)^2*((1/4) - (1)^4/4 - (1)^2*((1/2) - (1)^2/2) - 3*(1)*((1/3) - (1)^3/3 - (1)*((1/2) - (1)^2/2))/2)/3 - 5*(1)*((1/5) - (1)^5/5 - (1)^3*((1/2) - (1)^2/2) - 2*(1)^2*((1/3) - (1)^3/3 - (1)*((1/2) - (1)^2/2)) - 2*(1)*((1/4) - (1)^4/4 - (1)^2*((1/2) - (1)^2/2) - 3*(1)*((1/3) - (1)^3/3 - (1)*((1/2) - (1)^2/2))/2))/2\n" - ] - } - ], - "source": [ - "def substitute_text(input_text):\n", - " # Define the substitution dictionary\n", - " substitutions = {\n", - " 'a_τ': '(1)',\n", - " 'a_[τ]': '(1/2)',\n", - " 'a_[[τ]]': 'a123',\n", - " 'a_[τ²]': '(1/3)',\n", - " 'a_[[[τ]]]':'a1234',\n", - " 'a_[[τ²]]': 'a1233',\n", - " 'a_[[τ]τ]': 'a1232',\n", - " 'a_[τ³]': '(1/4)',\n", - " 'a_[[[[τ]]]]': 'a12345',\n", - " 'a_[[[τ²]]]': 'a12344',\n", - " 'a_[[[τ]τ]]': 'a12343',\n", - " 'a_[[[τ]]τ]': 'a12342',\n", - " 'a_[[τ³]]': 'a12333',\n", - " 'a_[[τ²]τ]': 'a12332',\n", - " 'a_[[τ][τ]]': 'a12323',\n", - " 'a_[[τ]τ²]': 'a12322',\n", - " 'a_[τ⁴]': '(1/5)',\n", - " # Add more substitutions as needed\n", - " }\n", - "\n", - " # Iterate through the dictionary and perform substitutions\n", - " for old_text, new_text in substitutions.items():\n", - " input_text = input_text.replace(old_text, new_text)\n", - "\n", - " return input_text\n", - "b123456 = \"a_[[[[[τ]]]]] - a_τ^6/720 - a_τ^4*(a_[τ]/120 - a_τ^2/240) - a_τ^4*(a_[τ] - a_τ^2/2)/30 - a_τ^3*(a_[[τ]]/24 - a_τ^3/144 - a_τ*(a_[τ]/2 - a_τ^2/4)/24 - a_τ*(a_[τ] - a_τ^2/2)/48) - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/8 - 3*a_τ^2*(a_[τ]/24 - a_τ^2/48)*(a_[τ] - a_τ^2/2) - a_τ^2*(a_[τ] - a_τ^2/2)^2/8 - a_τ^2*(a_[[[τ]]]/6 - a_τ^4/144 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/6 - a_τ^2*(a_[τ] - a_τ^2/2)/18 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/6 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/12 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/6) - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[[[τ]]]]/2 - a_τ^5/240 - a_τ^3*(a_[τ]/24 - a_τ^2/48)/2 - a_τ^3*(a_[τ] - a_τ^2/2)/16 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12)/2 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/12 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/4 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2) - a_τ*(a_[[[[τ]]]] - a_τ^5/120 - a_τ^3*(a_[τ]/24 - a_τ^2/48) - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - (a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)^2 - (a_[τ]/2 - a_τ^2/4)*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - (a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", - "b123455 = \"a_[[[[τ²]]]] - a_τ^6/360 - a_τ^4*(a_[τ] - a_τ^2/2)/15 - a_τ^3*(a_[τ²]/24 - a_τ^3/72 - a_τ*(a_[τ] - a_τ^2/2)/24) - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - a_τ^2*(a_[[τ²]]/6 - a_τ^4/72 - a_τ^2*(a_[τ] - a_τ^2/2)/9 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6) - 2*a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[[τ²]]]/2 - a_τ^5/120 - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6)/2 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2)/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[[τ]]]] - a_τ^5/120 - a_τ^3*(a_[τ]/24 - a_τ^2/48) - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)) - (a_[τ] - a_τ^2/2)*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - (a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", - "b123454 = \"a_[[[[τ]τ]]] - a_τ^6/240 - 11*a_τ^4*(a_[τ] - a_τ^2/2)/120 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - 7*a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/24 - a_τ^2*(a_[τ]/24 - a_τ^2/48)*(a_[τ] - a_τ^2/2) - 7*a_τ^2*(a_[τ] - a_τ^2/2)^2/24 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/6 - a_τ^2*(a_[[τ]τ]/6 - a_τ^4/48 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/36 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/12 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/12 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/6) - 2*a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[[τ²]]] - a_τ^5/60 - a_τ^3*(a_[τ] - a_τ^2/2)/4 - a_τ^2*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[[τ]τ]]/2 - a_τ^5/80 - a_τ^3*(a_[τ] - a_τ^2/2)/6 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/12 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)/2 - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/4 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/4 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[[τ]]]] - a_τ^5/120 - a_τ^3*(a_[τ]/24 - a_τ^2/48) - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - (a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)^2 - (a_[τ]/2 - a_τ^2/4)*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2)\"\n", - "b123453 = \"a_[[[[τ]]τ]] - a_τ^6/180 - 7*a_τ^4*(a_[τ] - a_τ^2/2)/60 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ^2*(a_[τ]/24 - a_τ^2/48)*(a_[τ] - a_τ^2/2) - 3*a_τ^2*(a_[τ] - a_τ^2/2)^2/8 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/6 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - 5*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[[[τ]]τ]/2 - a_τ^5/60 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/24 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/12 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)/2 - a_τ*(a_[τ] - a_τ^2/2)^2/4 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2) - a_τ*(a_[[[τ]τ]] - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/3 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[[[τ]]]] - a_τ^5/120 - a_τ^3*(a_[τ]/24 - a_τ^2/48) - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", - "b123452 = \"a_[[[[τ]]]τ] - a_τ^6/144 - 17*a_τ^4*(a_[τ] - a_τ^2/2)/120 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - 3*a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/8 - a_τ^2*(a_[τ]/24 - a_τ^2/48)*(a_[τ] - a_τ^2/2) - 11*a_τ^2*(a_[τ] - a_τ^2/2)^2/24 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - 5*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[[[τ]]τ] - a_τ^5/30 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/12 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - a_τ*(a_[[[[τ]]]] - a_τ^5/120 - a_τ^3*(a_[τ]/24 - a_τ^2/48) - a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[[τ]]/6 - a_τ^3/36 - a_τ*(a_[τ]/2 - a_τ^2/4)/6 - a_τ*(a_[τ] - a_τ^2/2)/12) - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - (a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)^2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[[τ]]]/2 - a_τ^4/48 - a_τ^2*(a_[τ]/6 - a_τ^2/12)/2 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - (a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)\"\n", - "b123444 = \"a_[[[τ³]]] - a_τ^6/120 - 3*a_τ^4*(a_[τ] - a_τ^2/2)/20 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/8 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - a_τ^2*(a_[τ³]/6 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4) - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ³]]/2 - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/4 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4)/2 - 3*a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/4) - 3*a_τ*(a_[[[τ²]]] - a_τ^5/60 - a_τ^3*(a_[τ] - a_τ^2/2)/4 - a_τ^2*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - (a_[τ] - a_τ^2/2)*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4)\"\n", - "b123443 = \"a_[[[τ²]τ]] - a_τ^6/90 - 11*a_τ^4*(a_[τ] - a_τ^2/2)/60 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ^2*(a_[τ] - a_τ^2/2)^2/3 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[[τ²]]] - a_τ^5/60 - a_τ^3*(a_[τ] - a_τ^2/2)/4 - a_τ^2*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ²]τ]/2 - a_τ^5/30 - 7*a_τ^3*(a_[τ] - a_τ^2/2)/24 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/4 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[τ]τ]] - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/3 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", - "b123442 = \"a_[[[τ²]]τ] - a_τ^6/72 - 13*a_τ^4*(a_[τ] - a_τ^2/2)/60 - 5*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - 5*a_τ^2*(a_[τ] - a_τ^2/2)^2/12 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/3 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[[τ²]]] - a_τ^5/60 - a_τ^3*(a_[τ] - a_τ^2/2)/4 - a_τ^2*(a_[τ²]/6 - a_τ^3/18 - a_τ*(a_[τ] - a_τ^2/2)/6) - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[[τ]]τ] - a_τ^5/30 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/12 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)) - (a_[τ] - a_τ^2/2)*(a_[[τ²]]/2 - a_τ^4/24 - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2) - (a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))\"\n", - "b123434 = \"a_[[[τ][τ]]] - a_τ^6/120 - a_τ^4*(a_[τ]/40 - a_τ^2/80) - a_τ^4*(a_[τ] - a_τ^2/2)/8 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/12 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ^2*(a_[τ]/12 - a_τ^2/24)*(a_[τ] - a_τ^2/2) - a_τ^2*(a_[τ]/8 - a_τ^2/16)*(a_[τ] - a_τ^2/2) - 5*a_τ^2*(a_[τ] - a_τ^2/2)^2/24 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/3 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - 2*a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[τ][τ]]/2 - a_τ^5/40 - a_τ^3*(a_[τ]/8 - a_τ^2/16)/2 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/16 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/6 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - a_τ*(a_[[[τ]τ]] - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/3 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2)^2 - 2*(a_[τ]/2 - a_τ^2/4)*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))\"\n", - "b123433 = \"a_[[[τ]τ²]] - a_τ^6/60 - a_τ^4*(a_[τ] - a_τ^2/2)/4 - 5*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - 7*a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/12 - 5*a_τ^2*(a_[τ] - a_τ^2/2)^2/12 - a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/6 - 5*a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/6 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[τ³]] - a_τ^5/20 - a_τ^3*(a_[τ] - a_τ^2/2)/2 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4) - 3*a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2)/2 - a_τ*(a_[[τ]τ²]/2 - a_τ^5/20 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/8 - 5*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/12 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/6 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/4 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2) - a_τ*(a_[[[τ]τ]] - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/3 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))\"\n", - "b123432 = \"a_[[[τ]τ]τ] - a_τ^6/48 - 7*a_τ^4*(a_[τ] - a_τ^2/2)/24 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - 7*a_τ^2*(a_[τ] - a_τ^2/2)^2/12 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/3 - 5*a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ²]τ] - a_τ^5/15 - 7*a_τ^3*(a_[τ] - a_τ^2/2)/12 - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[[τ]]τ] - a_τ^5/30 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/12 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - a_τ*(a_[[[τ]τ]] - a_τ^5/40 - a_τ^3*(a_[τ] - a_τ^2/2)/3 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - (a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2)^2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]τ]/2 - a_τ^4/16 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/12 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)/2)\"\n", - "b123423 = \"a_[[[τ]][τ]] - a_τ^6/72 - a_τ^4*(a_[τ]/30 - a_τ^2/60) - 11*a_τ^4*(a_[τ] - a_τ^2/2)/60 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/8 - 7*a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/24 - 3*a_τ^2*(a_[τ]/8 - a_τ^2/16)*(a_[τ] - a_τ^2/2) - 3*a_τ^2*(a_[τ] - a_τ^2/2)^2/8 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/6 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - 2*a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ*(a_[[τ][τ]] - a_τ^5/20 - a_τ^3*(a_[τ]/8 - a_τ^2/16) - 3*a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - 2*(a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[[τ]]τ] - a_τ^5/30 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/12 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4))/2 - (a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2)^2 - (a_[τ]/2 - a_τ^2/4)*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", - "b123422 = \"a_[[[τ]]τ²] - a_τ^6/36 - 11*a_τ^4*(a_[τ] - a_τ^2/2)/30 - 7*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/24 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - 3*a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/6 - 2*a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - 5*a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[τ]τ²] - a_τ^5/10 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/4 - 5*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)))/2 - a_τ*(a_[[[τ]]τ] - a_τ^5/30 - 5*a_τ^3*(a_[τ] - a_τ^2/2)/12 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ]/6 - a_τ^2/12)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[[τ]]] - a_τ^4/24 - a_τ^2*(a_[τ]/6 - a_τ^2/12) - a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)) - (a_[τ]/2 - a_τ^2/4)*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2) - (a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))*(a_[[τ]]/2 - a_τ^3/12 - a_τ*(a_[τ]/2 - a_τ^2/4)/2 - a_τ*(a_[τ] - a_τ^2/2)/4)\"\n", - "b123333 = \"a_[[τ⁴]] - a_τ^6/30 - 2*a_τ^4*(a_[τ] - a_τ^2/2)/5 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - 2*a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/3 - 2*a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - a_τ*(a_[τ⁴]/2 - a_τ^5/10 - a_τ^3*(a_[τ] - a_τ^2/2)/2 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)) - 2*a_τ*(a_[[τ³]] - a_τ^5/20 - a_τ^3*(a_[τ] - a_τ^2/2)/2 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4) - 3*a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2)\"\n", - "b123332 = \"a_[[τ³]τ] - a_τ^6/24 - 9*a_τ^4*(a_[τ] - a_τ^2/2)/20 - 5*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/8 - 3*a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/3 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ³]] - a_τ^5/20 - a_τ^3*(a_[τ] - a_τ^2/2)/2 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4) - 3*a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2)/2 - 3*a_τ*(a_[[τ²]τ] - a_τ^5/15 - 7*a_τ^3*(a_[τ] - a_τ^2/2)/12 - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - (a_[τ] - a_τ^2/2)*(a_[τ³]/2 - a_τ^4/8 - a_τ^2*(a_[τ] - a_τ^2/2)/2 - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/4)\"\n", - "b123323 = \"a_[[τ²][τ]] - a_τ^6/36 - a_τ^4*(a_[τ]/15 - a_τ^2/30) - 4*a_τ^4*(a_[τ] - a_τ^2/2)/15 - 3*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/8 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ^2*(a_[τ]/8 - a_τ^2/16)*(a_[τ] - a_τ^2/2) - a_τ^2*(a_[τ]/4 - a_τ^2/8)*(a_[τ] - a_τ^2/2) - a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/6 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - 2*a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[τ²]τ] - a_τ^5/15 - 7*a_τ^3*(a_[τ] - a_τ^2/2)/12 - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ][τ]] - a_τ^5/20 - a_τ^3*(a_[τ]/8 - a_τ^2/16) - 3*a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - 2*(a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)\"\n", - "b123322 = \"a_[[τ²]τ²] - a_τ^6/18 - 8*a_τ^4*(a_[τ] - a_τ^2/2)/15 - 5*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - a_τ^2*(a_[τ] - a_τ^2/2)^2/2 - a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/3 - a_τ^2*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/3 - 4*a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))/3 - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[[τ]τ²] - a_τ^5/10 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/4 - 5*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))) - a_τ*(a_[[τ²]τ] - a_τ^5/15 - 7*a_τ^3*(a_[τ] - a_τ^2/2)/12 - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - 2*a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ²]] - a_τ^4/12 - 2*a_τ^2*(a_[τ] - a_τ^2/2)/3 - a_τ*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2) - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ] - a_τ^2/2)*(a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)) - (a_[τ²]/2 - a_τ^3/6 - a_τ*(a_[τ] - a_τ^2/2)/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))\"\n", - "b123232 = \"a_[[τ][τ]τ] - a_τ^6/24 - 9*a_τ^4*(a_[τ] - a_τ^2/2)/20 - a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - a_τ^2*(a_[τ]/8 - a_τ^2/16)*(a_[τ] - a_τ^2/2) - 7*a_τ^2*(a_[τ] - a_τ^2/2)^2/8 - a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/3 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - 2*a_τ*(a_[τ] - a_τ^2/2)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - a_τ*(a_[[τ]τ²] - a_τ^5/10 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/4 - 5*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))) - a_τ*(a_[[τ][τ]] - a_τ^5/20 - a_τ^3*(a_[τ]/8 - a_τ^2/16) - 3*a_τ^3*(a_[τ] - a_τ^2/2)/8 - a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/3 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2) - a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - 2*(a_[τ]/2 - a_τ^2/4)*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2))/2 - (a_[τ]/3 - a_τ^2/6)*(a_[τ] - a_τ^2/2)^2 - 2*(a_[τ]/2 - a_τ^2/4)*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2))\"\n", - "b123222 = \"a_[[τ]τ³] - a_τ^6/12 - 7*a_τ^4*(a_[τ] - a_τ^2/2)/10 - 9*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/8 - a_τ^3*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/4 - 3*a_τ^2*(a_[τ] - a_τ^2/2)^2/4 - 7*a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/6 - a_τ^2*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ] - a_τ^2/2)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - a_τ*(a_[τ⁴] - a_τ^5/5 - a_τ^3*(a_[τ] - a_τ^2/2) - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - 2*a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2))/2 - 3*a_τ*(a_[[τ]τ²] - a_τ^5/10 - 3*a_τ^3*(a_[τ] - a_τ^2/2)/4 - 5*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/6 - a_τ^2*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/3 - 2*a_τ*(a_[τ] - a_τ^2/2)^2/3 - a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/2 - a_τ*(a_[[τ]τ] - a_τ^4/8 - 5*a_τ^2*(a_[τ] - a_τ^2/2)/6 - a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - a_τ*(a_[[τ]] - a_τ^3/6 - a_τ*(a_[τ]/2 - a_τ^2/4) - a_τ*(a_[τ] - a_τ^2/2)/2)/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ] - a_τ^2/2)) - (a_[τ]/2 - a_τ^2/4)*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)))/2 - (a_[τ]/2 - a_τ^2/4)*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)\"\n", - "b122222 = \"a_[τ⁵] - a_τ^6/6 - a_τ^4*(a_[τ] - a_τ^2/2) - 5*a_τ^3*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2 - 10*a_τ^2*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2)/3 - 5*a_τ*(a_[τ⁴] - a_τ^5/5 - a_τ^3*(a_[τ] - a_τ^2/2) - 2*a_τ^2*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2)) - 2*a_τ*(a_[τ³] - a_τ^4/4 - a_τ^2*(a_[τ] - a_τ^2/2) - 3*a_τ*(a_[τ²] - a_τ^3/3 - a_τ*(a_[τ] - a_τ^2/2))/2))/2\"\n", - "\n", - "\n", - "\n", - "# Example usage:\n", - "plain_text = b122222\n", - "result_text = substitute_text(plain_text)\n", - "print(result_text)\n", - "\n", - "\n" - ] - }, - { - "cell_type": "code", - "execution_count": 52, - "id": "86c5cba0", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c)/3 - (b'*diag(c)*A*diag(c)*A*c)/2 - (b'*A*diag(c).^2*A*c)/2 + (b'*((A*(c.^2.*(A*c))).*c))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*(c.^2.*(A*c.^2)))))/4 - (b'*(A*c).^2)/6 + (b'*diag(c)*(A*c).^2)/2 - (b'*A*c)/24 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c).*c))/2 - (b'*A*c.^2)/24 + ((b.*c)'*A*c.^2)/4 + (b'*diag(c).^2*A*c.^2)/8 + (b'*A*c.^3)/8 - (b'*diag(c)*A*c.^3)/4 + 1/144\n" - ] - } - ], - "source": [ - "# Convert to matlab conditions\n", - "def substitute_text(input_text):\n", - " # Define the substitution dictionary\n", - " substitutions = {\n", - " # order 3\n", - " \"a_[[τ]]\": \"(b'*A*c)\",\n", - " # order 4\n", - " \"a_[[[τ]]]\": \"(b'*A^2*c)\",\n", - " \"a_[[[τ²]]]\": \"(b'*A*c.^2)\",\n", - " \"a_[[τ]τ]\": \"((b'.*c')*A*c)\",\n", - " \"a_[τ³]\": \"(c'.^3*b)\",\n", - " \"a_[[τ²]]\": \"(b'*A*c.^2)\",\n", - " # order 5\n", - " \"a_[[[[τ]]]]\": \"(b'*A^3*c)\",\n", - " \"a_[[[τ²]]]\": \"(b'*A^2*c.^2)\",\n", - " \"a_[[[τ]τ]]\": \"(b'*A*diag(c)*A*c)\",\n", - " \"a_[[[τ]]τ]\": \"((b.*c)'*A^2*c)\",\n", - " \"a_[[τ³]]\": \"(b'*A*c.^3)\",\n", - " \"a_[[τ²]τ]\": \"((b.*c)'*A*c.^2)\",\n", - " \"a_[[τ][τ]]\": \"(b'*(A*c).^2)\",\n", - " \"a_[[τ]τ²]\": \"((b.*c.^2)'*A*c)\",\n", - " \"a_[τ⁴]\": \"(c'.^4*b)\",\n", - " # order 6\n", - " \"a_[[[[[τ]]]]]\": \"(b'*A^4*c)\",\n", - " \"a_[[[[τ²]]]]\": \"(b'*A^3*c.^2)\",\n", - " \"a_[[[[τ]τ]]]\": \"(b'*A^2*diag(c)*A*c)\",\n", - " \"a_[[[[τ]]τ]]\": \"(b'*A*diag(c)*A^2*c)\",\n", - " \"a_[[[[τ]]]τ]\": \"(b'*diag(c)*A^3*c)\",\n", - " \"a_[[[τ³]]]\": \"(b'*A^2*c.^3)\",\n", - " \"a_[[[τ²]τ]]\": \"(b'*A*diag(c)*A*c.^2)\",\n", - " \"a_[[[τ²]]τ]\": \"(b'*diag(c)*A^2*c.^2)\",\n", - " \"a_[[[τ][τ]]]\": \"(b'*A*(A*c).^2)\",\n", - " \"a_[[[τ]τ²]]\": \"(b'*A*diag(c).^2*A*c)\",\n", - " \"a_[[[τ]τ]τ]\": \"(b'*diag(c)*A*diag(c)*A*c)\",\n", - " \"a_[[[τ]][τ]]\": \"(b'*((A^2*c).*(A*c)))\",\n", - " \"a_[[[τ]]τ²]\": \"(b'*diag(c).^2*A^2*c)\",\n", - " \"a_[[τ⁴]]\": \"(b'*A*c.^4)\",\n", - " \"a_[[τ³]τ]\": \"(b'*diag(c)*A*c.^3)\",\n", - " \"a_[[τ²][τ]]\": \"(b'*((A*c.^2).*(A*c)))\",\n", - " \"a_[[τ²]τ²]\": \"(b'*diag(c).^2*A*c.^2)\",\n", - " \"a_[[τ][τ]τ]\": \"(b'*diag(c)*(A*c).^2)\",\n", - " \"a_[[τ]τ³]\": \"(b'*diag(c).^3*A*c)\",\n", - " \"a_[τ⁵]\": \"(c'.^5*b)\",\n", - " # order 7\n", - " \"a_[τ⁶]\": \"b'*(c.^6)\",\n", - " \"a_[[[[[[τ]]]]]]\": \"(b'*((A*(A*(A*(A*(A*c)))))))\",\n", - " \"a_[[[[[τ²]]]]]\": \"(b'*((A*(A*(A*(A*c.^2))))))\",\n", - " \"a_[[[[[τ]τ]]]]\": \"(b'*((A*(A*(A*(c.*(A*c)))))))\",\n", - " \"a_[[[[[τ]]τ]]]\": \"(b'*((A*(A*diag(c)*(A*(A*c))))))\",\n", - " \"a_[[[[[τ]]]τ]]\": \"(b'*((A*(c.*(A*(A*(A*c)))))))\", \n", - " \"a_[[[[[τ]]]]τ]\": \"(b'*((A*(A*(A*(A*c)))).*c))\",\n", - " \"a_[[[[τ³]]]]\": \"(b'*((A*(A*(A*c.^3)))))\",\n", - " \"a_[[[[τ²]τ]]]\": \"(b'*((A*(A*(c.*(A*c.^2))))))\",\n", - " \"a_[[[[τ²]]τ]]\": \"(b'*((A*(c.*(A*(A*c.^2))))))\",\n", - " \"a_[[[[τ²]]]τ]\": \"(b'*((A*(A*(A*c.^2))).*c))\",\n", - " \"a_[[[[τ][τ]]]]\": \"b'*((A*(A*((A*c).*(A*c)))))\",\n", - " \"a_[[[[τ]τ²]]]\": \"(b'*((A*(A*(c.^2.*(A*c))))))\",\n", - " \"a_[[[[τ]τ]τ]]\": \"(b'*((A*diag(c)*(A*diag(c)*(A*c)))))\",\n", - " \"a_[[[[τ]τ]]τ]\": \"(b'*((A*(A*(c.*(A*c)))).*c))\",\n", - " \"a_[[[[τ]][τ]]]\": \"(b'*((A*((A*c).*(A*(A*c))))))\",\n", - " \"a_[[[[τ]]τ²]]\": \"(b'*((A*(c.^2.*(A*(A*c))))))\",\n", - " \"a_[[[[τ]]τ]τ]\": \"(b'*((A*(c.*(A*(A*c)))).*c))\",\n", - " \"a_[[[[τ]]][τ]]\": \"(b'*((A*(A*(A*c))).*(A*c)))\",\n", - " \"a_[[[[τ]]]τ²]\": \"(b'*((A*(A*(A*c))).*c.^2))\",\n", - " \"a_[[[τ⁴]]]\": \"(b'*((A*(A*c.^4))))\",\n", - " \"a_[[[τ³]τ]]\": \"(b'*((A*(c.*(A*c.^3)))))\",\n", - " \"a_[[[τ³]]τ]\": \"(b'*((A*(A*c.^3)).*c))\",\n", - " \"a_[[[τ²][τ]]]\": \"(b'*((A*(c.^2.*(A*(A*c))))))\",\n", - " \"a_[[[τ²]τ²]]\": \"(b'*((A*(c.^2.*(A*c.^2)))))\",\n", - " \"a_[[[τ²]τ]τ]\": \"(b'*((A*(c.*(A*c.^2))).*c))\",\n", - " \"a_[[[τ²]][τ]]\": \"(b'*((A*(A*c.^2)).*(A*c)))\",\n", - " \"a_[[[τ²]]τ²]\": \"(b'*((A*(A*c.^2)).*c.^2))\",\n", - " \"a_[[[τ][τ]τ]]\": \"(b'*((A*(c.*(A*c).*(A*c)))))\",\n", - " \"a_[[[τ][τ]]τ]\": \"(b'*((A*((A*c).*(A*c))).*c))\",\n", - " \"a_[[[τ]τ³]]\": \"(b'*((A*(c.^3.*(A*c)))))\",\n", - " \"a_[[[τ]τ²]τ]\": \"(b'*((A*(c.^2.*(A*c))).*c))\",\n", - " \"a_[[[τ]τ][τ]]\": \"(b'*((A*diag(c)*(A*c)).*(A*c)))\",\n", - " \"a_[[[τ]τ]τ²]\": \"(b'*((A*(c.*(A*c))).*c.^2))\",\n", - " \"a_[[[τ]][[τ]]]\": \"(b'*((A*(A*c)).*(A*(A*c))))\",\n", - " \"a_[[[τ]][τ²]]\": \"(b'*((A*(A*c)).*(A*c.^2)))\",\n", - " \"a_[[[τ]][τ]τ]\": \"(b'*((A*(A*c)).*(A*c).*c))\",\n", - " \"a_[[[τ]]τ³]\": \"(b'*((A*(A*c)).*c.^3))\",\n", - " \"a_[[τ⁵]]\": \"(b'*((A*c.^5)))\",\n", - " \"a_[[τ⁴]τ]\": \"(b'*((A*c.^4).*c))\",\n", - " \"a_[[τ³][τ]]\": \"(b'*((A*c.^3).*(A*c)))\",\n", - " \"a_[[τ³]τ²]\": \"(b'*((A*c.^3).*c.^2))\",\n", - " \"a_[[τ²][τ²]]\": \"(b'*((A*c.^2).*(A*c.^2)))\",\n", - " \"a_[[τ²][τ]τ]\": \"(b'*((A*c.^2).*(A*c).*c))\",\n", - " \"a_[[τ²]τ³]\": \"(b'*((A*c.^2).*c.^3))\",\n", - " \"a_[[τ][τ][τ]]\": \"(b'*((A*c).*(A*c).*(A*c)))\",\n", - " \"a_[[τ][τ]τ²]\": \"(b'*((A*c).*(A*c).*c.^2))\",\n", - " \"a_[[τ]τ⁴]\": \"(b'*((A*c).*c.^4))\",\n", - " # order 8\n", - " \n", - " # Add more substitutions as needed\n", - " }\n", - "\n", - " # Iterate through the dictionary and perform substitutions\n", - " for old_text, new_text in substitutions.items():\n", - " input_text = input_text.replace(old_text, new_text)\n", - "\n", - " return input_text\n", - "\n", - "\n", - "\n", - "# Example usage:\n", - "plain_text = \"a_[[[τ]]τ]/12 + a_[[[τ]τ]]/3 - a_[[[τ]τ]τ]/2 - a_[[[τ]τ²]]/2 + a_[[[τ]τ²]τ]/2 + a_[[[τ²]]]/24 - a_[[[τ²]τ]]/4 + a_[[[τ²]τ²]]/4 - a_[[τ][τ]]/6 + a_[[τ][τ]τ]/2 - a_[[τ]]/24 - a_[[τ]τ]/12 - a_[[τ]τ²]/8 + a_[[τ²][τ]]/4 - a_[[τ²][τ]τ]/2 - a_[[τ²]]/24 + a_[[τ²]τ]/4 + a_[[τ²]τ²]/8 + a_[[τ³]]/8 - a_[[τ³]τ]/4 + 1/144\"\n", - "result_text = substitute_text(plain_text)\n", - "print(result_text)\n", - "\n" - ] - }, - { - "cell_type": "code", - "execution_count": 82, - "id": "f690180b", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "1/2 (- 1/4^2 + 1/8- 2 1/16+ 2 1/32 ) \n" - ] - } - ], - "source": [ - "# Convert to numerical values\n", - "def substitute_text(input_text):\n", - " # Define the substitution dictionary\n", - " substitutions = {\n", - " \"a123 \": \"1/4\",\n", - " \"a1234 \": \"1/8\",\n", - " \"a1233 \": \"1/6\",\n", - " \"a1232 \": \"1/6\",\n", - " \"a12345 \": \"1/16\",\n", - " \"a12344 \": \"1/12\",\n", - " \"a12343 \": \"1/12\",\n", - " \"a12342 \": \"1/12\",\n", - " \"a12333 \": \"1/8\",\n", - " \"a12332 \": \"1/9\",\n", - " \"a12323 \": \"1/12\",\n", - " \"a12322 \": \"1/8\",\n", - " \"a123456\": \"1/32\",\n", - " \"a123455 \": \"1/24\",\n", - " \"a123454 \": \"1/24\",\n", - " \"a123453 \": \"1/24\",\n", - " \"a123452 \": \"1/24\",\n", - " \"a123444 \": \"1/16\",\n", - " \"a123443 \": \"1/18\",\n", - " \"a123442 \": \"1/18\",\n", - " \"a123434 \": \"1/24\",\n", - " \"a123433 \": \"1/16\",\n", - " \"a123432 \": \"1/18\",\n", - " \"a123423 \": \"1/24\",\n", - " \"a123422 \": \"1/16\",\n", - " \"a123333 \": \"1/10\",\n", - " \"a123332 \": \"1/12\",\n", - " \"a123323 \": \"1/18\",\n", - " \"a123322 \": \"1/12\",\n", - " \"a123232 \": \"1/16\",\n", - " \"a123222 \": \"1/10\",\n", - " # Add more substitutions as needed\n", - " }\n", - "\n", - " # Iterate through the dictionary and perform substitutions\n", - " for old_text, new_text in substitutions.items():\n", - " input_text = input_text.replace(old_text, new_text)\n", - "\n", - " return input_text\n", - "\n", - "\n", - "\n", - "# Example usage:\n", - "plain_text = \"1/2 (- a123 ^2 + a1234 - 2 a12345 + 2 a123456 ) \"\n", - "result_text = substitute_text(plain_text)\n", - "print(result_text)" - ] - }, - { - "cell_type": "code", - "execution_count": 142, - "id": "16620042", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "2 (6 \\coeff_{\\rt[[[]][]]}+ 12 \\coeff_{\\rt[[[]][[]]]}+ 9 \\coeff_{\\rt[[[][]]]}+ 8 \\coeff_{\\r[[[[]]]]}+ 24 \\coeff_{\\rt[[[[]][]][]]}+ 12 \\coeff_{\\rt[[[[][]][]]]}) = 1 + 4 \\coeff_{\\rt[[[]]]}+ 24 \\coeff_{\\rt[[[][]][]]}+ 24 \\coeff_{\\rt[[[][]][][]]}+ 24 \\coeff_{\\rt[[[[]]][]]}+ 48 \\coeff_{\\rt[[[[]][]]]}+ 12 \\coeff_{\\rt[[[[][]]]]}\n" - ] - } - ], - "source": [ - "# Convert to Latex\n", - "import re\n", - "\n", - "# Define the substitution dictionary\n", - "def substitute_text(input_text):\n", - " substitutions = {\n", - " \"a123 \": \"\\\\coeff_{\\\\rt[[[]]]}\",\n", - " \"a1234 \": \"\\\\coeff_{\\\\r[[[[]]]]}\",\n", - " \"a1233 \": \"\\\\coeff_{\\\\rt[[[][]]]}\",\n", - " \"a1232 \": \"\\\\coeff_{\\\\rt[[[]][]]}\",\n", - " \"a12345 \": \"\\\\coeff_{\\\\rt[[[[[]]]]]}\",\n", - " \"a12344 \": \"\\\\coeff_{\\\\rt[[[[][]]]]}\",\n", - " \"a12343 \": \"\\\\coeff_{\\\\rt[[[[]][]]]}\",\n", - " \"a12342 \": \"\\\\coeff_{\\\\rt[[[[]]][]]}\",\n", - " \"a12333 \": \"\\\\coeff_{\\\\rt[[[][][]]]}\",\n", - " \"a12332 \": \"\\\\coeff_{\\\\rt[[[][]][]]}\",\n", - " \"a12323 \": \"\\\\coeff_{\\\\rt[[[]][[]]]}\",\n", - " \"a12322 \": \"\\\\coeff_{\\\\rt[[[]][][]]}\",\n", - " \"a123456\": \"\\\\coeff_{\\\\rt[[[[[[]]]]]]}\",\n", - " \"a123455 \": \"\\\\coeff_{\\\\rt[[[[[][]]]]]}\",\n", - " \"a123454 \": \"\\\\coeff_{\\\\rt[[[[[]][]]]]}\",\n", - " \"a123453 \": \"\\\\coeff_{\\\\rt[[[[[]]][]]]}\",\n", - " \"a123452 \": \"\\\\coeff_{\\\\rt[[[[[]]]][]]}\",\n", - " \"a123444 \": \"\\\\coeff_{\\\\rt[[[[][][]]]]}\",\n", - " \"a123443 \": \"\\\\coeff_{\\\\rt[[[[][]][]]]}\",\n", - " \"a123442 \": \"\\\\coeff_{\\\\rt[[[[][]]][]]}\",\n", - " \"a123434 \": \"\\\\coeff_{\\\\rt[[[[]][[]]]]}\",\n", - " \"a123433 \": \"\\\\coeff_{\\\\rt[[[[]][][]]]}\",\n", - " \"a123432 \": \"\\\\coeff_{\\\\rt[[[[]][]][]]}\",\n", - " \"a123423 \": \"\\\\coeff_{\\\\rt[[[[]]][[]]]}\",\n", - " \"a123422 \": \"\\\\coeff_{\\\\rt[[[[]]][[]]]}\",\n", - " \"a123333 \": \"\\\\coeff_{\\\\rt[[[][][][]]]}\",\n", - " \"a123332 \": \"\\\\coeff_{\\\\rt[[[][][]][]]}\",\n", - " \"a123323 \": \"\\\\coeff_{\\\\rt[[[][]][][]]}\",\n", - " \"a123322 \": \"\\\\coeff_{\\\\rt[[[][]][][]]}\",\n", - " \"a123232 \": \"\\\\coeff_{\\\\rt[[[]][[]][]]}\",\n", - " \"a123222 \": \"\\\\coeff_{\\\\rt[[[]][][][]]}\",\n", - " # Add more substitutions as needed\n", - " }\n", - " \n", - " # Iterate through the dictionary and perform substitutions\n", - " for old_text, new_text in substitutions.items():\n", - " input_text = input_text.replace(old_text, new_text)\n", - "\n", - " return input_text\n", - "\n", - "\n", - "\n", - "# Example usage:\n", - "plain_text = \"2 (6 a1232 + 12 a12323 + 9 a1233 + 8 a1234 + 24 a123432 + 12 a123443 ) = 1 + 4 a123 + 24 a12332 + 24 a123323 + 24 a12342 + 48 a12343 + 12 a12344 \"\n", - "result_text = substitute_text(plain_text)\n", - "print(result_text)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "107cb1b3", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.10.9" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/RK-coeff-opt/PEP_search.m b/RK-coeff-opt/PEP_search.m deleted file mode 100644 index 2808c24..0000000 --- a/RK-coeff-opt/PEP_search.m +++ /dev/null @@ -1,17 +0,0 @@ -% Code to look for PEP methods -% stages and classical order of accuracy -s = 6 -p = 2 -% Number of cores (4 in my computer) -n_cores = 4 - -% This line was recommended by David: it creates a loop which looks for methods satisfying the nonlinear conditions. -% We want to make 1000 searches with each algorithm (sqp, interior-point, active-set). -% If no method is found, then we can move to the next number of stages. -rk = rk_opt(s,p,'erk','acc', 'algorithm', 'sqp','np',6,'solveorderconditions',1,'num_starting_points',1500,'suppress_warnings',1); - -% I think the the last command may run forever until it finds a solution (correct me if I am wrong). Since I don't -% know how to keep track of the number of searches, I made another loop. I can include it later in this file -% if necessary. - - From 7c2bba3612b536256338858eea270cc0d79d041b Mon Sep 17 00:00:00 2001 From: Sondar74 <79122393+Sondar74@users.noreply.github.com> Date: Tue, 16 Apr 2024 08:42:31 -0600 Subject: [PATCH 15/18] Update RK-coeff-opt/nonlinear_constraints.m Co-authored-by: Hendrik Ranocha --- RK-coeff-opt/nonlinear_constraints.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RK-coeff-opt/nonlinear_constraints.m b/RK-coeff-opt/nonlinear_constraints.m index e986763..e8dc390 100644 --- a/RK-coeff-opt/nonlinear_constraints.m +++ b/RK-coeff-opt/nonlinear_constraints.m @@ -123,7 +123,7 @@ % Energy Preserving conditions % Choose pseudo-energy-preserving q (up to 6) -q=7; +q=0; if q>=1 coneq(end+1) = sum(b)-1; end From e57a2c5f06c308a314b7b37bf391e1a8a2891325 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Wed, 17 Apr 2024 23:08:41 -0600 Subject: [PATCH 16/18] Error message --- RK-coeff-opt/nonlinear_constraints.m | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/RK-coeff-opt/nonlinear_constraints.m b/RK-coeff-opt/nonlinear_constraints.m index e8dc390..3f3a6c7 100644 --- a/RK-coeff-opt/nonlinear_constraints.m +++ b/RK-coeff-opt/nonlinear_constraints.m @@ -121,9 +121,13 @@ con = [con, res .* conj(res) - 1]; end -% Energy Preserving conditions -% Choose pseudo-energy-preserving q (up to 6) -q=0; +q=1; +% Throw error message in case q>7 +msg = 'The energy-preserving conditions for orders q>7 have not been implemented.'; +% PEP conditions +if q >= 8 + error(msg); +end if q>=1 coneq(end+1) = sum(b)-1; end @@ -178,4 +182,4 @@ coneq(end+1) = ((b.*c)'*A^2*c)/6 - (b'*diag(c).^2*A^2*c)/4 + (b'*A*diag(c)*A*c)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*(c.*(A*c))).*c.^2))/2 + (b'*A^2*c.^2)/12 - (b'*A*diag(c)*A*c.^2)/4 - (b'*A^2*c.^3)/12 + (b'*((A*(c.*(A*c.^3)))))/6 - (b'*(A*c).^2)/12 - ((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*A*c.^2)/12 + ((b.*c)'*A*c.^2)/4 - (b'*diag(c).^2*A*c.^2)/4 - (b'*((A*c.^3).*(A*c)))/6 + (b'*A*c.^3)/24; coneq(end+1) = ((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c)/3 - (b'*diag(c)*A*diag(c)*A*c)/2 - (b'*A*diag(c).^2*A*c)/2 + (b'*((A*(c.^2.*(A*c))).*c))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*(c.^2.*(A*c.^2)))))/4 - (b'*(A*c).^2)/6 + (b'*diag(c)*(A*c).^2)/2 - (b'*A*c)/24 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c).*c))/2 - (b'*A*c.^2)/24 + ((b.*c)'*A*c.^2)/4 + (b'*diag(c).^2*A*c.^2)/8 + (b'*A*c.^3)/8 - (b'*diag(c)*A*c.^3)/4 + 1/144; coneq(end+1) = (c'.^4*b)/288 - (c'.^5*b)/240 + b'*(c.^6)/720 - 1/5040; -end \ No newline at end of file +end From c1fd47cd831563cab4bafe61a1ae30a9bd3fbd84 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Thu, 18 Apr 2024 21:54:16 -0600 Subject: [PATCH 17/18] Move message to the end --- RK-coeff-opt/nonlinear_constraints.m | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/RK-coeff-opt/nonlinear_constraints.m b/RK-coeff-opt/nonlinear_constraints.m index 3f3a6c7..f07506c 100644 --- a/RK-coeff-opt/nonlinear_constraints.m +++ b/RK-coeff-opt/nonlinear_constraints.m @@ -122,12 +122,9 @@ end q=1; -% Throw error message in case q>7 -msg = 'The energy-preserving conditions for orders q>7 have not been implemented.'; + % PEP conditions -if q >= 8 - error(msg); -end + if q>=1 coneq(end+1) = sum(b)-1; end @@ -183,3 +180,8 @@ coneq(end+1) = ((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c)/3 - (b'*diag(c)*A*diag(c)*A*c)/2 - (b'*A*diag(c).^2*A*c)/2 + (b'*((A*(c.^2.*(A*c))).*c))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*(c.^2.*(A*c.^2)))))/4 - (b'*(A*c).^2)/6 + (b'*diag(c)*(A*c).^2)/2 - (b'*A*c)/24 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c).*c))/2 - (b'*A*c.^2)/24 + ((b.*c)'*A*c.^2)/4 + (b'*diag(c).^2*A*c.^2)/8 + (b'*A*c.^3)/8 - (b'*diag(c)*A*c.^3)/4 + 1/144; coneq(end+1) = (c'.^4*b)/288 - (c'.^5*b)/240 + b'*(c.^6)/720 - 1/5040; end +% Throw error message in case q>7 +msg = 'The energy-preserving conditions for orders q>7 have not been implemented.'; +if q >= 8 + error(msg); +end From ec04e9cef2bf4b9fa9a245e6ac41dadaa0a765e2 Mon Sep 17 00:00:00 2001 From: Sondar74 Date: Tue, 7 May 2024 12:14:54 -0600 Subject: [PATCH 18/18] Update conditions 6 and 7 --- RK-coeff-opt/nonlinear_constraints.m | 68 ++++++++++++++-------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/RK-coeff-opt/nonlinear_constraints.m b/RK-coeff-opt/nonlinear_constraints.m index f07506c..dddf185 100644 --- a/RK-coeff-opt/nonlinear_constraints.m +++ b/RK-coeff-opt/nonlinear_constraints.m @@ -146,40 +146,40 @@ coneq(end+1) = (b.*c.^2)'*A*c-(b'*A*c.^3)/3 - 1/12; end if q >= 6 - coneq(end+1) = -(b'*A*c)^2 + (b'*A^2*c)- 2 *(b'*A^3*c)+ 2* (b'*A^4*c); - coneq(end+1) = 6* (3* (b'*A*c)+ ((b'.*c')*A*c)+ 3* ( (b'*A^2*c.^2)+ 4* (b'*diag(c)*A^3*c))) - 2 - 3* (b'*A*c.^2)- 24* (b'*A^2*c)- 36* ((b.*c)'*A^2*c)- 36* (b'*A^3*c.^2); - coneq(end+1) = 1 - 12* (b'*A*c)+ 24* ((b'.*c')*A*c)- 36* ((b.*c.^2)'*A*c)+ 24* (b'*A*c.^2)- 12* (b'*A*c.^3)+ 24* (b'*A^2*c)- 72* ((b.*c)'*A^2*c)+ 72* (b'*diag(c).^2*A^2*c)- 36* (b'*A^2*c.^2)+ 24* (b'*A^2*c.^3); - coneq(end+1) = 12 *(2* ((b'.*c')*A*c)+ 6* ((b.*c.^2)'*A*c)+ 6* (b'*(A*c).^2)+ 5* (b'*A*c.^2)+ 2* (b'*A^2*c)+ 12* b'*A*diag(c).^2*A*c) - 5 - 24* (b'*A*c)- 144* (b'*diag(c)*(A*c).^2)- 72* (b'*A*c.^3)- 144* (b'*A*diag(c)*A*c); - coneq(end+1) = 1 + 60* ((b'.*c')*A*c)+ 120* (b'*diag(c).^3*A*c)+ 60* (b'*A*c.^3)- 30* (6* ((b.*c.^2)'*A*c)+ (b'*A*c.^2)+ (b'*A*c.^4)); - coneq(end+1) = 1 + 12* ((b'.*c')*A*c)+ 36* (b'*diag(c).^2*A*c.^2)+ 12* (b'*A*c.^3)-6* (6* ((b.*c.^2)'*A*c)+ (b'*A*c.^2)+ 4* (b'*diag(c)*A*c.^3)); - coneq(end+1) = -1 + 6 * (b'*A*c)+ 6* ((b'.*c')*A*c)- 3* (b'*A*c.^2)+ 12* (b'*A^2*c)- 36* ((b.*c)'*A^2*c)- 18* (b'*A^2*c.^2)+ 36* (b'*diag(c)*A^2*c.^2); - coneq(end+1) = -(5/144) - (b'*A*c)/6 + (2* ((b'.*c')*A*c))/3 - (b'*(A*c).^2)/2 + (b'*A*c.^2)/6 + (b'*A^2*c)/6 - (b'*A*diag(c)*A*c)+ (b'*A*(A*c).^2); - coneq(end+1) = c'.^5*b-1/6; - coneq(end+1) = 8 *( (b'*A*c)+ 3* ( (b'*(A*c).^2)+ (b'*A^2*c.^2)+ 2* (b'*A*diag(c)*A^2*c))) - 1 - 12* (b'*A*c.^2)- 8 * (b'*A^2*c)- 48* (b'*((A^2*c).*(A*c)))-48* (b'*A^2*diag(c)*A*c); - coneq(end+1) = 2* (6* ((b'.*c')*A*c)+ 12* (b'*(A*c).^2)+ 9* (b'*A*c.^2)+ 8* (b'*A^2*c)+ 24* (b'*diag(c)*A*diag(c)*A*c)+ 12* (b'*A*diag(c)*A*c.^2)) -1 - 4* (b'*A*c)- 24* ((b.*c)'*A*c.^2)- 24* (b'*((A*c.^2).*(A*c)))- 24* ((b.*c)'*A^2*c)- 48* (b'*A*diag(c)*A*c)- 12* (b'*A^2*c.^2); -end -if q >= 7 - coneq(end+1) = -(b'*A^4*c) + (b'*((A*(A*(A*(A*c)))).*c)) + (b'*((A*(A*(A*(A*c.^2))))))/2 + (b'*A^3*c)/2 - (b'*diag(c)*A^3*c)/2 - (b'*A^3*c.^2)/4 - (b'*A^2*c)/12 + ((b.*c)'*A^2*c)/12 + (b'*A^2*c.^2)/24 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - ((b'*A*c) - 1/6)*(-(b'*A*c)/2 + c'.^3*b/2 + 1/24)/2; - coneq(end+1) = -(b'*A^4*c)/2 + (b'*((A*(A*diag(c)*(A*(A*c)))))) + (b'*A^3*c)/2 - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*c)).*(A*(A*c))))/2 - (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/4 + ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c)/3 + (b'*A^2*c.^2)/12 + (b'*(A*c).^2)/12 + (b'*A*c)/12 - ((b'.*c')*A*c)/12 - (b'*A*c.^2)/12 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - 5*((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6)/2 + 3*((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6)/2 - 2*((b'*A*c)/2 - 1/12)*((b'*A^2*c) - (b'*A*c) + 1/8); - coneq(end+1) = (b'*diag(c)*A^3*c)/2 - (b'*((A*(A*(A*c))).*c.^2))/2 - (b'*A^3*c.^2)/4 + (b'*((A*(A*(A*c.^3)))))/6 - (b'*A^2*c)/12 - ((b.*c)'*A^2*c)/6 + (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/6 - (b'*A^2*c.^3)/12 + (b'*A*c)/24 - ((b.*c.^2)'*A*c)/24 - (b'*A*c.^2)/24 + (b'*A*c.^3)/72 + ((b'*A*c)/2 - 1/12)*((c'.^3*b) - 1/4)/2 - ((b'*A*c) - 1/6)*((c'.^3*b)/2 - 1/8)/6; - coneq(end+1) = -((b.*c.^2)'*A*c)/12 + (b'*diag(c).^3*A*c)/12 + (b'*diag(c).^2*A*c.^2)/8 - (b'*((A*c.^2).*c.^3))/12 + (b'*A*c.^3)/36 - (b'*diag(c)*A*c.^3)/12 - (b'*A*c.^4)/48 + (b'*((A*c.^4).*c))/24 + c'.^3*b/72 - 5*(c'.^4*b)/288; - coneq(end+1) = b'*((A*(A*((A*c).*(A*c)))))/2 - (b'*((A*((A*c).*(A*(A*c)))))) + (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*A*(A*c).^2)/4 + (b'*((A^2*c).*(A*c)))/2 - ((b.*c)'*A^2*c)/3 + (b'*A*diag(c)*A*c)/12 + (b'*A^2*c.^2)/12 - 7*(b'*(A*c).^2)/24 + (b'*A*c)/24 + ((b'.*c')*A*c)/6 - (b'*A*c.^2)/12 + ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A^2*c) - (b'*A*c) + 1/8) - 1/144; - coneq(end+1) = (b'*A^3*c)/6 - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*diag(c)*(A*diag(c)*(A*c))))) - (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/6 + ((b.*c)'*A^2*c)/2 + (b'*((A*diag(c)*(A*c)).*(A*c))) + 2*(b'*A*diag(c)*A*c)/3 - (b'*diag(c)*A*diag(c)*A*c) + (b'*A^2*c.^2)/6 - (b'*A*diag(c)*A*c.^2)/2 + (b'*(A*c).^2)/4 - (b'*A*c)/180 - ((b'.*c')*A*c)/4 - (b'*((A*c.^2).*(A*c)))/2 - (b'*A*c.^2)/6 + ((b.*c)'*A*c.^2)/2 - 2*((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - 2*((b'*A*c) - 1/6)*(-(b'*A*c)/4 + ((b'.*c')*A*c)/2 - 1/48) + 149/15120; - coneq(end+1) = ((b.*c)'*A^2*c)/12 - (b'*diag(c).^2*A^2*c)/4 + (b'*((A*(A*c)).*c.^3))/6 + (b'*A^2*c.^2)/24 - (b'*A^2*c.^3)/12 + (b'*((A*(A*c.^4))))/24 + ((b.*c.^2)'*A*c)/12 - (b'*diag(c).^3*A*c)/12 - (b'*A*c.^2)/24 + (b'*A*c.^3)/18 - (b'*A*c.^4)/48 - (c'.^3*b)/72 + 5*(c'.^4*b)/288 - ((b'*A*c)/2 - 1/12)*((c'.^3*b) - 1/4)/6; - coneq(end+1) = ((b.*c)'*A^2*c)/4 - (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/8 - (b'*diag(c)*A^2*c.^2)/2 + (b'*((A*(A*c.^2)).*c.^2))/4 - (b'*A^2*c.^3)/12 + (b'*((A*(A*c.^3)).*c))/6 - (b'*A*c)/24 + ((b.*c.^2)'*A*c)/24 + (b'*A*c.^2)/24 - (b'*A*c.^3)/72; - coneq(end+1) = -3*(b'*A*(A*c).^2)/4 + (b'*((A*((A*c).*(A*c))).*c))/2 + ((b.*c)'*A^2*c)/12 + 5*(b'*A*diag(c)*A*c)/12 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*(c.^2.*(A*(A*c))))))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + 7*(b'*(A*c).^2)/24 - (b'*A*c)/24 - ((b'.*c')*A*c)/6 - (b'*((A*c.^2).*(A*c)))/4 - (b'*A*c.^2)/24 + ((b.*c)'*A*c.^2)/4 + 1/144; - coneq(end+1) = ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*A^2*c.^2)/12 - (b'*diag(c)*A^2*c.^2)/4 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*(c.*(A*c.^2))).*c))/2 - (b'*(A*c).^2)/12 - (b'*A*c)/12 + ((b'.*c')*A*c)/12 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c.^2)))/8 + (b'*A*c.^2)/24; - coneq(end+1) = -(b'*A*(A*c).^2)/4 + (b'*((A*(c.*(A*c).*(A*c)))))/2 + (b'*A*diag(c)*A*c)/4 - (b'*A*diag(c).^2*A*c)/2 - (b'*((A*c).*(A*c).*(A*c)))/6 + (b'*(A*c).^2)/8 - ((b'.*c')*A*c)/4 + ((b.*c.^2)'*A*c)/4 + (b'*A*c.^3)/12 - (c'.^3*b)/12 + 1/48; - coneq(end+1) = (b'*A*diag(c)*A*c)/12 - (b'*A*diag(c).^2*A*c)/4 + (b'*((A*(c.^3.*(A*c)))))/6 - (b'*(A*c).^2)/24 + (b'*diag(c)*(A*c).^2)/4 - (b'*((A*c).*(A*c).*c.^2))/4 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/24 + (b'*diag(c).^3*A*c)/6 + 7*(b'*A*c.^3)/72 - (b'*A*c.^4)/12 - 7*(c'.^3*b)/72 + (c'.^4*b)/72 + 1/48; - coneq(end+1) = -((b.*c.^2)'*A*c)/24 + (b'*diag(c).^3*A*c)/12 - (b'*((A*c).*c.^4))/24 + (b'*A*c.^3)/72 - (b'*A*c.^4)/48 + (b'*((A*c.^5)))/120 - (c'.^3*b)/72 - 5*(c'.^4*b)/288 + (c'.^5*b)/60 + 1/240; - coneq(end+1) = -(b'*A^4*c) + (b'*((A*(c.*(A*(A*(A*c))))))) + (b'*((A*(A*(A*(c.*(A*c))))))) - (b'*((A*(A*(A*c))).*(A*c))) + (b'*A^3*c) - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 - (b'*A^3*c.^2)/2 + (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/2 + ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c)/6 + (b'*A^2*c.^2)/3 - (b'*(A*c).^2)/12 + (b'*A*c)/8 - ((b'.*c')*A*c)/12 - (b'*A*c.^2)/12 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + (b'*A*c.^2) + 1/12) + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - ((b'*A*c) - 1/6)*(-(b'*A*c)/4 + ((b'.*c')*A*c)/2 - 1/48); - coneq(end+1) = (b'*diag(c)*A^3*c)/2 + (b'*A*diag(c)*A^2*c)/2 - (b'*((A*(c.*(A*(A*c)))).*c)) - (b'*A^2*diag(c)*A*c)/2 - (b'*A^3*c.^2)/4 + (b'*((A*(A*(c.*(A*c.^2))))))/2 - (b'*((A^2*c).*(A*c)))/2 + (b'*((A*(A*c)).*(A*c.^2)))/2 - (b'*A^2*c)/4 + (b'*A*diag(c)*A*c)/6 + (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*A^2*c.^2)/4 - (b'*A*diag(c)*A*c.^2)/4 + (b'*(A*c).^2)/6 + (b'*A*c)/6 - ((b'.*c')*A*c)/6 - (b'*((A*c.^2).*(A*c)))/4 - (b'*A*c.^2)/8 - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + (b'*A*c.^2) + 1/12)/2 + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24); - coneq(end+1) = (b'*diag(c)*A^3*c)/2 - (b'*A*diag(c)*A^2*c)/2 + (b'*A^2*diag(c)*A*c)/2 - (b'*((A*(A*(c.*(A*c)))).*c)) - (b'*A^3*c.^2)/4 + (b'*((A*(c.*(A*(A*c.^2))))))/2 + (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/4 - ((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c)/6 - (b'*((A*(A*c.^2)).*(A*c)))/2 - (b'*A^2*c.^2)/24 + (b'*diag(c)*A^2*c.^2)/2 - (b'*(A*c).^2)/12 + (b'*A*c)/8 - ((b'.*c')*A*c)/12 - (b'*A*c.^2)/12; - coneq(end+1) = (b'*A^3*c)/6 - (b'*A*diag(c)*A^2*c)/2 + (b'*((A*(c.^2.*(A*(A*c))))))/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*(c.^2.*(A*c))))))/2 + (b'*((A^2*c).*(A*c)))/2 - (b'*((A*(A*c)).*(A*c).*c)) - (b'*A^2*c)/6 + ((b.*c)'*A^2*c)/12 + (b'*diag(c).^2*A^2*c)/4 + (b'*A*diag(c)*A*c)/2 - (b'*A*diag(c).^2*A*c)/2 + 5*(b'*A^2*c.^2)/24 - (b'*A^2*c.^3)/4 - (b'*(A*c).^2)/6 + (b'*diag(c)*(A*c).^2)/2 + 3*(b'*A*c)/40 - ((b'.*c')*A*c)/4 - ((b.*c.^2)'*A*c)/24 - 5*(b'*A*c.^2)/24 + 5*(b'*A*c.^3)/24 - (c'.^3*b)/12 - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + (b'*A*c.^2) + 1/12)/2 + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) + 59/1680; - coneq(end+1) = ((b.*c)'*A^2*c)/6 - (b'*diag(c).^2*A^2*c)/4 + (b'*A*diag(c)*A*c)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*(c.*(A*c))).*c.^2))/2 + (b'*A^2*c.^2)/12 - (b'*A*diag(c)*A*c.^2)/4 - (b'*A^2*c.^3)/12 + (b'*((A*(c.*(A*c.^3)))))/6 - (b'*(A*c).^2)/12 - ((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*A*c.^2)/12 + ((b.*c)'*A*c.^2)/4 - (b'*diag(c).^2*A*c.^2)/4 - (b'*((A*c.^3).*(A*c)))/6 + (b'*A*c.^3)/24; - coneq(end+1) = ((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c)/3 - (b'*diag(c)*A*diag(c)*A*c)/2 - (b'*A*diag(c).^2*A*c)/2 + (b'*((A*(c.^2.*(A*c))).*c))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*(c.^2.*(A*c.^2)))))/4 - (b'*(A*c).^2)/6 + (b'*diag(c)*(A*c).^2)/2 - (b'*A*c)/24 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c).*c))/2 - (b'*A*c.^2)/24 + ((b.*c)'*A*c.^2)/4 + (b'*diag(c).^2*A*c.^2)/8 + (b'*A*c.^3)/8 - (b'*diag(c)*A*c.^3)/4 + 1/144; - coneq(end+1) = (c'.^4*b)/288 - (c'.^5*b)/240 + b'*(c.^6)/720 - 1/5040; -end + coneq(end+1) = -(b'*A*c)^2 + (b'*A^2*c)- 2 *(b'*A^3*c)+ 2* (b'*A^4*c); + coneq(end+1) = -(b'*diag(c)*A^3*c) + (b'*A^3*c.^2)/2 + (b'*A^2*c)/3 + ((b.*c)'*A^2*c)/2 - (b'*A^2*c.^2)/4 - (b'*A*c)/4 - ((b'.*c')*A*c)/12 + (b'*A*c.^2)/24 + 1/36; + coneq(end+1) = -(b'*A*diag(c)*A^2*c) + (b'*A^2*diag(c)*A*c) + (b'*((A^2*c).*(A*c))) + (b'*A^2*c)/6 - (b'*A^2*c.^2)/2 - (b'*(A*c).^2)/2 - (b'*A*c)/6 + (b'*A*c.^2)/4 + 1/48; + coneq(end+1) = (b'*A^2*c)/6 - ((b.*c)'*A^2*c)/2 + (b'*diag(c).^2*A^2*c)/2 - (b'*A^2*c.^2)/4 + (b'*A^2*c.^3)/6 - (b'*A*c)/12 + ((b'.*c')*A*c)/6 - ((b.*c.^2)'*A*c)/4 + (b'*A*c.^2)/6 - (b'*A*c.^3)/12 + 1/144; + coneq(end+1) = (b'*A^2*c)/3 - ((b.*c)'*A^2*c)/2 - (b'*A*diag(c)*A*c) + (b'*diag(c)*A*diag(c)*A*c) - (b'*A^2*c.^2)/4 + (b'*A*diag(c)*A*c.^2)/2 + (b'*(A*c).^2)/2 - (b'*A*c)/12 + ((b'.*c')*A*c)/4 - (b'*((A*c.^2).*(A*c)))/2 + 3*(b'*A*c.^2)/8 - ((b.*c)'*A*c.^2)/2 - 1/48; + coneq(end+1) = (b'*A^2*c)/6 - ((b.*c)'*A^2*c)/2 - (b'*A^2*c.^2)/4 + (b'*diag(c)*A^2*c.^2)/2 + (b'*A*c)/12 + ((b'.*c')*A*c)/12 - (b'*A*c.^2)/24 - 1/72; + coneq(end+1) = (b'*A*(A*c).^2)/2 + (b'*A^2*c)/12 - (b'*A*diag(c)*A*c)/2 - (b'*(A*c).^2)/4 - (b'*A*c)/12 + ((b'.*c')*A*c)/3 + (b'*A*c.^2)/12 - 5/288; + coneq(end+1) = (b'*A^2*c)/12 - (b'*A*diag(c)*A*c)/2 + (b'*A*diag(c).^2*A*c)/2 + (b'*(A*c).^2)/4 - (b'*diag(c)*(A*c).^2)/2 - (b'*A*c)/12 + ((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/4 + 5*(b'*A*c.^2)/24 - (b'*A*c.^3)/4 - 5/288; + coneq(end+1) = -((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/4 - (b'*diag(c).^3*A*c)/6 + (b'*A*c.^2)/24 - (b'*A*c.^3)/12 + (b'*A*c.^4)/24 - 1/720; + coneq(end+1) = -((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/4 + (b'*A*c.^2)/24 - (b'*diag(c).^2*A*c.^2)/4 - (b'*A*c.^3)/12 + (b'*diag(c)*A*c.^3)/6 - 1/144; + coneq(end+1) = (c'.^5*b)/120 - 1/720; + end + if q >= 7 + coneq(end+1) = -(b'*A^4*c) + (b'*((A*(A*(A*(A*c)))).*c)) + (b'*((A*(A*(A*(A*c.^2))))))/2 + (b'*A^3*c)/2 - (b'*diag(c)*A^3*c)/2 - (b'*A^3*c.^2)/4 - (b'*A^2*c)/12 + ((b.*c)'*A^2*c)/12 + (b'*A^2*c.^2)/24 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - ((b'*A*c) - 1/6)*(-(b'*A*c)/2 + (b'*A*c.^2)/2 + 1/24)/2; + coneq(end+1) = -(b'*A^4*c) + (b'*((A*(c.*(A*(A*(A*c))))))) + (b'*((A*(A*(A*(c.*(A*c))))))) - (b'*((A*(A*(A*c))).*(A*c))) + (b'*A^3*c) - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 - (b'*A^3*c.^2)/2 + (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/2 + ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c)/6 + (b'*A^2*c.^2)/3 - (b'*(A*c).^2)/12 + (b'*A*c)/8 - ((b'.*c')*A*c)/12 - (b'*A*c.^2)/12 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + (b'*A*c.^2) + 1/12) + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - ((b'*A*c) - 1/6)*(-(b'*A*c)/4 + ((b'.*c')*A*c)/2 - 1/48); + coneq(end+1) = -(b'*A^4*c)/2 + (b'*((A*(A*diag(c)*(A*(A*c)))))) + (b'*A^3*c)/2 - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*c)).*(A*(A*c))))/2 - (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/4 + ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c)/3 + (b'*A^2*c.^2)/12 + (b'*(A*c).^2)/12 + (b'*A*c)/12 - ((b'.*c')*A*c)/12 - (b'*A*c.^2)/12 - ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) - 5*((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6)/2 + 3*((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6)/2 - 2*((b'*A*c)/2 - 1/12)*((b'*A^2*c) - (b'*A*c) + 1/8); + coneq(end+1) = (b'*diag(c)*A^3*c)/2 - (b'*((A*(A*(A*c))).*c.^2))/2 - (b'*A^3*c.^2)/4 + (b'*((A*(A*(A*c.^3)))))/6 - (b'*A^2*c)/12 - ((b.*c)'*A^2*c)/6 + (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/6 - (b'*A^2*c.^3)/12 + (b'*A*c)/24 - ((b.*c.^2)'*A*c)/24 - (b'*A*c.^2)/24 + (b'*A*c.^3)/72; + coneq(end+1) = (b'*diag(c)*A^3*c)/2 + (b'*A*diag(c)*A^2*c)/2 - (b'*((A*(c.*(A*(A*c)))).*c)) - (b'*A^2*diag(c)*A*c)/2 - (b'*A^3*c.^2)/4 + (b'*((A*(A*(c.*(A*c.^2))))))/2 - (b'*((A^2*c).*(A*c)))/2 + (b'*((A*(A*c)).*(A*c.^2)))/2 - (b'*A^2*c)/4 + (b'*A*diag(c)*A*c)/6 + (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*A^2*c.^2)/4 - (b'*A*diag(c)*A*c.^2)/4 + (b'*(A*c).^2)/6 + (b'*A*c)/6 - ((b'.*c')*A*c)/6 - (b'*((A*c.^2).*(A*c)))/4 - (b'*A*c.^2)/8 - ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + (b'*A*c.^2) + 1/12)/2 + ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24); + coneq(end+1) = (b'*diag(c)*A^3*c)/2 - (b'*A*diag(c)*A^2*c)/2 + (b'*A^2*diag(c)*A*c)/2 - (b'*((A*(A*(c.*(A*c)))).*c)) - (b'*A^3*c.^2)/4 + (b'*((A*(c.*(A*(A*c.^2))))))/2 + (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/4 - ((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c)/6 - (b'*((A*(A*c.^2)).*(A*c)))/2 - (b'*A^2*c.^2)/24 + (b'*diag(c)*A^2*c.^2)/2 - (b'*(A*c).^2)/12 + (b'*A*c)/8 - ((b'.*c')*A*c)/12 - (b'*A*c.^2)/12; + coneq(end+1) = b'*((A*(A*((A*c).*(A*c)))))/2 - (b'*((A*((A*c).*(A*(A*c)))))) + (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*A*(A*c).^2)/4 + (b'*((A^2*c).*(A*c)))/2 - ((b.*c)'*A^2*c)/3 + (b'*A*diag(c)*A*c)/12 + (b'*A^2*c.^2)/12 - 7*(b'*(A*c).^2)/24 + (b'*A*c)/24 + ((b'.*c')*A*c)/6 - (b'*A*c.^2)/12 + ((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/3 - 1/18)*((b'*A*c) - 1/6) - ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A^2*c) - (b'*A*c) + 1/8) - 1/144; + coneq(end+1) = (b'*A*diag(c)*A^2*c)/2 - (b'*((A*(c.^2.*(A*(A*c))))))/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*(A*(c.^2.*(A*c))))))/2 - (b'*((A^2*c).*(A*c)))/2 + (b'*((A*(A*c)).*(A*c).*c)) - ((b.*c)'*A^2*c)/12 - (b'*diag(c).^2*A^2*c)/4 + (b'*A*diag(c)*A*c)/6 + 5*(b'*A^2*c.^2)/24 - (b'*A^2*c.^3)/4 + (b'*(A*c).^2)/6 - (b'*diag(c)*(A*c).^2)/2 + (b'*A*c)/24 + ((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/8 - 5*(b'*A*c.^2)/24 + (b'*A*c.^3)/8 + ((b'*A*c)/2 - 1/12)*(-(b'*A*c) + (b'*A*c.^2) + 1/12)/2 - ((b'*A*c)/2 - 1/12)*(-(b'*A*c)/2 + ((b'.*c')*A*c) - 1/24) - 1/144; + coneq(end+1) = (b'*A^3*c)/6 - (b'*A*diag(c)*A^2*c)/2 - (b'*A^2*diag(c)*A*c)/2 + (b'*((A*diag(c)*(A*diag(c)*(A*c))))) - (b'*((A^2*c).*(A*c)))/2 - (b'*A^2*c)/6 + ((b.*c)'*A^2*c)/2 + (b'*((A*diag(c)*(A*c)).*(A*c))) + 2*(b'*A*diag(c)*A*c)/3 - (b'*diag(c)*A*diag(c)*A*c) + (b'*A^2*c.^2)/6 - (b'*A*diag(c)*A*c.^2)/2 + (b'*(A*c).^2)/4 - (b'*A*c)/180 - ((b'.*c')*A*c)/4 - (b'*((A*c.^2).*(A*c)))/2 - (b'*A*c.^2)/6 + ((b.*c)'*A*c.^2)/2 - 2*((b'*A*c)/6 - 1/36)*((b'*A*c) - 1/6) + ((b'*A*c)/2 - 1/12)*((b'*A*c) - 1/6) - 2*((b'*A*c) - 1/6)*(-(b'*A*c)/4 + ((b'.*c')*A*c)/2 - 1/48) + 149/15120; + coneq(end+1) = ((b.*c)'*A^2*c)/12 - (b'*diag(c).^2*A^2*c)/4 + (b'*((A*(A*c)).*c.^3))/6 + (b'*A^2*c.^2)/24 - (b'*A^2*c.^3)/12 + (b'*((A*(A*c.^4))))/24 + ((b.*c.^2)'*A*c)/12 - (b'*diag(c).^3*A*c)/12 - (b'*A*c.^2)/24 + (b'*A*c.^3)/18 - (b'*A*c.^4)/48; + coneq(end+1) = ((b.*c)'*A^2*c)/6 - (b'*diag(c).^2*A^2*c)/4 + (b'*A*diag(c)*A*c)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*(c.*(A*c))).*c.^2))/2 + (b'*A^2*c.^2)/12 - (b'*A*diag(c)*A*c.^2)/4 - (b'*A^2*c.^3)/12 + (b'*((A*(c.*(A*c.^3)))))/6 - (b'*(A*c).^2)/12 - ((b'.*c')*A*c)/12 + ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*A*c.^2)/12 + ((b.*c)'*A*c.^2)/4 - (b'*diag(c).^2*A*c.^2)/4 - (b'*((A*c.^3).*(A*c)))/6 + (b'*A*c.^3)/24; + coneq(end+1) = ((b.*c)'*A^2*c)/4 - (b'*diag(c).^2*A^2*c)/4 + (b'*A^2*c.^2)/8 - (b'*diag(c)*A^2*c.^2)/2 + (b'*((A*(A*c.^2)).*c.^2))/4 - (b'*A^2*c.^3)/12 + (b'*((A*(A*c.^3)).*c))/6 - (b'*A*c)/24 + ((b.*c.^2)'*A*c)/24 + (b'*A*c.^2)/24 - (b'*A*c.^3)/72; + coneq(end+1) = -3*(b'*A*(A*c).^2)/4 + (b'*((A*((A*c).*(A*c))).*c))/2 + ((b.*c)'*A^2*c)/12 + 5*(b'*A*diag(c)*A*c)/12 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*((A*(c.^2.*(A*(A*c))))))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + 7*(b'*(A*c).^2)/24 - (b'*A*c)/24 - ((b'.*c')*A*c)/6 - (b'*((A*c.^2).*(A*c)))/4 - (b'*A*c.^2)/24 + ((b.*c)'*A*c.^2)/4 + 1/144; + coneq(end+1) = ((b.*c)'*A^2*c)/12 + (b'*A*diag(c)*A*c)/3 - (b'*diag(c)*A*diag(c)*A*c)/2 - (b'*A*diag(c).^2*A*c)/2 + (b'*((A*(c.^2.*(A*c))).*c))/2 + (b'*A^2*c.^2)/24 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*(c.^2.*(A*c.^2)))))/4 - (b'*(A*c).^2)/6 + (b'*diag(c)*(A*c).^2)/2 - (b'*A*c)/24 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/8 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c).*c))/2 - (b'*A*c.^2)/24 + ((b.*c)'*A*c.^2)/4 + (b'*diag(c).^2*A*c.^2)/8 + (b'*A*c.^3)/8 - (b'*diag(c)*A*c.^3)/4 + 1/144; + coneq(end+1) = ((b.*c)'*A^2*c)/6 + (b'*A*diag(c)*A*c)/6 - (b'*diag(c)*A*diag(c)*A*c)/2 + (b'*A^2*c.^2)/12 - (b'*diag(c)*A^2*c.^2)/4 - (b'*A*diag(c)*A*c.^2)/4 + (b'*((A*(c.*(A*c.^2))).*c))/2 - (b'*(A*c).^2)/12 - (b'*A*c)/12 + ((b'.*c')*A*c)/12 + (b'*((A*c.^2).*(A*c)))/4 - (b'*((A*c.^2).*(A*c.^2)))/8 + (b'*A*c.^2)/24; + coneq(end+1) = -(b'*A*(A*c).^2)/4 + (b'*((A*(c.*(A*c).*(A*c)))))/2 + (b'*A*diag(c)*A*c)/4 - (b'*A*diag(c).^2*A*c)/2 - (b'*((A*c).*(A*c).*(A*c)))/6 + (b'*(A*c).^2)/8 - ((b'.*c')*A*c)/4 + ((b.*c.^2)'*A*c)/4 + (b'*A*c.^3)/12; + coneq(end+1) = (b'*A*diag(c)*A*c)/12 - (b'*A*diag(c).^2*A*c)/4 + (b'*((A*(c.^3.*(A*c)))))/6 - (b'*(A*c).^2)/24 + (b'*diag(c)*(A*c).^2)/4 - (b'*((A*c).*(A*c).*c.^2))/4 - ((b'.*c')*A*c)/12 - ((b.*c.^2)'*A*c)/24 + (b'*diag(c).^3*A*c)/6 + 7*(b'*A*c.^3)/72 - (b'*A*c.^4)/12 - 1/1440; + coneq(end+1) = -((b.*c.^2)'*A*c)/24 + (b'*diag(c).^3*A*c)/12 - (b'*((A*c).*c.^4))/24 + (b'*A*c.^3)/72 - (b'*A*c.^4)/48 + (b'*((A*c.^5)))/120; + coneq(end+1) = -((b.*c.^2)'*A*c)/12 + (b'*diag(c).^3*A*c)/12 + (b'*diag(c).^2*A*c.^2)/8 - (b'*((A*c.^2).*c.^3))/12 + (b'*A*c.^3)/36 - (b'*diag(c)*A*c.^3)/12 - (b'*A*c.^4)/48 + (b'*((A*c.^4).*c))/24; + coneq(end+1) = b'*(c.^6)/720 - 1/5040; + end % Throw error message in case q>7 msg = 'The energy-preserving conditions for orders q>7 have not been implemented.'; if q >= 8