[BACK]Return to global.c CVS log [TXT][DIR] Up to [local] / OpenXM / src / kan96xx / Kan

Diff for /OpenXM/src/kan96xx/Kan/global.c between version 1.13 and 1.38

version 1.13, 2000/07/26 02:21:30 version 1.38, 2020/10/06 11:33:46
Line 1 
Line 1 
 /* global.c $OpenXM: OpenXM/src/kan96xx/Kan/global.c,v 1.12 2000/06/08 08:35:02 takayama Exp $ */  /* global.c $OpenXM: OpenXM/src/kan96xx/Kan/global.c,v 1.37 2015/09/29 01:52:14 takayama Exp $ */
 #include <stdio.h>  #include <stdio.h>
 #include <setjmp.h>  #include <setjmp.h>
 #include "datatype.h"  #include "datatype.h"
 #include "stackm.h"  #include "stackm.h"
 #include "lookup.h"  #include "lookup.h"
   
   void hashInitialize(struct dictionary *dic);  /* declared in extern.h */
   void initClassDataBase(void);
 /*-------- variables to define  a ring ----------------*/  /*-------- variables to define  a ring ----------------*/
 /*  /*
   The numbers L,M, LL,MM,NN are set in setUpRing() in setupring.c now.    The numbers L,M, LL,MM,NN are set in setUpRing() in setupring.c now.
Line 13 
Line 15 
   Any setting must keep the relation: L<=M<=N.    Any setting must keep the relation: L<=M<=N.
   You must see mmwMult() in poly.c in the above case.    You must see mmwMult() in poly.c in the above case.
   Example. L=M=0 means there is no q-variables and difference variables.    Example. L=M=0 means there is no q-variables and difference variables.
            L=5, M=N=5 means all variables are q-variables (x0=q).    L=5, M=N=5 means all variables are q-variables (x0=q).
            L=2, M=2, N=5 means x0=q, x1 is q-variable and x2,,,,x4 are    L=2, M=2, N=5 means x0=q, x1 is q-variable and x2,,,,x4 are
            differential variables.    differential variables.
            L=0, M=2, N=5 means x0,x1 are difference variables and x2,,,x4    L=0, M=2, N=5 means x0,x1 are difference variables and x2,,,x4
            are differential variables. */    are differential variables. */
 /*#define   L     0     number of q-variables */  /*#define   L     0     number of q-variables */
 /*#define   M     0     number of difference variables */  /*#define   M     0     number of difference variables */
 /*Number of elimination variables  */  /*Number of elimination variables  */
 /*#define  LL     0     */  /*#define  LL     0     */
 /*#define  MM     0    */  /*#define  MM     0    */
               /* x_MM,...,x_{M-1} are eliminated difference variables */  /* x_MM,...,x_{M-1} are eliminated difference variables */
               /* MM < M if you want to use it. MM>=M if you do not use it */  /* MM < M if you want to use it. MM>=M if you do not use it */
 /*#define  NN     9  */  /*#define  NN     9  */
               /*x_NN,...,x_{N-1} are eliminated differential variables */  /*x_NN,...,x_{N-1} are eliminated differential variables */
               /* NN < N if you want to use it. NN>=N if you do not use it.  /* NN < N if you want to use it. NN>=N if you do not use it.
                        See the eliminated_standard() in dbm3.c */                 See the eliminated_standard() in dbm3.c */
   
   
 /* They are not used.  /* They are not used.
Line 79  int Commutative = 0;
Line 81  int Commutative = 0;
 int UseCriterion1 = 0;  int UseCriterion1 = 0;
 int UseCriterion2B = 0;  int UseCriterion2B = 0;
 int OutputStyle = '*';  int OutputStyle = '*';
   int COutput = 0; /* C sytle output of polynomial */
 int Wrap = 0;  /* output.c */  int Wrap = 0;  /* output.c */
 int Verbose = 0;  int Verbose = 0;
 int ReduceLowerTerms = 1;  int ReduceLowerTerms = 1;
