[BACK]Return to nd.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2018 / engine

Diff for /OpenXM_contrib2/asir2018/engine/nd.c between version 1.16 and 1.17

version 1.16, 2019/08/21 00:37:47 version 1.17, 2019/08/28 23:27:34
Line 1 
Line 1 
 /* $OpenXM: OpenXM_contrib2/asir2018/engine/nd.c,v 1.15 2019/04/20 06:04:18 noro Exp $ */  /* $OpenXM: OpenXM_contrib2/asir2018/engine/nd.c,v 1.16 2019/08/21 00:37:47 noro Exp $ */
   
 #include "nd.h"  #include "nd.h"
   
Line 2611  ND_pairs nd_newpairs( NODE g, int t )
Line 2611  ND_pairs nd_newpairs( NODE g, int t )
   
   dl = DL(nd_psh[t]);    dl = DL(nd_psh[t]);
   ts = SG(nd_psh[t]) - TD(dl);    ts = SG(nd_psh[t]) - TD(dl);
   if ( nd_module && nd_intersect && (MPOS(dl) > 1) ) return 0;    if ( nd_module && nd_intersect && (MPOS(dl) > nd_intersect) ) return 0;
   for ( r0 = 0, h = g; h; h = NEXT(h) ) {    for ( r0 = 0, h = g; h; h = NEXT(h) ) {
     if ( nd_module && (MPOS(DL(nd_psh[(long)BDY(h)])) != MPOS(dl)) )      if ( nd_module && (MPOS(DL(nd_psh[(long)BDY(h)])) != MPOS(dl)) )
       continue;        continue;
Line 3370  void nd_gr(LIST f,LIST v,int m,int homo,int retdp,int 
Line 3370  void nd_gr(LIST f,LIST v,int m,int homo,int retdp,int 
     nd_demand = 0;      nd_demand = 0;
   if ( nd_module && nd_intersect ) {    if ( nd_module && nd_intersect ) {
     for ( j = nd_psn-1, x = 0; j >= 0; j-- )      for ( j = nd_psn-1, x = 0; j >= 0; j-- )
       if ( MPOS(DL(nd_psh[j])) > 1 ) {        if ( MPOS(DL(nd_psh[j])) > nd_intersect ) {
         MKNODE(xx,(pointer)((unsigned long)j),x); x = xx;          MKNODE(xx,(pointer)((unsigned long)j),x); x = xx;
       }        }
     conv_ilist(nd_demand,0,x,0);      conv_ilist(nd_demand,0,x,0);
Line 3778  void nd_gr_trace(LIST f,LIST v,int trace,int homo,int 
Line 3778  void nd_gr_trace(LIST f,LIST v,int trace,int homo,int 
             Z cont;              Z cont;
             DPM zdpm;              DPM zdpm;
   
             if ( !m && !nd_gentrace ) dpm_ptozp((DPM)BDY(t),&cont,&zdpm);              if ( !nd_gentrace ) dpm_ptozp((DPM)BDY(t),&cont,&zdpm);
             else zdpm = (DPM)BDY(t);              else zdpm = (DPM)BDY(t);
             c = (pointer)dpmtondv(m,zdpm);              c = (pointer)dpmtondv(m,zdpm);
           } else {            } else {
Line 3887  void nd_gr_trace(LIST f,LIST v,int trace,int homo,int 
Line 3887  void nd_gr_trace(LIST f,LIST v,int trace,int homo,int 
     nd_setup_parameters(nd_nvar,0);      nd_setup_parameters(nd_nvar,0);
     for ( r = cand; r; r = NEXT(r) ) {      for ( r = cand; r; r = NEXT(r) ) {
       if ( nd_module ) {        if ( nd_module ) {
         if ( retdp ) BDY(r) = ndvtodpm(0,BDY(t));          if ( retdp ) BDY(r) = ndvtodpm(0,BDY(r));
         else BDY(r) = ndvtopl(0,CO,vv,BDY(r),mrank);          else BDY(r) = ndvtopl(0,CO,vv,BDY(r),mrank);
       } else if ( retdp ) BDY(r) = ndvtodp(0,BDY(t));        } else if ( retdp ) BDY(r) = ndvtodp(0,BDY(r));
       else BDY(r) = (pointer)ndvtop(0,CO,vv,BDY(t));        else BDY(r) = (pointer)ndvtop(0,CO,vv,BDY(r));
     }      }
     if ( nd_nalg )      if ( nd_nalg )
         cand = postprocess_algcoef(av,alist,cand);          cand = postprocess_algcoef(av,alist,cand);
Line 8491  void parse_nd_option(NODE opt)
Line 8491  void parse_nd_option(NODE opt)
             nd_newelim = value?1:0;              nd_newelim = value?1:0;
     else if ( !strcmp(key,"intersect") )      else if ( !strcmp(key,"intersect") )
             nd_intersect = value?1:0;              nd_intersect = value?1:0;
       else if ( !strcmp(key,"syzgen") )
               nd_intersect = ZTOS((Q)value);
     else if ( !strcmp(key,"lf") )      else if ( !strcmp(key,"lf") )
             nd_lf = value?1:0;              nd_lf = value?1:0;
     else if ( !strcmp(key,"trace") ) {      else if ( !strcmp(key,"trace") ) {

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.17

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>