#include <string.h>#include "stack-c.h"#include "stack1.h"#include "stack2.h"#include "sciprint.h"Include dependency graph for stack1.c:

Go to the source code of this file.
Definition at line 383 of file stack1.c.
Referenced by creimat(), creimati(), inextj(), listcreimat(), NoRhs(), and stcreate().
| int C2F() allmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2859 of file stack1.c.
References FALSE_, fname, fname_len, get_fname(), iadr, istk, Lstk, lw, m, n, Rhs, topk, and TRUE_.
02860 { 02861 integer itype, il; 02862 il = iadr(*Lstk(*lw )); 02863 if (*istk(il ) < 0) il = iadr(*istk(il +1)); 02864 itype = *istk(il ); 02865 if (itype != 1 && itype != 2 && itype != 10) { 02866 Scierror(209,"%s: Argument %d wrong type argument, expecting a matrix\r\n", 02867 get_fname(fname,fname_len) , Rhs + (*lw - *topk)); 02868 return FALSE_; 02869 } 02870 *m = *istk(il + 1); 02871 *n = *istk(il + 2); 02872 return TRUE_; 02873 }
Here is the call graph for this function:

| int C2F() bufstore | ( | char * | fname, | |
| integer * | lbuf, | |||
| integer * | lbufi, | |||
| integer * | lbuff, | |||
| integer * | lr, | |||
| integer * | nlr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 3016 of file stack1.c.
References bsiz, C2F, cvstr(), cx1, FALSE_, fname, fname_len, get_fname(), istk, lbuf, lbuff, lbufi, lr, nlr, and TRUE_.
03017 { 03018 *lbufi = *lbuf; 03019 *lbuff = *lbufi + *nlr - 1; 03020 *lbuf = *lbuff + 2; 03021 if (*lbuff > bsiz) { 03022 Scierror(999,"%f: No more space to store string arguments\r\n", 03023 get_fname(fname,fname_len) ); 03024 return FALSE_; 03025 } 03026 /* lbufi is a Fortran indice ==> offset -1 at C level */ 03027 C2F(cvstr)(nlr, istk(*lr ), C2F(cha1).buf + (*lbufi - 1), &cx1, *lbuff - (*lbufi - 1)); 03028 C2F(cha1).buf[*lbuff] = '\0'; 03029 return TRUE_; 03030 }
Here is the call graph for this function:

| static int C2F | ( | getwsmati | ) | [static] |
Definition at line 22 of file stack1.c.
References C2F, c_true, FALSE_, get_fname(), getilist(), getmati(), ili, nv, and Rhs.
00034 : 00035 * checks that spos object is a list 00036 * checks that lnum-element of the list exists and is a matrix 00037 * extracts matrix information(it,m,n,lr,lc) 00038 * In : 00039 * fname : name of calling function for error message 00040 * topk : stack ref for error message 00041 * lw : stack position 00042 * Out : 00043 * [it,m,n] matrix dimensions 00044 * lr : stk(lr+i-1)= real(a(i)) 00045 * lc : stk(lc+i-1)= imag(a(i)) exists only if it==1 00046 *------------------------------------------------------------------ */ 00047 00048 int C2F(getlistmat)(char *fname,integer *topk,integer *spos,integer *lnum,integer *it,integer *m,integer *n,integer *lr,integer *lc,unsigned long fname_len) 00049 { 00050 integer nv, ili; 00051 00052 if ( C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len) == FALSE_) 00053 return FALSE_; 00054 00055 if (*lnum > nv) { 00056 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 00057 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 00058 return FALSE_; 00059 } 00060 return C2F(getmati)(fname, topk, spos, &ili, it, m, n, lr, lc, &c_true, lnum, fname_len); 00061 }
Here is the call graph for this function:

Definition at line 2968 of file stack1.c.
References FALSE_, fname, fname_len, get_fname(), ival1, ival2, and TRUE_.
02969 { 02970 if (*ival1 != *ival2) 02971 { 02972 Scierror(999,"%s: incompatible sizes \r\n",get_fname(fname,fname_len)); 02973 return FALSE_; 02974 } ; 02975 return TRUE_; 02976 }
Here is the call graph for this function:

Definition at line 2661 of file stack1.c.
References C2F, cx1, dcopy(), l, Lstk, lw, lwd, stk, and unsfdcopy().
Referenced by Ref2val(), and swapmat().
02662 { 02663 integer ix1,l,ld; 02664 l=*Lstk(*lw ); 02665 ld=*Lstk(*lwd ); 02666 02667 ix1 = *Lstk(*lw +1) - l; 02668 /* check for overlaping region */ 02669 if (l+ix1>ld||ld+ix1>l) 02670 C2F(unsfdcopy)(&ix1, stk(l), &cx1, stk(ld), &cx1); 02671 else 02672 C2F(dcopy)(&ix1, stk(l), &cx1, stk(ld), &cx1); 02673 *Lstk(*lwd +1) = ld + ix1; 02674 return 0; 02675 }
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 1815 of file stack1.c.
References C2F, cx1, flw, iadr, icopy(), istk, Lstk, and tlw.
01816 { 01817 integer ix1; 01818 integer dflw, fflw; 01819 integer dtlw; 01820 dflw = iadr(*Lstk(*flw )); 01821 fflw = iadr(*Lstk(*flw +1)); 01822 dtlw = iadr(*Lstk(*tlw )); 01823 ix1 = fflw - dflw; 01824 C2F(icopy)(&ix1, istk(dflw ), &cx1, istk(dtlw ), &cx1); 01825 *Lstk(*tlw +1) = *Lstk(*tlw ) + *Lstk(*flw +1) - *Lstk(*flw ); 01826 return 0; 01827 }
Here is the call graph for this function:

