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

Diff for /OpenXM_contrib2/asir2000/builtin/array.c between version 1.71 and 1.72

version 1.71, 2017/02/21 09:20:23 version 1.72, 2017/08/31 08:08:25
Line 45 
Line 45 
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  *   *
  * $OpenXM: OpenXM_contrib2/asir2000/builtin/array.c,v 1.70 2017/01/08 03:05:39 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/builtin/array.c,v 1.71 2017/02/21 09:20:23 noro Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "base.h"  #include "base.h"
Line 159  typedef struct _ent { int j; unsigned int e; } ent;
Line 159  typedef struct _ent { int j; unsigned int e; } ent;
   
 ent *get_row(FILE *,int *l);  ent *get_row(FILE *,int *l);
 void put_row(FILE *out,int l,ent *a);  void put_row(FILE *out,int l,ent *a);
 int lu_elim(int *l,ent **a,int k,int i,int mul,int mod);  void lu_elim(int *l,ent **a,int k,int i,int mul,int mod);
   void lu_append(int *,ent **,int *,int,int,int);
   void solve_l(int *,ent **,int,int *,int);
   void solve_u(int *,ent **,int,int *,int);
   
   
 static int *ul,*ll;  static int *ul,*ll;
 static ent **u,**l;  static ent **u,**l;
 static int modulus;  static int modulus;
Line 225  ent *get_row(FILE *in,int *l)
Line 229  ent *get_row(FILE *in,int *l)
         return a;          return a;
 }  }
   
 int lu_gauss(int *ul,ent **u,int *ll,ent **l,int n,int mod)  void lu_gauss(int *ul,ent **u,int *ll,ent **l,int n,int mod)
 {  {
         int i,j,k,s,mul;          int i,j,k,s,mul;
         unsigned int inv;          unsigned int inv;
Line 248  int lu_gauss(int *ul,ent **u,int *ll,ent **l,int n,int
Line 252  int lu_gauss(int *ul,ent **u,int *ll,ent **l,int n,int
   
 #define INITLEN 10  #define INITLEN 10
   
 lu_append(int *l,ent **a,int *l2,int k,int i,int mul)  void lu_append(int *l,ent **a,int *l2,int k,int i,int mul)
 {  {
         int len;          int len;
         ent *p;          ent *p;
Line 271  lu_append(int *l,ent **a,int *l2,int k,int i,int mul)
Line 275  lu_append(int *l,ent **a,int *l2,int k,int i,int mul)
   
 /* a[k] = a[k]-mul*a[i] */  /* a[k] = a[k]-mul*a[i] */
   
 int lu_elim(int *l,ent **a,int k,int i,int mul,int mod)  void lu_elim(int *l,ent **a,int k,int i,int mul,int mod)
 {  {
         ent *ak,*ai,*w;          ent *ak,*ai,*w;
         int lk,li,j,m,p,q,r,s,t,j0;          int lk,li,j,m,p,q,r,s,t,j0;
Line 319  int lu_elim(int *l,ent **a,int k,int i,int mul,int mod
Line 323  int lu_elim(int *l,ent **a,int k,int i,int mul,int mod
         l[k] = j;          l[k] = j;
 }  }
   
 int solve_l(int *ll,ent **l,int n,int *rhs,int mod)  void solve_l(int *ll,ent **l,int n,int *rhs,int mod)
 {  {
         int j,k,s,len;          int j,k,s,len;
         ent *p;          ent *p;
Line 333  int solve_l(int *ll,ent **l,int n,int *rhs,int mod)
Line 337  int solve_l(int *ll,ent **l,int n,int *rhs,int mod)
         }          }
 }  }
   
 int solve_u(int *ul,ent **u,int n,int *rhs,int mod)  void solve_u(int *ul,ent **u,int n,int *rhs,int mod)
 {  {
         int j,k,s,len,inv;          int j,k,s,len,inv;
         ent *p;          ent *p;
Line 3087  void mat_to_gfmmat(MAT m,unsigned int md,GFMMAT *rp)
Line 3091  void mat_to_gfmmat(MAT m,unsigned int md,GFMMAT *rp)
         TOGFMMAT(row,col,wmat,*rp);          TOGFMMAT(row,col,wmat,*rp);
 }  }
   
 void Pgeninvm_swap(arg,rp)  void Pgeninvm_swap(NODE arg,LIST *rp)
 NODE arg;  
 LIST *rp;  
 {  {
         MAT m;          MAT m;
         pointer **mat;          pointer **mat;
Line 3135  LIST *rp;
Line 3137  LIST *rp;
         }          }
 }  }
   
 gauss_elim_geninv_mod_swap(mat,row,col,md,invmatp,indexp)  int gauss_elim_geninv_mod_swap(unsigned int **mat,int row,int col,unsigned int md,
 unsigned int **mat;      unsigned int ***invmatp,int **indexp)
 int row,col;  
 unsigned int md;  
 unsigned int ***invmatp;  
 int **indexp;  
 {  {
         int i,j,k,inv,a,n,m;          int i,j,k,inv,a,n,m;
         unsigned int *t,*pivot,*s;          unsigned int *t,*pivot,*s;

Legend:
Removed from v.1.71  
changed lines
  Added in v.1.72

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