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

Diff for /OpenXM_contrib2/asir2000/engine/nd.h between version 1.3 and 1.12

version 1.3, 2004/03/25 01:31:03 version 1.12, 2004/12/04 09:39:27
Line 1 
Line 1 
   /* $OpenXM: OpenXM_contrib2/asir2000/engine/nd.h,v 1.11 2004/10/06 12:09:19 noro Exp $ */
 #include "ca.h"  #include "ca.h"
 #include "parse.h"  #include "parse.h"
 #include "ox.h"  #include "ox.h"
Line 47  typedef union oNDC {
Line 48  typedef union oNDC {
         int m;          int m;
         Q z;          Q z;
         P p;          P p;
           DAlg a;
 } *NDC;  } *NDC;
   
 /* monomial; linked list rep. */  /* monomial; linked list rep. */
Line 133  extern int *current_weyl_weight_vector;
Line 135  extern int *current_weyl_weight_vector;
 #define HCM(d) ((d)->body->c.m)  #define HCM(d) ((d)->body->c.m)
 #define HCQ(d) ((d)->body->c.z)  #define HCQ(d) ((d)->body->c.z)
 #define HCP(d) ((d)->body->c.p)  #define HCP(d) ((d)->body->c.p)
 #define CM(a) ((a)->c.m)  #define HCA(d) ((d)->body->c.a)
 #define CQ(a) ((a)->c.z)  #define CM(x) ((x)->c.m)
 #define CP(a) ((a)->c.p)  #define CQ(x) ((x)->c.z)
 #define DL(a) ((a)->dl)  #define CP(x) ((x)->c.p)
 #define SG(a) ((a)->sugar)  #define CA(x) ((x)->c.a)
 #define LEN(a) ((a)->len)  #define DL(x) ((x)->dl)
 #define LCM(a) ((a)->lcm)  #define SG(x) ((x)->sugar)
   #define LEN(x) ((x)->len)
   #define LCM(x) ((x)->lcm)
 #define GET_EXP(d,a) (((d)[nd_epos[a].i]>>nd_epos[a].s)&nd_mask0)  #define GET_EXP(d,a) (((d)[nd_epos[a].i]>>nd_epos[a].s)&nd_mask0)
 #define GET_EXP_MASK(d,a,m) ((((d)[nd_epos[a].i]&(m)[nd_epos[a].i])>>nd_epos[a].s)&nd_mask0)  #define GET_EXP_MASK(d,a,m) ((((d)[nd_epos[a].i]&(m)[nd_epos[a].i])>>nd_epos[a].s)&nd_mask0)
 #define PUT_EXP(r,a,e) ((r)[nd_epos[a].i] |= ((e)<<nd_epos[a].s))  #define PUT_EXP(r,a,e) ((r)[nd_epos[a].i] |= ((e)<<nd_epos[a].s))
Line 293  void ndp_print(ND_pairs d);
Line 297  void ndp_print(ND_pairs d);
   
 /* setup, reconstruct */  /* setup, reconstruct */
 void nd_init_ord(struct order_spec *spec);  void nd_init_ord(struct order_spec *spec);
 ND_pairs nd_reconstruct(int mod,int trace,ND_pairs ndp);  ND_pairs nd_reconstruct(int trace,ND_pairs ndp);
 void ndv_setup(int mod,int trace,NODE f);  void ndv_setup(int mod,int trace,NODE f);
 void nd_setup_parameters(int nvar,int max);  void nd_setup_parameters(int nvar,int max);
 BlockMask nd_create_blockmask(struct order_spec *ord);  BlockMask nd_create_blockmask(struct order_spec *ord);
