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

Diff for /OpenXM_contrib2/asir2000/engine/nd.c between version 1.191 and 1.192

version 1.191, 2010/09/27 05:05:58 version 1.192, 2010/12/14 05:29:37
Line 1 
Line 1 
 /* $OpenXM: OpenXM_contrib2/asir2000/engine/nd.c,v 1.190 2010/07/14 04:36:59 noro Exp $ */  /* $OpenXM: OpenXM_contrib2/asir2000/engine/nd.c,v 1.191 2010/09/27 05:05:58 noro Exp $ */
   
 #include "nd.h"  #include "nd.h"
   
Line 49  static int nd_demand;
Line 49  static int nd_demand;
 static int nd_module,nd_ispot,nd_mpos,nd_pot_nelim;  static int nd_module,nd_ispot,nd_mpos,nd_pot_nelim;
 static NODE nd_tracelist;  static NODE nd_tracelist;
 static NODE nd_alltracelist;  static NODE nd_alltracelist;
 static int nd_gentrace,nd_gensyz,nd_nora;  static int nd_gentrace,nd_gensyz,nd_nora,nd_newelim;
 static int *nd_gbblock;  static int *nd_gbblock;
   
 NumberField get_numberfield();  NumberField get_numberfield();
Line 1918  again:
Line 1918  again:
             goto again;              goto again;
         } else if ( nf ) {          } else if ( nf ) {
             if ( checkonly || gensyz ) return 0;              if ( checkonly || gensyz ) return 0;
                           if ( nd_newelim ) {
                                   if ( nd_module ) {
                                           if ( MPOS(HDL(nf)) > 1 ) return 0;
                                   } else if ( !(HDL(nf)[nd_exporigin] & nd_mask[0]) ) return 0;
                           }
             if ( DP_Print ) { printf("+"); fflush(stdout); }              if ( DP_Print ) { printf("+"); fflush(stdout); }
             hc = HCU(nf);              hc = HCU(nf);
             nd_removecont(m,nf);              nd_removecont(m,nf);
Line 2910  void nd_gr(LIST f,LIST v,int m,int homo,int f4,struct 
Line 2915  void nd_gr(LIST f,LIST v,int m,int homo,int f4,struct 
         MKLIST(l1,nd_tracelist); MKNODE(nd_alltracelist,l1,0);          MKLIST(l1,nd_tracelist); MKNODE(nd_alltracelist,l1,0);
     }      }
     x = f4?nd_f4(m,&perm):nd_gb(m,ishomo || homo,0,0,&perm);      x = f4?nd_f4(m,&perm):nd_gb(m,ishomo || homo,0,0,&perm);
           if ( !x ) {
                   *rp = 0; return;
           }
         if ( !ishomo && homo ) {          if ( !ishomo && homo ) {
                 /* dehomogenization */                  /* dehomogenization */
                 for ( t = x; t; t = NEXT(t) ) ndv_dehomogenize((NDV)BDY(t),ord);                  for ( t = x; t; t = NEXT(t) ) ndv_dehomogenize((NDV)BDY(t),ord);
Line 6947  void parse_nd_option(NODE opt)
Line 6955  void parse_nd_option(NODE opt)
     Obj value;      Obj value;
   
     nd_gentrace = 0; nd_gensyz = 0; nd_nora = 0; nd_gbblock = 0;      nd_gentrace = 0; nd_gensyz = 0; nd_nora = 0; nd_gbblock = 0;
           nd_newelim = 0;
     for ( t = opt; t; t = NEXT(t) ) {      for ( t = opt; t; t = NEXT(t) ) {
         p = BDY((LIST)BDY(t));          p = BDY((LIST)BDY(t));
         key = BDY((STRING)BDY(p));          key = BDY((STRING)BDY(p));
Line 6968  void parse_nd_option(NODE opt)
Line 6977  void parse_nd_option(NODE opt)
                                 nd_gbblock[i++] = s+QTOS((Q)BDY(NEXT(p)))-1;                                  nd_gbblock[i++] = s+QTOS((Q)BDY(NEXT(p)))-1;
                         }                          }
                         nd_gbblock[i] = -1;                          nd_gbblock[i] = -1;
                 }                  } else if ( !strcmp(key,"newelim") )
               nd_newelim = value?1:0;
     }      }
 }  }

Legend:
Removed from v.1.191  
changed lines
  Added in v.1.192

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