FUNCTION :   getaprodcuspORDS - ORD of generalized-etaproduct at each cusp


CALLING SEQUENCE :  getaprodcuspORDS()                               
                    getaprodcuspORDS(L,cusps,wids)                               
                    

PARAMETERS :  L - (geta)-list produced by GETAP2getalist
              cusps - Set of inequivalent cusps for Gamma[1](N).
              wids  - List of corresponding widths.

GLOBAL VARIABLES : toterror - total ORD (should be zero)
                   xprint (default=false)

SYNOPSIS :   Let G be a generalized-etaproduct corresponding to the    
             getalist L. This proc calculates ORD(G,z) with respect to 
             Gamma[1](N) for each cusp z in cusps. Here cusps is a list
             of inequivalent cusps of Gamma[1](N) and wids is the list 
             of their corresponding widths. The cusp at infinity is    
             repesented by oo. The total ORD should be 0.              
             Global var toterror = total ORD (for error-checking).     

             If xprint is true then extra info is printed.
   
EXAMPLES :   

> with(thetaids):
> 
> getaprodcuspORDS();
-------------------------------------------------------------
getaprodcuspORDS(L,cusps,wids)                               
   Let G be a generalized-etaproduct corresponding to the    
   getalist L. This proc calculates ORD(G,z) with respect to 
   Gamma[1](N) for each cusp z in cusps. Here cusps is a list
   of inequivalent cusps of Gamma[1](N) and wids is the list 
   of their corresponding widths. The cusp at infinity is    
   repesented by oo. The total ORD should be 0.              
   Global var toterror = total ORD (for error-checking).     
-------------------------------------------------------------

> CW40:=CUSPSANDWIDMAKE1(40):
> jptmp:=1/JAC(3,40,infinity)*JAC(5,40,infinity)^2*JAC(6,40,infinity)^2
>       /JAC(7,40,infinity)/JAC(8,40,infinity)^2/JAC(12,40,infinity)^3
>       /JAC(13,40,infinity)*JAC(14,40,infinity)^2
>       *JAC(15,40,infinity)^2*JAC(16,40,infinity)^2/JAC(17,40,infinity)
>       /JAC(20,40,infinity):
> eptmp:=jac2eprod(jptmp);
                    2            2             2             2             2
eptmp := GETA(40, 5)  GETA(40, 6)  GETA(40, 14)  GETA(40, 15)  GETA(40, 16)

       /                                     2             3
      /  (GETA(40, 3) GETA(40, 7) GETA(40, 8)  GETA(40, 12)  GETA(40, 13)
     /

    GETA(40, 17) GETA(40, 20))

> gltmp:=GETAP2getalist(eptmp);
gltmp := [[40, 3, -1], [40, 5, 2], [40, 6, 2], [40, 7, -1], [40, 8, -2],

    [40, 12, -3], [40, 13, -1], [40, 14, 2], [40, 15, 2], [40, 16, 2],

    [40, 17, -1], [40, 20, -1]]

> Gamma1ModFunc(gltmp,40);
                                       1

> getaprodcuspORDS(gltmp,CW40[1],CW40[2]);
[0, 0, 0, 0, -2, 3, 0, 0, 1, 0, -4, 0, -2, 0, 0, 3, 1, 0, 0, 0, 0, 0, -2, 0, 1,

    -2, 1, -2, 1, 3, 3, 1, 1, -2, -2, 0, 1, -2, 1, -4, 0, 0, 0, 0, 1, 1, 1, 0]

> 
> xprint:=true:
> getaprodcuspORDS(gltmp,CW40[1],CW40[2]);
Cusp ords: 
[[oo, 0], [0, 0], [1/2, 0], [1/3, 0], [1/4, -2], [1/5, 3], [1/6, 0], [1/7, 0],

    [1/8, 1], [1/9, 0], [1/10, -4], [1/11, 0], [1/12, -2], [1/13, 0], [1/14, 0],

    [1/15, 3], [1/16, 1], [1/17, 0], [1/18, 0], [1/19, 0], [1/20, 0], [2/5, 0],

    [3/4, -2], [3/5, 0], [3/8, 1], [3/10, -2], [3/16, 1], [3/20, -2], [3/40, 1],

    [4/5, 3], [4/15, 3], [5/8, 1], [7/8, 1], [7/10, -2], [7/12, -2], [7/15, 0],

                                                                         11
    [7/16, 1], [7/20, -2], [7/40, 1], [9/10, -4], [9/20, 0], [9/40, 0], [--, 0],
                                                                         40

     13       13       13       17       19
    [--, 0], [--, 1], [--, 1], [--, 1], [--, 0]]
     15       16       40       40       40

TOTAL ORD = 0
[0, 0, 0, 0, -2, 3, 0, 0, 1, 0, -4, 0, -2, 0, 0, 3, 1, 0, 0, 0, 0, 0, -2, 0, 1,

    -2, 1, -2, 1, 3, 3, 1, 1, -2, -2, 0, 1, -2, 1, -4, 0, 0, 0, 0, 1, 1, 1, 0]


DISCUSSION :

SEE ALSO :