[BACK]Return to weight CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / lib

Diff for /OpenXM_contrib2/asir2000/lib/weight between version 1.18 and 1.21

version 1.18, 2004/01/07 06:33:31 version 1.21, 2004/01/07 08:15:16
Line 4  load("gr")$
Line 4  load("gr")$
 #define EPS 1E-6  #define EPS 1E-6
 #define TINY 1E-20  #define TINY 1E-20
 #define MAX_ITER 100  #define MAX_ITER 100
   #define ROUND_THRESHOLD 0.4
   
 def rotate(A,I,J,K,L,C,S){  def rotate(A,I,J,K,L,C,S){
   
Line 352  def roundret(V){
Line 353  def roundret(V){
                 RET1=I*RET0$                  RET1=I*RET0$
                 for(J=0;J<VN;J++){                  for(J=0;J<VN;J++){
                         X=drint(RET1[J])$                          X=drint(RET1[J])$
                         if(dabs(X-RET1[J])<0.2)                          if(dabs(X-RET1[J])<ROUND_THRESHOLD)
                                 RET1[J]=X$                                  RET1[J]=X$
                         else                          else
                                 break$                                  break$
Line 689  def weight(PolyList,Vars,FLAG){
Line 690  def weight(PolyList,Vars,FLAG){
   
         RET=append(RET,TMP[1])$          RET=append(RET,TMP[1])$
   
         RET=append(RET,leastsq(TMP[0],ExpMat,Vars,FLAG,3))$          TMP0=leastsq(TMP[0],ExpMat,Vars,FLAG,3)$
   
           RET=append(RET,TMP0)$
   
         ExpMat=qsort(ExpMat,junban)$          ExpMat=qsort(ExpMat,junban)$
   
         ExpMat2=[]$          ExpMat2=[]$
Line 701  def weight(PolyList,Vars,FLAG){
Line 704  def weight(PolyList,Vars,FLAG){
         if(size(ExpMat)[0]!=length(ExpMat2)){          if(size(ExpMat)[0]!=length(ExpMat2)){
                 ExpMat=newvect(length(ExpMat2),ExpMat2)$                  ExpMat=newvect(length(ExpMat2),ExpMat2)$
                 RET=append(RET,leastsq(0,ExpMat,Vars,FLAG,5))$                  RET=append(RET,leastsq(0,ExpMat,Vars,FLAG,5))$
           }
           else{
                   TMP0=map(ltov,TMP0)$
   
                   for(I=0;I<length(TMP0);I++)
                           if(TMP0[I][0]==3)
                                   TMP0[I][0]=5$
                           else if(TMP0[I][0]==4)
                                   TMP0[I][0]=6$
   
                   TMP0=map(vtol,TMP0)$
   
                   RET=append(RET,TMP0)$
         }          }
   
         return RET$          return RET$

Legend:
Removed from v.1.18  
changed lines
  Added in v.1.21

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