diff --git a/NN/stack.c b/NN/stack.c index 49aa7735aae36505aa40f35b5de35f792259ead7..4f8f56b027fa6c66c6510729a1911b47bc6c62bf 100644 --- a/NN/stack.c +++ b/NN/stack.c @@ -1,6 +1,7 @@ static struct node { int key; struct node *next; }; static struct node *head, *z, *t; + stackinit() {stackinit_();} stackinit_() { head = (struct node *) malloc(sizeof *head); @@ -9,6 +10,7 @@ z->next = z; z->key = 0; } + push (p) {push_(p);} push_(p) int *p; { @@ -18,6 +20,7 @@ t->key = v; t->next = head->next; head->next =t; } + pop (x) {pop_(x);} pop_(x) int *x; { @@ -25,12 +28,14 @@ *x = t->key; free(t); } + stackempty (i) {stackempty_(i);} stackempty_(i) int *i; { *i = 0; if(head->next == z) *i = 1; } + stackflush () {stackflush_();} stackflush_() { free(head); diff --git a/NN/stackpair.c b/NN/stackpair.c index ad4268226191054c8d4d287dbaf11e4a1fb91f5c..6d8c6ba4338c78df3798d92b3965a89d133b6b2e 100644 --- a/NN/stackpair.c +++ b/NN/stackpair.c @@ -1,58 +1,63 @@ - static struct node - { int key; struct node *next; }; - static struct node *heada, *za, *ta; - static struct node *headb, *zb, *tb; - stackpairinit() - { - heada = (struct node *) malloc(sizeof *heada); - za = (struct node *) malloc(sizeof *za); - heada->next = za; heada->key=0; - za->next = za; - za->key = 0; - - headb = (struct node *) malloc(sizeof *headb); - zb = (struct node *) malloc(sizeof *zb); - headb->next = zb; headb->key=0; - zb->next = zb; - zb->key = 0; - } - stackpairflush() - { - free(heada); - free(headb); - free(za); - free(zb); - } - pushpair(pa, pb) - int *pa; - int *pb; - { - int va; - int vb; - va = *pa; - ta = (struct node *) malloc(sizeof *ta); - ta->key = va; ta->next = heada->next; - heada->next =ta; - - vb = *pb; - tb = (struct node *) malloc(sizeof *tb); - tb->key = vb; tb->next = headb->next; - headb->next =tb; - } - poppair(xa,xb) - int *xa; - int *xb; - { - ta = heada->next; heada->next = ta->next; - *xa = ta->key; - free(ta); - tb = headb->next; headb->next = tb->next; - *xb = tb->key; - free(tb); - } - stackpairempty(i) - int *i; - { - *i = 0; - if(heada->next == za) *i = 1; - } + static struct node + { int key; struct node *next; }; + static struct node *heada, *za, *ta; + static struct node *headb, *zb, *tb; + stackpairinit_() {stackpairinit();} + stackpairinit () + { + heada = (struct node *) malloc(sizeof *heada); + za = (struct node *) malloc(sizeof *za); + heada->next = za; heada->key=0; + za->next = za; + za->key = 0; + + headb = (struct node *) malloc(sizeof *headb); + zb = (struct node *) malloc(sizeof *zb); + headb->next = zb; headb->key=0; + zb->next = zb; + zb->key = 0; + } + stackpairflush_() {stackpairflush();} + stackpairflush () + { + free(heada); + free(headb); + free(za); + free(zb); + } + pushpair_(pa, pb) {pushpair(pa, pb);} + pushpair (pa, pb) + int *pa; + int *pb; + { + int va; + int vb; + va = *pa; + ta = (struct node *) malloc(sizeof *ta); + ta->key = va; ta->next = heada->next; + heada->next =ta; + + vb = *pb; + tb = (struct node *) malloc(sizeof *tb); + tb->key = vb; tb->next = headb->next; + headb->next =tb; + } + poppair_(xa,xb) {poppair(xa,xb);} + poppair (xa,xb) + int *xa; + int *xb; + { + ta = heada->next; heada->next = ta->next; + *xa = ta->key; + free(ta); + tb = headb->next; headb->next = tb->next; + *xb = tb->key; + free(tb); + } + stackpairempty_(i) {stackpairempty(i);} + stackpairempty (i) + int *i; + { + *i = 0; + if(heada->next == za) *i = 1; + } diff --git a/NN/volume.c b/NN/volume.c index aa45dcccf4dddb857af0b3be747c35a7cc4f111a..63ab97898f3b6afa9b8c05d583e0d43263dc3d47 100644 --- a/NN/volume.c +++ b/NN/volume.c @@ -216,6 +216,7 @@ return(v); ----------------------------------------------------------------*/ +volume_(a,b,m,n,mmax,nmax,volume) {volume (a,b,m,n,mmax,nmax,volume);} volume (a,b,m,n,mmax,nmax,volume) int *n, *m, *mmax, *nmax; @@ -429,6 +430,9 @@ return(v); ----------------------------------------------------------------*/ +volumeb_ (a,b,m,n,mmax,nmax,opt,volume,dvdb) { + volumeb(a,b,m,n,mmax,nmax,opt,volume,dvdb); +} volumeb (a,b,m,n,mmax,nmax,opt,volume,dvdb) int *n, *m, *mmax, *nmax, *opt; @@ -655,7 +659,9 @@ return(v); A dummy routine used to call cvolumebj from a fortran routine ----------------------------------------------------------------*/ - +volumebj_ (a,b,m,n,mmax,nmax,con,volume,dvdb) { + volumebj(a,b,m,n,mmax,nmax,con,volume,dvdb); +} volumebj (a,b,m,n,mmax,nmax,con,volume,dvdb) int *n, *m, *mmax, *nmax,*con; @@ -1025,6 +1031,9 @@ return(v); ----------------------------------------------------------------*/ +dvda_ (a,b,m,n,mmax,nmax,idim,dvda,code) { + dvda(a,b,m,n,mmax,nmax,idim,dvda,code); +} dvda (a,b,m,n,mmax,nmax,idim,dvda,code) int *n, *m, *mmax, *nmax, *idim, *code; @@ -1219,6 +1228,9 @@ return(v); ----------------------------------------------------------------*/ +volumef_ (a,b,m,n,mmax,nmax,volume) { + volumef(a,b,m,n,mmax,nmax,volume); +} volumef (a,b,m,n,mmax,nmax,volume) int *n, *m, *mmax, *nmax; @@ -1590,6 +1602,9 @@ return(v); ----------------------------------------------------------------*/ +dvdaf_ (a,b,m,n,mmax,nmax,idim,dvda,code) { + dvdaf(a,b,m,n,mmax,nmax,idim,dvda,code); +} dvdaf (a,b,m,n,mmax,nmax,idim,dvda,code) int *n, *m, *mmax, *nmax, *idim, *code;