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
        }
    }
Exemple #2
0
    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;
        }
    }
Exemple #3
0
    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 () (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

    }
Exemple #5
0
    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
    }
Exemple #6
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"),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;
}
Exemple #7
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
    }
int _tmain(int argc, _TCHAR* argv[])
{
	myString ms1,
		ms2( "nishadsodhosa" ),
		ms3( ms2 ),
		ms4 = ms3;


	printf( "%s\n", ms1.getStr() );
	printf( "%s\n", ms2.getStr() );
	printf( "%s\n", ms3.getStr() );
	printf( "%s\n", ms4.getStr() );

	ms4 = ms2;
	printf( "%s\n", ms4.getStr() );
	ms4 = "someoneStr";
	printf( "%s\n", ms4.getStr() );

	return 0;
}
    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
    }
Exemple #10
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_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;
}
Exemple #11
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;
}
Exemple #12
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");
      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;
}