Line 313  ND nd_separate_head(ND p,ND *head);
Line 317  ND nd_separate_head(ND p,ND *head);
 int nd_length(ND p);  int nd_length(ND p);
 void nd_append_red(UINT *d,int i);  void nd_append_red(UINT *d,int i);
 UINT *ndv_compute_bound(NDV p);  UINT *ndv_compute_bound(NDV p);
   UINT *nd_compute_bound(ND p);
 ND nd_copy(ND p);  ND nd_copy(ND p);
 ND nd_merge(ND p1,ND p2);  ND nd_merge(ND p1,ND p2);
 ND nd_add(int mod,ND p1,ND p2);  ND nd_add(int mod,ND p1,ND p2);
 ND nd_add_q(ND p1,ND p2);  ND nd_add_q(ND p1,ND p2);
 ND nd_add_sf(ND p1,ND p2);  ND nd_add_sf(ND p1,ND p2);
   ND nd_quo(int mod,PGeoBucket p,NDV d);
 INLINE int nd_length(ND p);  INLINE int nd_length(ND p);
 NODE nd_f4_red(int m,ND_pairs sp0,UINT *s0vect,int col,NODE rp0);  NODE nd_f4_red(int m,ND_pairs sp0,UINT *s0vect,int col,NODE rp0);
 NODE nd_f4_red_dist(int m,ND_pairs sp0,UINT *s0vect,int col,NODE rp0);  NODE nd_f4_red_dist(int m,ND_pairs sp0,UINT *s0vect,int col,NODE rp0);
   NODE nd_f4_red_main(int m,ND_pairs sp0,int nsp,UINT *s0vect,int col,
           NM_ind_pair *rvect,int *rhead,IndArray *imat,int nred);
   NODE nd_f4_red_q_main(ND_pairs sp0,int nsp,UINT *s0vect,int col,
           NM_ind_pair *rvect,int *rhead,IndArray *imat,int nred);
   
 /* NDV functions */  /* NDV functions */
 ND weyl_ndv_mul_nm(int mod,NM m0,NDV p);  ND weyl_ndv_mul_nm(int mod,NM m0,NDV p);
Line 329  void ndv_mul_c(int mod,NDV p,int mul);
Line 339  void ndv_mul_c(int mod,NDV p,int mul);
 void ndv_mul_c_q(NDV p,Q mul);  void ndv_mul_c_q(NDV p,Q mul);
 ND ndv_mul_nm_symbolic(NM m0,NDV p);  ND ndv_mul_nm_symbolic(NM m0,NDV p);
 ND ndv_mul_nm(int mod,NM m0,NDV p);  ND ndv_mul_nm(int mod,NM m0,NDV p);
   ND ndv_mul_nmv_trunc(int mod,NMV m0,NDV p,UINT *d);
 void ndv_realloc(NDV p,int obpe,int oadv,EPOS oepos);  void ndv_realloc(NDV p,int obpe,int oadv,EPOS oepos);
 NDV ndv_dup_realloc(NDV p,int obpe,int oadv,EPOS oepos);  NDV ndv_dup_realloc(NDV p,int obpe,int oadv,EPOS oepos);
 void ndv_homogenize(NDV p,int obpe,int oadv,EPOS eops);  void ndv_homogenize(NDV p,int obpe,int oadv,EPOS eops);
Line 349  ND ndvtond(int mod,NDV p);
Line 360  ND ndvtond(int mod,NDV p);
 int nm_ind_pair_to_vect(int m,UINT *s0,int n,NM_ind_pair pair,UINT *r);  int nm_ind_pair_to_vect(int m,UINT *s0,int n,NM_ind_pair pair,UINT *r);
 IndArray nm_ind_pair_to_vect_compress(int m,UINT *s0,int n,NM_ind_pair pair);  IndArray nm_ind_pair_to_vect_compress(int m,UINT *s0,int n,NM_ind_pair pair);
 int nd_to_vect(int mod,UINT *s0,int n,ND d,UINT *r);  int nd_to_vect(int mod,UINT *s0,int n,ND d,UINT *r);
   int nd_to_vect_q(UINT *s0,int n,ND d,Q *r);
   NDV vect_to_ndv_q(Q *vect,int spcol,int col,int *rhead,UINT *s0vect);
   
 /* elimination */  /* elimination */
 int nd_gauss_elim_mod(int **mat0,int *sugar,int row,int col,int md,int *colstat);  int nd_gauss_elim_mod(int **mat0,int *sugar,int row,int col,int md,int *colstat);
 int nd_gauss_elim_sf(int **mat0,int *sugar,int row,int col,int md,int *colstat);  int nd_gauss_elim_sf(int **mat0,int *sugar,int row,int col,int md,int *colstat);
   int nd_gauss_elim_q(Q **mat0,int *sugar,int row,int col,int *colstat);
   
 int ndl_ww_lex_compare(UINT *a1,UINT *a2);  int ndl_ww_lex_compare(UINT *a1,UINT *a2);
   
   

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.12

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