bridge/class-master/depend/pari/src/basemath/lfun.c
/* M should eventually converge to N, the conductor. L has no pole. */
M should eventually converge to N, the conductor. L has no pole.
M should eventually converge to N the conductor . L has no pole .
static GEN
wrap1(void *E, GEN M)
{
  struct huntcond_t *S = (struct huntcond_t*)E;
  GEN data = S->data, thetainit, tk, p1, p1inv;
  GEN t = mkfrac(stoi(11), stoi(10));
  long prec, bitprec;
  thetainit = linit_get_tech(data);
  bitprec = theta_get_bitprec(thetainit);
  prec = nbits2prec(bitprec);
  *(S->pM) = M;
  *(S->psqrtM) = gsqrt(M, prec);
  tk = gpowgs(t, S->k);
  if (S->thetad)
  {
    *(S->pMd) = M;
    *(S->psqrtMd) = *(S->psqrtM);
    p1 = lfuntheta(S->thetad, t, 0, bitprec);
  }
  else
    p1 = lfuntheta(data, t, 0, bitprec);
  p1inv = lfuntheta(data, ginv(t), 0, bitprec);
  return glog(gabs(gmul(tk, gdiv(p1, p1inv)), prec), prec);
}
static GEN wrap1 ( void * E , GEN M ) { struct huntcond_t * S = ( struct huntcond_t * ) E ; GEN data = S -> data , thetainit , tk , p1 , p1inv ; GEN t = mkfrac ( stoi ( 11 ) , stoi ( 10 ) ) ; long prec , bitprec ; thetainit = linit_get_tech ( data ) ; bitprec = theta_get_bitprec ( thetainit ) ; prec = nbits2prec ( bitprec ) ; * ( S -> pM ) = M ; * ( S -> psqrtM ) = gsqrt ( M , prec ) ; tk = gpowgs ( t , S -> k ) ; if ( S -> thetad ) { * ( S -> pMd ) = M ; * ( S -> psqrtMd ) = * ( S -> psqrtM ) ; p1 = lfuntheta ( S -> thetad , t , 0 , bitprec ) ; } else p1 = lfuntheta ( data , t , 0 , bitprec ) ; p1inv = lfuntheta ( data , ginv ( t ) , 0 , bitprec ) ; return glog ( gabs ( gmul ( tk , gdiv ( p1 , p1inv ) ) , prec ) , prec ) ; }
M should eventually converge to N, the conductor.
M should eventually converge to N the conductor .