| int cre_listsmat_from_str | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | numi, | |||
| integer * | stlw, | |||
| integer * | m, | |||
| integer * | n, | |||
| char * | Str[], | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1549 of file stack1.c.
References cre_smat_from_str_i(), FALSE_, iadr, istk, Lstk, rep, sadr, and TRUE_.
Referenced by createlistvarfromptr().
01550 { 01551 int rep,ix1,il; 01552 if ( cre_smat_from_str_i(fname, stlw, m, n, Str, fname_len,&rep)== FALSE_ ) 01553 return FALSE_; 01554 *stlw = rep; 01555 il = iadr(*Lstk(*lw )); 01556 ix1 = il + *istk(il +1) + 3; 01557 *istk(il + 2 + *numi ) = *stlw - sadr(ix1) + 1; 01558 if (*numi == *istk(il +1)) *Lstk(*lw +1) = *stlw; 01559 return TRUE_; 01560 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int cre_listsparse_from_ptr | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | numi, | |||
| integer * | stlw, | |||
| integer * | m, | |||
| integer * | n, | |||
| SciSparse * | Str, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1627 of file stack1.c.
References cre_sparse_from_ptr_i(), FALSE_, iadr, istk, Lstk, rep, sadr, and TRUE_.
Referenced by createlistvarfromptr().
01628 { 01629 int rep,ix1,il; 01630 if ( cre_sparse_from_ptr_i(fname, stlw, m, n, Str, fname_len,&rep)== FALSE_ ) 01631 return FALSE_; 01632 *stlw = rep; 01633 il = iadr(*Lstk(*lw )); 01634 ix1 = il + *istk(il +1) + 3; 01635 *istk(il + 2 + *numi ) = *stlw - sadr(ix1) + 1; 01636 if (*numi == *istk(il +1)) *Lstk(*lw +1) = *stlw; 01637 return TRUE_; 01638 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int cre_smat_from_str | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| char * | Str[], | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1533 of file stack1.c.
References Bot, cre_smat_from_str_i(), FALSE_, get_fname(), Lstk, rep, and TRUE_.
Referenced by createvarfromptr().
01534 { 01535 int rep; 01536 01537 if (*lw + 1 >= Bot) { 01538 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 01539 return FALSE_; 01540 } 01541 01542 if ( cre_smat_from_str_i(fname, Lstk(*lw ), m, n, Str, fname_len,&rep)== FALSE_ ) 01543 return FALSE_; 01544 *Lstk(*lw+1) = rep; 01545 return TRUE_; 01546 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int cre_smat_from_str_i | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| char * | Str[], | |||
| unsigned long | fname_len, | |||
| integer * | rep | |||
| ) |
Definition at line 1490 of file stack1.c.
References Bot, C2F, cvstr(), cx0, Err, FALSE_, get_fname(), iadr, ilp, istk, ix, l, lr1, Lstk, pos, sadr, and TRUE_.
Referenced by cre_listsmat_from_str(), and cre_smat_from_str().
01491 { 01492 integer ix1, ix, ilast, il, nnchar, lr1, kij, ilp; 01493 integer *pos; 01494 01495 nnchar = 0; 01496 for (ix = 0 ; ix < (*m)*(*n) ; ++ix) nnchar += strlen(Str[ix]); 01497 01498 il = iadr(*lw); 01499 ix1 = il + 4 + (nnchar + 1) + (*m * *n + 1); 01500 Err = sadr(ix1) - *Lstk(Bot ); 01501 if (Err > 0) { 01502 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n", 01503 get_fname(fname,fname_len)); 01504 return FALSE_; 01505 } ; 01506 *istk(il ) = 10; 01507 *istk(il + 1) = *m; 01508 *istk(il + 2) = *n; 01509 *istk(il + 3) = 0; 01510 ilp = il + 4; 01511 *istk(ilp ) = 1; 01512 ix = 0; 01513 ix1 = ilp + *m * *n; 01514 for (kij = ilp + 1; kij <= ix1; ++kij) { 01515 *istk(kij ) = *istk(kij - 1) + strlen(Str[ix]); 01516 ++ix; 01517 } 01518 ilast = ilp + *m * *n; 01519 lr1 = ilast + *istk(ilp ); 01520 pos = istk(lr1); 01521 for ( ix = 0 ; ix < (*m)*(*n) ; ix++) 01522 { 01523 int l = strlen(Str[ix]); 01524 C2F(cvstr)(&l, pos, Str[ix], &cx0, l); 01525 pos += l; 01526 } 01527 ix1 = ilast + *istk(ilast ); 01528 *rep = sadr(ix1); 01529 return TRUE_; 01530 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int cre_sparse_from_ptr | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| SciSparse * | Str, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1612 of file stack1.c.
References Bot, cre_sparse_from_ptr_i(), FALSE_, get_fname(), Lstk, rep, and TRUE_.
Referenced by createvarfromptr().
01613 { 01614 int rep; 01615 if (*lw + 1 >= Bot) { 01616 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 01617 return FALSE_; 01618 } 01619 01620 if ( cre_sparse_from_ptr_i(fname, Lstk(*lw ), m, n, Str, fname_len,&rep)== FALSE_ ) 01621 return FALSE_; 01622 *Lstk(*lw+1) = rep; 01623 return TRUE_; 01624 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int cre_sparse_from_ptr_i | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| SciSparse * | S, | |||
| unsigned long | fname_len, | |||
| integer * | rep | |||
| ) |
Definition at line 1572 of file stack1.c.
References Bot, C2F, dcopy(), Err, FALSE_, get_fname(), iadr, icopy(), istk, lc, lr, Lstk, S, sadr, size, stk, and TRUE_.
Referenced by cre_listsparse_from_ptr(), and cre_sparse_from_ptr().
01573 { 01574 double size = (double) ( (S->nel)*(S->it + 1) ); 01575 01576 integer ix1, il, lr, lc; 01577 integer cx1l=1; 01578 il = iadr(*lw); 01579 01580 ix1 = il + 5 + *m + S->nel; 01581 Err = sadr(ix1) - *Lstk(Bot ); 01582 if (Err > -size ) { 01583 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n", 01584 get_fname(fname,fname_len)); 01585 return FALSE_; 01586 } ; 01587 *istk(il ) = 5; 01588 /* note: code sligtly modified (remark of C. Deroulers in the newsgroup) */ 01589 if ( (*m == 0) | (*n == 0) ) { 01590 *istk(il + 1) = 0; 01591 *istk(il + 2) = 0; 01592 } else { 01593 *istk(il + 1) = *m; 01594 *istk(il + 2) = *n; 01595 } 01596 /* end of the modified code */ 01597 *istk(il + 3) = S->it; 01598 *istk(il + 4) = S->nel; 01599 C2F(icopy)(&S->m, S->mnel, &cx1l, istk(il+5 ), &cx1l); 01600 C2F(icopy)(&S->nel, S->icol, &cx1l, istk(il+5+*m ), &cx1l); 01601 ix1 = il + 5 + *m + S->nel; 01602 lr = sadr(ix1); 01603 lc = lr + S->nel; 01604 C2F(dcopy)(&S->nel, S->R, &cx1l, stk(lr), &cx1l); 01605 if ( S->it == 1) 01606 C2F(dcopy)(&S->nel, S->I, &cx1l, stk(lc), &cx1l); 01607 *rep = lr + S->nel*(S->it+1); 01608 return TRUE_; 01609 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() crebmat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 673 of file stack1.c.
References Bot, C2F, c_true, crebmati(), FALSE_, fname, fname_len, get_fname(), lr, Lstk, lw, m, n, sadr, and TRUE_.
Referenced by createvar(), createvarfrom(), cwritebmat(), and mvfromto().
00674 { 00675 integer ix1; 00676 00677 if (*lw + 1 >= Bot) { 00678 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 00679 return FALSE_ ; 00680 } 00681 00682 if ( C2F(crebmati)(fname, Lstk(*lw ), m, n, lr, &c_true, fname_len)== FALSE_) 00683 return FALSE_ ; 00684 00685 ix1 = *lr + *m * *n + 2; 00686 *Lstk(*lw +1) = sadr(ix1); 00687 return TRUE_; 00688 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() crebmati | ( | char * | fname, | |
| integer * | stlw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| int * | flagx, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 711 of file stack1.c.
References Bot, Err, FALSE_, flagx, fname, fname_len, get_fname(), iadr, istk, lr, Lstk, m, Min, n, size, stlw, and TRUE_.
Referenced by crebmat(), fakecrebmat(), and listcrebmat().
00712 { 00713 double size = ((double) *m) * ((double) *n) ; 00714 integer il; 00715 il = iadr(*stlw); 00716 Err = il + 3 - iadr(*Lstk(Bot )); 00717 if (Err > -size ) { 00718 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n",get_fname(fname,fname_len)); 00719 return FALSE_; 00720 } 00721 if (*flagx) { 00722 *istk(il ) = 4; 00723 /* si m*n=0 les deux dimensions sont mises a zero. */ 00724 *istk(il + 1) = Min(*m , *m * *n); 00725 *istk(il + 2) = Min(*n,*m * *n); 00726 } 00727 *lr = il + 3; 00728 return TRUE_; 00729 }
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 316 of file stack1.c.
References C2F, c__1, icopy(), id, lr, lw, m, n, putid(), and val.
00317 { 00318 extern int C2F(icopy)(integer *, integer *, integer *, integer *, integer *); 00319 extern int C2F(putid)(integer *, integer *); 00320 00321 /* Local variables */ 00322 static integer il, lr; 00323 integer i__1; 00324 static integer c__1 = 1; 00325 00326 /* Parameter adjustments */ 00327 --val; 00328 --id; 00329 00330 C2F(putid)(&C2F(vstk).idstk[*lw * 6 - 6], &id[1]); 00331 il = C2F(vstk).lstk[*lw - 1] + C2F(vstk).lstk[*lw - 1] - 1; 00332 ((integer *)&C2F(stack))[il - 1] = 4; 00333 ((integer *)&C2F(stack))[il] = *m; 00334 ((integer *)&C2F(stack))[il + 1] = *n; 00335 lr = il + 3; 00336 i__1 = il + 3 + *m * *n + 2; 00337 C2F(vstk).lstk[*lw] = i__1 / 2 + 1; 00338 i__1 = *m * *n; 00339 C2F(icopy)(&i__1, &val[1], &c__1, &((integer *)&C2F(stack))[lr - 1], &c__1); 00340 return 0; 00341 }
Here is the call graph for this function:

Definition at line 3036 of file stack1.c.
References Bot, Err, FALSE_, fname, fname_len, get_fname(), iadr, istk, lr, Lstk, lw, m, and TRUE_.
Referenced by createdata().
03037 { 03038 integer lr; 03039 lr = *Lstk(*lw ); 03040 if (*lw + 1 >= Bot) { 03041 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 03042 return FALSE_; 03043 } 03044 03045 Err = lr - *Lstk(Bot); 03046 if (Err > -m ) { 03047 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n",get_fname(fname,fname_len)); 03048 return FALSE_; 03049 }; 03050 /* *Lstk(*lw +1) = lr + 1 + m/sizeof(double); */ 03051 /* type 0 */ 03052 *istk(iadr(lr)) = 0; 03053 *Lstk(*lw +1) = lr + (m+sizeof(double)-1)/sizeof(double); 03054 return TRUE_; 03055 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() crehmat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 3126 of file stack1.c.
References Bot, C2F, c_true, crehmati(), FALSE_, fname, fname_len, get_fname(), lr, Lstk, lw, m, n, and TRUE_.
Referenced by createvar(), createvarfrom(), and mvfromto().
03127 { 03128 03129 if (*lw + 1 >= Bot) { 03130 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 03131 return FALSE_; 03132 } 03133 if ( C2F(crehmati)(fname, Lstk(*lw ), m, n, lr, &c_true, fname_len) == FALSE_) 03134 return FALSE_ ; 03135 *Lstk(*lw +1) = *lr + *m * *n; 03136 return TRUE_; 03137 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() crehmati | ( | char * | fname, | |
| integer * | stlw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| int * | flagx, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 3063 of file stack1.c.
References Bot, Err, FALSE_, flagx, fname, fname_len, get_fname(), iadr, istk, lr, Lstk, m, Min, n, sadr, size, stlw, and TRUE_.
Referenced by crehmat(), and listcrehmat().
03064 { 03065 integer ix1; 03066 integer il; 03067 double size = ((double) *m) * ((double) *n); 03068 il = iadr(*stlw); 03069 ix1 = il + 4; 03070 Err = sadr(ix1) - *Lstk(Bot ); 03071 if ( (double) Err > -size ) { 03072 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n",get_fname(fname,fname_len)); 03073 return FALSE_; 03074 }; 03075 if (*flagx) { 03076 *istk(il ) = 9; 03077 /* if m*n=0 then both dimensions are to be set to zero */ 03078 *istk(il + 1) = Min(*m , *m * *n); 03079 *istk(il + 2) = Min(*n ,*m * *n); 03080 *istk(il + 3) = 0; 03081 } 03082 ix1 = il + 4; 03083 *lr = sadr(ix1); 03084 return TRUE_; 03085 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() creimat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 500 of file stack1.c.
References Bot, C2F, c_true, creimati(), FALSE_, fname, fname_len, get_fname(), it, lr, Lstk, lw, m, memused, n, sadr, and TRUE_.
Referenced by createvar(), createvarfrom(), and mxCreateNumericMatrix().
00501 { 00502 00503 if (*lw + 1 >= Bot) { 00504 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 00505 return FALSE_; 00506 } 00507 if ( C2F(creimati)(fname, Lstk(*lw ), it, m, n, lr,&c_true, fname_len) == FALSE_) 00508 return FALSE_ ; 00509 *Lstk(*lw +1) = sadr(*lr + memused(*it,*m * *n)); 00510 return TRUE_; 00511 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() creimati | ( | char * | fname, | |
| integer * | stlw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| int * | flagx, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 517 of file stack1.c.
References Bot, Err, FALSE_, flagx, fname, fname_len, get_fname(), iadr, istk, it, lr, Lstk, m, memused, Min, n, sadr, size, stlw, and TRUE_.
Referenced by creimat(), listcreimat(), and stcreate().
00518 { 00519 integer ix1; 00520 integer il; 00521 double size = memused(*it,((double)*m)*((double) *n)); 00522 il = iadr(*stlw); 00523 ix1 = il + 4; 00524 Err = sadr(ix1) - *Lstk(Bot ); 00525 if (Err > -size ) { 00526 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n",get_fname(fname,fname_len)); 00527 return FALSE_; 00528 }; 00529 if (*flagx) { 00530 *istk(il ) = 8; 00531 /* if m*n=0 then both dimensions are to be set to zero */ 00532 *istk(il + 1) = Min(*m , *m * *n); 00533 *istk(il + 2) = Min(*n ,*m * *n); 00534 *istk(il + 3) = *it; 00535 } 00536 ix1 = il + 4; 00537 *lr = ix1; 00538 return TRUE_; 00539 }
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 1885 of file stack1.c.
References crelist_G(), ilen, and lw.
Referenced by createlist(), and createvar().
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 1870 of file stack1.c.
References iadr, istk, Lstk, and sadr.
Referenced by crelist(), cremlist(), and cretlist().
01871 { 01872 integer ix1; 01873 integer il; 01874 il = iadr(*Lstk(*slw )); 01875 *istk(il ) = type; 01876 *istk(il + 1) = *ilen; 01877 *istk(il + 2) = 1; 01878 ix1 = il + *ilen + 3; 01879 *lw = sadr(ix1); 01880 if (*ilen == 0) *Lstk(*lw +1) = *lw; 01881 return 0; 01882 }
Here is the caller graph for this function:

| int C2F() cremat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 207 of file stack1.c.
References Bot, C2F, c_true, cremati(), FALSE_, fname, fname_len, get_fname(), it, lc, lr, Lstk, lw, m, n, and TRUE_.
Referenced by createcvar(), createcvarfrom(), createcvarfromptr(), createvar(), createvarfrom(), creatework(), cwritecmat(), cwritemat(), insmat(), mvfromto(), run(), and swapmat().
00208 { 00209 00210 if (*lw + 1 >= Bot) { 00211 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 00212 return FALSE_; 00213 } 00214 if ( C2F(cremati)(fname, Lstk(*lw ), it, m, n, lr, lc, &c_true, fname_len) == FALSE_) 00215 return FALSE_ ; 00216 *Lstk(*lw +1) = *lr + *m * *n * (*it + 1); 00217 return TRUE_; 00218 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() cremati | ( | char * | fname, | |
| integer * | stlw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| int * | flagx, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 238 of file stack1.c.
References Bot, Err, FALSE_, flagx, fname, fname_len, get_fname(), iadr, istk, it, lc, lr, Lstk, m, Min, n, sadr, size, stlw, and TRUE_.
Referenced by cremat(), fakecremat(), and listcremat().
00239 { 00240 integer ix1; 00241 integer il; 00242 double size = ((double) *m) * ((double) *n) * ((double) (*it + 1)); 00243 il = iadr(*stlw); 00244 ix1 = il + 4; 00245 Err = sadr(ix1) - *Lstk(Bot ); 00246 if ( (double) Err > -size ) { 00247 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n",get_fname(fname,fname_len)); 00248 return FALSE_; 00249 }; 00250 if (*flagx) { 00251 *istk(il ) = 1; 00252 /* if m*n=0 then both dimensions are to be set to zero */ 00253 *istk(il + 1) = Min(*m , *m * *n); 00254 *istk(il + 2) = Min(*n ,*m * *n); 00255 *istk(il + 3) = *it; 00256 } 00257 ix1 = il + 4; 00258 *lr = sadr(ix1); 00259 *lc = *lr + *m * *n; 00260 return TRUE_; 00261 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() crematvar | ( | integer * | id, | |
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| double * | rtab, | |||
| double * | itab | |||
| ) |
Definition at line 271 of file stack1.c.
References C2F, c__1, id, isiz, it, itab, lc, lr, lw, m, n, putid(), rtab, and unsfdcopy().
00272 { 00273 extern int C2F(unsfdcopy)(integer *, double *, integer *, double *, integer *); 00274 extern int C2F(putid)(integer *, integer *); 00275 00276 /* Local variables */ 00277 integer i__1; 00278 static integer lc, il, lr; 00279 static integer c__1 = 1; 00280 00281 /* Parameter adjustments */ 00282 --itab; 00283 --rtab; 00284 --id; 00285 00286 /* Function Body */ 00287 C2F(putid)(&C2F(vstk).idstk[*lw * 6 - 6], &id[1]); 00288 il = C2F(vstk).lstk[*lw - 1] + C2F(vstk).lstk[*lw - 1] - 1; 00289 ((integer *)&C2F(stack))[il - 1] = 1; 00290 ((integer *)&C2F(stack))[il] = *m; 00291 ((integer *)&C2F(stack))[il + 1] = *n; 00292 ((integer *)&C2F(stack))[il + 2] = *it; 00293 i__1 = il + 4; 00294 lr = i__1 / 2 + 1; 00295 lc = lr + *m * *n; 00296 if (*lw < C2F(vstk).isiz) 00297 { 00298 i__1 = il + 4; 00299 C2F(vstk).lstk[*lw] = i__1 / 2 + 1 + *m * *n * (*it + 1); 00300 } 00301 i__1 = *m * *n; 00302 C2F(unsfdcopy)(&i__1, &rtab[1], &c__1, &C2F(stack).Stk[lr - 1], &c__1); 00303 if (*it == 1) 00304 { 00305 i__1 = *m * *n; 00306 C2F(unsfdcopy)(&i__1, &itab[1], &c__1, &C2F(stack).Stk[lc - 1], &c__1); 00307 } 00308 return 0; 00309 }
Here is the call graph for this function:

Definition at line 1895 of file stack1.c.
References crelist_G(), ilen, and lw.
Referenced by createvar().
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 2264 of file stack1.c.
References Bot, C2F, c_true, crepointeri(), FALSE_, fname, fname_len, get_fname(), lr, Lstk, lw, and TRUE_.
Referenced by createvar(), createvarfrom(), and crestringv().
02265 { 02266 02267 if (*lw + 1 >= Bot) { 02268 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 02269 return FALSE_; 02270 } 02271 if ( C2F(crepointeri)(fname, Lstk(*lw ), lr, &c_true, fname_len) == FALSE_) 02272 return FALSE_ ; 02273 *Lstk(*lw +1) = *lr + 2; 02274 return TRUE_; 02275 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() crepointeri | ( | char * | fname, | |
| integer * | stlw, | |||
| integer * | lr, | |||
| int * | flagx, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2280 of file stack1.c.
References Bot, Err, FALSE_, flagx, fname, fname_len, get_fname(), iadr, istk, lr, Lstk, sadr, stlw, and TRUE_.
Referenced by crepointer(), and listcrepointer().
02281 { 02282 integer ix1; 02283 integer il; 02284 il = iadr(*stlw); 02285 ix1 = il + 4; 02286 Err = sadr(ix1) + 2 - *Lstk(Bot ); 02287 if (Err > 0) { 02288 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n",get_fname(fname,fname_len)); 02289 return FALSE_; 02290 }; 02291 if (*flagx) { 02292 *istk(il ) = 128; 02293 /* if m*n=0 then both dimensions are to be set to zero */ 02294 *istk(il + 1) = 1; 02295 *istk(il + 2) = 1; 02296 *istk(il + 3) = 0; 02297 } 02298 ix1 = il + 4; 02299 *lr = sadr(ix1); 02300 return TRUE_; 02301 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() cresmat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | nchar, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1280 of file stack1.c.
References Bot, C2F, cresmati(), FALSE_, fname, fname_len, get_fname(), istk, job, lr, Lstk, lw, m, n, nchar, sadr, sz, and TRUE_.
Referenced by run().
01281 { 01282 int job = 1; 01283 integer ix1, ilast, sz,lr ; 01284 if (*lw + 1 >= Bot) { 01285 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 01286 return FALSE_; 01287 } 01288 if ( C2F(cresmati)(fname,Lstk(*lw), m, n, nchar, &job, &lr, &sz, fname_len) == FALSE_ ) 01289 return FALSE_ ; 01290 ilast = lr - 1; 01291 ix1 = ilast + *istk(ilast ); 01292 *Lstk(*lw +1) = sadr(ix1); 01293 /* empty strings */ 01294 if ( *nchar == 0) *Lstk(*lw +1) += 1; 01295 return TRUE_; 01296 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() cresmat1 | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | nchar, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1306 of file stack1.c.
References Bot, C2F, cresmati(), FALSE_, fname, fname_len, get_fname(), istk, job, lr, Lstk, lw, m, n, nchar, sadr, sz, and TRUE_.
01307 { 01308 int job = 2, n=1; 01309 integer ix1, ilast, sz,lr ; 01310 if (*lw + 1 >= Bot) { 01311 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 01312 return FALSE_; 01313 } 01314 if ( C2F(cresmati)(fname,Lstk(*lw), m, &n, nchar, &job, &lr, &sz, fname_len) == FALSE_ ) 01315 return FALSE_ ; 01316 ilast = lr - 1; 01317 ix1 = ilast + *istk(ilast ); 01318 *Lstk(*lw +1) = sadr(ix1); 01319 return TRUE_; 01320 }
Here is the call graph for this function:

| int C2F() cresmat2 | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | nchar, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1330 of file stack1.c.
References Bot, C2F, cresmati(), FALSE_, fname, fname_len, get_fname(), istk, job, lr, Lstk, lw, m, n, nchar, sadr, sz, and TRUE_.
Referenced by createvar(), createvarfrom(), cwritechain(), mvfromto(), and mxcreatestring().
01331 { 01332 int job = 1, n=1,m=1; 01333 integer ix1, ilast, sz ; 01334 if (*lw + 1 >= Bot) { 01335 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 01336 return FALSE_; 01337 } 01338 if ( C2F(cresmati)(fname,Lstk(*lw), &m, &n, nchar, &job, lr, &sz, fname_len) == FALSE_ ) 01339 return FALSE_ ; 01340 01341 ilast = *lr - 1; 01342 ix1 = ilast + *istk(ilast ); 01343 *Lstk(*lw +1) = sadr(ix1); 01344 /* empty strings */ 01345 if ( *nchar == 0) *Lstk(*lw +1) += 1; 01346 *lr = ilast + *istk(ilast - 1); 01347 return TRUE_; 01348 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() cresmat3 | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | nchar, | |||
| char * | buffer, | |||
| unsigned long | fname_len, | |||
| unsigned long | buffer_len | |||
| ) |
Definition at line 1359 of file stack1.c.
References Bot, buffer, buffer_len, C2F, cresmati(), cvstr(), cx0, FALSE_, fname, fname_len, get_fname(), istk, job, lr, lr1, Lstk, lw, m, n, nchar, sadr, sz, and TRUE_.
01360 { 01361 int job = 2; 01362 integer ix1, ilast, sz,lr,lr1 ; 01363 if (*lw + 1 >= Bot) { 01364 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 01365 return FALSE_; 01366 } 01367 if ( C2F(cresmati)(fname,Lstk(*lw), m, n, nchar, &job, &lr, &sz, fname_len) == FALSE_ ) 01368 return FALSE_ ; 01369 ilast = lr - 1; 01370 ix1 = ilast + *istk(ilast ); 01371 *Lstk(*lw +1) = sadr(ix1); 01372 01373 lr1 = ilast + *istk(ilast - (*m)*(*n) ); 01374 C2F(cvstr)(&sz, istk(lr1), buffer, &cx0, buffer_len); 01375 return TRUE_; 01376 }
Here is the call graph for this function:

| int C2F() cresmat4 | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | nchar, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1385 of file stack1.c.
References Bot, Err, FALSE_, fname, fname_len, get_fname(), iadr, ilp, istk, ix, lr, Lstk, lw, m, nchar, sadr, and TRUE_.
Referenced by mxCreateCharMatrixFromStrings().
01386 { 01387 integer ix1,ix, ilast, il, nnchar, kij, ilp; 01388 if (*lw + 1 >= Bot) { 01389 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 01390 return FALSE_; 01391 } 01392 nnchar = 0; 01393 ix1 = *m; 01394 for (ix = 1; ix <= ix1; ++ix) nnchar += *nchar; 01395 il = iadr(*Lstk(*lw )); 01396 ix1 = il + 4 + (nnchar + 1) * *m; 01397 Err = sadr(ix1) - *Lstk(Bot ); 01398 if (Err > 0) { 01399 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n",get_fname(fname,fname_len)); 01400 return FALSE_; 01401 } 01402 *istk(il ) = 10; 01403 *istk(il + 1) = *m; 01404 *istk(il + 2) = 1; 01405 *istk(il + 3) = 0; 01406 ilp = il + 4; 01407 *istk(ilp ) = 1; 01408 ix1 = ilp + *m; 01409 for (kij = ilp + 1; kij <= ix1; ++kij) { 01410 *istk(kij ) = *istk(kij - 1) + *nchar; 01411 } 01412 ilast = ilp + *m; 01413 ix1 = ilast + *istk(ilast ); 01414 *Lstk(*lw +1) = sadr(ix1); 01415 *lr = ilast + 1; 01416 return TRUE_; 01417 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() cresmati | ( | char * | fname, | |
| integer * | stlw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | nchar, | |||
| integer * | job, | |||
| integer * | lr, | |||
| integer * | sz, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1427 of file stack1.c.
References Bot, C2F, cx1, Err, FALSE_, fname, fname_len, get_fname(), iadr, icopy(), ilp, istk, ix, job, lr, Lstk, m, n, nchar, sadr, stlw, sz, and TRUE_.
Referenced by cresmat(), cresmat1(), cresmat2(), cresmat3(), and listcresmat().
01428 { 01429 integer ix1, ix, il, kij, ilp, mn= (*m)*(*n); 01430 il = iadr(*stlw); 01431 01432 /* compute the size of chains */ 01433 *sz = 0; 01434 switch ( *job ) 01435 { 01436 case 1 : *sz = mn * nchar[0]; break; 01437 case 2 : for (ix = 0 ; ix < mn ; ++ix) *sz += nchar[ix]; break; 01438 case 3 : *sz = nchar[mn] - 1; break; 01439 } 01440 /* check the stack for space */ 01441 ix1 = il + 4 + mn + 1 + *sz; 01442 Err = sadr(ix1) - *Lstk(Bot ); 01443 if (Err > 0) { 01444 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n", 01445 get_fname(fname,fname_len)); 01446 return FALSE_; 01447 }; 01448 01449 *istk(il ) = 10; 01450 *istk(il + 1) = *m; 01451 *istk(il + 2) = *n; 01452 *istk(il + 3) = 0; 01453 ilp = il + 4; 01454 *istk(ilp ) = 1; 01455 switch ( *job ) 01456 { 01457 case 1 : 01458 ix1 = mn + ilp; 01459 for (kij = ilp + 1; kij <= ix1; ++kij) { 01460 *istk(kij) = *istk(kij - 1) + nchar[0]; 01461 } 01462 break; 01463 case 2 : 01464 ix = 0; 01465 ix1 = mn + ilp; 01466 for (kij = ilp + 1; kij <= ix1; ++kij) { 01467 *istk(kij ) = *istk(kij - 2 +1) + nchar[ix]; 01468 ++ix; 01469 } 01470 break; 01471 case 3 : 01472 { 01473 ix1 = mn + 1; 01474 C2F(icopy)(&ix1, nchar, &cx1, istk(ilp ), &cx1); 01475 } 01476 } 01477 *lr = ilp + mn + 1; 01478 return TRUE_; 01479 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() cresmatvar | ( | integer * | id, | |
| integer * | lw, | |||
| char * | str, | |||
| integer * | lstr, | |||
| unsigned long | str_len | |||
| ) |
Definition at line 346 of file stack1.c.
References C2F, c__0, cvstr(), id, ilp, long, lr1, lstr, lw, putid(), str, and str_len.
00347 { 00348 extern int C2F(putid)(integer *, integer *); 00349 extern int C2F(cvstr)(integer *, integer *, char *, integer *, unsigned long ); 00350 00351 static integer il, mn, lr1, ix1, ilp; 00352 static integer ilast; 00353 static integer c__0 = 0; 00354 00355 /* Parameter adjustments */ 00356 --id; 00357 00358 C2F(putid)(&C2F(vstk).idstk[*lw * 6 - 6], &id[1]); 00359 il = C2F(vstk).lstk[*lw - 1] + C2F(vstk).lstk[*lw - 1] - 1; 00360 mn = 1; 00361 ix1 = il + 4 + (*lstr + 1) + (mn + 1); 00362 ((integer *)&C2F(stack))[il - 1] = 10; 00363 ((integer *)&C2F(stack))[il] = 1; 00364 ((integer *)&C2F(stack))[il + 1] = 1; 00365 ((integer *)&C2F(stack))[il + 2] = 0; 00366 ilp = il + 4; 00367 ((integer *)&C2F(stack))[ilp - 1] = 1; 00368 ((integer *)&C2F(stack))[ilp] = ((integer *)&C2F(stack))[ilp - 1] + *lstr; 00369 ilast = ilp + mn; 00370 lr1 = ilast + ((integer *)&C2F(stack))[ilp - 1]; 00371 C2F(cvstr)(lstr, &((integer *)&C2F(stack))[lr1 - 1], str, &c__0, str_len); 00372 ix1 = ilast + ((integer *)&C2F(stack))[ilast - 1]; 00373 C2F(vstk).lstk[*lw] = ix1 / 2 + 1; 00374 return 0; 00375 }
Here is the call graph for this function:

| int C2F() cresparse | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | nel, | |||
| integer * | mnel, | |||
| integer * | icol, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 876 of file stack1.c.
References Bot, C2F, cresparsei(), FALSE_, fname, fname_len, get_fname(), icol, it, lc, lr, Lstk, lw, m, mnel, n, nel, and TRUE_.
00877 { 00878 if (*lw + 1 >= Bot) { 00879 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 00880 return FALSE_ ; 00881 } 00882 00883 if ( C2F(cresparsei)(fname, Lstk(*lw ), it, m, n, nel, mnel, icol, lr, lc, fname_len) 00884 == FALSE_) 00885 return FALSE_ ; 00886 *Lstk(*lw +1) = *lr + *nel * (*it + 1); 00887 return TRUE_; 00888 }
Here is the call graph for this function:

| int C2F() cresparsei | ( | char * | fname, | |
| integer * | stlw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | nel, | |||
| integer * | mnel, | |||
| integer * | icol, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 895 of file stack1.c.
References Bot, Err, FALSE_, fname, fname_len, get_fname(), iadr, icol, istk, it, lc, lr, Lstk, m, mnel, n, nel, sadr, stlw, and TRUE_.
Referenced by cresparse(), and listcresparse().
00896 { 00897 integer il,ix1; 00898 00899 il = iadr(*stlw); 00900 ix1 = il + 5 + *m + *nel; 00901 Err = sadr(ix1) + *nel * (*it + 1) - *Lstk(Bot ); 00902 if (Err > 0) { 00903 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n",get_fname(fname,fname_len)); 00904 return FALSE_; 00905 }; 00906 *istk(il ) = 5; 00907 /* if m*n=0 the 2 dims are set to zero */ 00908 if ( *m == 0 || *n == 0 ) /* use this new test in place of the product m * n (bruno) */ 00909 { 00910 *istk(il + 1) = 0; *istk(il + 2) = 0; 00911 } 00912 else 00913 { 00914 *istk(il + 1) = *m; *istk(il + 2) = *n; 00915 } 00916 *istk(il + 3) = *it; 00917 *istk(il + 4) = *nel; 00918 *mnel = il + 5; 00919 *icol = il + 5 + *m; 00920 ix1 = il + 5 + *m + *nel; 00921 *lr = sadr(ix1); 00922 *lc = *lr + *nel; 00923 return TRUE_; 00924 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() crestring | ( | char * | fname, | |
| integer * | spos, | |||
| integer * | nchar, | |||
| integer * | ilrs, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1676 of file stack1.c.
References C2F, crestringi(), FALSE_, fname, fname_len, ilrs, Lstk, nchar, sadr, spos, and TRUE_.
01677 { 01678 integer ix1; 01679 if ( C2F(crestringi)(fname, Lstk(*spos ), nchar, ilrs, fname_len) == FALSE_) 01680 return FALSE_; 01681 ix1 = *ilrs + *nchar; 01682 *Lstk(*spos +1) = sadr(ix1); 01683 /* empty strings */ 01684 if ( *nchar == 0) *Lstk(*spos +1) += 1; 01685 return TRUE_; 01686 }
Here is the call graph for this function:

| int C2F() crestringi | ( | char * | fname, | |
| integer * | stlw, | |||
| integer * | nchar, | |||
| integer * | ilrs, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1700 of file stack1.c.
References Bot, Err, FALSE_, fname, fname_len, get_fname(), iadr, ilrs, istk, Lstk, nchar, sadr, stlw, and TRUE_.
Referenced by crestring(), and listcrestring().
01701 { 01702 01703 integer ix1, ilast, il; 01704 01705 il = iadr(*stlw); 01706 ix1 = il + 4 + (*nchar + 1); 01707 Err = sadr(ix1) - *Lstk(Bot ); 01708 if (Err > 0) { 01709 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n", 01710 get_fname(fname,fname_len)); 01711 return FALSE_; 01712 } ; 01713 *istk(il ) = 10; 01714 *istk(il +1) = 1; 01715 *istk(il + 1 +1) = 1; 01716 *istk(il + 2 +1) = 0; 01717 *istk(il + 3 +1) = 1; 01718 *istk(il + 4 +1) = *istk(il + 3 +1) + *nchar; 01719 ilast = il + 5; 01720 *ilrs = ilast + *istk(ilast - 2 +1); 01721 return TRUE_; 01722 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() crestringmatfromc | ( | char * | fname, | |
| integer * | spos, | |||
| integer * | lorig, | |||
| integer * | m, | |||
| integer * | n, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2341 of file stack1.c.
References Bot, C2F, cstringf(), FALSE_, iadr, ierr, istk, lorig, Lstk, m, n, sadr, spos, stk, and TRUE_.
02342 { 02343 integer ix1; 02344 integer ierr; 02345 integer ilw; 02346 ilw = iadr(*Lstk(*spos )); 02347 ix1 = *Lstk(Bot ) - *Lstk(*spos ); 02348 C2F(cstringf)((char ***)stk(*lorig ), istk(ilw ), m, n, &ix1, &ierr); 02349 if (ierr > 0) { 02350 Scierror(999,"Not enough memory\r\n"); 02351 return FALSE_; 02352 } 02353 ix1 = ilw + 5 + *m * *n + *istk(ilw + 4 + *m * *n ) - 1; 02354 *Lstk(*spos +1) = sadr(ix1); 02355 return TRUE_; 02356 }
Here is the call graph for this function:

| int C2F() crestringv | ( | char * | fname, | |
| integer * | spos, | |||
| integer * | ilorig, | |||
| integer * | lw, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2228 of file stack1.c.
References C2F, crepointer(), FALSE_, fname, fname_len, ierr, ilorig, istk, lw, spos, stk, stringc(), and TRUE_.
02229 { 02230 integer ierr; 02231 if (C2F(crepointer)(fname, spos, lw, fname_len) == FALSE_) 02232 return FALSE_; 02233 02234 C2F(stringc)(istk(*ilorig ), (char ***)stk(*lw ), &ierr); 02235 02236 if (ierr != 0) { 02237 Scierror(999,"Not enough memory\r\n"); 02238 return FALSE_; 02239 } 02240 return TRUE_; 02241 }
Here is the call graph for this function:

Definition at line 1890 of file stack1.c.
References crelist_G(), ilen, and lw.
Referenced by createvar().
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() crewimat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2166 of file stack1.c.
References Bot, Err, FALSE_, fname, fname_len, get_fname(), iadr, istk, lr, Lstk, lw, m, n, sadr, size, and TRUE_.
02167 { 02168 double size = ((double) *m) * ((double) *n ); 02169 integer ix1,il; 02170 if (*lw + 1 >= Bot) { 02171 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 02172 return FALSE_; 02173 } 02174 il = iadr(*Lstk(*lw )); 02175 Err = il + 3 - iadr(*Lstk(Bot )); 02176 if (Err > -size ) { 02177 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n", 02178 get_fname(fname,fname_len)); 02179 return FALSE_; 02180 } 02181 *istk(il ) = 4; 02182 *istk(il + 1) = *m; 02183 *istk(il + 2) = *n; 02184 *lr = il + 3; 02185 ix1 = il + 3 + *m * *n + 2; 02186 *Lstk(*lw +1) = sadr(ix1); 02187 return TRUE_; 02188 }
Here is the call graph for this function:

| int C2F() crewmat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | m, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2138 of file stack1.c.
References Bot, FALSE_, fname, fname_len, get_fname(), iadr, istk, lr, Lstk, lw, m, sadr, and TRUE_.
02139 { 02140 integer il,ix1; 02141 if (*lw + 1 >= Bot) { 02142 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 02143 return FALSE_; 02144 } 02145 il = iadr(*Lstk(*lw )); 02146 *m = *Lstk(Bot ) - sadr(il+4); 02147 *istk(il ) = 1; 02148 *istk(il + 1) = 1; 02149 *istk(il + 2) = *m; 02150 *istk(il + 3) = 0; 02151 ix1 = il + 4; 02152 *lr = sadr(il+4); 02153 *Lstk(*lw +1) = sadr(il+4) + *m; 02154 return TRUE_; 02155 }
Here is the call graph for this function:

Definition at line 695 of file stack1.c.
References Bot, C2F, c_false, crebmati(), FALSE_, L, lr, Lstk, lw, m, n, sadr, and TRUE_.
00696 { 00697 if (*lw + 1 >= Bot) { 00698 Scierror(18,"fakecrebmat: too many names\r\n"); 00699 return FALSE_; 00700 } 00701 if ( C2F(crebmati)("crebmat", Lstk(*lw ), m, n, lr, &c_false, 7L)== FALSE_) 00702 return FALSE_ ; 00703 *Lstk(*lw +1) = sadr( *lr + *m * *n + 2); 00704 return TRUE_; 00705 }
Here is the call graph for this function:

| int C2F() fakecremat | ( | integer * | lw, | |
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc | |||
| ) |
Definition at line 225 of file stack1.c.
References Bot, C2F, c_false, cremati(), FALSE_, it, L, lc, lr, Lstk, lw, m, n, and TRUE_.
00226 { 00227 if (*lw + 1 >= Bot) return FALSE_; 00228 if (C2F(cremati)("cremat", Lstk(*lw ), it, m, n, lr, lc, &c_false, 6L) == FALSE_) 00229 return FALSE_; 00230 *Lstk(*lw +1) = *lr + *m * *n * (*it + 1); 00231 return TRUE_; 00232 }
Here is the call graph for this function:

Definition at line 1729 of file stack1.c.
References Bot, C2F, Err, error, FALSE_, iadr, istk, lr, Lstk, lw, nchar, retval(), sadr, and TRUE_.
01730 { 01731 static integer cx17 = 17; 01732 int retval; 01733 static integer ilast; 01734 static integer il; 01735 il = iadr((*Lstk(*lw))); 01736 Err = sadr(il + 4 + (*nchar + 1)) - *Lstk(Bot); 01737 if (Err > 0) { 01738 C2F(error)(&cx17); 01739 retval = FALSE_; 01740 } else { 01741 ilast = il + 5; 01742 *Lstk(*lw+1) = sadr(ilast + *istk(ilast)); 01743 *lr = ilast + *istk(ilast - 1); 01744 retval = TRUE_; 01745 } 01746 return retval; 01747 }
Here is the call graph for this function:

| char* get_fname | ( | char * | fname, | |
| unsigned long | fname_len | |||
| ) |
Definition at line 2619 of file stack1.c.
References Fname, i, int, Min, and nlgh.
Referenced by allmat(), bufstore(), C2F(), checklhs(), checkval(), cmatbptr(), cmatcptr(), cmatptr(), cmatsptr(), cre_smat_from_str(), cre_smat_from_str_i(), cre_sparse_from_ptr(), cre_sparse_from_ptr_i(), creadbmat(), creadchain(), creadchains(), creadcmat(), creadmat(), crebmat(), crebmati(), credata(), crehmat(), crehmati(), creimat(), creimati(), cremat(), cremati(), crepointer(), crepointeri(), cresmat(), cresmat1(), cresmat2(), cresmat3(), cresmat4(), cresmati(), cresparse(), cresparsei(), crestringi(), crewimat(), crewmat(), errorinfo(), getbmati(), getcmat(), getexternal(), gethmati(), getilist(), getimati(), getlistbmat(), getlisthmat(), getlistimat(), getlistpointer(), getlistscalar(), getlistsimat(), getlistsmat(), getlistsparse(), getlistvect(), getlistvectcol(), getlistvectrow(), getlistwsmat(), getmati(), getonepoly(), getpointeri(), getpoly(), getrmat(), getrsparse(), getrvect(), getscalar(), getsmati(), getsparsei(), getvect(), getvectcol(), getvectrow(), getwimat(), getwsmati(), lmatj(), matbsize(), matsize(), Name2ptr(), Name2where(), optvarget(), pmatj(), scistring(), smatj(), vcopyobj(), and vectsize().
02620 { 02621 int i; 02622 strncpy(Fname,fname,Min(fname_len,nlgh)); 02623 Fname[fname_len] = '\0'; 02624 for ( i= 0 ; i < (int) fname_len ; i++) 02625 if (Fname[i] == ' ') { Fname[i]= '\0'; break;} 02626 return Fname; 02627 }
Here is the caller graph for this function:

| int C2F() getbmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 581 of file stack1.c.
References C2F, c_false, cx0, fname, fname_len, getbmati(), lr, Lstk, lw, m, n, and topk.
Referenced by cmatbptr(), creadbmat(), getrhsvar(), and matbsize().
00582 { 00583 return C2F(getbmati)(fname, topk, lw, Lstk(*lw ), m, n, lr, &c_false, &cx0, fname_len); 00584 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getbmati | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| int * | inlistx, | |||
| integer * | nel, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 609 of file stack1.c.
References FALSE_, fname, fname_len, get_fname(), iadr, inlistx, istk, lr, lw, m, n, nel, Rhs, spos, topk, and TRUE_.
Referenced by getbmat(), and getlistbmat().
00610 { 00611 integer il; 00612 00613 il = iadr(*lw); 00614 if (*istk(il ) < 0) il = iadr(*istk(il +1)); 00615 00616 if (*istk(il ) != 4) { 00617 if (*inlistx) 00618 Scierror(999,"%s: argument %d >(%d) should be a boolean matrix\r\n", 00619 get_fname(fname,fname_len), Rhs + (*spos - *topk), *nel); 00620 else 00621 Scierror(208,"%s: argument %d should be a boolean matrix\r\n",get_fname(fname,fname_len), 00622 Rhs + (*spos - *topk)); 00623 return FALSE_; 00624 }; 00625 *m = *istk(il +1); 00626 *n = *istk(il +2); 00627 *lr = il + 3; 00628 return TRUE_; 00629 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getcmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 103 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), getmat(), it, lc, lr, lw, m, n, Rhs, topk, and TRUE_.
Referenced by cmatcptr(), and creadcmat().
00104 { 00105 integer lc, it; 00106 00107 if ( C2F(getmat)(fname, topk, lw, &it, m, n, lr, &lc, fname_len) == FALSE_ ) 00108 return FALSE_; 00109 00110 if (it != 1) { 00111 Scierror(202,"%s: Argument %d: wrong type argument expecting a complex matrix\r\n", 00112 get_fname(fname,fname_len), Rhs + (*lw - *topk)); 00113 return FALSE_; 00114 } 00115 return TRUE_; 00116 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getexternal | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| char * | namex, | |||
| int * | typex, | |||
| void *setfun | __PARAMS((char *, int *)), | |||
| unsigned long | fname_len, | |||
| unsigned long | name_len | |||
| ) |
Definition at line 2926 of file stack1.c.
References C2F, cvstr(), cx1, FALSE_, fname, get_fname(), getsmat(), gettype(), i, irep, istk, lr, lw, m, n, namex, nlr, Rhs, topk, TRUE_, and typex.
Referenced by getrhsvar().
02927 { 02928 int ret_value; 02929 integer irep; 02930 integer m, n; 02931 integer il, lr; 02932 integer nlr; 02933 int i; 02934 il = C2F(gettype)(lw); 02935 switch ( il) { 02936 case 11 : case 13 : case 15 : 02937 ret_value = TRUE_; 02938 *typex = FALSE_; 02939 break; 02940 case 10 : 02941 ret_value = C2F(getsmat)(fname, topk, lw, &m, &n, &cx1, &cx1, &lr, &nlr, fname_len); 02942 *typex = TRUE_; 02943 for (i=0; i < (int)name_len ; i++ ) namex[i] = ' '; 02944 if (ret_value == TRUE_) 02945 { 02946 C2F(cvstr)(&nlr, istk(lr ), namex, &cx1, name_len); 02947 namex[nlr] = '\0'; 02948 (*setfun)(namex, &irep); /* , name_len); */ 02949 if (irep == 1) 02950 { 02951 Scierror(50,"%s: entry point %s not found in predefined tables or link table\r\n",get_fname(fname,fname_len),namex); 02952 ret_value = FALSE_; 02953 } 02954 } 02955 break; 02956 default: 02957 Scierror(211,"%s: Argument %d: wrong type argument, expecting a function\r\n\tor string (external function)\r\n", 02958 get_fname(fname,fname_len), Rhs + (*lw - *topk)); 02959 ret_value = FALSE_; 02960 break; 02961 } 02962 return ret_value; 02963 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() gethmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 3179 of file stack1.c.
References C2F, c_false, cx0, fname, fname_len, gethmati(), lr, Lstk, lw, m, n, and topk.
Referenced by getrhsvar().
03180 { 03181 return C2F(gethmati)(fname, topk, lw,Lstk(*lw), m, n, lr, &c_false, &cx0, fname_len); 03182 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() gethmati | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| int * | inlistx, | |||
| integer * | nel, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 3188 of file stack1.c.
References FALSE_, fname, fname_len, get_fname(), iadr, inlistx, istk, lr, lw, m, n, nel, Rhs, sadr, spos, topk, and TRUE_.
Referenced by gethmat(), and getlisthmat().
03189 { 03190 integer il; 03191 il = iadr(*lw); 03192 if (*istk(il ) < 0) il = iadr(*istk(il +1)); 03193 if (*istk(il ) != 9) { 03194 if (*inlistx) 03195 Scierror(999,"%s: argument %d >(%d) should be a matrix of handle\r\n", 03196 get_fname(fname,fname_len), Rhs + (*spos - *topk), *nel); 03197 else 03198 Scierror(201,"%s: argument %d should be a matrix of handle\r\n",get_fname(fname,fname_len), 03199 Rhs + (*spos - *topk)); 03200 return FALSE_; 03201 } 03202 *m = *istk(il + 1); 03203 *n = *istk(il + 2); 03204 *lr = sadr(il+4); 03205 return TRUE_; 03206 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getilist | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | n, | |||
| integer * | ix, | |||
| integer * | ili, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1950 of file stack1.c.
References FALSE_, fname, fname_len, get_fname(), iadr, ili, istk, ix, Lstk, lw, n, Rhs, sadr, topk, and TRUE_.
Referenced by C2F(), getlistbmat(), getlisthmat(), getlistimat(), getlistpointer(), getlistscalar(), getlistsimat(), getlistsmat(), getlistsparse(), getlistvectcol(), getlistvectrow(), getlistwsmat(), getrhsvar(), and lmatj().
01951 { 01952 integer ix1; 01953 integer itype, il; 01954 01955 il = iadr(*Lstk(*lw )); 01956 if (*istk(il ) < 0) { 01957 il = iadr(*istk(il +1)); 01958 } 01959 01960 itype = *istk(il ); 01961 if (itype < 15 || itype > 17) { 01962 Scierror(210,"%s: Argument %d: wrong type argument, expecting a list\r\n", 01963 get_fname(fname,fname_len) , Rhs + (*lw - *topk)); 01964 return FALSE_; 01965 } 01966 *n = *istk(il +1); 01967 if (*ix <= *n) { 01968 ix1 = il + 3 + *n; 01969 *ili = sadr(ix1) + *istk(il + 2 + (*ix - 1) ) - 1; 01970 } else { 01971 *ili = 0; 01972 } 01973 return TRUE_; 01974 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getimat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 429 of file stack1.c.
References C2F, c_false, cx0, fname, fname_len, getimati(), it, lr, Lstk, lw, m, n, and topk.
Referenced by getrhsvar().
00430 { 00431 return C2F(getimati)(fname, topk, lw,Lstk(*lw),it,m, n, lr,&c_false, &cx0, fname_len); 00432 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getimati | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| int * | inlistx, | |||
| integer * | nel, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 438 of file stack1.c.
References FALSE_, fname, fname_len, get_fname(), iadr, inlistx, istk, it, lr, lw, m, n, nel, Rhs, spos, topk, and TRUE_.
Referenced by getimat(), and getlistimat().
00439 { 00440 integer il; 00441 il = iadr(*lw); 00442 if (*istk(il ) < 0) il = iadr(*istk(il +1)); 00443 if (*istk(il ) != 8 ) { 00444 if (*inlistx) 00445 Scierror(999,"%s: argument %d >(%d) should be an int matrix\r\n", 00446 get_fname(fname,fname_len), Rhs + (*spos - *topk), *nel); 00447 else 00448 Scierror(201,"%s: argument %d should be a real or complex matrix\r\n",get_fname(fname,fname_len), 00449 Rhs + (*spos - *topk)); 00450 return FALSE_; 00451 } 00452 *m = *istk(il + 1); 00453 *n = *istk(il + 2); 00454 *it = *istk(il + 3); 00455 *lr = il+4; 00456 return TRUE_; 00457 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getlistbmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 553 of file stack1.c.
References C2F, c_true, FALSE_, fname, fname_len, get_fname(), getbmati(), getilist(), ili, lnum, lr, m, n, nv, Rhs, spos, and topk.
Referenced by getlistrhsvar().
00554 { 00555 integer nv; 00556 integer ili; 00557 00558 if (C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len)== FALSE_) 00559 return FALSE_ ; 00560 00561 if (*lnum > nv) { 00562 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 00563 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 00564 return FALSE_ ; 00565 } 00566 00567 return C2F(getbmati)(fname, topk, spos, &ili, m, n, lr, &c_true, lnum, fname_len); 00568 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getlisthmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 3152 of file stack1.c.
References C2F, c_true, FALSE_, fname, fname_len, get_fname(), gethmati(), getilist(), ili, lnum, lr, m, n, nv, Rhs, spos, and topk.
03153 { 03154 integer nv, ili; 03155 03156 if ( C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len) == FALSE_) 03157 return FALSE_; 03158 03159 if (*lnum > nv) { 03160 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 03161 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 03162 return FALSE_; 03163 } 03164 return C2F(gethmati)(fname, topk, spos, &ili, m, n, lr, &c_true, lnum, fname_len); 03165 }
Here is the call graph for this function:

| int C2F() getlistimat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 402 of file stack1.c.
References C2F, c_true, FALSE_, fname, fname_len, get_fname(), getilist(), getimati(), ili, it, lnum, lr, m, n, nv, Rhs, spos, and topk.
Referenced by getlistrhsvar().
00403 { 00404 integer nv, ili; 00405 00406 if ( C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len) == FALSE_) 00407 return FALSE_; 00408 00409 if (*lnum > nv) { 00410 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 00411 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 00412 return FALSE_; 00413 } 00414 return C2F(getimati)(fname, topk, spos, &ili,it, m, n, lr, &c_true, lnum, fname_len); 00415 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getlistpointer | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | lw, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2519 of file stack1.c.
References C2F, c_true, FALSE_, fname, fname_len, get_fname(), getilist(), getpointeri(), ili, lnum, lw, nv, Rhs, spos, and topk.
Referenced by getlistrhsvar().
02520 { 02521 integer nv, ili; 02522 02523 if ( C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len) == FALSE_) 02524 return FALSE_; 02525 02526 if (*lnum > nv) { 02527 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 02528 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 02529 return FALSE_; 02530 } 02531 return C2F(getpointeri)(fname, topk, spos, &ili, lw, &c_true, lnum, fname_len); 02532 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getlistscalar | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1022 of file stack1.c.
References C2F, c_true, FALSE_, fname, fname_len, get_fname(), getilist(), getmati(), ili, it, lc, lnum, lr, m, n, nv, Rhs, spos, topk, and TRUE_.
01023 { 01024 integer m, n; 01025 integer lc, it, nv; 01026 integer ili; 01027 01028 if ( C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len) == FALSE_) 01029 return FALSE_; 01030 01031 if (*lnum > nv) { 01032 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 01033 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 01034 return FALSE_; 01035 } 01036 01037 if ( C2F(getmati)(fname, topk, spos, &ili, &it, &m, &n, lr, &lc, &c_true, lnum, fname_len) 01038 == FALSE_) 01039 return FALSE_; 01040 01041 if (m * n != 1) { 01042 Scierror(999,"%s: argument %d > (%d) should be a scalar\r\n", 01043 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 01044 return FALSE_; 01045 } 01046 return TRUE_; 01047 }
Here is the call graph for this function:

| int C2F() getlistsimat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | ix, | |||
| integer * | j, | |||
| integer * | lr, | |||
| integer * | nlr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2481 of file stack1.c.
References C2F, c_true, FALSE_, fname, fname_len, get_fname(), getilist(), getsmati(), ili, ix, j, lnum, lr, m, n, nlr, nv, Rhs, spos, and topk.
Referenced by getlistrhsvar().
02482 { 02483 integer nv; 02484 integer ili; 02485 02486 if ( C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len) == FALSE_) 02487 return FALSE_; 02488 02489 if (*lnum > nv) { 02490 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 02491 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 02492 return FALSE_; 02493 } 02494 return C2F(getsmati)(fname, topk, spos, &ili, m, n, ix, j, lr, nlr, &c_true, lnum, fname_len); 02495 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getlistsmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | ix, | |||
| integer * | j, | |||
| integer * | lr, | |||
| integer * | nlr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1095 of file stack1.c.
References C2F, c_true, FALSE_, fname, fname_len, get_fname(), getilist(), getsmati(), ili, ix, j, lnum, lr, m, n, nlr, nv, Rhs, spos, and topk.
01096 { 01097 integer nv, ili; 01098 01099 if ( C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len) == FALSE_) 01100 return FALSE_; 01101 01102 if (*lnum > nv) { 01103 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 01104 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 01105 return FALSE_; 01106 } 01107 return C2F(getsmati)(fname, topk, spos, &ili, m, n, ix,j, lr, nlr, &c_true, lnum, fname_len); 01108 }
Here is the call graph for this function:

| int C2F() getlistsparse | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | nel, | |||
| integer * | mnel, | |||
| integer * | icol, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 750 of file stack1.c.
References C2F, c_true, FALSE_, fname, fname_len, get_fname(), getilist(), getsparsei(), icol, ili, it, lc, lnum, lr, m, mnel, n, nel, nv, Rhs, spos, and topk.
Referenced by getlistrhsvar().
00751 { 00752 integer nv; 00753 integer ili; 00754 00755 if ( C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len) == FALSE_) 00756 return FALSE_ ; 00757 00758 if (*lnum > nv) { 00759 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 00760 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 00761 return FALSE_; 00762 } 00763 00764 return C2F(getsparsei)(fname, topk, spos, &ili, it, m, n, nel, mnel, icol, lr, lc, &c_true, lnum, fname_len); 00765 00766 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getlistvect | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 937 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), it, lc, lnum, lr, m, n, Rhs, spos, topk, and TRUE_.
00938 { 00939 if (C2F(getlistmat)(fname, topk, spos, lnum, it, m, n, lr, lc, fname_len)== FALSE_) 00940 return FALSE_; 00941 00942 if (*m != 1 && *n != 1) { 00943 Scierror(999,"%s: argument %d >(%d) should be a vector \r\n", 00944 get_fname(fname,fname_len),Rhs + (*spos - *topk), *lnum); 00945 return FALSE_; 00946 } 00947 return TRUE_; 00948 }
Here is the call graph for this function:

| int C2F() getlistvectcol | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2423 of file stack1.c.
References C2F, c_true, FALSE_, fname, fname_len, get_fname(), getilist(), getmati(), ili, it, lc, lnum, lr, m, n, nv, Rhs, spos, topk, and TRUE_.
02424 { 02425 integer nv; 02426 integer ili; 02427 if ( C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len) == FALSE_) 02428 return FALSE_; 02429 02430 if (*lnum > nv) { 02431 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 02432 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 02433 return FALSE_; 02434 } 02435 if ( C2F(getmati)(fname, topk, spos, &ili, it, m, n, lr, lc, &c_true, lnum, fname_len) 02436 == FALSE_) 02437 return FALSE_; 02438 02439 if (*n != 1) { 02440 Scierror(999,"%s: argument %d >(%d) should be a column vector \r\n", 02441 get_fname(fname,fname_len),Rhs + (*spos - *topk), *lnum); 02442 return FALSE_; 02443 } 02444 return TRUE_; 02445 }
Here is the call graph for this function:

| int C2F() getlistvectrow | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2362 of file stack1.c.
References C2F, c_true, FALSE_, fname, fname_len, get_fname(), getilist(), getmati(), ili, it, lc, lnum, lr, m, n, nv, Rhs, spos, topk, and TRUE_.
02363 { 02364 integer nv; 02365 integer ili; 02366 02367 if ( C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len) == FALSE_) 02368 return FALSE_; 02369 02370 if (*lnum > nv) { 02371 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 02372 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 02373 return FALSE_; 02374 } 02375 02376 if (C2F(getmati)(fname, topk, spos, &ili, it, m, n, lr, lc, &c_true, lnum, fname_len)== 02377 FALSE_) 02378 return FALSE_; 02379 if (*m != 1) { 02380 Scierror(999,"%s: argument %d >(%d) should be a row vector \r\n", 02381 get_fname(fname,fname_len),Rhs + (*spos - *topk), *lnum); 02382 return FALSE_; 02383 } 02384 return TRUE_; 02385 }
Here is the call graph for this function:

| int C2F() getlistwsmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lnum, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | ilr, | |||
| integer * | ilrd, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1157 of file stack1.c.
References C2F, c_true, FALSE_, fname, fname_len, get_fname(), getilist(), getwsmati(), ili, ilr, ilrd, lnum, m, n, nv, Rhs, spos, and topk.
Referenced by getlistrhsvar().
01158 { 01159 integer nv, ili; 01160 01161 if ( C2F(getilist)(fname, topk, spos, &nv, lnum, &ili, fname_len) == FALSE_) 01162 return FALSE_; 01163 01164 if (*lnum > nv) { 01165 Scierror(999,"%s: argument %d should be a list of size at least %d \r\n", 01166 get_fname(fname,fname_len), Rhs+(*spos - *topk), *lnum); 01167 return FALSE_; 01168 } 01169 return C2F(getwsmati)(fname, topk, spos, &ili, m, n, ilr, ilrd, &c_true, lnum, fname_len); 01170 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 76 of file stack1.c.
References C2F, c_false, cx0, fname, fname_len, getmati(), it, lc, lr, Lstk, lw, m, n, and topk.
Referenced by getcmat(), getrhscvar(), getrhsvar(), getrmat(), getvect(), insmat(), matsize(), and swapmat().
00077 { 00078 return C2F(getmati)(fname, topk, lw,Lstk(*lw), it, m, n, lr, lc, &c_false, &cx0, fname_len); 00079 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getmati | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| int * | inlistx, | |||
| integer * | nel, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 142 of file stack1.c.
References FALSE_, fname, fname_len, get_fname(), iadr, inlistx, istk, it, lc, lr, lw, m, n, nel, Rhs, sadr, spos, topk, and TRUE_.
Referenced by C2F(), getlistscalar(), getlistvectcol(), getlistvectrow(), getmat(), getvectcol(), and getvectrow().
00143 { 00144 integer il; 00145 il = iadr(*lw); 00146 if (*istk(il ) < 0) il = iadr(*istk(il +1)); 00147 if (*istk(il ) != 1) { 00148 if (*inlistx) 00149 Scierror(999,"%s: argument %d >(%d) should be a real or complex matrix\r\n", 00150 get_fname(fname,fname_len), Rhs + (*spos - *topk), *nel); 00151 else 00152 Scierror(201,"%s: argument %d should be a real or complex matrix\r\n",get_fname(fname,fname_len), 00153 Rhs + (*spos - *topk)); 00154 return FALSE_; 00155 } 00156 *m = *istk(il + 1); 00157 *n = *istk(il + 2); 00158 *it = *istk(il + 3); 00159 *lr = sadr(il+4); 00160 if (*it == 1) *lc = *lr + *m * *n; 00161 return TRUE_; 00162 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getonepoly | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | it, | |||
| integer * | md, | |||
| char * | namex, | |||
| integer * | namel, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len, | |||
| unsigned long | name_len | |||
| ) |
Definition at line 2037 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), getpoly(), ilp, istk, it, L, lc, lr, lw, m, md, n, namel, namex, topk, and TRUE_.
02038 { 02039 integer m, n; 02040 integer ilp; 02041 02042 if (C2F(getpoly)(fname, topk, lw, it, &m, &n, namex, namel, &ilp, lr, lc, fname_len, 4L) 02043 == FALSE_) 02044 return FALSE_; 02045 02046 if (m * n != 1) { 02047 Scierror(998,"%s: argument should be a polygon\r\n", 02048 get_fname(fname,fname_len)); 02049 return FALSE_; 02050 } 02051 *md = *istk(ilp +1) - *istk(ilp ) - 1; 02052 *lr += *istk(ilp ); 02053 *lc += *istk(ilp ); 02054 return TRUE_; 02055 }
Here is the call graph for this function:

| int C2F() getpointer | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2501 of file stack1.c.
References C2F, c_false, cx0, fname, fname_len, getpointeri(), lr, Lstk, lw, and topk.
Referenced by getrhsvar().
02502 { 02503 return C2F(getpointeri)(fname, topk, lw,Lstk(*lw), lr, &c_false, &cx0, fname_len); 02504 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getpointeri | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lw, | |||
| integer * | lr, | |||
| int * | inlistx, | |||
| integer * | nel, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2538 of file stack1.c.
References FALSE_, fname, fname_len, get_fname(), iadr, inlistx, istk, lr, lw, nel, Rhs, sadr, sciprint(), spos, topk, and TRUE_.
Referenced by getlistpointer(), and getpointer().
02539 { 02540 integer il; 02541 il = iadr(*lw); 02542 if (*istk(il ) < 0) il = iadr(*istk(il +1)); 02543 if (*istk(il ) != 128) { 02544 sciprint("----%d\r\n",*istk(il)); 02545 if (*inlistx) 02546 Scierror(999,"%s: argument %d >(%d) should be a boxed pointer\r\n", 02547 get_fname(fname,fname_len), Rhs + (*spos - *topk), *nel); 02548 else 02549 Scierror(201,"%s: argument %d should be a boxed pointer\r\n",get_fname(fname,fname_len), 02550 Rhs + (*spos - *topk)); 02551 return FALSE_; 02552 } 02553 *lr = sadr(il+4); 02554 return TRUE_; 02555 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getpoly | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| char * | namex, | |||
| integer * | namel, | |||
| integer * | ilp, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len, | |||
| unsigned long | name_len | |||
| ) |
Definition at line 1998 of file stack1.c.
References C2F, cvstr(), cx1, FALSE_, fname, fname_len, get_fname(), iadr, ilp, istk, it, L, lc, lr, Lstk, lw, m, n, namel, namex, Rhs, sadr, topk, and TRUE_.
Referenced by getonepoly(), and pmatj().
01999 { 02000 integer ix1; 02001 02002 integer il; 02003 il = iadr(*Lstk(*lw )); 02004 if (*istk(il ) != 2) { 02005 Scierror(212,"%s: Argument %d: wrong type argument, expecting a polynomial matrix\r\n", 02006 get_fname(fname,fname_len), Rhs + (*lw - *topk)); 02007 return FALSE_; 02008 } ; 02009 *m = *istk(il +1); 02010 *n = *istk(il +2); 02011 *it = *istk(il + 3); 02012 *namel = 4; 02013 C2F(cvstr)(namel, istk(il + 4), namex, &cx1, 4L); 02014 L11: 02015 if (*namel > 0) { 02016 if ( namex[*namel - 1] == ' ') { 02017 --(*namel); 02018 goto L11; 02019 } 02020 } 02021 *ilp = il + 8; 02022 ix1 = *ilp + *m * *n + 1; 02023 *lr = sadr(ix1) - 1; 02024 *lc = *lr + *istk(*ilp + *m * *n ) - 1; 02025 return TRUE_; 02026 02027 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getrmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 85 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), getmat(), it, lc, lr, lw, m, n, Rhs, topk, and TRUE_.
Referenced by cmatptr(), creadmat(), getrvect(), and getscalar().
00086 { 00087 integer lc, it; 00088 00089 if ( C2F(getmat)(fname, topk, lw, &it, m, n, lr, &lc, fname_len) == FALSE_ ) 00090 return FALSE_; 00091 00092 if (it != 0) { 00093 Scierror(202,"%s: Argument %d: wrong type argument expecting a real matrix\r\n", 00094 get_fname(fname,fname_len), Rhs + (*lw - *topk)); 00095 return FALSE_; 00096 } 00097 return TRUE_; 00098 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getrsparse | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | nel, | |||
| integer * | mnel, | |||
| integer * | icol, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 787 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), getsparse(), icol, it, lc, lr, lw, m, mnel, n, nel, Rhs, topk, and TRUE_.
00788 { 00789 integer lc, it; 00790 if ( C2F(getsparse)(fname, topk, lw, &it, m, n, nel, mnel, icol, lr, &lc, fname_len) == FALSE_ ) 00791 return FALSE_; 00792 00793 if (it != 0) { 00794 Scierror(202,"%s: Argument %d: wrong type argument expecting a real matrix\r\n", 00795 get_fname(fname,fname_len), Rhs + (*lw - *topk)); 00796 return FALSE_; 00797 } 00798 return TRUE_; 00799 }
Here is the call graph for this function:

| int C2F() getrvect | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 980 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), getrmat(), lr, lw, m, n, Rhs, topk, and TRUE_.
00981 { 00982 if ( C2F(getrmat)(fname, topk, lw, m, n, lr, fname_len) == FALSE_) 00983 return FALSE_; 00984 00985 if (*m != 1 && *n != 1) { 00986 Scierror(203,"%s: Argument %d: wrong type argument expecting a real vector\r\n", 00987 get_fname(fname,fname_len), Rhs + (*lw - *topk)); 00988 return FALSE_; 00989 } 00990 return TRUE_ ; 00991 }
Here is the call graph for this function:

| int C2F() getscalar | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1059 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), getrmat(), lr, lw, m, n, Rhs, topk, and TRUE_.
01060 { 01061 integer m, n; 01062 01063 if ( C2F(getrmat)(fname, topk, lw, &m, &n, lr, fname_len) == FALSE_) 01064 return FALSE_; 01065 01066 if (m * n != 1) { 01067 Scierror(204,"%s: Argument %d: wrong wrong type argument expecting a scalar\r\n", 01068 get_fname(fname,fname_len),Rhs + (*lw - *topk)); 01069 return FALSE_ ; 01070 }; 01071 return TRUE_; 01072 }
Here is the call graph for this function:

| int C2F() getsimat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | ix, | |||
| integer * | j, | |||
| integer * | lr, | |||
| integer * | nlr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1143 of file stack1.c.
References C2F, c_false, cx0, fname, fname_len, getsimati(), ix, j, lr, Lstk, lw, m, n, nlr, and topk.
Referenced by run().
01144 { 01145 return C2F(getsimati)(fname, topk, lw, Lstk(*lw), m, n, ix,j , lr ,nlr, &c_false, &cx0, fname_len); 01146 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getsimati | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | ix, | |||
| integer * | j, | |||
| integer * | lr, | |||
| integer * | nlr, | |||
| int * | inlistx, | |||
| integer * | nel, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1230 of file stack1.c.
References iadr, istk, ix, j, lr, lw, m, n, and nlr.
Referenced by getsimat(), and getsmati().
01231 { 01232 integer k, il = iadr(*lw); 01233 if (*istk(il ) < 0) il = iadr(*istk(il +1)); 01234 *m = *istk(il + 1); 01235 *n = *istk(il + 2); 01236 k = *ix - 1 + (*j - 1) * *m; 01237 *lr = il + 4 + *m * *n + *istk(il + 4 + k ); 01238 *nlr = *istk(il + 4 + k +1) - *istk(il + 4 + k ); 01239 return 0; 01240 }
Here is the caller graph for this function:

| int C2F() getsmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | ix, | |||
| integer * | j, | |||
| integer * | lr, | |||
| integer * | nlr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1125 of file stack1.c.
References C2F, c_false, cx0, fname, fname_len, getsmati(), ix, j, lr, Lstk, lw, m, n, nlr, and topk.
Referenced by cmatsptr(), creadchain(), creadchains(), getexternal(), getlengthchain(), getrhsvar(), and smatj().
01126 { 01127 return C2F(getsmati)(fname, topk, lw, Lstk(*lw), m, n, ix,j , lr ,nlr, &c_false, &cx0, fname_len); 01128 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getsmati | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | ix, | |||
| integer * | j, | |||
| integer * | lr, | |||
| integer * | nlr, | |||
| int * | inlistx, | |||
| int * | nel, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1213 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), getsimati(), iadr, inlistx, istk, ix, j, lr, lw, m, n, nel, nlr, Rhs, spos, topk, and TRUE_.
Referenced by getlistsimat(), getlistsmat(), and getsmat().
01214 { 01215 integer il = iadr(*lw); 01216 if (*istk(il ) < 0) il = iadr(*istk(il +1)); 01217 if (*istk(il ) != 10 ) { 01218 if (*inlistx) 01219 Scierror(999,"%s: argument %d >(%d) should be a string matrix\r\n", 01220 get_fname(fname,fname_len), Rhs + (*spos - *topk), *nel); 01221 else 01222 Scierror(201,"%s: argument %d should be a string matrix\r\n",get_fname(fname,fname_len), 01223 Rhs + (*spos - *topk)); 01224 return FALSE_; 01225 } 01226 C2F(getsimati)(fname, topk, spos, lw, m, n, ix,j , lr ,nlr, inlistx, nel, fname_len); 01227 return TRUE_; 01228 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getsparse | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | nel, | |||
| integer * | mnel, | |||
| integer * | icol, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 778 of file stack1.c.
References C2F, c_false, cx0, fname, fname_len, getsparsei(), icol, it, lc, lr, Lstk, lw, m, mnel, n, nel, and topk.
Referenced by getrhsvar(), and getrsparse().
00779 { 00780 return C2F(getsparsei)(fname, topk, lw, Lstk(*lw ), it, m, n, nel, mnel, icol, lr, lc, &c_false, &cx0, fname_len); 00781 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getsparsei | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | nel, | |||
| integer * | mnel, | |||
| integer * | icol, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| int * | inlistx, | |||
| integer * | nellist, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 805 of file stack1.c.
References FALSE_, fname, fname_len, get_fname(), iadr, icol, inlistx, istk, it, lc, lr, lw, m, mnel, n, nel, nellist, Rhs, sadr, spos, topk, and TRUE_.
Referenced by getlistsparse(), and getsparse().
00806 { 00807 integer il; 00808 00809 il = iadr(*lw); 00810 if (*istk(il ) < 0) il = iadr(*istk(il +1)); 00811 00812 if (*istk(il ) != 5) { 00813 if (*inlistx) 00814 Scierror(999,"%s: argument %d >(%d) should be a sparse matrix\r\n", 00815 get_fname(fname,fname_len), Rhs + (*spos - *topk), *nellist); 00816 else 00817 Scierror(999,"%s: argument %d should be a sparse matrix\r\n", 00818 get_fname(fname,fname_len), Rhs + (*spos - *topk)); 00819 return FALSE_; 00820 } 00821 *m = *istk(il + 1); 00822 *n = *istk(il + 2); 00823 *it = *istk(il + 3); 00824 *nel = *istk(il + 4); 00825 *mnel = il + 5; 00826 *icol = il + 5 + *m; 00827 *lr = sadr(il + 5 + *m + *nel); 00828 if (*it == 1) *lc = *lr + *nel; 00829 return TRUE_; 00830 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getvect | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 962 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), getmat(), it, lc, lr, lw, m, n, Rhs, topk, and TRUE_.
Referenced by vectsize().
00963 { 00964 if ( C2F(getmat)(fname, topk, lw, it, m, n, lr, lc, fname_len) == FALSE_) 00965 return FALSE_; 00966 00967 if (*m != 1 && *n != 1) { 00968 Scierror(214,"%s: Argument %d: wrong type argument expecting a vector\r\n", 00969 get_fname(fname,fname_len), Rhs + (*lw - *topk)); 00970 return FALSE_; 00971 }; 00972 return TRUE_; 00973 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() getvectcol | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2465 of file stack1.c.
References C2F, c_false, cx0, FALSE_, fname, fname_len, get_fname(), getmati(), it, lc, lr, Lstk, m, n, Rhs, spos, topk, and TRUE_.
02466 { 02467 02468 if ( C2F(getmati)(fname, topk, spos, Lstk(*spos ), it, m, n, lr, lc, &c_false, &cx0, fname_len) 02469 == FALSE_ ) 02470 return FALSE_; 02471 02472 if (*n != 1) { 02473 Scierror(999,"%s: argument %d should be a column vector \r\n", 02474 get_fname(fname,fname_len),Rhs + (*spos - *topk)); 02475 return FALSE_; 02476 } 02477 return TRUE_; 02478 }
Here is the call graph for this function:

| int C2F() getvectrow | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2406 of file stack1.c.
References C2F, c_false, cx0, FALSE_, fname, fname_len, get_fname(), getmati(), it, lc, lr, Lstk, m, n, Rhs, spos, topk, and TRUE_.
02407 { 02408 if (C2F(getmati)(fname, topk, spos, Lstk(*spos ), it, m, n, lr, lc, &c_false, &cx0, fname_len) == FALSE_) 02409 return FALSE_; 02410 02411 if (*m != 1) { 02412 Scierror(999,"%s: argument %d should be a row vector \r\n", 02413 get_fname(fname,fname_len),Rhs + (*spos - *topk)); 02414 return FALSE_; 02415 } 02416 return TRUE_ ; 02417 }
Here is the call graph for this function:

| int C2F() getwimat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2200 of file stack1.c.
References FALSE_, fname, fname_len, get_fname(), iadr, istk, lr, Lstk, lw, m, n, Rhs, topk, and TRUE_.
02201 { 02202 integer il; 02203 il = iadr(*Lstk(*lw )); 02204 if (*istk(il ) < 0) { 02205 il = iadr(*istk(il +1)); 02206 } 02207 if (*istk(il ) != 4) { 02208 Scierror(213,"%s: Argument %d: wrong type argument, expecting a working\r\n\tinteger matrix\r\n", 02209 get_fname(fname,fname_len),Rhs + (*lw - *topk)); 02210 return FALSE_; 02211 }; 02212 *m = *istk(il + 1); 02213 *n = *istk(il + 2); 02214 *lr = il + 3; 02215 return TRUE_; 02216 }
Here is the call graph for this function:

| int C2F() getwsmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | ilr, | |||
| integer * | ilrd, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1179 of file stack1.c.
References C2F, c_false, cx0, fname, fname_len, getwsmati(), ilr, ilrd, Lstk, lw, m, n, and topk.
Referenced by __PARAMS(), getrhsvar(), and GetString().
01180 { 01181 return C2F(getwsmati)(fname, topk, lw,Lstk(*lw), m, n, ilr, ilrd, &c_false, &cx0, fname_len); 01182 }
Here is the call graph for this function:

Here is the caller graph for this function:

| static int C2F() getwsmati | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | spos, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | ilr, | |||
| integer * | ilrd, | |||
| int * | inlistx, | |||
| integer * | nel, | |||
| unsigned long | fname_len | |||
| ) | [static] |
Definition at line 1188 of file stack1.c.
References FALSE_, fname, fname_len, get_fname(), iadr, ilr, ilrd, inlistx, istk, lw, m, n, nel, Rhs, spos, topk, and TRUE_.
Referenced by getlistwsmat(), and getwsmat().
01189 { 01190 integer il; 01191 il = iadr(*lw); 01192 if (*istk(il ) < 0) il = iadr(*istk(il +1)); 01193 if (*istk(il ) != 10) { 01194 if (*inlistx) 01195 Scierror(999,"%s: argument %d >(%d) should be a matrix of strings\r\n", 01196 get_fname(fname,fname_len), Rhs + (*spos - *topk), *nel); 01197 else 01198 Scierror(207,"%s: Argument %d : wrong type argument, expecting a matrix of strings\r\n", 01199 get_fname(fname,fname_len), Rhs + (*spos - *topk)); 01200 return FALSE_; 01201 } 01202 *m = *istk(il + 1); 01203 *n = *istk(il + 2); 01204 *ilrd = il + 4; 01205 *ilr = il + 5 + *m * *n; 01206 return TRUE_; 01207 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() insmat | ( | integer * | topk, | |
| integer * | lw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lr, | |||
| integer * | lc, | |||
| integer * | lr1, | |||
| integer * | lc1 | |||
| ) |
Definition at line 2778 of file stack1.c.
References C2F, c_n1, cremat(), dcopy(), FALSE_, getmat(), it, it1, L, lc, lc1, lr, lr1, lw, m, m1, n, n1, stk, topk, and TRUE_.
02779 { 02780 02781 integer ix1; 02782 integer c_n1 = -1; 02783 integer m1, n1; 02784 integer lc0, it1, lr0; 02785 02786 if (C2F(getmat)("insmat", topk, lw, &it1, &m1, &n1, &lr0, &lc0, 6L) == FALSE_) 02787 return FALSE_; 02788 02789 if (C2F(cremat)("insmat", lw, it, m, n, lr, lc, 6L) == FALSE_) 02790 return FALSE_; 02791 02792 ix1 = *lw + 1; 02793 02794 if (C2F(cremat)("insmat", &ix1, &it1, &m1, &n1, lr1, lc1, 6L) == FALSE_) 02795 return FALSE_; 02796 02797 ix1 = m1 * n1 * (it1 + 1); 02798 C2F(dcopy)(&ix1, stk(lr0 ), &c_n1, stk(*lr1 ), &c_n1); 02799 return TRUE_; 02800 }
Here is the call graph for this function:

| int C2F() lcrestringmatfromc | ( | char * | fname, | |
| integer * | spos, | |||
| integer * | numi, | |||
| integer * | stlw, | |||
| integer * | lorig, | |||
| integer * | m, | |||
| integer * | n, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2310 of file stack1.c.
References Bot, C2F, cstringf(), FALSE_, iadr, ierr, istk, lorig, Lstk, m, n, numi, sadr, spos, stk, stlw, and TRUE_.
02311 { 02312 integer ix1; 02313 integer ierr; 02314 integer il, ilw; 02315 ilw = iadr(*stlw); 02316 ix1 = *Lstk(Bot ) - *stlw; 02317 C2F(cstringf)((char ***)stk(*lorig ), istk(ilw ), m, n, &ix1, &ierr); 02318 if (ierr > 0) { 02319 Scierror(999,"Not enough memory\r\n"); 02320 return FALSE_; 02321 } 02322 ix1 = ilw + 5 + *m * *n + *istk(ilw + 4 + *m * *n ) - 1; 02323 *stlw = sadr(ix1); 02324 il = iadr(*Lstk(*spos )); 02325 ix1 = il + *istk(il +1) + 3; 02326 *istk(il + 2 + *numi ) = *stlw - sadr(ix1) + 1; 02327 if (*numi == *istk(il +1)) { 02328 *Lstk(*spos +1) = *stlw; 02329 } 02330 return TRUE_; 02331 }
Here is the call graph for this function:

| int C2F() listcrebmat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | numi, | |||
| integer * | stlw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lrs, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 641 of file stack1.c.
References C2F, c_true, crebmati(), FALSE_, fname, fname_len, iadr, istk, lrs, Lstk, lw, m, n, numi, sadr, stlw, and TRUE_.
Referenced by createlistvarfrom(), and createlistvarfromptr().
00642 { 00643 integer ix1; 00644 integer il; 00645 00646 if ( C2F(crebmati)(fname, stlw, m, n, lrs, &c_true, fname_len)== FALSE_) 00647 return FALSE_; 00648 00649 ix1 = *lrs + *m * *n + 2; 00650 *stlw = sadr(ix1); 00651 il = iadr(*Lstk(*lw )); 00652 ix1 = il + *istk(il +1) + 3; 00653 *istk(il + 2 + *numi ) = *stlw - sadr(ix1) + 1; 00654 if (*numi == *istk(il +1)) *Lstk(*lw +1) = *stlw; 00655 return TRUE_; 00656 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() listcrehmat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | numi, | |||
| integer * | stlw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lrs, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 3097 of file stack1.c.
References C2F, c_true, crehmati(), FALSE_, fname, fname_len, iadr, istk, lrs, Lstk, lw, m, n, numi, sadr, stlw, and TRUE_.
Referenced by createlistvarfrom().
03098 { 03099 integer ix1,il ; 03100 03101 if (C2F(crehmati)(fname, stlw, m, n, lrs, &c_true, fname_len)==FALSE_) 03102 return FALSE_ ; 03103 03104 *stlw = *lrs + *m * *n; 03105 il = iadr(*Lstk(*lw )); 03106 ix1 = il + *istk(il +1) + 3; 03107 *istk(il + 2 + *numi ) = *stlw - sadr(ix1) + 1; 03108 if (*numi == *istk(il +1)) *Lstk(*lw +1) = *stlw; 03109 return TRUE_; 03110 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() listcreimat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | numi, | |||
| integer * | stlw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lrs, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 470 of file stack1.c.
References C2F, c_true, creimati(), FALSE_, fname, fname_len, iadr, istk, it, lrs, Lstk, lw, m, memused, n, numi, sadr, stlw, and TRUE_.
Referenced by createlistvarfrom(), and createlistvarfromptr().
00471 { 00472 integer ix1,il ; 00473 00474 if (C2F(creimati)(fname, stlw,it, m, n, lrs, &c_true, fname_len)==FALSE_) 00475 return FALSE_ ; 00476 *stlw = sadr(*lrs + memused(*it,*m * *n)); 00477 il = iadr(*Lstk(*lw )); 00478 ix1 = il + *istk(il +1) + 3; 00479 *istk(il + 2 + *numi ) = *stlw - sadr(ix1) + 1; 00480 if (*numi == *istk(il +1)) *Lstk(*lw +1) = *stlw; 00481 return TRUE_; 00482 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() listcremat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | numi, | |||
| integer * | stlw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | lrs, | |||
| integer * | lcs, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 175 of file stack1.c.
References C2F, c_true, cremati(), FALSE_, fname, fname_len, iadr, istk, it, lcs, lrs, Lstk, lw, m, n, numi, sadr, stlw, and TRUE_.
Referenced by createlistcvarfrom(), createlistcvarfromptr(), createlistvarfrom(), and createlistvarfromptr().
00176 { 00177 integer ix1,il ; 00178 00179 if (C2F(cremati)(fname, stlw, it, m, n, lrs, lcs, &c_true, fname_len)==FALSE_) 00180 return FALSE_ ; 00181 00182 *stlw = *lrs + *m * *n * (*it + 1); 00183 il = iadr(*Lstk(*lw )); 00184 ix1 = il + *istk(il +1) + 3; 00185 *istk(il + 2 + *numi ) = *stlw - sadr(ix1) + 1; 00186 if (*numi == *istk(il +1)) *Lstk(*lw +1) = *stlw; 00187 return TRUE_; 00188 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() listcrepointer | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | numi, | |||
| integer * | stlw, | |||
| integer * | lrs, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2247 of file stack1.c.
References C2F, c_true, crepointeri(), FALSE_, fname, fname_len, iadr, istk, lrs, Lstk, lw, numi, sadr, stlw, and TRUE_.
Referenced by createlistvarfrom(), and createlistvarfromptr().
02248 { 02249 integer ix1,il ; 02250 if (C2F(crepointeri)(fname, stlw, lrs, &c_true, fname_len)==FALSE_) 02251 return FALSE_ ; 02252 *stlw = *lrs + 2; 02253 il = iadr(*Lstk(*lw )); 02254 ix1 = il + *istk(il +1) + 3; 02255 *istk(il + 2 + *numi ) = *stlw - sadr(ix1) + 1; 02256 if (*numi == *istk(il +1)) *Lstk(*lw +1) = *stlw; 02257 return TRUE_; 02258 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() listcresmat | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | numi, | |||
| integer * | stlw, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | nchar, | |||
| integer * | job, | |||
| integer * | ilrs, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1256 of file stack1.c.
References C2F, cresmati(), FALSE_, fname, fname_len, iadr, ilrs, istk, job, Lstk, lw, m, n, nchar, numi, sadr, stlw, sz, and TRUE_.
01257 { 01258 integer ix1; 01259 integer il, sz; 01260 01261 if ( C2F(cresmati)(fname, stlw, m, n, nchar, job, ilrs, &sz, fname_len) == FALSE_ ) 01262 return FALSE_; 01263 ix1 = *ilrs + sz; 01264 *stlw = sadr(ix1); 01265 il = iadr(*Lstk(*lw )); 01266 ix1 = il + *istk(il +1) + 3; 01267 *istk(il + 2 + *numi ) = *stlw - sadr(ix1) + 1; 01268 if (*numi == *istk(il +1)) *Lstk(*lw +1) = *stlw; 01269 return TRUE_; 01270 }
Here is the call graph for this function:

| int C2F() listcresparse | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | numi, | |||
| integer * | stlw, | |||
| integer * | it, | |||
| integer * | m, | |||
| integer * | n, | |||
| integer * | nel, | |||
| integer * | mnel, | |||
| integer * | icol, | |||
| integer * | lrs, | |||
| integer * | lcs, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 843 of file stack1.c.
References C2F, cresparsei(), FALSE_, fname, fname_len, iadr, icol, istk, it, lcs, lrs, Lstk, lw, m, mnel, n, nel, numi, sadr, stlw, and TRUE_.
00844 { 00845 integer ix1,il; 00846 00847 if (C2F(cresparsei)(fname, stlw, it, m, n, nel, mnel, icol, lrs, lcs, fname_len)== FALSE_) 00848 return FALSE_ ; 00849 00850 *stlw = *lrs + *nel * (*it + 1); 00851 il = iadr(*Lstk(*lw )); 00852 ix1 = il + *istk(il +1) + 3; 00853 *istk(il + 2 + *numi ) = *stlw - sadr(ix1) + 1; 00854 if (*numi == *istk(il +1)) { 00855 *Lstk(*lw +1) = *stlw; 00856 } 00857 return TRUE_; 00858 }
Here is the call graph for this function:

| int C2F() listcrestring | ( | char * | fname, | |
| integer * | lw, | |||
| integer * | numi, | |||
| integer * | stlw, | |||
| integer * | nch, | |||
| integer * | ilrs, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 1647 of file stack1.c.
References C2F, crestringi(), FALSE_, fname, fname_len, iadr, ilrs, istk, Lstk, lw, nch, numi, sadr, stlw, and TRUE_.
Referenced by createlistvarfrom(), and createlistvarfromptr().
01648 { 01649 integer ix1, il ; 01650 01651 if ( C2F(crestringi)(fname, stlw, nch, ilrs, fname_len) == FALSE_ ) 01652 return FALSE_; 01653 01654 ix1 = *ilrs - 1 + *istk(*ilrs - 2 +1); 01655 *stlw = sadr(ix1); 01656 il = iadr(*Lstk(*lw )); 01657 ix1 = il + *istk(il +1) + 3; 01658 *istk(il + 2 + *numi ) = *stlw - sadr(ix1) + 1; 01659 if (*numi == *istk(il +1)) { 01660 *Lstk(*lw +1) = *stlw; 01661 } 01662 return TRUE_; 01663 }
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 1910 of file stack1.c.
References Bot, C2F, cx1, dcopy(), Err, FALSE_, fname, fname_len, get_fname(), getilist(), iadr, istk, j, Lstk, lw, n, sadr, stk, and TRUE_.
01911 { 01912 integer ix1, ix2; 01913 integer n; 01914 integer il, ilj, slj; 01915 if (*lw + 1 >= Bot) { 01916 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 01917 return FALSE_; 01918 } 01919 ix1 = *lw - 1; 01920 ix2 = *lw - 1; 01921 if (! C2F(getilist)(fname, &ix1, &ix2, &n, j, &ilj, fname_len)) 01922 return FALSE_; 01923 if (*j > n) return FALSE_; 01924 /* a ameliorer */ 01925 il = iadr(*Lstk(*lw - 2 +1)); 01926 ix1 = il + 3 + n; 01927 slj = sadr(ix1) + *istk(il + 2 + (*j - 1) ) - 1; 01928 n = *istk(il + 2 + *j ) - *istk(il + 2 + (*j - 1) ); 01929 Err = *Lstk(*lw ) + n - *Lstk(Bot ); 01930 if (Err > 0) return FALSE_; 01931 C2F(dcopy)(&n, stk(slj ), &cx1, stk(*Lstk(*lw ) ), &cx1); 01932 *Lstk(*lw +1) = *Lstk(*lw ) + n; 01933 return TRUE_; 01934 }
Here is the call graph for this function:

| int C2F() matbsize | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 592 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), getbmat(), lr, lw, m, m1, n, n1, Rhs, topk, and TRUE_.
00593 { 00594 integer m1, n1, lr; 00595 if ( C2F(getbmat)(fname, topk, lw, &m1, &n1, &lr, fname_len) == FALSE_) 00596 return FALSE_; 00597 if (*m != m1 || *n != n1) { 00598 Scierror(205,"%s: Argument %d, wrong matrix size (%d,%d) expected\r\n", 00599 get_fname(fname,fname_len),Rhs + (*lw - *topk),*m,*n); 00600 return FALSE_; 00601 } 00602 return TRUE_; 00603 }
Here is the call graph for this function:

| int C2F() matsize | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | m, | |||
| integer * | n, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 124 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), getmat(), it, lc, lr, lw, m, m1, n, n1, Rhs, topk, and TRUE_.
00125 { 00126 integer m1, n1, lc, it, lr; 00127 00128 if ( C2F(getmat)(fname, topk, lw, &it, &m1, &n1, &lr, &lc, fname_len) == FALSE_) 00129 return FALSE_; 00130 if (*m != m1 || *n != n1) { 00131 Scierror(205,"%s: Argument %d: wrong matrix size (%d,%d) expected \r\n", 00132 get_fname(fname,fname_len), Rhs + (*lw - *topk), *m,*n); 00133 return FALSE_; 00134 } 00135 return TRUE_; 00136 }
Here is the call graph for this function:

Definition at line 2561 of file stack1.c.
References Bot, C2F, Err, FALSE_, iadr, ir, istk, it, Lstk, lw, m, n, pr, Rhs, sadr, size, stk, Top, and TRUE_.
Referenced by mxCreateSparse().
02562 { 02563 integer ix1; 02564 integer jc, il, ir; int NZMAX; 02565 int k,pr; 02566 double size; 02567 if (*lw + 1 >= Bot) { 02568 Scierror(18,"too many names\r\n"); 02569 return FALSE_; 02570 } 02571 02572 il = iadr(*Lstk(*lw )); 02573 NZMAX=*nzMax; 02574 if (NZMAX==0) NZMAX=1; 02575 ix1 = il + 4 + (*n + 1) + NZMAX; 02576 size = (*it + 1) * NZMAX ; 02577 Err = sadr(ix1) - *Lstk(Bot ); 02578 if (Err > -size ) { 02579 Scierror(17,"stack size exceeded (Use stacksize function to increase it)\r\n"); 02580 return FALSE_; 02581 }; 02582 *istk(il ) = 7; 02583 /* si m*n=0 les deux dimensions sont mises a zero. 02584 *istk(il +1) = Min(*m , *m * *n); 02585 *istk(il + 1 +1) = Min(*n, *m * *n); */ 02586 *istk(il +1) = *m; 02587 *istk(il + 2) = *n; 02588 *istk(il + 3) = *it; 02589 *istk(il + 4) = NZMAX; 02590 jc = il + 5; 02591 02592 for (k=0; k<*n+1; ++k) *istk(jc+k)=0; /* Jc =0 */ 02593 ir = jc + *n + 1; 02594 for (k=0; k<NZMAX; ++k) *istk(ir+k)=0; /* Ir = 0 */ 02595 pr = sadr(ir + NZMAX ); 02596 02597 for (k=0; k<NZMAX; ++k) *stk(pr+k)=0; /* Pr =0 */ 02598 ix1 = il + 4 + (*n + 1) + NZMAX; 02599 *Lstk(*lw +1) = sadr(ix1) + (*it + 1) * NZMAX + 1; 02600 02601 C2F(intersci).ntypes[*lw-Top+Rhs-1] = '$'; 02602 C2F(intersci).iwhere[*lw-Top+Rhs-1] = *Lstk(*lw); 02603 /* C2F(intersci).lad[*lw-Top+Rhs-1] = should point to numeric data */ 02604 return TRUE_; 02605 }
Here is the caller graph for this function:

| int C2F() optvarget | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | iel, | |||
| char * | namex, | |||
| unsigned long | fname_len, | |||
| unsigned long | name_len | |||
| ) |
Definition at line 2985 of file stack1.c.
References C2F, cvname(), cx0, FALSE_, Fin, fname, fname_len, get_fname(), id, iel, name_len, namex, nsiz, Rhs, stackg(), and TRUE_.
02986 { 02987 integer id[nsiz]; 02988 C2F(cvname)(id, namex, &cx0, name_len); 02989 Fin = 0; 02990 /* recupere la variable et incremente top */ 02991 C2F(stackg)(id); 02992 if (Fin == 0) { 02993 Scierror(999,"%s: optional argument %d not given and default value %s not found\r\n", 02994 get_fname(fname,fname_len),*iel,namex); 02995 return FALSE_; 02996 } 02997 ++Rhs; 02998 return TRUE_; 02999 }
Here is the call graph for this function:

Definition at line 2066 of file stack1.c.
References Bot, C2F, cx1, cx4, dcopy(), Err, FALSE_, fname, fname_len, get_fname(), getpoly(), iadr, icopy(), ilp, istk, it, ix, j, L, l, lc, lr, Lstk, lw, m, m2, Max, n, n2, namel, namex, sadr, stk, Top, and TRUE_.
02067 { 02068 integer ix1, ix2; 02069 char namex[4]; 02070 integer incj; 02071 integer ix, l, m, n, namel; 02072 integer l2, m2, n2, lc, il, lj, it, lr, il2, ilp; 02073 02074 if (*lw + 1 >= Bot) { 02075 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 02076 return FALSE_; 02077 } 02078 ix1 = *lw - 1; 02079 ix2 = *lw - 1; 02080 if (! C2F(getpoly)(fname, &ix1, &ix2, &it, &m, &n, namex, &namel, &ilp, &lr, &lc, fname_len, 4L)) { 02081 return FALSE_; 02082 } 02083 if (*j > n) return FALSE_; 02084 02085 /* a ameliorer */ 02086 il = iadr(*Lstk(*lw - 2 +1)); 02087 incj = (*j - 1) * m; 02088 il2 = iadr(*Lstk(*lw )); 02089 ix1 = il2 + 4; 02090 l2 = sadr(ix1); 02091 m2 = Max(m,1); 02092 ix1 = il + 9 + m * n; 02093 l = sadr(ix1); 02094 n = *istk(il + 8 + m * n ); 02095 ix1 = il2 + 9 + m2; 02096 l2 = sadr(ix1); 02097 n2 = *istk(il + 8 + incj + m ) - *istk(il + 8 + incj ); 02098 Err = l2 + n2 * (it + 1) - *Lstk(Bot ); 02099 if (Err > 0) { 02100 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n",get_fname(fname,fname_len)); 02101 return FALSE_; 02102 } 02103 C2F(icopy)(&cx4, istk(il + 3 +1), &cx1, istk(il2 + 3 +1), &cx1); 02104 il2 += 8; 02105 il = il + 8 + incj; 02106 lj = l - 1 + *istk(il ); 02107 *istk(il2 ) = 1; 02108 ix1 = m2; 02109 for (ix = 1; ix <= ix1; ++ix) { 02110 *istk(il2 + ix ) = *istk(il2 - 1 + ix ) + *istk(il + ix ) - *istk(il - 1 + ix ); 02111 } 02112 C2F(dcopy)(&n2, stk(lj ), &cx1, stk(l2 ), &cx1); 02113 if (it == 1) { 02114 C2F(dcopy)(&n2, stk(lj + n ), &cx1, stk(l2 + n2 ), &cx1); 02115 } 02116 *Lstk(Top +1) = l2 + n2 * (it + 1); 02117 il2 += -8; 02118 *istk(il2 ) = 2; 02119 *istk(il2 +1) = m2; 02120 *istk(il2 + 1 +1) = 1; 02121 *istk(il2 + 2 +1) = it; 02122 return TRUE_; 02123 }
Here is the call graph for this function:

| int C2F() realmat | ( | ) |
Definition at line 2635 of file stack1.c.
References iadr, istk, Lstk, m, n, sadr, and Top.
02636 { 02637 integer ix1; 02638 integer m, n, il; 02639 02640 il = iadr(*Lstk(Top )); 02641 if (*istk(il + 3 ) == 0) return 0; 02642 m = *istk(il + 1); 02643 n = *istk(il + 2); 02644 *istk(il + 3) = 0; 02645 ix1 = il + 4; 02646 *Lstk(Top +1) = sadr(ix1) + m * n; 02647 return 0; 02648 }
Definition at line 1758 of file stack1.c.
References Bot, C2F, cx1, Err, FALSE_, fname, fname_len, get_fname(), getsmat(), iadr, icopy(), il1, istk, ix, j, lr, Lstk, lw, m, n, sadr, and TRUE_.
01759 { 01760 integer ix1, ix2; 01761 integer incj; 01762 integer ix, m, n; 01763 integer lj, nj, lr, il1, il2, nlj; 01764 integer il1j, il2p; 01765 01766 if (*lw + 1 >= Bot) { 01767 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 01768 return FALSE_; 01769 } 01770 ix1 = *lw - 1; 01771 ix2 = *lw - 1; 01772 01773 if (! C2F(getsmat)(fname, &ix1, &ix2, &m, &n, &cx1, &cx1, &lr, &nlj, fname_len)) 01774 return FALSE_; 01775 if (*j > n) return FALSE_; 01776 01777 il1 = iadr(*Lstk(*lw - 2 +1)); 01778 il2 = iadr(*Lstk(*lw )); 01779 /* nombre de caracteres de la jieme colonne */ 01780 incj = (*j - 1) * m; 01781 nj = *istk(il1 + 4 + incj + m ) - *istk(il1 + 4 + incj ); 01782 /* test de place */ 01783 ix1 = il2 + 4 + m + nj + 1; 01784 Err = sadr(ix1) - *Lstk(Bot ); 01785 if (Err > 0) { 01786 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n",get_fname(fname,fname_len)); 01787 return FALSE_; 01788 } 01789 *istk(il2 ) = 10; 01790 *istk(il2 +1) = m; 01791 *istk(il2 + 1 +1) = 1; 01792 *istk(il2 + 2 +1) = 0; 01793 il2p = il2 + 4; 01794 il1j = il1 + 4 + incj; 01795 *istk(il2p ) = 1; 01796 ix1 = m; 01797 for (ix = 1; ix <= ix1; ++ix) { 01798 *istk(il2p + ix ) = *istk(il2p - 1 + ix ) + *istk(il1j + ix ) - *istk(il1j + ix - 2 +1); 01799 } 01800 lj = *istk(il1 + 4 + incj ) + il1 + 4 + m * n; 01801 C2F(icopy)(&nj, istk(lj ), &cx1, istk(il2 + 4 + m +1), &cx1); 01802 ix1 = il2 + 4 + m + nj + 1; 01803 *Lstk(*lw +1) = sadr(ix1); 01804 return TRUE_; 01805 }
Here is the call graph for this function:

Definition at line 2810 of file stack1.c.
References iadr, istk, ix, l, Lstk, lw, m, Min, n, sadr, sciprint(), stk, and typ.
02811 { 02812 integer ix, l, m, n; 02813 integer il, nn; 02814 02815 if (*lw == 0) { 02816 return 0; 02817 } 02818 il = iadr(*Lstk(*lw )); 02819 if (*istk(il ) < 0) { 02820 il = iadr(*istk(il +1)); 02821 } 02822 m = *istk(il +1); 02823 n = *istk(il + 1 +1); 02824 02825 sciprint("-----------------stack-info-----------------\r\n"); 02826 sciprint("lw=%d -[istk]-> il lw+1 -[istk]-> %d \r\n", 02827 *lw,iadr(*Lstk(*lw+1))); 02828 sciprint("istk(%d:..) ->[%d %d %d %d ....]\r\n", 02829 il, istk(il),istk(il+1),istk(il+2),istk(il+3) ); 02830 if (*typ == 1) { 02831 l = sadr(il+4); 02832 nn = Min(m*n,3); 02833 for (ix = 0; ix <= nn-1 ; ++ix) { 02834 sciprint("%5.2f ",stk(l + ix )); 02835 } 02836 } else { 02837 l = il + 4; 02838 nn = Min(m*n,3); 02839 for (ix = 0; ix <= nn-1; ++ix) { 02840 sciprint("%5d ",istk(l + ix )); 02841 } 02842 } 02843 sciprint("\r\n-----------------stack-info-----------------\r\n"); 02844 return 0; 02845 }
Here is the call graph for this function:

| int C2F() swapmat | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | it1, | |||
| integer * | m1, | |||
| integer * | n1, | |||
| integer * | mn1, | |||
| integer * | it2, | |||
| integer * | m2, | |||
| integer * | n2, | |||
| integer * | mn2, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 2725 of file stack1.c.
References C2F, copyobj(), cremat(), FALSE_, fname, fname_len, getmat(), it1, it2, lc, lr, lw, m1, m2, mn1, mn2, n1, n2, topk, and TRUE_.
02726 { 02727 integer ix1, ix2; 02728 integer lc, lr; 02729 ix1 = *lw + 1; 02730 02731 if ( C2F(cremat)(fname, &ix1, it1, m1, n1, &lr, &lc, fname_len)== FALSE_) 02732 return FALSE_ ; 02733 02734 ix1 = *lw + 2; 02735 C2F(copyobj)(fname, lw, &ix1, fname_len); 02736 ix1 = *lw + 1; 02737 C2F(copyobj)(fname, &ix1, lw, fname_len); 02738 ix1 = *lw + 2; 02739 ix2 = *lw + 1; 02740 C2F(copyobj)(fname, &ix1, &ix2, fname_len); 02741 if ( C2F(getmat)(fname, topk, lw, it1, m1, n1, &lr, &lc, fname_len) == FALSE_ ) 02742 return FALSE_; 02743 02744 ix1 = *lw + 1; 02745 02746 if (C2F(getmat)(fname, topk, &ix1, it2, m2, n2, &lr, &lc, fname_len) == FALSE_ ) 02747 return FALSE_; 02748 02749 *mn1 = *m1 * *n1; 02750 *mn2 = *m2 * *n2; 02751 02752 return TRUE_; 02753 }
Here is the call graph for this function:

Definition at line 2686 of file stack1.c.
References Bot, C2F, cx1, dcopy(), Err, FALSE_, fname, fname_len, get_fname(), l, Lstk, lw, lwd, stk, TRUE_, and unsfdcopy().
Referenced by mexCallSCI(), mvfromto(), run(), and VCopyObj().
02687 { 02688 integer l; 02689 integer l1, lv; 02690 l = *Lstk(*lw ); 02691 lv = *Lstk(*lw +1) - *Lstk(*lw ); 02692 l1 = *Lstk(*lwd ); 02693 if (*lwd + 1 >= Bot) { 02694 Scierror(18,"%s: too many names\r\n",get_fname(fname,fname_len)); 02695 return FALSE_; 02696 } 02697 Err = *Lstk(*lwd ) + lv - *Lstk(Bot ); 02698 if (Err > 0) { 02699 Scierror(17,"%s: stack size exceeded (Use stacksize function to increase it)\r\n", 02700 get_fname(fname,fname_len)); 02701 return FALSE_; 02702 } 02703 /* check for overlaping region */ 02704 if (l+lv>l1||l1+lv>l) 02705 C2F(unsfdcopy)(&lv, stk(l), &cx1, stk(l1), &cx1); 02706 else 02707 C2F(dcopy)(&lv, stk(l), &cx1, stk(l1), &cx1); 02708 02709 *Lstk(*lwd +1) = *Lstk(*lwd ) + lv; 02710 return TRUE_; 02711 }
Here is the call graph for this function:

Here is the caller graph for this function:

| int C2F() vectsize | ( | char * | fname, | |
| integer * | topk, | |||
| integer * | lw, | |||
| integer * | n, | |||
| unsigned long | fname_len | |||
| ) |
Definition at line 999 of file stack1.c.
References C2F, FALSE_, fname, fname_len, get_fname(), getvect(), it1, lc, lr, lw, m1, n, n1, Rhs, topk, and TRUE_.
01000 { 01001 integer m1, n1, lc, lr, it1; 01002 01003 if ( C2F(getvect)(fname, topk, lw, &it1, &m1, &n1, &lr, &lc, fname_len) == FALSE_) 01004 return FALSE_; 01005 01006 if (*n != m1 * n1) { 01007 Scierror(206,"%s: Argument %d wrong vector size (%d) expected\r\n", 01008 get_fname(fname,fname_len), Rhs + (*lw - *topk), *n); 01009 return FALSE_; 01010 } 01011 return TRUE_; 01012 }
Here is the call graph for this function:

Definition at line 19 of file stack1.c.
Referenced by fakecrebmat(), fakecremat(), getbmat(), gethmat(), getimat(), getmat(), getpointer(), getsimat(), getsmat(), getsparse(), getvectcol(), getvectrow(), and getwsmat().
Definition at line 18 of file stack1.c.
Referenced by C2F(), crebmat(), crehmat(), creimat(), cremat(), crepointer(), getlistbmat(), getlisthmat(), getlistimat(), getlistpointer(), getlistscalar(), getlistsimat(), getlistsmat(), getlistsparse(), getlistvectcol(), getlistvectrow(), getlistwsmat(), listcrebmat(), listcrehmat(), listcreimat(), listcremat(), and listcrepointer().
Definition at line 15 of file stack1.c.
Referenced by C2F(), callscifun(), cre_smat_from_str_i(), createlistvarfrom(), createvarfrom(), cresmat3(), CreSmatFromHist(), cwritebmat(), cwritechain(), cwritecmat(), cwritemat(), getbmat(), gethmat(), getimat(), getmat(), getpointer(), getsimat(), getsmat(), getsparse(), getvectcol(), getvectrow(), getwsmat(), intbdiagr(), optvarget(), scibuiltin(), scifunction(), scirun(), scistring(), and str2name().
Definition at line 17 of file stack1.c.
Referenced by getrhssys(), pmatj(), scibuiltin(), and scifunction().
char Fname[nlgh+1] [static] |
1.5.1