void operator () (int) const { #ifdef USE_ADAPTOR try { M m1 (N, N), m2 (N, N), m3 (N, N); ublas::triangular_adaptor<M> tam1 (m1), tam2 (m2), tam3 (m3); (*this) (tam1, tam2, tam3); #ifdef USE_RANGE ublas::matrix_range<ublas::triangular_adaptor<M> > mr1 (tam1, ublas::range (0, N), ublas::range (0, N)), mr2 (tam2, ublas::range (0, N), ublas::range (0, N)), mr3 (tam3, ublas::range (0, N), ublas::range (0, N)); (*this) (mr1, mr2, mr3); #endif #ifdef USE_SLICE ublas::matrix_slice<ublas::triangular_adaptor<M> > ms1 (tam1, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms2 (tam2, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms3 (tam3, ublas::slice (0, 1, N), ublas::slice (0, 1, N)); (*this) (ms1, ms2, ms3); #endif } catch (std::exception &e) { std::cout << e.what () << std::endl; } catch (...) { std::cout << "unknown exception" << std::endl; } #endif }
void operator () () const { try { M m1 (N, N), m2 (N, N), m3 (N, N); (*this) (m1, m2, m3); #ifdef USE_RANGE ublas::matrix_range<M> mr1 (m1, ublas::range (0, N), ublas::range (0, N)), mr2 (m2, ublas::range (0, N), ublas::range (0, N)), mr3 (m3, ublas::range (0, N), ublas::range (0, N)); (*this) (mr1, mr2, mr3); #endif #ifdef USE_SLICE ublas::matrix_slice<M> ms1 (m1, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms2 (m2, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms3 (m3, ublas::slice (0, 1, N), ublas::slice (0, 1, N)); (*this) (ms1, ms2, ms3); #endif } catch (std::exception &e) { std::cout << e.what () << std::endl; } catch (...) { std::cout << "unknown exception" << std::endl; } }
void operator () () const { { #ifdef USE_BANDED M m1 (N, N, 1, 1), m2 (N, N, 1, 1), m3 (N, N, 1, 1); #endif #ifdef USE_DIAGONAL M m1 (N, N), m2 (N, N), m3 (N, N); #endif test_with (m1, m2, m3); #ifdef USE_RANGE ublas::matrix_range<M> mr1 (m1, ublas::range (0, N), ublas::range (0, N)), mr2 (m2, ublas::range (0, N), ublas::range (0, N)), mr3 (m3, ublas::range (0, N), ublas::range (0, N)); test_with (mr1, mr2, mr3); #endif #ifdef USE_SLICE ublas::matrix_slice<M> ms1 (m1, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms2 (m2, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms3 (m3, ublas::slice (0, 1, N), ublas::slice (0, 1, N)); test_with (ms1, ms2, ms3); #endif } }
void operator () (int) const { #ifdef USE_ADAPTOR { #ifdef USE_BANDED M m1 (N, N, 1, 1), m2 (N, N, 1, 1), m3 (N, N, 1, 1); ublas::banded_adaptor<M> bam1 (m1, 1, 1), bam2 (m2, 1, 1), bam3 (m3, 1, 1); test_with (bam1, bam2, bam3); #ifdef USE_RANGE ublas::matrix_range<ublas::banded_adaptor<M> > mr1 (bam1, ublas::range (0, N), ublas::range (0, N)), mr2 (bam2, ublas::range (0, N), ublas::range (0, N)), mr3 (bam3, ublas::range (0, N), ublas::range (0, N)); test_with (mr1, mr2, mr3); #endif #ifdef USE_SLICE ublas::matrix_slice<ublas::banded_adaptor<M> > ms1 (bam1, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms2 (bam2, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms3 (bam3, ublas::slice (0, 1, N), ublas::slice (0, 1, N)); test_with (ms1, ms2, ms3); #endif #endif #ifdef USE_DIAGONAL M m1 (N, N), m2 (N, N), m3 (N, N); ublas::diagonal_adaptor<M> dam1 (m1), dam2 (m2), dam3 (m3); test_with (dam1, dam2, dam3); #ifdef USE_RANGE ublas::matrix_range<ublas::diagonal_adaptor<M> > mr1 (dam1, ublas::range (0, N), ublas::range (0, N)), mr2 (dam2, ublas::range (0, N), ublas::range (0, N)), mr3 (dam3, ublas::range (0, N), ublas::range (0, N)); test_with (mr1, mr2, mr3); #endif #ifdef USE_SLICE ublas::matrix_slice<ublas::diagonal_adaptor<M> > ms1 (dam1, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms2 (dam2, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms3 (dam3, ublas::slice (0, 1, N), ublas::slice (0, 1, N)); test_with (ms1, ms2, ms3); #endif #endif } #endif }
void operator () () const { { M m1 (N, N), m2 (N, N), m3 (N, N); test_with (m1, m2, m3); #ifdef USE_RANGE ublas::matrix_range<M> mr1 (m1, ublas::range (0, N), ublas::range (0, N)), mr2 (m2, ublas::range (0, N), ublas::range (0, N)), mr3 (m3, ublas::range (0, N), ublas::range (0, N)); test_with (mr1, mr2, mr3); #endif #ifdef USE_SLICE ublas::matrix_slice<M> ms1 (m1, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms2 (m2, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms3 (m3, ublas::slice (0, 1, N), ublas::slice (0, 1, N)); test_with (ms1, ms2, ms3); #endif } #ifdef USE_ADAPTOR { M m1 (N, N), m2 (N, N), m3 (N, N); ublas::triangular_adaptor<M> tam1 (m1), tam2 (m2), tam3 (m3); test_with (tam1, tam2, tam3); #ifdef USE_RANGE ublas::matrix_range<ublas::triangular_adaptor<M> > mr1 (tam1, ublas::range (0, N), ublas::range (0, N)), mr2 (tam2, ublas::range (0, N), ublas::range (0, N)), mr3 (tam3, ublas::range (0, N), ublas::range (0, N)); test_with (mr1, mr2, mr3); #endif #ifdef USE_SLICE ublas::matrix_slice<ublas::triangular_adaptor<M> > ms1 (tam1, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms2 (tam2, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms3 (tam3, ublas::slice (0, 1, N), ublas::slice (0, 1, N)); test_with (ms1, ms2, ms3); #endif } #endif }
int main() { try { symbol k("k"),q("q"),p("p"),p1("p1"),p2("p2"),p3("p3"),ms("ms"),l("l"),s("s"),m1s("m1s"),m2s("m2s"),m3s("m3s"); symbol l1("l1"),l2("l2"),l3("l3"),l4("l4"),t("t"),p4("p4"),p5("p5"),p6("p6"),tp("tp"),v1("v1"),v2("v2"),l5("l5"); symbol k1("k1"),k2("k2"),k3("k3"),k4("k4"),k5("k5"),ms1("ms1"),ms2("ms2"),ms3("ms3"),ms4("ms4"); symbol s12("s12"),s23("s23"),s34("s34"),s45("s45"),s51("s51"),s13("s13"),s15("s15"),s56("s56"),s16("s16"),s123("s123"),s234("s234"),s345("s345"); lst inv_l; inv_l.append(p1*p1 == 0); inv_l.append( p2*p2 == 0);inv_l.append( p3*p3 == 0);inv_l.append( p4*p4 == 0);inv_l.append( p5*p5 == 0);inv_l.append( p6*p6 == 0); inv_l.append(p1* p2 == s12/2);inv_l.append( p2* p3 == s23/2);inv_l.append( p3* p4 == s34/2);inv_l.append( p4* p5 == s45/2); inv_l.append(p5* p6 == s56/2);inv_l.append( p1* p6 == s16/2);inv_l.append( p1* p3 == (-s12 + s123 - s23)/2); inv_l.append(p2* p4 == (-s23 + s234 - s34)/2); inv_l.append( p3* p5 == (-s34 + s345 - s45)/2); inv_l.append(p1* p4 == (-s123 + s23 - s234 + s56)/2); inv_l.append(p1* p5 == (-s16 + s234 - s56)/2); inv_l.append( p2* p5 == (s16 - s234 + s34 - s345)/2); inv_l.append( p2* p6 == (-s12 - s16 + s345)/2); inv_l.append( p3* p6 == (s12 - s123 - s345 + s45)/2); inv_l.append( p4* p6 == (s123 - s45 - s56)/2); RoMB_loop_by_loop hexag(lst(k1), lst(-pow(p1 + k1,2),-pow(p1 + p2 + k1,2), -pow(p1 + p2 + p3 + k1,2), -pow(p1 + p2 + p3 + p4 + k1,2), -pow(p1+p2+p3+p4+p5+k1,2),-pow(k1,2)), inv_l, lst(1,1,1,1,1,1),true); hexag.integrate_map(lst(s12 == -1, s23 == -2, s34 == -3, s45 == -4, s56 == -5, s16 == -6, s123 == -7, s234 == -8, s345 == -9)); /* FRESULT for parameters: {s12==-1,s23==-2,s34==-3,s45==-4,s56==-5,s16==-6,s123==-7,s234==-8,s345==-9} FRESULT anl : = -0.1955084880526298663-1/240*log(8)*log(6)+947/60480*log(2)^2-1/480*log(6)*log(4)+1/1080*log(3)*log(7)+131/7560*log(9)*log(2)+19/1260*log(9)^2-1/560*log(8)*log(4)+523/60480*log(3)^2-1/1080*log(7)*log(5)+41/4320*log(3)*log(5)-1/48*log(8)*log(5)-1/1080*log(7)*log(4)+22/945*log(6)*log(7)+19/3780*log(3)*log(4)+493/30240*Pi^2+43/1008*eps^(-2)+49/8640*log(5)^2-641/30240*log(2)*log(6)+1/1080*log(9)*log(5)-22/945*log(2)*log(7)+271/60480*log(4)^2-3/112*log(8)*log(3)-19/3780*log(9)*log(4)+1/1080*log(4)*log(5)-61/2520*log(9)*log(7)+61/5040*log(7)^2+1/168*log(3)*log(2)+1/168*log(8)*log(9)+13/3360*log(2)*log(4)-1/30240*(-1132.7960047725738361+576*log(8)-163*log(3)+264*log(9)+533*log(2)-479*log(6)-444*log(7)+271*log(4)-287*log(5))*eps^(-1)+47/1680*log(8)^2-17/1680*log(8)*log(2)+767/60480*log(6)^2-22/945*log(9)*log(6)-13/1890*log(3)*log(9) FRESULT num: = 1.9907333428263254975E-4+(0.032177795803854872908)*eps^(-1)+(0.04265873015873015873)*eps^(-2) eps^-2 term: 43/1008 +/- 0 eps^-1 term: 0.03746018534300839405-2/105*log(8)+163/30240*log(3)-11/1260*log(9)-533/30240*log(2)+479/30240*log(6)+37/2520*log(7)-271/30240*log(4)+41/4320*log(5) +/- 9.022403780167233619E-6 eps^0 term: -0.1955084880526298663-1/240*log(8)*log(6)+947/60480*log(2)^2-1/480*log(6)*log(4)+1/1080*log(3)*log(7)+131/7560*log(9)*log(2)+19/1260*log(9)^2-1/560*log(8)*log(4)+523/60480*log(3)^2-1/1080*log(7)*log(5)+41/4320*log(3)*log(5)-1/48*log(8)*log(5)-1/1080*log(7)*log(4)+22/945*log(6)*log(7)+19/3780*log(3)*log(4)+493/30240*Pi^2+49/8640*log(5)^2-641/30240*log(2)*log(6)+1/1080*log(9)*log(5)-22/945*log(2)*log(7)+271/60480*log(4)^2-3/112*log(8)*log(3)-19/3780*log(9)*log(4)+1/1080*log(4)*log(5)-61/2520*log(9)*log(7)+61/5040*log(7)^2+1/168*log(3)*log(2)+1/168*log(8)*log(9)+13/3360*log(2)*log(4)+47/1680*log(8)^2-17/1680*log(8)*log(2)+767/60480*log(6)^2-22/945*log(9)*log(6)-13/1890*log(3)*log(9) +/- 1.04620404922048185285E-4 */ } catch(std::exception &p) { std::cerr<<"******************************************************************"<<endl; std::cerr<<" >>>ERROR: "<<p.what()<<endl; std::cerr<<"******************************************************************"<<endl; return 1; } return 0; }
void operator () () const { M m1 (N, N), m2 (N, N), m3 (N, N); test_expression_with (m1, m2, m3); test_container_with (m1); #ifdef USE_RANGE ublas::matrix_range<M> mr1 (m1, ublas::range (0, N), ublas::range (0, N)), mr2 (m2, ublas::range (0, N), ublas::range (0, N)), mr3 (m3, ublas::range (0, N), ublas::range (0, N)); test_expression_with (mr1, mr2, mr3); #endif #ifdef USE_SLICE ublas::matrix_slice<M> ms1 (m1, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms2 (m2, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms3 (m3, ublas::slice (0, 1, N), ublas::slice (0, 1, N)); test_expression_with (ms1, ms2, ms3); #endif }
void operator () (int) const { #ifdef USE_ADAPTOR { M m1 (N, N), m2 (N, N), m3 (N, N); ublas::symmetric_adaptor<M> sam1 (m1), sam2 (m2), sam3 (m3); test_with (sam1, sam2, sam3); #ifdef USE_RANGE ublas::matrix_range<ublas::symmetric_adaptor<M> > mr1 (sam1, ublas::range (0, N), ublas::range (0, N)), mr2 (sam2, ublas::range (0, N), ublas::range (0, N)), mr3 (sam3, ublas::range (0, N), ublas::range (0, N)); test_with (mr1, mr2, mr3); #endif #ifdef USE_SLICE ublas::matrix_slice<ublas::symmetric_adaptor<M> > ms1 (sam1, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms2 (sam2, ublas::slice (0, 1, N), ublas::slice (0, 1, N)), ms3 (sam3, ublas::slice (0, 1, N), ublas::slice (0, 1, N)); test_with (ms1, ms2, ms3); #endif } #endif }
TEST(Rpc, HelloWorld) { RpcHandler rpc0; QSharedPointer<MockSource> ms0(new MockSource());; ms0->SetSink(&rpc0); QSharedPointer<MockSender> to_ms0(new MockSender(ms0)); RpcHandler rpc1; QSharedPointer<MockSource> ms1(new MockSource());; ms1->SetSink(&rpc1); QSharedPointer<MockSender> to_ms1(new MockSender(ms1)); to_ms0->SetReturnPath(to_ms1); to_ms1->SetReturnPath(to_ms0); TestRpc test0; QSharedPointer<RequestHandler> req_h(new RequestHandler(&test0, "Add")); rpc0.Register("add", req_h); TestResponse test1; QSharedPointer<ResponseHandler> res_h( new ResponseHandler(&test1, "HandleResponse")); EXPECT_EQ(0, test1.GetValue()); QVariantList data; data.append(3); data.append(6); rpc1.SendRequest(to_ms0, "add", data, res_h); EXPECT_EQ(9, test1.GetValue()); EXPECT_TRUE(test1.GetResponse().Successful()); EXPECT_EQ(test1.GetResponse().GetErrorType(), Response::NoError); qWarning() << test1.GetResponse().GetError() << test1.GetResponse().GetErrorType(); data[1] = "Haha"; rpc1.SendRequest(to_ms0, "add", data, res_h); EXPECT_EQ(0, test1.GetValue()); EXPECT_FALSE(test1.GetResponse().Successful()); EXPECT_EQ(test1.GetResponse().GetErrorType(), Response::InvalidInput); qWarning() << test1.GetResponse().GetError() << test1.GetResponse().GetErrorType(); data[0] = "Haha"; rpc1.SendRequest(to_ms0, "add", data, res_h); EXPECT_EQ(0, test1.GetValue()); EXPECT_FALSE(test1.GetResponse().Successful()); EXPECT_EQ(test1.GetResponse().GetErrorType(), Response::InvalidInput); qWarning() << test1.GetResponse().GetError() << test1.GetResponse().GetErrorType(); data[0] = 8; data[1] = 2; rpc1.SendRequest(to_ms0, "add", data, res_h); EXPECT_EQ(10, test1.GetValue()); EXPECT_TRUE(test1.GetResponse().Successful()); EXPECT_EQ(test1.GetResponse().GetErrorType(), Response::NoError); qWarning() << test1.GetResponse().GetError() << test1.GetResponse().GetErrorType(); rpc1.SendRequest(to_ms0, "Haha", data, res_h); EXPECT_EQ(0, test1.GetValue()); EXPECT_FALSE(test1.GetResponse().Successful()); EXPECT_EQ(test1.GetResponse().GetErrorType(), Response::InvalidMethod); qWarning() << test1.GetResponse().GetError() << test1.GetResponse().GetErrorType(); }
int main() { try { symbol k("k"),q("q"),p("p"),p1("p1"),p2("p2"),p3("p3"),ms("ms"),l("l"),s("s"),m1s("m1s"),m2s("m2s"),m3s("m3s"); symbol l1("l1"),l2("l2"),l3("l3"),l4("l4"),t("t"),p4("p4"),p5("p5"),tp("tp"),v1("v1"),v2("v2"),l5("l5"); symbol k1("k1"),k2("k2"),k3("k3"),k4("k4"),k5("k5"),ms1("ms1"),ms2("ms2"),ms3("ms3"),ms4("ms4"); // oneloop box // UFXmap l45 = UF(lst(k),lst(pow(k,2),pow(k+p1,2),pow(k+p1+p2,2),pow(k+p1+p2+p3,2)),lst(pow(p1,2)==0,pow(p2,2)==0)); // MBintegral root_int(l45,lst(1,1,1,1),1); //two loop box bubble // UFXmap l45 = UF(lst(k,l),lst(pow(k,2),pow(k+p1,2),pow(k+p1+p2,2),pow(l+p1+p2,2),pow(l+p1+p2+p3,2),pow(l,2),pow(k-l,2)),lst(pow(p1,2)==0,pow(p2,2)==0,pow(p3,2)==0)); //MBintegral root_int(l45,lst(1,1,1,1,1,1,1),2); // B0 // UFXmap l45 = UF(lst(k),lst(ms-pow(k,2),ms-pow(-k,2)),lst(ms==1)); // MBintegral root_int(l45,lst(1,1),1); // 2 loop sunrise //UFXmap l45 = UF(lst(k,q),lst(ms-pow(k,2),ms-pow(-q-k,2),ms-pow(q,2)),lst(ms==1)); //MBintegral root_int(l45,lst(1,1,1),2); //RoMB_planar box2loop(lst(k,l),lst(pow(k,2),pow(k+p1,2),pow(k+p1+p2,2),pow(l+p1+p2,2),pow(l+p1+p2+p3,2),pow(l,2),pow(k-l,2)),lst(pow(p1,2)==0,pow(p2,2)==0,pow(p3,2)==0),lst(1,1,1,1,1,1,1),2); // RoMB_planar box1loop(lst(k),lst(pow(k,2),pow(k+p1,2)-ms,pow(k+p1+p2,2),pow(k+p1+p2+p3,2)),lst(pow(p1,2)==0,pow(p2,2)==0,pow(p3,2)==0,p1==0,p2==0,p3==0,ms==1),lst(1,1,1,1),1); // RoMB_planar B0_1loop(lst(k),lst(pow(k,2)-ms,pow(p+k,2)-ms),lst(ms==0,pow(p,2)==1),lst(1,1),1); // RoMB_planar C0_1loop(lst(k),lst(pow(k,2)-ms,pow(p1+k,2)-ms,pow(p1+p2+k,2)),lst(ms==1,pow(p1,2)==0,pow(p2,2)==0,p1*p2==50),lst(1,1,1),1); //cout<<" new point "<<endl<<root_int.new_point()<<endl; // cout<<" saved point "<<endl<<root_int.get_point()<<endl; // MBcontinue(root_int); //cout<<MB_lst(l45,lst(1,1,1,1),1).expand()<<endl; // RoMB_loop_by_loop box2loop(lst(k,l),lst(pow(k,2),pow(k+p1,2),pow(k+p1+p2,2),pow(l+p1+p2,2),pow(l+p1+p2+p3,2),pow(l,2),pow(k-l,2)),lst(pow(p1,2)==0,pow(p2,2)==0,pow(p3,2)==0),lst(1,1,1,1,1,1,1)); // RoMB_loop_by_loop t2(lst(k,l), lst(pow(k,2),pow(p+k,2),pow(p+k+l,2),pow(l,2),pow(k+l,2)),lst(pow(p,2)==1),lst(1,1,1,1,1)); // works!!! // RoMB_loop_by_loop sunset(lst(k,l), lst(pow(k,2)-1,pow(p-k-l,2)-4,pow(l,2)-5),lst(pow(p,2)==s),lst(1,1,1)); // RoMB_loop_by_loop sunset(lst(k,l), lst(pow(k,2)-m1s,pow(-k-l,2)-m2s,pow(l,2)-m3s),lst(pow(p,2)==s),lst(1,1,1)); // sunset.integrate(lst(m1s==1,m2s==1,m3s==1,s==0),0); // bubble sunset 2=loop // RoMB_loop_by_loop sunset_bub(lst(k,l), lst(-pow(k,2)+ms,-pow(-k-l,2)+ms,-pow(l,2)+ms),lst(pow(p,2)==0),lst(1,1,1)); // sunset_bub.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),1); // bubble sunset 3=loop //#define TOPO 1 //#if TOPO==1 /****************************************************************** * FRESULT for parameters: {ms==1,m2s==1,m3s==1,s==0} * * FRESULT anl : = 21.308685443306456902+23/3*eps^(-2)+2*eps^(-3)+35/2*eps^(-1) * FRESULT num: = 21.308685443306456902+(7.6666666666666666665)*eps^(-2)+(2.0)*eps^(-3)+(17.5)*eps^(-1) * eps^-3 term: 2 +/- 0 * eps^-2 term: 23/3 +/- 0 * eps^-1 term: 35/2 +/- 0 * eps^0 term: 21.308685443306456902 +/- 0.01814768000077260732 ***************************************************************/ // RoMB_loop_by_loop sunset_bub(lst(p,k,l), lst(-pow(p,2)+ms,-pow(k,2)+ms,-pow(l,2)+ms,-pow(-p-k-l,2)+ms),lst(pow(l3,2)==s),lst(1,1,1,1)); // sunset_bub.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),1); //#elif TOPO==2 // RoMB_loop_by_loop sunset_bub_d(lst(l1,l2,l3), lst(-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l3,2)+ms,-pow(l1+l2,2)+ms,-pow(l1+l2+l3,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1)); // sunset_bub_d.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),1); //#elif TOPO==3 // RoMB_loop_by_loop sunset_bub_e(lst(l1,l2,l3), lst(-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l3,2)+ms,-pow(l1-l2,2)+ms,-pow(l2-l3,2)+ms,-pow(l3-l1,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1,1)); // sunset_bub_e.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),1); //#endif //bubble 4-loop // RoMB_loop_by_loop sunset_bub(lst(k,l1,l2,l3), lst(-pow(k,2)+ms,-pow(l2,2)+ms,-pow(l1,2)+ms,-pow(l3,2)+ms,-pow(k+l1+l2+l3,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1)); // sunset_bub.integrate(lst(ms==1,m2s==1,m3s==1,s==0),0); #define TOPO 5 #if TOPO==1 //bubble 5-loop /* FRESULT for parameters: {ms==1,m2s==1,m3s==1,s==0} FRESULT anl : = 274.5475357301444122+1247/24*eps^(-3)+6/5*Pi^4+(125.67152533053854918)*eps^(-2)+3*eps^(-5)+33/2*eps^(-4)+(259.98755698571087874)*eps^(-1)-110/3*zeta(3) FRESULT num: = 347.3630251884288798+(51.958333333333333332)*eps^(-3)+(125.67152533053854918)*eps^(-2)+(3.0)*eps^(-5)+(16.5)*eps^(-4)+(259.98755698571087874)*eps^(-1) eps^-5 term: 3 +/- 0 eps^-4 term: 33/2 +/- 0 eps^-3 term: 1247/24 +/- 0 eps^-2 term: 125.67152533053854918 +/- 5.2760713655226570643E-5 eps^-1 term: 259.98755698571087874 +/- 9.888628922902401464E-6 eps^0 term: 274.5475357301444122+6/5*Pi^4-110/3*zeta(3) +/- 0.043609817405085687474 */ RoMB_loop_by_loop sunset_bub5(lst(l3,k,l1,l2,l4), lst(-pow(l3,2)+ms,-pow(k,2)+ms,-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l4,2)+ms,-pow(k+l1+l2+l3+l4,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1,1)); sunset_bub5.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),1); #elif TOPO==2 RoMB_loop_by_loop sunset_bubC2(lst(l1,l2,l3,l4,l5), lst(-pow(l3,2)+ms,-pow(l5,2)+ms,-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l4,2)+ms,-pow(l5+l1+l2,2)+ms,-pow(l5+l3+l4,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1,1,1)); sunset_bubC2.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),0); // RoMB_loop_by_loop sunset_bubC2(lst(l1,l2,l3,l4,l5), lst(-pow(l3,2)+ms,-pow(l5,2)+ms,-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l4,2)+ms,-pow(l3+l4+l5,2)+ms,-pow(l1+l2+l5+l3+l4,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1,1,1)); // sunset_bubC2.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),0); // RoMB_loop_by_loop sunset_bubC1(lst(l1,l2,l3,l4,l5), lst(-pow(l3,2)+ms,-pow(l5,2)+ms,-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l4,2)+ms,-pow(l2+l3+l4+l5,2)+ms,-pow(l1+l2+l5+l3+l4,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1,1,1),true); // sunset_bubC1.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),0); /* MEGA 5-LOOP BUBBLE with 12 propagators */ //RoMB_loop_by_loop l5p12(lst(k5,k2,k1,k4,k3),lst(-pow(k1,2)+ms,-pow(k2,2)+ms,-pow(k3,2)+ms,-pow(k4,2)+ms,-pow(k5,2)+ms, //-pow(k1-k3,2)+ms,-pow(k1-k4,2)+ms,-pow(k3-k2,2)+ms,-pow(k2-k4,2)+ms,-pow(k5+k3-k1,2)+ms,-pow(k5+k3-k2,2)+ms,-pow(k5+k3-k4,2)+ms),lst(pow(p,2)==0),lst(1,1,1,1,1,1,1,1,1,1,1,1)); //l5p12.integrate(lst(ms==0),0); #elif TOPO==3 /* FRESULT for parameters: {ms==1} FRESULT anl : = 1/5400*eps^(-2)*(-1540485.6006392892897+233937*zeta(3)-1505*Pi^4+6656*Pi^2)-1/10*(233.57451266786976057+Pi^2)*eps^(-4)-1/4*eps^(-6)+1/216000*eps^(-1)*(-7.391571256935002719E7+37697940*zeta(3)-40800*zeta(3)*Pi^2-727494*Pi^4+12801600*zeta(5)-1399535*Pi^2)-(3.7800000113486752996)*eps^(-5)+1/1200*(-100893.525326654920406+5280*zeta(3)-349*Pi^2)*eps^(-3) FRESULT num: = -(465.22101564968708165)*eps^(-1)-(0.25)*eps^(-6)-(24.344411706895911919)*eps^(-4)-(3.7800000113486752996)*eps^(-5)-(81.65929734496037395)*eps^(-3)-(248.18307592543818119)*eps^(-2) eps^-6 term: -1/4 +/- 0 eps^-5 term: -3.7800000113486752996 +/- 3.2541102943124789963E-10 eps^-4 term: -23.357451266786976057-1/10*Pi^2 +/- 2.7206664064692618508E-5 eps^-3 term: -84.07793777221243367+22/5*zeta(3)-349/1200*Pi^2 +/- 1.5019954980075151021E-4 eps^-2 term: -285.2751112294980166+25993/600*zeta(3)-301/1080*Pi^4+832/675*Pi^2 +/- 0.00206337770109377918 eps^-1 term: -342.20237300625012586+69811/400*zeta(3)-17/90*zeta(3)*Pi^2-121249/36000*Pi^4+889/15*zeta(5)-279907/43200*Pi^2 +/- 6.187359464224749039 */ RoMB_loop_by_loop l5c1(lst(k2,k5,k3,k4,k1),lst(-pow(k3,2)+ms,-pow(k2,2)+ms,-pow(k1,2)+ms,-pow(k4,2)+ms,-pow(k5,2)+ms, -pow(k1+k3+k4,2)+ms,-pow(k2+k5-k3-k4,2)+ms),lst(pow(p,2)==0),lst(1,1,1,1,1,1,1)); l5c1.integrate_map(lst(ms==1),0); #elif TOPO==4 // point in 2 RoMB_loop_by_loop l5c1(lst(k2,k5,k3,k4,k1),lst(-pow(k3,2)+ms,-pow(k2,2)+ms,-pow(k1,2)+ms,-pow(k4,2)+ms,-pow(k5,2)+ms, -pow(k1+k3+k4,2)+ms,-pow(k2+k5-k3-k4,2)+ms),lst(pow(p,2)==0),lst(1,2,1,1,1,1,1)); l5c1.integrate_map(lst(ms==1),0); #elif TOPO==5 // point in 1 RoMB_loop_by_loop l5c1(lst(k2,k5,k3,k4,k1),lst(-pow(k3,2)+ms,-pow(k2,2)+ms,-pow(k1,2)+ms,-pow(k4,2)+ms,-pow(k5,2)+ms, -pow(k1+k3+k4,2)+ms,-pow(k2+k5-k3-k4,2)+ms),lst(pow(p,2)==0),lst(2,1,1,1,1,1,1)); l5c1.integrate_map(lst(ms==1),0); #endif // RoMB_loop_by_loop t2loop(lst(l,k), lst(-pow(k,2)+ms,-pow(p+k,2)+ms,-pow(p+k+l,2)+ms,-pow(k+l,2)+ms,-pow(l,2)+ms),lst(pow(p,2)==s,ms==0),lst(1,1,1,1,1)); //t2loop.integrate_map(lst(s==-1,ms == 0),3); /* RoMB_loop_by_loop bubble_five_loop(lst(k,l1,l2,l3,l4), lst(pow(k,2)-ms,pow(l1,2)-ms,pow(l2,2)-ms,pow(l3,2)-ms,pow(l4,2)-ms,pow(k+l1,2)-ms,pow(k+l1+l2,2)-ms,pow(k+l1+l2+l3,2)-ms,pow(k+l1+l2+l3+l4,2)-ms,pow(k+l1+l2+l3,2)-ms,pow(k+l1+l2,2)-ms,pow(k+l1,2)-ms), lst(ms==1), lst(1,1,1,1,1,1,1,1,1,1,1,1)); */ // works!!! // RoMB_loop_by_loop B0_1loop_lbl(lst(k),lst(pow(k,2)-2-ms,pow(p+k,2)-ms),lst(ms==0,pow(p,2)==1),lst(2,1)); // RoMB_loop_by_loop B0_1loop_lbl(lst(k),lst(pow(k,2)-m1s,pow(p+k,2)-m2s),lst(pow(p,2)==s),lst(1,1)); // B0_1loop_lbl.integrate(lst(s==-1,m1s==1,m2s==1)); //MB works??? // RoMB_loop_by_loop C0_1loop_lbl(lst(k),lst(pow(k,2),pow(k+p1,2)-m1s,pow(k-p2,2)-m2s),lst(ms==1,pow(p1,2)==m1s,pow(p2,2)==m2s,p1*p2==(s-m1s-m2s)/2),lst(1,1,1)); // C0_1loop_lbl.integrate(lst(m1s==1,m2s==1,s==-100)); //MB works??? /* RoMB_loop_by_loop box1loopm0(lst(k),lst(-pow(k,2),-pow(k+p1,2),-pow(k+p1+p2,2),-pow(k+p1+p2+p4,2)), lst(pow(p1,2)==0,pow(p2,2)==0,pow(p4,2)==0, p1*p2==-s/2,// p1*p4==s/2+t/2,// p2*p4==-t/2 // ), lst(1,1,1,1),false); box1loopm0.integrate_map(lst(s==3,t==1)); box1loopm0.integrate(lst(s==5,t==2)); */ //MASIVE BOX LBL /* RoMB_loop_by_loop box1loopm(lst(k),lst(-pow(k,2)+ms,-pow(k+p1,2)+ms,-pow(k+p1+p2,2)+ms,-pow(k+p1+p2+p4,2)+ms), lst(pow(p1,2)==0,pow(p2,2)==0,pow(p4,2)==0, p1*p2==-s/2,// p1*p4==(s/2+t/2),// p2*p4==-t/2 // ), lst(1,1,1,1),false); box1loopm.integrate_map(lst(ms1==1,ms2==1,ms3==1,ms4==1,ms==1,s==30,t==5)); */ //triple box /* RoMB_loop_by_loop tribox1loopm(lst(k1,k2,k3),lst(-pow(k1,2)+ms,-pow(k1+p1,2),-pow(k1+p1+p2,2)+ms, -pow(k1-k2,2),-pow(k2,2)+ms,-pow(k2+p1+p2,2)+ms, -pow(k2-k3,2),-pow(k3,2)+ms,-pow(k3+p1+p2,2)+ms, -pow(k3-p3,2)), lst(pow(p1,2)==ms,pow(p2,2)==ms,pow(p3,2)==ms,pow(p4,2)==ms, p1*p2==s/2-ms,// p1*p3==t/2-ms,// p2*p3==ms-(s+t)/2 // ), lst(1,1,1,1,1,1,1,1,1,1),true); tribox1loopm.integrate_map(lst(ms1==1,ms2==1,ms3==1,ms4==1,ms==1,s==-1/2,t==-3)); */ //double box /* RoMB_loop_by_loop dobox1loopm(lst(k1,k2),lst(-pow(k1,2),-pow(k1+p1,2),-pow(k1+p1+p2,2), -pow(k1-k2,2),-pow(k2,2),-pow(k2+p1+p2,2), -pow(k2-p3,2)), lst(pow(p1,2)==0,pow(p2,2)==0,pow(p3,2)==0,pow(p4,2)==0, p1*p2==s/2,// p1*p3==t/2,// p2*p3==-(s+t)/2 // ), lst(1,1,1,1,1,1,1),true); dobox1loopm.integrate_map(lst(ms1==1,ms2==1,ms3==1,ms4==1,ms==1,s==-1/2,t==-3)); */ /* 4-loop tadpole */ /* RoMB_loop_by_loop tad4(lst(l1, l2, l3, l4),lst(-pow(l1,2)+ ms,-pow(l2,2)+ ms,-pow(l3 ,2)+ ms,-pow(l4,2),-pow(l1+l2+l3+l4,2)),lst(),lst(1,1,1,1,1)); tad4.integrate_map(lst(ms == 1),1); */ /* Pentagon */ /* RoMB_loop_by_loop pent(lst(k1),lst(-pow(p1 + k1,2)+ ms,-pow(p1 + p5 + k1,2), -pow(p1 + p5 + p4 + k1,2)+ ms,-pow(p1 + p5 + p4 + p3 + k1,2)+ ms, -pow(k1,2)), lst( p1*p1 == ms, p2*p2 == ms, p3*p3 == 0, p4*p4 == ms, p5*p5 == ms, p1*p2 == 1/2* (tp - 2* ms), p1*p3 == 1/2* (t - tp - v1), p1*p4 == ms - 1/2* (s + t - v1), p1*p5 == 1/2* (s - 2* ms), p2* p3 == 1/2* v1, p2* p4 == 1/2* (s - 2* ms - v1 - v2), p2* p5 == ms - 1/2* (s + tp - v2), p3* p4 == 1/2* v2, p3* p5 == 1/2* (tp - t - v2), p4* p5 == 1/2* (t - 2* ms)), lst(1,1,1,1,1)); pent.integrate_map(lst(s==-2,t==-3,v2==-4,tp==-5,v1==-6,ms==1)); */ /* RoMB_loop_by_loop pent(lst(k1),lst(-pow(p1 + k1,2)+ ms,-pow(p1 + p5 + k1,2), -pow(p1 + p5 + p4 + k1,2)+ ms,-pow(p1 + p5 + p4 + p3 + k1,2)+ ms, -pow(k1,2)), lst( p1*p1 == ms, p2*p2 == ms, p3*p3 == 0, p4*p4 == ms, p5*p5 == ms, p1*p2 == 1/2* (tp - 2* ms), wild(1)*p1*p3 == wild(1)*1/2* (t - tp - v1), wild(2)*p1*p4 == wild(2)*(ms - 1/2* (s + t - v1)), wild(3)* p1*p5 == wild(3)*1/2* (s - 2* ms), wild(4)*p2* p3 == wild(4)*1/2* v1, wild(5)*p2* p4 == wild(5)*1/2* (s - 2* ms - v1 - v2), wild(6)*p2* p5 ==wild(6)*( ms - 1/2* (s + tp - v2)), wild(7)*p3* p4 == wild(7)*1/2* v2, wild(8)*p3* p5 == wild(8)*1/2* (tp - t - v2), wild()*p4* p5 == wild()*1/2* (t - 2* ms)), lst(1,1,1,1,1)); pent.integrate_map(lst(s==-2,t==-3,v2==-4,tp==-5,v1==-6,ms==1)); */ } catch(std::exception &p) { std::cerr<<"******************************************************************"<<endl; std::cerr<<" >>>ERROR: "<<p.what()<<endl; std::cerr<<"******************************************************************"<<endl; return 1; } return 0; }
int main() { try { symbol k("k"),q("q"),p("p"),p1("p1"),p2("p2"),p3("p3"),ms("ms"),l("l"),s("s"),m1s("m1s"),m2s("m2s"),m3s("m3s"); symbol l1("l1"),l2("l2"),l3("l3"),l4("l4"),t("t"),p4("p4"),p5("p5"),tp("tp"),v1("v1"),v2("v2"),l5("l5"); symbol k1("k1"),k2("k2"),k3("k3"),k4("k4"),k5("k5"),ms1("ms1"),ms2("ms2"),ms3("ms3"),ms4("ms4"); // oneloop box // UFXmap l45 = UF(lst(k),lst(pow(k,2),pow(k+p1,2),pow(k+p1+p2,2),pow(k+p1+p2+p3,2)),lst(pow(p1,2)==0,pow(p2,2)==0)); // MBintegral root_int(l45,lst(1,1,1,1),1); //two loop box bubble // UFXmap l45 = UF(lst(k,l),lst(pow(k,2),pow(k+p1,2),pow(k+p1+p2,2),pow(l+p1+p2,2),pow(l+p1+p2+p3,2),pow(l,2),pow(k-l,2)),lst(pow(p1,2)==0,pow(p2,2)==0,pow(p3,2)==0)); //MBintegral root_int(l45,lst(1,1,1,1,1,1,1),2); // B0 // UFXmap l45 = UF(lst(k),lst(ms-pow(k,2),ms-pow(-k,2)),lst(ms==1)); // MBintegral root_int(l45,lst(1,1),1); // 2 loop sunrise //UFXmap l45 = UF(lst(k,q),lst(ms-pow(k,2),ms-pow(-q-k,2),ms-pow(q,2)),lst(ms==1)); //MBintegral root_int(l45,lst(1,1,1),2); //RoMB_planar box2loop(lst(k,l),lst(pow(k,2),pow(k+p1,2),pow(k+p1+p2,2),pow(l+p1+p2,2),pow(l+p1+p2+p3,2),pow(l,2),pow(k-l,2)),lst(pow(p1,2)==0,pow(p2,2)==0,pow(p3,2)==0),lst(1,1,1,1,1,1,1),2); // RoMB_planar box1loop(lst(k),lst(pow(k,2),pow(k+p1,2)-ms,pow(k+p1+p2,2),pow(k+p1+p2+p3,2)),lst(pow(p1,2)==0,pow(p2,2)==0,pow(p3,2)==0,p1==0,p2==0,p3==0,ms==1),lst(1,1,1,1),1); // RoMB_planar B0_1loop(lst(k),lst(pow(k,2)-ms,pow(p+k,2)-ms),lst(ms==0,pow(p,2)==1),lst(1,1),1); // RoMB_planar C0_1loop(lst(k),lst(pow(k,2)-ms,pow(p1+k,2)-ms,pow(p1+p2+k,2)),lst(ms==1,pow(p1,2)==0,pow(p2,2)==0,p1*p2==50),lst(1,1,1),1); //cout<<" new point "<<endl<<root_int.new_point()<<endl; // cout<<" saved point "<<endl<<root_int.get_point()<<endl; // MBcontinue(root_int); //cout<<MB_lst(l45,lst(1,1,1,1),1).expand()<<endl; // RoMB_loop_by_loop box2loop(lst(k,l),lst(pow(k,2),pow(k+p1,2),pow(k+p1+p2,2),pow(l+p1+p2,2),pow(l+p1+p2+p3,2),pow(l,2),pow(k-l,2)),lst(pow(p1,2)==0,pow(p2,2)==0,pow(p3,2)==0),lst(1,1,1,1,1,1,1)); // RoMB_loop_by_loop t2(lst(k,l), lst(pow(k,2),pow(p+k,2),pow(p+k+l,2),pow(l,2),pow(k+l,2)),lst(pow(p,2)==1),lst(1,1,1,1,1)); // works!!! // RoMB_loop_by_loop sunset(lst(k,l), lst(pow(k,2)-1,pow(p-k-l,2)-4,pow(l,2)-5),lst(pow(p,2)==s),lst(1,1,1)); // RoMB_loop_by_loop sunset(lst(k,l), lst(pow(k,2)-m1s,pow(-k-l,2)-m2s,pow(l,2)-m3s),lst(pow(p,2)==s),lst(1,1,1)); // sunset.integrate(lst(m1s==1,m2s==1,m3s==1,s==0),0); // bubble sunset 2=loop // RoMB_loop_by_loop sunset_bub(lst(k,l), lst(-pow(k,2)+ms,-pow(-k-l,2)+ms,-pow(l,2)+ms),lst(pow(p,2)==0),lst(1,1,1)); // sunset_bub.integrate(lst(ms==1,m2s==1,m3s==1,s==0),1); // bubble sunset 3=loop // RoMB_loop_by_loop sunset_bub(lst(p,k,l), lst(-pow(p,2)+ms,-pow(k,2)+ms,-pow(l,2)+ms,-pow(-p-k-l,2)+ms),lst(pow(l3,2)==s),lst(1,1,1,1)); // sunset_bub.integrate(lst(ms==1,m2s==1,m3s==1,s==0),0); // RoMB_loop_by_loop sunset_bub_d(lst(l1,l2,l3), lst(-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l3,2)+ms,-pow(l1+l2,2)+ms,-pow(l1+l2+l3,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1)); // sunset_bub_d.integrate(lst(ms==1,m2s==1,m3s==1,s==0),-1); // RoMB_loop_by_loop sunset_bub_e(lst(l1,l2,l3), lst(-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l3,2)+ms,-pow(l1-l2,2)+ms,-pow(l2-l3,2)+ms,-pow(l3-l1,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1,1)); // sunset_bub_e.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),1); //bubble 4-loop // RoMB_loop_by_loop sunset_bub(lst(k,l1,l2,l3), lst(-pow(k,2)+ms,-pow(l2,2)+ms,-pow(l1,2)+ms,-pow(l3,2)+ms,-pow(k+l1+l2+l3,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1)); // sunset_bub.integrate(lst(ms==1,m2s==1,m3s==1,s==0),0); //bubble 5-loop // RoMB_loop_by_loop sunset_bub5(lst(l3,k,l1,l2,l4), lst(-pow(l3,2)+ms,-pow(k,2)+ms,-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l4,2)+ms,-pow(k+l1+l2+l3+l4,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1,1)); // sunset_bub5.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),3); // RoMB_loop_by_loop sunset_bubC2(lst(l1,l2,l3,l4,l5), lst(-pow(l3,2)+ms,-pow(l5,2)+ms,-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l4,2)+ms,-pow(l5+l1+l2,2)+ms,-pow(l5+l3+l4,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1,1,1)); // sunset_bubC2.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),0); // RoMB_loop_by_loop sunset_bubC2(lst(l1,l2,l3,l4,l5), lst(-pow(l3,2)+ms,-pow(l5,2)+ms,-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l4,2)+ms,-pow(l3+l4+l5,2)+ms,-pow(l1+l2+l5+l3+l4,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1,1,1)); // sunset_bubC2.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),0); // RoMB_loop_by_loop sunset_bubC1(lst(l1,l2,l3,l4,l5), lst(-pow(l3,2)+ms,-pow(l5,2)+ms,-pow(l1,2)+ms,-pow(l2,2)+ms,-pow(l4,2)+ms,-pow(l2+l3+l4+l5,2)+ms,-pow(l1+l2+l5+l3+l4,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1,1,1)); // sunset_bubC1.integrate_map(lst(ms==1,m2s==1,m3s==1,s==0),0); /* MEGA 5-LOOP BUBBLE with 12 propagators */ //RoMB_loop_by_loop l5p12(lst(k5,k2,k1,k4,k3),lst(-pow(k1,2)+ms,-pow(k2,2)+ms,-pow(k3,2)+ms,-pow(k4,2)+ms,-pow(k5,2)+ms, //-pow(k1-k3,2)+ms,-pow(k1-k4,2)+ms,-pow(k3-k2,2)+ms,-pow(k2-k4,2)+ms,-pow(k5+k3-k1,2)+ms,-pow(k5+k3-k2,2)+ms,-pow(k5+k3-k4,2)+ms),lst(pow(p,2)==0),lst(1,1,1,1,1,1,1,1,1,1,1,1)); //l5p12.integrate(lst(ms==0),0); //RoMB_loop_by_loop l5c1(lst(k2,k5,k3,k4,k1),lst(-pow(k3,2)+ms,-pow(k2,2)+ms,-pow(k1,2)+ms,-pow(k4,2)+ms,-pow(k5,2)+ms, //-pow(k1+k3+k4,2)+ms,-pow(k2+k5-k3-k4,2)+ms),lst(pow(p,2)==0),lst(1,1,1,1,1,1,1)); //l5c1.integrate_map(lst(ms==1),0); // RoMB_loop_by_loop t2loop(lst(k,l), lst(-pow(k,2)+ms,-pow(p+k,2)+ms,-pow(p+k+l,2)+ms,-pow(k+l,2)+ms,-pow(l,2)+ms),lst(pow(p,2)==s),lst(1,1,1,1,1)); // t2loop.integrate(lst(s==1,ms == 0),1); /* RoMB_loop_by_loop bubble_five_loop(lst(k,l1,l2,l3,l4), lst(pow(k,2)-ms,pow(l1,2)-ms,pow(l2,2)-ms,pow(l3,2)-ms,pow(l4,2)-ms,pow(k+l1,2)-ms,pow(k+l1+l2,2)-ms,pow(k+l1+l2+l3,2)-ms,pow(k+l1+l2+l3+l4,2)-ms,pow(k+l1+l2+l3,2)-ms,pow(k+l1+l2,2)-ms,pow(k+l1,2)-ms), lst(ms==1), lst(1,1,1,1,1,1,1,1,1,1,1,1)); */ // works!!! // RoMB_loop_by_loop B0_1loop_lbl(lst(k),lst(pow(k,2)-2-ms,pow(p+k,2)-ms),lst(ms==0,pow(p,2)==1),lst(2,1)); // RoMB_loop_by_loop B0_1loop_lbl(lst(k),lst(pow(k,2)-m1s,pow(p+k,2)-m2s),lst(pow(p,2)==s),lst(1,1)); // B0_1loop_lbl.integrate(lst(s==-1,m1s==1,m2s==1)); //MB works??? // RoMB_loop_by_loop C0_1loop_lbl(lst(k),lst(pow(k,2),pow(k+p1,2)-m1s,pow(k-p2,2)-m2s),lst(ms==1,pow(p1,2)==m1s,pow(p2,2)==m2s,p1*p2==(s-m1s-m2s)/2),lst(1,1,1)); // C0_1loop_lbl.integrate(lst(m1s==1,m2s==1,s==-100)); //MB works??? /* RoMB_loop_by_loop box1loopm0(lst(k),lst(-pow(k,2),-pow(k+p1,2),-pow(k+p1+p2,2),-pow(k+p1+p2+p4,2)), lst(pow(p1,2)==0,pow(p2,2)==0,pow(p4,2)==0, p1*p2==-s/2,// p1*p4==s/2+t/2,// p2*p4==-t/2 // ), lst(1,1,1,1),false); box1loopm0.integrate_map(lst(s==3,t==1)); box1loopm0.integrate(lst(s==5,t==2)); */ //MASIVE BOX LBL RoMB_loop_by_loop box1loopm(lst(k),lst(-pow(k,2)+ms,-pow(k+p1,2)+ms,-pow(k+p1+p2,2)+ms,-pow(k+p1+p2+p4,2)+ms), lst(pow(p1,2)==0,pow(p2,2)==0,pow(p4,2)==0, p1*p2==s/2,// p1*p4==-(s/2+t/2),// p2*p4==t/2 // ), lst(1,1,1,1),false); box1loopm.integrate_map(lst(ms1==1,ms2==1,ms3==1,ms4==1,ms==1,s==-3,t==-1),3); //triple box /* RoMB_loop_by_loop tribox1loopm(lst(k1,k2,k3),lst(-pow(k1,2)+ms,-pow(k1+p1,2),-pow(k1+p1+p2,2)+ms, -pow(k1-k2,2),-pow(k2,2)+ms,-pow(k2+p1+p2,2)+ms, -pow(k2-k3,2),-pow(k3,2)+ms,-pow(k3+p1+p2,2)+ms, -pow(k3-p3,2)), lst(pow(p1,2)==ms,pow(p2,2)==ms,pow(p3,2)==ms,pow(p4,2)==ms, p1*p2==s/2-ms,// p1*p3==t/2-ms,// p2*p3==ms-(s+t)/2 // ), lst(1,1,1,1,1,1,1,1,1,1),true); tribox1loopm.integrate_map(lst(ms1==1,ms2==1,ms3==1,ms4==1,ms==1,s==-1/2,t==-3)); */ //double box /* RoMB_loop_by_loop dobox1loopm(lst(k1,k2),lst(-pow(k1,2),-pow(k1+p1,2),-pow(k1+p1+p2,2), -pow(k1-k2,2),-pow(k2,2),-pow(k2+p1+p2,2), -pow(k2-p3,2)), lst(pow(p1,2)==0,pow(p2,2)==0,pow(p3,2)==0,pow(p4,2)==0, p1*p2==s/2-ms,// p1*p3==t/2-ms,// p2*p3==ms-(s+t)/2 // ), lst(1,1,1,1,1,1,1),false); dobox1loopm.integrate_map(lst(ms1==1,ms2==1,ms3==1,ms4==1,ms==1,s==-1/2,t==-3)); */ /* 4-loop tadpole */ // RoMB_loop_by_loop tad4(lst(l1, l2, l3, l4),lst(pow(l1,2)- ms,pow(l2,2)- ms,pow(l3 ,2)- ms,pow(l4,2),pow(l1+l2+l3+l4,2)),lst(),lst(1,1,1,1,1)); // tad4.integrate(lst(ms == 1),-2); /* Pentagon */ /* RoMB_loop_by_loop pent(lst(k1),lst(-pow(p1 + k1,2)+ ms,-pow(p1 + p5 + k1,2), -pow(p1 + p5 + p4 + k1,2)+ ms,-pow(p1 + p5 + p4 + p3 + k1,2)+ ms, -pow(k1,2)), lst( p1*p1 == ms, p2*p2 == ms, p3*p3 == 0, p4*p4 == ms, p5*p5 == ms, p1*p2 == 1/2* (tp - 2* ms), p1*p3 == 1/2* (t - tp - v1), p1*p4 == ms - 1/2* (s + t - v1), p1*p5 == 1/2* (s - 2* ms), p2* p3 == 1/2* v1, p2* p4 == 1/2* (s - 2* ms - v1 - v2), p2* p5 == ms - 1/2* (s + tp - v2), p3* p4 == 1/2* v2, p3* p5 == 1/2* (tp - t - v2), p4* p5 == 1/2* (t - 2* ms)), lst(1,1,1,1,1)); pent.integrate_map(lst(s==-2,t==-3,v2==-4,tp==-5,v1==-6,ms==1)); */ /* RoMB_loop_by_loop pent(lst(k1),lst(-pow(p1 + k1,2)+ ms,-pow(p1 + p5 + k1,2), -pow(p1 + p5 + p4 + k1,2)+ ms,-pow(p1 + p5 + p4 + p3 + k1,2)+ ms, -pow(k1,2)), lst( p1*p1 == ms, p2*p2 == ms, p3*p3 == 0, p4*p4 == ms, p5*p5 == ms, p1*p2 == 1/2* (tp - 2* ms), wild(1)*p1*p3 == wild(1)*1/2* (t - tp - v1), wild(2)*p1*p4 == wild(2)*(ms - 1/2* (s + t - v1)), wild(3)* p1*p5 == wild(3)*1/2* (s - 2* ms), wild(4)*p2* p3 == wild(4)*1/2* v1, wild(5)*p2* p4 == wild(5)*1/2* (s - 2* ms - v1 - v2), wild(6)*p2* p5 ==wild(6)*( ms - 1/2* (s + tp - v2)), wild(7)*p3* p4 == wild(7)*1/2* v2, wild(8)*p3* p5 == wild(8)*1/2* (tp - t - v2), wild()*p4* p5 == wild()*1/2* (t - 2* ms)), lst(1,1,1,1,1)); pent.integrate_map(lst(s==-2,t==-3,v2==-4,tp==-5,v1==-6,ms==1)); */ } catch(std::exception &p) { std::cerr<<"******************************************************************"<<endl; std::cerr<<" >>>ERROR: "<<p.what()<<endl; std::cerr<<"******************************************************************"<<endl; return 1; } return 0; }
L::QRNSequence* L::Make::qrnNet (int n, const Hypercube &h, Index size) { /* * 1rtg Digital Sequences in Base 2 * ||| * ||\__ Generator Matrix 2 * || * |\___ 0 - Truncate * | 1 - Center * | 2 - Full * | * | 5 - Add equidistributed coordinate * | * \____ 0 - Index 0 * 1 - Index 1 * 2 - Index 2 * 3 - Index 16 * 4 - Index 100 * * 9 - Randomize */ if (n >= 1000 && n < 2000) { int nn = n; int gen = nn % 10; nn /= 10; GM2* gm; try { gm = generatorMatrix2 (gen, h.getDimension()); } catch (GeneratorMatrixDoesNotExist &) { throw QRNSequenceDoesNotExist (n); } if (nn % 5 >= 3) throw QRNSequenceDoesNotExist (n); DigitalNet::Truncation trunc = truncs [nn % 5]; nn /= 5; bool equi = nn % 2; nn /= 2; int index = nn % 10; nn /= 10; if (index > 4 && index < 9) throw QRNSequenceDoesNotExist (n); typedef DigitalNet2Gray<u64> DN2G; DN2G* dn = new DN2G (*gm, h, ms1(size), indices[index], equi, trunc); if (index == 9) dn->randomize(*mt); delete gm; return new QRNSequenceP<DN2G> (dn); } #if 0 /* * 2agg Digital Sequences in general base * | | * | \__ Generator Matrix Gen * | * \____ 0 - Naive * 1 - Normal * 2 - Gray-Code */ if (n >= 2000 && n < 3000) { int nn = n; int gen = nn % 100; nn /= 100; GMGen* gm; try { gm = generatorMatrixGen (gen); } catch (GeneratorMatrixDoesNotExist &) { throw QRNSequenceDoesNotExist (n); } int type = nn % 10; nn /= 10; if (type >= 3) throw QRNSequenceDoesNotExist (n); int base = gm->getBase(); QRNSequence* seq; typedef LookupField<unsigned char> Ring; LookupGaloisField<unsigned char> r (base); typedef DigitalNetGenNormal <Ring, Index> Normal; typedef DigitalNetGenNaive <Ring, Index> Naive; typedef DigitalNetGenGray <Ring, Index> Gray; typedef DigitalNetGenCyclicGray<Ring, Index> Cyclic; switch (type) { case 0: seq = new QRNSequenceP<Naive> (new Naive (*gm, r, h)); break; case 1: seq = new QRNSequenceP<Normal> (new Normal (*gm, r, h)); break; case 2: { if (Prime::test (base)) seq = new QRNSequenceP<Cyclic> (new Cyclic (*gm, r, h)); else seq = new QRNSequenceP<Gray> (new Gray (*gm, r, h)); break; } default: throw InternalError (__FILE__, __LINE__); } delete gm; return seq; } #endif /* * 2agg Digital Sequences in general base * | | * | \__ Generator Matrix Gen * | * \____ 1 - Fix one-dim projection * 2 - Fix two-dim projection */ if (n >= 2000 && n < 3000) { int nn = n; int gen = nn % 100; nn /= 100; GMGen* gm; try { gm = generatorMatrixGen (gen, h.getDimension()); } catch (GeneratorMatrixDoesNotExist &) { throw QRNSequenceDoesNotExist (n); } int base = gm->getBase(); int m = logInt (size, Index (base)); GMGen gm2 (AdjustM (m, AdjustPrec (m, *gm))); int fix = nn % 10; nn /= 10; if (fix > 2) throw QRNSequenceDoesNotExist (n); if (fix) { GeneratorMatrixGenRow<unsigned char> gm3 (gm2); if (fix == 1) fixOneDimensionalProjections (gm3); else fixTwoDimensionalProjections (gm3); assign (gm3, gm2); } QRNSequence* seq; typedef OneDimVectorSpace<LookupField<unsigned char> > VS; LookupGaloisField<unsigned char> r (base); VS vs (r); typedef DigitalNetGenGray <VS, Index> Gray; typedef DigitalNetGenCyclicGray<VS, Index> Cyclic; if (Prime::test (base)) seq = new QRNSequenceP<Cyclic> (new Cyclic (vs, gm2, h)); else seq = new QRNSequenceP<Gray> (new Gray (vs, gm2, h)); delete gm; return seq; } /* * 9xxx Special Cases * | * \____ 0 - Halton */ switch (n) { case 9000: return new QRNSequenceT<Halton> (h); default: throw QRNSequenceDoesNotExist (n); } }
void DatasetIsoline::initGeometry() { int nx = m_properties["maingl"].get( Fn::Property::D_NX ).toInt(); int ny = m_properties["maingl"].get( Fn::Property::D_NY ).toInt(); int nz = m_properties["maingl"].get( Fn::Property::D_NZ ).toInt(); float dx = m_properties["maingl"].get( Fn::Property::D_DX ).toFloat(); float dy = m_properties["maingl"].get( Fn::Property::D_DY ).toFloat(); float dz = m_properties["maingl"].get( Fn::Property::D_DZ ).toFloat(); float ax = m_properties["maingl"].get( Fn::Property::D_ADJUST_X ).toFloat(); float ay = m_properties["maingl"].get( Fn::Property::D_ADJUST_Y ).toFloat(); float az = m_properties["maingl"].get( Fn::Property::D_ADJUST_Z ).toFloat(); m_x = Models::getGlobal( Fn::Property::G_SAGITTAL ).toFloat(); m_y = Models::getGlobal( Fn::Property::G_CORONAL ).toFloat(); m_z = Models::getGlobal( Fn::Property::G_AXIAL ).toFloat(); int xi = qMax( 0.0f, qMin( ( m_x - ax ) / dx, (float)nx - 1 ) ); int yi = qMax( 0.0f, qMin( ( m_y - ay ) / dy, (float)ny - 1 ) ); int zi = qMax( 0.0f, qMin( ( m_z - az ) / dz, (float)nz - 1 ) ); float isoValue = m_properties["maingl"].get( Fn::Property::D_ISO_VALUE ).toFloat(); bool interpolation = m_properties["maingl"].get( Fn::Property::D_INTERPOLATION ).toBool(); m_color = m_properties["maingl"].get( Fn::Property::D_COLOR ).value<QColor>(); int stripeType = m_properties["maingl"].get( Fn::Property::D_ISOLINE_STRIPES ).toInt(); std::vector<float>verts; std::vector<float>stripeVerts; std::vector<float>colors; std::vector<float>stripeColors; m_vertCountAxial = 0; m_vertCountCoronal = 0; m_vertCountSagittal = 0; if ( m_properties["maingl"].get( Fn::Property::D_RENDER_AXIAL ).toBool() ) { std::vector<float>sliceData; std::vector<float>tmpVerts; std::vector<float>tmpVerts2; sliceData = extractAnatomyAxial( zi ); MarchingSquares ms1( &sliceData, isoValue, nx, ny, dx, dy, interpolation ); tmpVerts = ms1.run(); if ( stripeType > 0 ) { tmpVerts2 = ms1.runStripes( stripeType, 2 ); } if ( tmpVerts.size() > 0 ) { for ( unsigned int i = 0; i < tmpVerts.size() / 4; ++i ) { addGlyph( verts, colors, tmpVerts[4*i] + ax, tmpVerts[4*i+1] + ay, m_z, tmpVerts[4*i+2] + ax, tmpVerts[4*i+3] + ay, m_z ); } if ( stripeType > 0 ) { for ( unsigned int i = 0; i < tmpVerts2.size() / 4; ++i ) { addGlyph( stripeVerts, stripeColors, tmpVerts2[4*i] + ax, tmpVerts2[4*i+1] + ay, m_z, tmpVerts2[4*i+2] + ax, tmpVerts2[4*i+3] + ay, m_z ); } } m_vertCountAxial = verts.size() / 8; m_stripeVertCountAxial = stripeVerts.size() / 8; } } if ( m_properties["maingl"].get( Fn::Property::D_RENDER_CORONAL ).toBool() ) { std::vector<float>sliceData; std::vector<float>tmpVerts; std::vector<float>tmpVerts2; sliceData = extractAnatomyCoronal( yi ); MarchingSquares ms1( &sliceData, isoValue, nx, nz, dx, dz, interpolation ); tmpVerts = ms1.run(); if ( stripeType > 0 ) { tmpVerts2 = ms1.runStripes( stripeType, 2 ); } if ( tmpVerts.size() > 0 ) { for ( unsigned int i = 0; i < tmpVerts.size() / 4; ++i ) { addGlyph( verts, colors, tmpVerts[4*i] + ax, m_y, tmpVerts[4*i+1] + az, tmpVerts[4*i+2] + ax, m_y, tmpVerts[4*i+3] + az ); } if ( stripeType > 0 ) { for ( unsigned int i = 0; i < tmpVerts2.size() / 4; ++i ) { addGlyph( stripeVerts, stripeColors, tmpVerts2[4*i] + ax, m_y, tmpVerts2[4*i+1] + az, tmpVerts2[4*i+2] + ax, m_y, tmpVerts2[4*i+3] + az ); } } m_vertCountCoronal = verts.size() / 8 - m_vertCountAxial; m_stripeVertCountCoronal = stripeVerts.size() / 8 - m_stripeVertCountAxial; } } if ( m_properties["maingl"].get( Fn::Property::D_RENDER_SAGITTAL ).toBool() ) { std::vector<float>sliceData; std::vector<float>tmpVerts; std::vector<float>tmpVerts2; sliceData = extractAnatomySagittal( xi ); MarchingSquares ms1( &sliceData, isoValue, ny, nz, dy, dz, interpolation ); tmpVerts = ms1.run(); if ( stripeType > 0 ) { tmpVerts2 = ms1.runStripes( stripeType, 2 ); } if ( tmpVerts.size() > 0 ) { for ( unsigned int i = 0; i < tmpVerts.size() / 4; ++i ) { addGlyph( verts, colors, m_x, tmpVerts[4*i] + ay, tmpVerts[4*i+1] + az, m_x, tmpVerts[4*i+2] + ay, tmpVerts[4*i+3] + az ); } if ( stripeType > 0 ) { for ( unsigned int i = 0; i < tmpVerts2.size() / 4; ++i ) { addGlyph( stripeVerts, stripeColors, m_x, tmpVerts2[4*i] + ay, tmpVerts2[4*i+1] + az, m_x, tmpVerts2[4*i+2] + ay, tmpVerts2[4*i+3] + az ); } } m_vertCountSagittal = verts.size() / 8 - ( m_vertCountCoronal + m_vertCountAxial ); m_stripeVertCountSagittal = stripeVerts.size() / 8 - ( m_stripeVertCountCoronal + m_stripeVertCountAxial ); } } if ( verts.size() > 0 ) { if( vbo0 ) { GLFunctions::f->glDeleteBuffers( 1, &vbo0 ); } GLFunctions::f->glGenBuffers( 1, &vbo0 ); if( vbo1 ) { GLFunctions::f->glDeleteBuffers( 1, &vbo1 ); } GLFunctions::f->glGenBuffers( 1, &vbo1 ); if( vbo2 ) { GLFunctions::f->glDeleteBuffers( 1, &vbo2 ); } GLFunctions::f->glGenBuffers( 1, &vbo2 ); if( vbo3 ) { GLFunctions::f->glDeleteBuffers( 1, &vbo3 ); } GLFunctions::f->glGenBuffers( 1, &vbo3 ); GLFunctions::f->glBindBuffer( GL_ARRAY_BUFFER, vbo0 ); GLFunctions::f->glBufferData( GL_ARRAY_BUFFER, verts.size() * sizeof( float ), verts.data(), GL_DYNAMIC_DRAW ); GLFunctions::f->glBindBuffer( GL_ARRAY_BUFFER, 0 ); GLFunctions::f->glBindBuffer( GL_ARRAY_BUFFER, vbo1 ); GLFunctions::f->glBufferData( GL_ARRAY_BUFFER, colors.size() * sizeof( float ), colors.data(), GL_DYNAMIC_DRAW ); GLFunctions::f->glBindBuffer( GL_ARRAY_BUFFER, 0 ); GLFunctions::f->glBindBuffer( GL_ARRAY_BUFFER, vbo2 ); GLFunctions::f->glBufferData( GL_ARRAY_BUFFER, stripeVerts.size() * sizeof( float ), stripeVerts.data(), GL_DYNAMIC_DRAW ); GLFunctions::f->glBindBuffer( GL_ARRAY_BUFFER, 0 ); GLFunctions::f->glBindBuffer( GL_ARRAY_BUFFER, vbo3 ); GLFunctions::f->glBufferData( GL_ARRAY_BUFFER, stripeColors.size() * sizeof( float ), stripeColors.data(), GL_DYNAMIC_DRAW ); GLFunctions::f->glBindBuffer( GL_ARRAY_BUFFER, 0 ); } m_dirty = false; }
void firstwo_mser_location(Mat gray,vector<square> &v1,vector<square> &v2) { MSER ms(10,100,1000,0.25,0.2,200,1.01,0.003,5); vector<vector<Point>> regions; ms(gray, regions, Mat()); MSER ms1(3,100,1000,0.25,0.2,200,1.01,0.003,5); vector<vector<Point>> regions1; ms1(gray, regions1, Mat()); for( vector<vector<Point> >::iterator k=regions.begin();k!=regions.end();k++) { int xd=0,yd=0,xx=10000,yx=10000;//最多一千万像素 vector<Point> vtemp = *k; for(int j=0; j<vtemp.size(); j++) { Point a=vtemp.at(j); if(a.x>xd) xd=a.x; if(a.y>yd) yd=a.y; if(a.x<xx) xx=a.x; if(a.y<yx) yx=a.y; } /* CvPoint a3,a4;// a3.x=xx; a3.y=yx; a4.x=xd; a4.y=yd; rectangle(gray,a3,a4,CV_RGB(255,0,0)); myshow(gray);//*/ if((((float)(yd-yx))/gray.rows)>0.5)//字长度太大 continue; if(((((float)(xd-xx))/gray.cols)>0.5))//字宽度太大 continue; if((float)(yd-yx)/(float)(xd-xx)>3||(float)(xd-xx)/(float)(yd-yx)>3) continue; CvPoint a1,a2; a1.x=xx; a1.y=yx; a2.x=xd; a2.y=yd; /*rectangle(gray,a1,a2,CV_RGB(255,0,0)); // myshow(gray);//*/ square s1; s1.squ1=a1; s1.squ2=a2; v1.push_back(s1); } for( vector<vector<Point> >::iterator k=regions1.begin();k!=regions1.end();k++) { int xd=0,yd=0,xx=10000,yx=10000;//最多一千万像素 vector<Point> vtemp = *k; for(int j=0; j<vtemp.size(); j++) { Point a=vtemp.at(j); if(a.x>xd) xd=a.x; if(a.y>yd) yd=a.y; if(a.x<xx) xx=a.x; if(a.y<yx) yx=a.y; } /*CvPoint a3,a4; // a3.x=xx; a3.y=yx; a4.x=xd; a4.y=yd; rectangle(gray,a3,a4,CV_RGB(255,0,0)); myshow(gray);//*/ if((((float)(yd-yx))/gray.rows)>0.5)//字长度太大 continue; if(((((float)(xd-xx))/gray.cols)>0.5))//字宽度太大 continue; if((float)(yd-yx)/(float)(xd-xx)>3||(float)(xd-xx)/(float)(yd-yx)>3) continue; CvPoint a1,a2; a1.x=xx; a1.y=yx; a2.x=xd; a2.y=yd; /*rectangle(gray,a1,a2,CV_RGB(255,0,0)); // myshow(gray);//*/ square s1; s1.squ1=a1; s1.squ2=a2; v2.push_back(s1); } }
int main() { try { symbol k("k"),q("q"),p("p"),p1("p1"),p2("p2"),p3("p3"),ms("ms"),l("l"),s("s"),m1s("m1s"),m2s("m2s"),m3s("m3s"); symbol l1("l1"),l2("l2"),l3("l3"),l4("l4"),t("t"),p4("p4"),p5("p5"),tp("tp"),v1("v1"),v2("v2"),l5("l5"); symbol k1("k1"),k2("k2"),k3("k3"),k4("k4"),k5("k5"),ms1("ms1"),ms2("ms2"),ms3("ms3"),ms4("ms4"); symbol s12("s12"),s23("s23"),s34("s34"),s45("s45"),s51("s51"),s13("s13"),s15("s15"); lst inv_l = lst( p1*p1 == 0, p2*p2 == 0, p3*p3 == 0, p4*p4 == 0, p5*p5 == 0, p1*p2 == s12/2, p1*p3 == (-s12-s23+s45)/2, p1*p4 == (-s15+s23-s45)/2, p1*p5 == s15/2, p2* p3 ==s23/2, p2* p4 ==(s15-s23-s34)/2, p2* p5 ==(-s12-s15+s34)/2, p3*p4 == s34/2, p3*p5 == (s12-s34-s45)/2, p4*p5 == s45/2); #define topo 2 #if topo==1 /* 1+eps normalization FRESULT for parameters: {s12==-2,s23==-3,s34==-4,s45==-5,s15==-6,ms==1} FRESULT anl : = -0.010071141398715986043 FRESULT num: = -0.010071141398715986043 eps^0 term: -0.010071141398715986043 +/- 7.5387750593540493467E-5 */ /* Euler renormalization FRESULT for parameters: {s12==-2,s23==-3,s34==-4,s45==-5,s15==-6,ms==1} FRESULT anl : = 0.020204464861409441711 FRESULT num: = 0.020204464861409441711 eps^0 term: 0.020204464861409441711 +/- 2.9955911201888832611E-4 */ RoMB_loop_by_loop pent(lst(k1),lst(-pow(p1 + k1,2)+ms,-pow(p1 + p2 + k1,2)+ms, -pow(p1 + p2 + p3 + k1,2)+ms,-pow(p1 + p2 + p3 + p4 + k1,2)+ms, -pow(k1,2)+ms), inv_l, lst(1,1,1,1,1),false); pent.integrate_map(lst(s12==-2,s23==-3,s34==-4,s45==-5,s15==-6,ms==1)); #elif topo==2 // M=0 with factor tgamma(1-eps)^2/tgamma(1-2eps) /* PJfry * 1/eps^-2 :(-0.111111,0) * 1/eps^-1 :(0.0856421,0) * 1/eps^0 :(0.0513422,0) -3.28987 */ RoMB_loop_by_loop pent(lst(k2,k1),lst(-pow(k1,2),-pow(k1 - k2 ,2), -pow(k1+p1 + p2,2),-pow(k1 - p4 - p5,2), -pow(k1-p5,2),-pow(k2,2),-pow(k2+p1,2),-pow(k2+p1+p2,2)), inv_l, lst(1,1,1,1,1,1,1,1),true); pent.integrate_map(lst(s12==-2,s23==-4,s34==-5,s45==-6,s15==-0.5,ms==1),0); /* FRESULT for parameters: {s12==-2,s23==-4,s34==-5,s45==-6,s15==-0.5,ms==1} FRESULT anl : = 400.22174334151294225-(0.24583333333333333332)*log(4)^2*log(5)*log(2)-(3.3881317890172013563E-21)*Euler*log(5)^2+(7.284483346386982916E-20)*Euler*log(5)*log(6)*log(2)-(0.11210570324758033243)*log(4)*log(6)-(2.1006417091906648409E-19)*Euler*log(5)*log(6)-(8.470329472543003391E-21)*Euler+(1.4484263398048535798E-19)*Euler*log(5)^2*log(2)+(0.34079736377530644382)*log(4)*log(6)*log(2)-(0.17039868188765322194)*log(4)^2*log(2)+eps^(-2)*(-1.3333035413347974529-(0.12916666666666666666)*log(4)*log(6)+(1.9274705288631189937E-20)*Euler+(3.3730734255104582391E-20)*Euler*log(6)+(0.121354166666666666677)*Pi^2+(0.014440566261665527283)*log(4)+(0.054166666666666666667)*log(5)*log(6)+(3.08395284618099039E-19)*Euler^2+(0.24693368307448051649)*log(5)-(1.2046690805394493711E-20)*Euler*log(4)-(0.045833333333333333334)*log(4)*log(5)+(0.16666666666666666667)*log(2)^2-(0.0086643397569993163535)*log(6)-(0.025)*log(6)*log(2)-(1.9274705288631189937E-20)*Euler*log(5)+(0.0625)*log(6)^2-(0.27725887222397812377)*log(2)-(0.4)*log(5)*log(2)+(0.07708333333333333334)*log(4)^2+(0.178125)*log(5)^2+(0.029166666666666666667)*log(4)*log(2)+(7.709882115452475975E-20)*Euler*log(2))+(2.2022856628611808816E-20)*Euler*log(4)^3-(4.336808689942017736E-19)*Euler^2*log(2)-(0.066426604803661425496)*log(4)*log(5)^2+(0.014236111111111111113)*log(4)^4+(2.710505431213761085E-20)*Euler*log(6)-(1.1011428314305904408E-19)*Euler*log(6)*Pi^2-(0.25763888888888888888)*log(5)^3*log(2)+(0.09861111111111111112)*log(5)*log(6)^3+(0.07797905781299384727)*log(6)*log(2)^2+(2.168404344971008868E-19)*Euler*log(4)*log(5)-(3.3881317890172013563E-20)*Euler*log(4)^2+(0.058333333333333333313)*log(4)*log(5)^2*log(2)+(1.4696021634862110883E-19)*Euler*log(6)*log(2)-(1.2493735972000930001E-20)*Euler*log(5)^3-(0.32346868426130781108)*log(4)*log(5)*log(6)+(1.8223154162344101082-(1.9274705288631189937E-20)*Euler*log(5)^2-(0.17906302164465253826)*log(4)*log(6)-(3.252606517456513302E-20)*Euler+(0.275)*log(4)*log(6)*log(2)-(0.14166666666666666667)*log(4)^2*log(2)-(4.9030031577955589404E-19)*Euler^2*log(2)-(0.029166666666666666667)*log(4)*log(5)^2-(4.336808689942017736E-20)*Euler*log(6)+(0.03125)*log(6)*log(2)^2-(2.4093381610788987422E-20)*Euler*log(4)*log(5)+(2.379221434065412508E-20)*Euler*log(6)*log(2)-(0.25833333333333333333)*log(4)*log(5)*log(6)+(0.17641558449668052497)*Pi^2+(0.12916666666666666666)*log(5)*log(6)^2+(0.018016988021932553424)*log(4)-(0.35625)*log(5)^2*log(2)+(0.04043358553266347639)*log(5)*log(6)+(3.8549410577262379875E-20)*Euler*log(4)*log(6)+(3.2766998990673022894E-19)*Euler^2-(0.64791666666666666673)*zeta(3)-(0.11319444444444444446)*log(2)^3+(0.18467412722480867264)*log(5)+(0.09756944444444444444)*log(6)*Pi^2+(4.8186763221577974843E-21)*Euler*log(4)-(0.040433585532663476392)*log(4)*log(5)+(0.27725887222397812372)*log(2)^2-(0.018016988021932553429)*log(6)+(1.541976423090495195E-19)*Euler^3-(0.07509094456066074186)*log(6)*log(2)+(3.1321396094025683648E-20)*Euler*log(5)-(0.2375)*log(4)*log(6)^2+(0.08953151082232626913)*log(6)^2-(2.168404344971008868E-20)*Euler*log(2)^2+(0.12083333333333333333)*log(4)^2*log(5)-(0.14375)*log(6)^2*log(2)-(0.108333333333333333334)*log(5)*log(6)*log(2)-(0.17116138620835925754)*log(2)+(2.0238440553062749435E-19)*Euler^2*log(5)-(0.025)*log(4)*log(2)^2-(0.22395833333333333336)*log(2)*Pi^2+(0.23229166666666666667)*log(5)*Pi^2+(0.029166666666666666667)*log(5)^2*log(6)-(2.4093381610788987422E-20)*Euler*log(4)*log(2)-(0.49386736614896103298)*log(5)*log(2)+(0.08541666666666666667)*log(6)^3+(0.08375528431766005821)*log(4)^2+(3.8549410577262379875E-20)*Euler*Pi^2+(0.128125)*log(5)^3+(0.108333333333333333334)*log(4)*log(5)*log(2)+(0.4)*log(5)*log(2)^2-(0.09409722222222222222)*log(4)*Pi^2+(7.709882115452475975E-20)*Euler*log(5)*log(2)+(0.26642844752772897827)*log(5)^2+(0.0750909445606607419)*log(4)*log(2)+(0.22916666666666666667)*log(4)^2*log(6)-(0.080555555555555555553)*log(4)^3+(1.1594939900192200198E-19)*Euler*log(2))*eps^(-1)-(3.1509625637859972613E-19)*Euler^2*log(5)*log(2)-(1.5246593050577406103E-20)*Euler^2*Pi^2+(0.44166666666666666666)*zeta(3)*log(6)+(0.12361655670603724154)*Pi^2+(0.062586805555555555545)*log(5)^4-(2.5410988417629010172E-20)*Euler*log(4)*log(6)^2-(0.020138888888888888871)*log(6)*log(2)^3+(0.164622455382987011)*log(5)*log(6)^2+(0.3583333333333333334)*log(5)^2*log(2)^2-(0.22152777777777777779)*log(4)*log(6)*Pi^2+(0.10729166666666666671)*log(4)^2*Pi^2-(0.031944444444444444437)*log(4)*log(5)^3+(0.0041628081498616184988)*log(4)-(9.5714723039735938315E-20)*Euler*log(4)*log(5)*log(2)+(3.9954857837891737475E-20)*Euler*log(4)^2*log(2)-(0.53574500830779106205)*log(5)^2*log(2)-(2.5199230180815435087E-19)*Euler*zeta(3)+(0.048045301391820142482)*log(5)*log(6)-(4.7433845046240818988E-20)*Euler*log(4)*log(6)-(0.06249999999999999996)*log(5)^2*log(6)*log(2)+(6.168313523040288406E-19)*Euler^2-(0.9097222222222222222)*zeta(3)*log(5)-(1.0464597017620285435)*zeta(3)-(4.539037806098981942E-19)*Euler^3*log(2)-(0.18580195256676311766)*log(2)^3-(2.710505431213761085E-20)*Euler*log(6)^3+(0.08337179655695074824)*log(5)+(0.12755833531137882431)*log(6)*Pi^2+(2.2022856628611808816E-20)*Euler*log(4)*log(5)^2-(1.3552527156068805425E-20)*Euler*log(4)+(0.012326388888888888894)*log(6)^4-(0.4125)*log(4)*zeta(3)-(0.30416666666666666667)*log(4)*log(5)*log(6)^2+(0.49166666666666666665)*log(4)*log(5)*log(6)*log(2)-(0.066666666666666666677)*log(4)*log(6)^3+(4.7433845046240818988E-20)*Euler*log(6)*log(2)^2+(0.14305555555555555555)*log(4)^3*log(2)-(0.046043413833827636543)*log(4)*log(5)-(2.168404344971008868E-19)*Euler*log(6)^2+(0.1721623299873555105)*log(2)^2-(0.0037002739109881053319)*log(6)-(2.3039296165316969223E-19)*Euler^2*log(2)^2+(1.0062751413381088028E-18)*Euler^3-(2.168404344971008868E-19)*Euler^2*log(4)*log(2)-(0.25)*log(5)*log(6)^2*log(2)+(0.20505604272398455968-(2.8912057932946784908E-20)*Euler+(0.00625)*log(4)+(0.19583333333333333331)*log(5)-(0.018750000000000000007)*log(6)-(0.16875)*log(2))*eps^(-3)-(0.030028313369887589065)*log(6)*log(2)-(0.275)*log(4)*log(6)*log(2)^2+(0.13125)*log(4)^2*log(2)^2+(4.0657581468206416275E-20)*Euler*log(5)*log(6)^2-(8.131516293641283255E-20)*Euler*log(5)-(0.2570420794576463856)*log(4)*log(6)^2-(0.47430555555555555555)*log(5)*log(2)*Pi^2+(0.2350694444444444444)*log(5)^2*Pi^2+(0.22569444444444444447)*log(2)^2*Pi^2+(0.05705379540278641918)*log(6)^2+(1.5814418841144177812E-20)*Euler*log(2)^2+(0.16173434213065390554)*log(4)^2*log(5)+(1.5585406229479126239E-19)*Euler^2*log(6)^2-(0.17328679513998632736)*log(6)^2*log(2)+(7.030373462210692814E-20)*Euler*log(4)*log(6)*log(2)-(0.086643397569993163665)*log(5)*log(6)*log(2)-(0.08580010131103669233)*log(2)+(2.2700482986415249087E-19)*Euler^2*log(5)+(0.09999999999999999998)*log(4)^2*log(6)^2-(0.07509094456066074196)*log(4)*log(2)^2-(6.7762635780344027125E-20)*Euler*log(5)*log(2)^2-(0.32876355855725183764)*log(2)*Pi^2+(8.1950437646853557805E-20)*Euler^4-(1.1858461261560204747E-20)*Euler*log(4)*Pi^2+(0.3258754453049187323)*log(5)*Pi^2+(0.06931471805599453092)*log(5)^2*log(6)+(3.642241673193491458E-20)*Euler*log(4)^2*log(6)-(1.7194768829262296883E-19)*Euler*log(4)*log(2)-(0.37135014200760985115)*log(5)*log(2)+(1.1011428314305904408E-19)*Euler*log(2)^3+(0.08375528431766005824)*log(6)^3+(1.8431436932253575378E-18)*Euler^3*log(6)+(0.056423611111111111103)*log(2)^4-(4.0826988057657276343E-19)*Euler^2*log(4)+(0.112499999999999999984)*log(6)^2*Pi^2+(0.18402777777777777775)*log(5)*log(6)*Pi^2-(0.061111111111111111102)*log(4)^3*log(6)-(0.108333333333333333294)*log(4)*log(5)*log(2)^2+(0.020833333333333333319)*log(4)*log(2)^3-(8.131516293641283255E-20)*Euler^2*log(4)^2-(6.7762635780344027125E-21)*Euler*log(4)^2*log(5)+(0.056052851623790166215)*log(4)^2-(2.6893296075324035765E-19)*Euler^2*log(5)*log(6)-(1.626303258728256651E-19)*Euler^3*log(5)+(4.2986922073155742208E-20)*Euler*Pi^2+(0.66666666666666666706)*zeta(3)*log(2)-(0.4083333333333333333)*log(4)^2*log(6)*log(2)+(0.17352747124434741951)*log(5)^3-(0.23333333333333333333)*log(4)*log(5)^2*log(6)+(0.080867171065326952724)*log(4)*log(5)*log(2)-(1.6940658945086006781E-20)*Euler*log(6)^2*log(2)-(0.13125)*log(6)^3*log(2)+(0.49675547940129413833)*log(5)*log(2)^2-(1.3552527156068805425E-20)*Euler*log(4)*log(2)^2+(0.11874999999999999999)*log(5)^2*log(6)^2+(0.140625)*eps^(-4)+(3.8963515573697815597E-20)*Euler*log(5)*Pi^2-(0.10416666666666666666)*log(4)^3*log(5)-(0.1208194043892682449)*log(4)*Pi^2-(7.284483346386982916E-20)*Euler*log(2)*Pi^2+(8.131516293641283255E-20)*Euler*log(5)*log(2)+(0.18042011616407459749)*log(5)^2+(0.40833333333333333333)*log(4)*log(6)^2*log(2)+(0.028026425811895083111)*log(4)*log(2)+(1.6940658945086006781E-19)*Euler^2*log(5)^2+(0.26570641921464570196)*log(4)^2*log(6)-(1.0164395367051604069E-20)*Euler*log(5)^2*log(6)+(1.084202172485504434E-19)*Euler^2*log(6)*log(2)+(0.31666666666666666664)*log(4)^2*log(5)*log(6)+(1.176528763736223171E-18)*Euler^3*log(4)+(3.0323779511703952139E-19)*Euler^2*log(4)*log(5)-(0.19861111111111111116)*log(6)*log(2)*Pi^2-(0.08760610198743753216)*log(4)^3+(0.19513888888888888883)*log(4)*log(2)*Pi^2-(0.17430555555555555551)*log(4)*log(5)*Pi^2+(0.11666666666666666666)*log(4)^2*log(5)^2-(1.084202172485504434E-19)*Euler^2*log(6)+(1.3044307387716225222E-19)*Euler*log(2)+(0.11249999999999999996)*log(5)*log(6)*log(2)^2-(0.26805555555555555557)*log(5)*log(2)^3+(0.13645833333333333334)*log(6)^2*log(2)^2+(0.09795428240740740744)*Pi^4+(0.033333333333333333352)*log(5)^3*log(6) FRESULT num: = 415.68016240483728552+(5.9729895535000929493)*eps^(-1)+(0.24826188972445505333)*eps^(-2)+(0.37833789689847839715)*eps^(-3)+(0.140625)*eps^(-4) eps^-4 term: 0.140625 +/- 0 eps^-3 term: 0.20505604272398455968-(2.8912057932946784908E-20)*Euler+(0.00625)*log(4)+(0.19583333333333333331)*log(5)-(0.018750000000000000007)*log(6)-(0.16875)*log(2) +/- 5.7595906625256782043E-11 eps^-2 term: -1.3333035413347974529-(0.12916666666666666666)*log(4)*log(6)+(1.9274705288631189937E-20)*Euler+(3.3730734255104582391E-20)*Euler*log(6)+(0.121354166666666666677)*Pi^2+(0.014440566261665527283)*log(4)+(0.054166666666666666667)*log(5)*log(6)+(3.08395284618099039E-19)*Euler^2+(0.24693368307448051649)*log(5)-(1.2046690805394493711E-20)*Euler*log(4)-(0.045833333333333333334)*log(4)*log(5)+(0.16666666666666666667)*log(2)^2-(0.0086643397569993163535)*log(6)-(0.025)*log(6)*log(2)-(1.9274705288631189937E-20)*Euler*log(5)+(0.0625)*log(6)^2-(0.27725887222397812377)*log(2)-(0.4)*log(5)*log(2)+(0.07708333333333333334)*log(4)^2+(0.178125)*log(5)^2+(0.029166666666666666667)*log(4)*log(2)+(7.709882115452475975E-20)*Euler*log(2) +/- 2.38034674326464079E-6 eps^-1 term: 1.8223154162344101082-(1.9274705288631189937E-20)*Euler*log(5)^2-(0.17906302164465253826)*log(4)*log(6)-(3.252606517456513302E-20)*Euler+(0.275)*log(4)*log(6)*log(2)-(0.14166666666666666667)*log(4)^2*log(2)-(4.9030031577955589404E-19)*Euler^2*log(2)-(0.029166666666666666667)*log(4)*log(5)^2-(4.336808689942017736E-20)*Euler*log(6)+(0.03125)*log(6)*log(2)^2-(2.4093381610788987422E-20)*Euler*log(4)*log(5)+(2.379221434065412508E-20)*Euler*log(6)*log(2)-(0.25833333333333333333)*log(4)*log(5)*log(6)+(0.17641558449668052497)*Pi^2+(0.12916666666666666666)*log(5)*log(6)^2+(0.018016988021932553424)*log(4)-(0.35625)*log(5)^2*log(2)+(0.04043358553266347639)*log(5)*log(6)+(3.8549410577262379875E-20)*Euler*log(4)*log(6)+(3.2766998990673022894E-19)*Euler^2-(0.64791666666666666673)*zeta(3)-(0.11319444444444444446)*log(2)^3+(0.18467412722480867264)*log(5)+(0.09756944444444444444)*log(6)*Pi^2+(4.8186763221577974843E-21)*Euler*log(4)-(0.040433585532663476392)*log(4)*log(5)+(0.27725887222397812372)*log(2)^2-(0.018016988021932553429)*log(6)+(1.541976423090495195E-19)*Euler^3-(0.07509094456066074186)*log(6)*log(2)+(3.1321396094025683648E-20)*Euler*log(5)-(0.2375)*log(4)*log(6)^2+(0.08953151082232626913)*log(6)^2-(2.168404344971008868E-20)*Euler*log(2)^2+(0.12083333333333333333)*log(4)^2*log(5)-(0.14375)*log(6)^2*log(2)-(0.108333333333333333334)*log(5)*log(6)*log(2)-(0.17116138620835925754)*log(2)+(2.0238440553062749435E-19)*Euler^2*log(5)-(0.025)*log(4)*log(2)^2-(0.22395833333333333336)*log(2)*Pi^2+(0.23229166666666666667)*log(5)*Pi^2+(0.029166666666666666667)*log(5)^2*log(6)-(2.4093381610788987422E-20)*Euler*log(4)*log(2)-(0.49386736614896103298)*log(5)*log(2)+(0.08541666666666666667)*log(6)^3+(0.08375528431766005821)*log(4)^2+(3.8549410577262379875E-20)*Euler*Pi^2+(0.128125)*log(5)^3+(0.108333333333333333334)*log(4)*log(5)*log(2)+(0.4)*log(5)*log(2)^2-(0.09409722222222222222)*log(4)*Pi^2+(7.709882115452475975E-20)*Euler*log(5)*log(2)+(0.26642844752772897827)*log(5)^2+(0.0750909445606607419)*log(4)*log(2)+(0.22916666666666666667)*log(4)^2*log(6)-(0.080555555555555555553)*log(4)^3+(1.1594939900192200198E-19)*Euler*log(2) +/- 4.3702165714070080051E-4 eps^0 term: 400.22174334151294225-(0.24583333333333333332)*log(4)^2*log(5)*log(2)-(3.3881317890172013563E-21)*Euler*log(5)^2+(7.284483346386982916E-20)*Euler*log(5)*log(6)*log(2)-(0.11210570324758033243)*log(4)*log(6)-(2.1006417091906648409E-19)*Euler*log(5)*log(6)-(8.470329472543003391E-21)*Euler+(1.4484263398048535798E-19)*Euler*log(5)^2*log(2)+(0.34079736377530644382)*log(4)*log(6)*log(2)-(0.17039868188765322194)*log(4)^2*log(2)+(2.2022856628611808816E-20)*Euler*log(4)^3-(4.336808689942017736E-19)*Euler^2*log(2)-(0.066426604803661425496)*log(4)*log(5)^2+(0.014236111111111111113)*log(4)^4+(2.710505431213761085E-20)*Euler*log(6)-(1.1011428314305904408E-19)*Euler*log(6)*Pi^2-(0.25763888888888888888)*log(5)^3*log(2)+(0.09861111111111111112)*log(5)*log(6)^3+(0.07797905781299384727)*log(6)*log(2)^2+(2.168404344971008868E-19)*Euler*log(4)*log(5)-(3.3881317890172013563E-20)*Euler*log(4)^2+(0.058333333333333333313)*log(4)*log(5)^2*log(2)+(1.4696021634862110883E-19)*Euler*log(6)*log(2)-(1.2493735972000930001E-20)*Euler*log(5)^3-(0.32346868426130781108)*log(4)*log(5)*log(6)-(3.1509625637859972613E-19)*Euler^2*log(5)*log(2)-(1.5246593050577406103E-20)*Euler^2*Pi^2+(0.44166666666666666666)*zeta(3)*log(6)+(0.12361655670603724154)*Pi^2+(0.062586805555555555545)*log(5)^4-(2.5410988417629010172E-20)*Euler*log(4)*log(6)^2-(0.020138888888888888871)*log(6)*log(2)^3+(0.164622455382987011)*log(5)*log(6)^2+(0.3583333333333333334)*log(5)^2*log(2)^2-(0.22152777777777777779)*log(4)*log(6)*Pi^2+(0.10729166666666666671)*log(4)^2*Pi^2-(0.031944444444444444437)*log(4)*log(5)^3+(0.0041628081498616184988)*log(4)-(9.5714723039735938315E-20)*Euler*log(4)*log(5)*log(2)+(3.9954857837891737475E-20)*Euler*log(4)^2*log(2)-(0.53574500830779106205)*log(5)^2*log(2)-(2.5199230180815435087E-19)*Euler*zeta(3)+(0.048045301391820142482)*log(5)*log(6)-(4.7433845046240818988E-20)*Euler*log(4)*log(6)-(0.06249999999999999996)*log(5)^2*log(6)*log(2)+(6.168313523040288406E-19)*Euler^2-(0.9097222222222222222)*zeta(3)*log(5)-(1.0464597017620285435)*zeta(3)-(4.539037806098981942E-19)*Euler^3*log(2)-(0.18580195256676311766)*log(2)^3-(2.710505431213761085E-20)*Euler*log(6)^3+(0.08337179655695074824)*log(5)+(0.12755833531137882431)*log(6)*Pi^2+(2.2022856628611808816E-20)*Euler*log(4)*log(5)^2-(1.3552527156068805425E-20)*Euler*log(4)+(0.012326388888888888894)*log(6)^4-(0.4125)*log(4)*zeta(3)-(0.30416666666666666667)*log(4)*log(5)*log(6)^2+(0.49166666666666666665)*log(4)*log(5)*log(6)*log(2)-(0.066666666666666666677)*log(4)*log(6)^3+(4.7433845046240818988E-20)*Euler*log(6)*log(2)^2+(0.14305555555555555555)*log(4)^3*log(2)-(0.046043413833827636543)*log(4)*log(5)-(2.168404344971008868E-19)*Euler*log(6)^2+(0.1721623299873555105)*log(2)^2-(0.0037002739109881053319)*log(6)-(2.3039296165316969223E-19)*Euler^2*log(2)^2+(1.0062751413381088028E-18)*Euler^3-(2.168404344971008868E-19)*Euler^2*log(4)*log(2)-(0.25)*log(5)*log(6)^2*log(2)-(0.030028313369887589065)*log(6)*log(2)-(0.275)*log(4)*log(6)*log(2)^2+(0.13125)*log(4)^2*log(2)^2+(4.0657581468206416275E-20)*Euler*log(5)*log(6)^2-(8.131516293641283255E-20)*Euler*log(5)-(0.2570420794576463856)*log(4)*log(6)^2-(0.47430555555555555555)*log(5)*log(2)*Pi^2+(0.2350694444444444444)*log(5)^2*Pi^2+(0.22569444444444444447)*log(2)^2*Pi^2+(0.05705379540278641918)*log(6)^2+(1.5814418841144177812E-20)*Euler*log(2)^2+(0.16173434213065390554)*log(4)^2*log(5)+(1.5585406229479126239E-19)*Euler^2*log(6)^2-(0.17328679513998632736)*log(6)^2*log(2)+(7.030373462210692814E-20)*Euler*log(4)*log(6)*log(2)-(0.086643397569993163665)*log(5)*log(6)*log(2)-(0.08580010131103669233)*log(2)+(2.2700482986415249087E-19)*Euler^2*log(5)+(0.09999999999999999998)*log(4)^2*log(6)^2-(0.07509094456066074196)*log(4)*log(2)^2-(6.7762635780344027125E-20)*Euler*log(5)*log(2)^2-(0.32876355855725183764)*log(2)*Pi^2+(8.1950437646853557805E-20)*Euler^4-(1.1858461261560204747E-20)*Euler*log(4)*Pi^2+(0.3258754453049187323)*log(5)*Pi^2+(0.06931471805599453092)*log(5)^2*log(6)+(3.642241673193491458E-20)*Euler*log(4)^2*log(6)-(1.7194768829262296883E-19)*Euler*log(4)*log(2)-(0.37135014200760985115)*log(5)*log(2)+(1.1011428314305904408E-19)*Euler*log(2)^3+(0.08375528431766005824)*log(6)^3+(1.8431436932253575378E-18)*Euler^3*log(6)+(0.056423611111111111103)*log(2)^4-(4.0826988057657276343E-19)*Euler^2*log(4)+(0.112499999999999999984)*log(6)^2*Pi^2+(0.18402777777777777775)*log(5)*log(6)*Pi^2-(0.061111111111111111102)*log(4)^3*log(6)-(0.108333333333333333294)*log(4)*log(5)*log(2)^2+(0.020833333333333333319)*log(4)*log(2)^3-(8.131516293641283255E-20)*Euler^2*log(4)^2-(6.7762635780344027125E-21)*Euler*log(4)^2*log(5)+(0.056052851623790166215)*log(4)^2-(2.6893296075324035765E-19)*Euler^2*log(5)*log(6)-(1.626303258728256651E-19)*Euler^3*log(5)+(4.2986922073155742208E-20)*Euler*Pi^2+(0.66666666666666666706)*zeta(3)*log(2)-(0.4083333333333333333)*log(4)^2*log(6)*log(2)+(0.17352747124434741951)*log(5)^3-(0.23333333333333333333)*log(4)*log(5)^2*log(6)+(0.080867171065326952724)*log(4)*log(5)*log(2)-(1.6940658945086006781E-20)*Euler*log(6)^2*log(2)-(0.13125)*log(6)^3*log(2)+(0.49675547940129413833)*log(5)*log(2)^2-(1.3552527156068805425E-20)*Euler*log(4)*log(2)^2+(0.11874999999999999999)*log(5)^2*log(6)^2+(3.8963515573697815597E-20)*Euler*log(5)*Pi^2-(0.10416666666666666666)*log(4)^3*log(5)-(0.1208194043892682449)*log(4)*Pi^2-(7.284483346386982916E-20)*Euler*log(2)*Pi^2+(8.131516293641283255E-20)*Euler*log(5)*log(2)+(0.18042011616407459749)*log(5)^2+(0.40833333333333333333)*log(4)*log(6)^2*log(2)+(0.028026425811895083111)*log(4)*log(2)+(1.6940658945086006781E-19)*Euler^2*log(5)^2+(0.26570641921464570196)*log(4)^2*log(6)-(1.0164395367051604069E-20)*Euler*log(5)^2*log(6)+(1.084202172485504434E-19)*Euler^2*log(6)*log(2)+(0.31666666666666666664)*log(4)^2*log(5)*log(6)+(1.176528763736223171E-18)*Euler^3*log(4)+(3.0323779511703952139E-19)*Euler^2*log(4)*log(5)-(0.19861111111111111116)*log(6)*log(2)*Pi^2-(0.08760610198743753216)*log(4)^3+(0.19513888888888888883)*log(4)*log(2)*Pi^2-(0.17430555555555555551)*log(4)*log(5)*Pi^2+(0.11666666666666666666)*log(4)^2*log(5)^2-(1.084202172485504434E-19)*Euler^2*log(6)+(1.3044307387716225222E-19)*Euler*log(2)+(0.11249999999999999996)*log(5)*log(6)*log(2)^2-(0.26805555555555555557)*log(5)*log(2)^3+(0.13645833333333333334)*log(6)^2*log(2)^2+(0.09795428240740740744)*Pi^4+(0.033333333333333333352)*log(5)^3*log(6) +/- 0.010448924004628639662 */ #endif } catch(std::exception &p) { std::cerr<<"******************************************************************"<<endl; std::cerr<<" >>>ERROR: "<<p.what()<<endl; std::cerr<<"******************************************************************"<<endl; return 1; } return 0; }