Line 100  int KSPushEnvMode = 0;
Line 103  int KSPushEnvMode = 0;
 int Sugar = 0;  int Sugar = 0;
 int Homogenize_vec = 1; /*x + e (x+1)===>(1) x h + e (x+h) or (0)x + e(x+h) */  int Homogenize_vec = 1; /*x + e (x+1)===>(1) x h + e (x+h) or (0)x + e(x+h) */
 int CmoDMSOutputOption = 0;  /* Output with  int CmoDMSOutputOption = 0;  /* Output with
                              (1) RING_BY_NAME or (0) DMS_OF_N_VARIABLES.                   (1) RING_BY_NAME or (0) DMS_OF_N_VARIABLES.
                              plugin/cmo.c */                   plugin/cmo.c */
 int SecureMode = 0;  int SecureMode = 0;
   int RestrictedMode = 0;
   int RestrictedMode_saved = 0;
   int Ecart = 0;
   int EcartAutomaticHomogenization = 0;
   int TraceLift = 0;
   struct ring *TraceLift_ringmod = NULL;
   int DoCancel = 0;
   int QuoteMode = 0;
   int UseDsmall = 0;
   
 /* global variables for stackmachine.c  */  /* global variables for stackmachine.c  */
 int VerboseStack = 1;     /* 0 is quiet, 1 is standard, 2 ... */  int VerboseStack = 1;     /* 0 is quiet, 1 is standard, 2 ... */
Line 116  FILE *Fstack = NULL; /* Initialized to standard output
Line 128  FILE *Fstack = NULL; /* Initialized to standard output
 /* in case of Solaris, use the following: */  /* in case of Solaris, use the following: */
 int EnvOfStackMachine[2000];  int EnvOfStackMachine[2000];
 #else  #else
   #if defined(__CYGIWN__)
   sigjmp_buf EnvOfStackMachine;
   #else
 jmp_buf EnvOfStackMachine;  jmp_buf EnvOfStackMachine;
 #endif  #endif
   #endif
   
 struct object NullObject;  struct object NullObject;
 struct object NoObject;  struct object NoObject;
Line 127  int Lookup[TYPES][TYPES];
Line 143  int Lookup[TYPES][TYPES];
 int Quiet = 0;  int Quiet = 0;
 int TimerOn = 0;  int TimerOn = 0;
   
 char *VersionString = "3.000726";  char *VersionString = "3.050615";
   
 char *LeftBracket = NULL;  char *LeftBracket = NULL;
 char *RightBracket = NULL;  char *RightBracket = NULL;
Line 144  int VerboseK = 1;  /* 1 is standard */
Line 160  int VerboseK = 1;  /* 1 is standard */
 int DebugK   = 0;  int DebugK   = 0;
 FILE *Fk = NULL;  /* Initialized to stdout in stackmachine_init() */  FILE *Fk = NULL;  /* Initialized to stdout in stackmachine_init() */
   
 stackmachine_init() {  void stackmachine_init() {
   int i,j;    int i,j;
   extern FILE *BaseFp;    extern FILE *BaseFp;
     /* GC_init(); */
     GC_INIT();
   OxSystemVersion = VersionString;    OxSystemVersion = VersionString;
   Fstack = stdout;  /* initialize output stream */    Fstack = stdout;  /* initialize output stream */
   Fk = stdout;    Fk = stdout;
Line 155  stackmachine_init() {
Line 173  stackmachine_init() {
   /* initialize null object */    /* initialize null object */
   NullObject.tag = 0;    NullObject.tag = 0;
   NullObject.lc.op = NullObject.rc.op = (struct object *)NULL;    NullObject.lc.op = NullObject.rc.op = (struct object *)NULL;
     NullObject.attr = (struct object *)NULL;
   /* findUserdictionary returns NoObject if it cannot find the key.*/    /* findUserdictionary returns NoObject if it cannot find the key.*/
   NoObject.tag = -1;    NoObject.tag = -1;
   NoObject.lc.op = NoObject.rc.op = (struct object *)NULL;    NoObject.lc.op = NoObject.rc.op = (struct object *)NULL;
     NoObject.attr = (struct object *)NULL;
   /* Initalize lookup table */    /* Initalize lookup table */
   for (i=0; i<TYPES; i++) {    for (i=0; i<TYPES; i++) {
     for (j=0; j<TYPES; j++)      for (j=0; j<TYPES; j++)
Line 171  stackmachine_init() {
Line 191  stackmachine_init() {
 }  }
   
   
 stackmachine_close() {  int stackmachine_close() {
   /* close output stream */    /* close output stream */
 }  }
   
   
   
 Kclose() {  void Kclose() {
   /* close Fk */    /* close Fk */
 }  }
   

Legend:
Removed from v.1.13  
changed lines
  Added in v.1.38

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