#include "machine.h"Include dependency graph for sciblk2.c:

Go to the source code of this file.
Functions | |
| integer C2F() | scierr () |
| void C2F() | itosci () |
| void C2F() | dtosci () |
| void C2F() | vvtosci () |
| void C2F() | scitovv () |
| void C2F() | skipvars () |
| void C2F() | scitod () |
| void C2F() | list2vars () |
| void C2F() | ltopadj () |
| void C2F() | scifunc () |
| void C2F() | mklist () |
| void | sciblk2 (integer *flag, integer *nevprt,*t, xd, x, integer *nx, z, integer *nz, tvec, integer *ntvec, rpar, integer *nrpar, ipar, integer *nipar, inptr, insz, integer *nin, outptr, outsz, integer *nout) |
| void C2F() dtosci | ( | ) |
| void C2F() itosci | ( | ) |
| void C2F() list2vars | ( | ) |
| void C2F() ltopadj | ( | ) |
| void C2F() mklist | ( | ) |
| void sciblk2 | ( | integer * | flag, | |
| integer* | nevprt, | |||
| * | t, | |||
| xd | , | |||
| x | , | |||
| integer* | nx, | |||
| z | , | |||
| integer* | nz, | |||
| tvec | , | |||
| integer* | ntvec, | |||
| rpar | , | |||
| integer* | nrpar, | |||
| ipar | , | |||
| integer* | nipar, | |||
| inptr | , | |||
| insz | , | |||
| integer* | nin, | |||
| outptr | , | |||
| outsz | , | |||
| integer* | nout | |||
| ) |
Definition at line 17 of file sciblk2.c.
References C2F, dtosci(), err, itosci(), list2vars(), ltopadj(), mklist(), mlhs, mrhs, nu, scierr(), scifunc(), scitod(), scitovv(), skip, skipvars(), vvtosci(), and y.
Referenced by scicos().
00024 { 00025 int k; 00026 double *y; 00027 double *u; 00028 /*int nev,ic;*/ 00029 integer one=1,skip; 00030 integer nu,ny; 00031 integer mlhs=5,mrhs=8; 00032 integer ltop; 00033 00034 00035 C2F(itosci)(flag,&one,&one); 00036 if (C2F(scierr)()!=0) goto err; 00037 C2F(itosci)(nevprt,&one,&one); 00038 if (C2F(scierr)()!=0) goto err; 00039 C2F(dtosci)(t,&one,&one); 00040 if (C2F(scierr)()!=0) goto err; 00041 C2F(dtosci)(x,nx,&one); 00042 if (C2F(scierr)()!=0) goto err; 00043 /* C2F(dtosci)(z,nz,&one);*/ 00044 C2F(vvtosci)(z,nz); 00045 if (C2F(scierr)()!=0) goto err; 00046 C2F(vvtosci)(rpar,nrpar); 00047 /* C2F(dtosci)(rpar,nrpar,&one);*/ 00048 if (C2F(scierr)()!=0) goto err; 00049 C2F(itosci)(ipar,nipar,&one); 00050 if (C2F(scierr)()!=0) goto err; 00051 for (k=0;k<*nin;k++) { 00052 u=(double *)inptr[k]; 00053 nu=insz[k]; 00054 C2F(dtosci)(u,&nu,&one); 00055 if (C2F(scierr)()!=0) goto err; 00056 } 00057 C2F(mklist)(nin); 00058 00059 00060 C2F(scifunc)(&mlhs,&mrhs); 00061 if (C2F(scierr)()!=0) goto err; 00062 00063 switch (*flag) { 00064 case 1 : 00065 /* y or z computation */ 00066 { 00067 skip=2; 00068 C2F(skipvars)(&skip); 00069 C2F(scitovv)(z,nz); 00070 /*C2F(scitod)(z,nz,&one);*/ 00071 C2F(scitod)(x,nx,&one); 00072 } 00073 if (*nout==0) { 00074 skip=1; 00075 C2F(skipvars)(&skip); 00076 } 00077 else { 00078 C2F(list2vars)(nout,<op); 00079 if (C2F(scierr)()!=0) goto err; 00080 for (k=*nout-1;k>=0;k--) { 00081 y=(double *)outptr[k]; 00082 ny=outsz[k]; 00083 C2F(scitod)(y,&ny,&one); 00084 if (C2F(scierr)()!=0) goto err; 00085 } 00086 /* list2vars has changed the Lstk(top+1) value. 00087 reset the correct value */ 00088 C2F(ltopadj)(<op); 00089 } 00090 break; 00091 case 0 : 00092 /* x' computation */ 00093 { 00094 /*skip=4; 00095 C2F(skipvars)(&skip);*/ 00096 C2F(scitod)(xd,nx,&one); 00097 skip=4; 00098 C2F(skipvars)(&skip); 00099 break; 00100 } 00101 case 2 : 00102 { 00103 skip=2; 00104 C2F(skipvars)(&skip); 00105 C2F(scitovv)(z,nz); 00106 /*C2F(scitod)(z,nz,&one);*/ 00107 C2F(scitod)(x,nx,&one); 00108 skip=1; 00109 C2F(skipvars)(&skip); 00110 } 00111 break; 00112 case 3 : 00113 skip=1; 00114 C2F(skipvars)(&skip); 00115 C2F(scitod)(tvec,ntvec,&one); 00116 skip=3; 00117 C2F(skipvars)(&skip); 00118 break; 00119 case 4 : 00120 skip=2; 00121 C2F(skipvars)(&skip); 00122 C2F(scitovv)(z,nz); 00123 /*C2F(scitod)(z,nz,&one);*/ 00124 C2F(scitod)(x,nx,&one); 00125 skip=1; 00126 C2F(skipvars)(&skip); 00127 break; 00128 case 5 : 00129 skip=2; 00130 C2F(skipvars)(&skip); 00131 C2F(scitovv)(z,nz); 00132 /*C2F(scitod)(z,nz,&one);*/ 00133 C2F(scitod)(x,nx,&one); 00134 skip=1; 00135 C2F(skipvars)(&skip); 00136 break; 00137 case 6 : 00138 skip=2; 00139 C2F(skipvars)(&skip); 00140 C2F(scitovv)(z,nz); 00141 /*C2F(scitod)(z,nz,&one);*/ 00142 C2F(scitod)(x,nx,&one); 00143 if (*nout==0) { 00144 skip=1; 00145 C2F(skipvars)(&skip); 00146 } 00147 else { 00148 C2F(list2vars)(nout,<op); 00149 if (C2F(scierr)()!=0) goto err; 00150 for (k=*nout-1;k>=0;k--) { 00151 y=(double *)outptr[k]; 00152 ny=outsz[k]; 00153 C2F(scitod)(y,&ny,&one); 00154 if (C2F(scierr)()!=0) goto err; 00155 } 00156 /* list2vars has changed the Lstk(top+1) value. 00157 reset the correct value */ 00158 C2F(ltopadj)(<op); 00159 } 00160 break; 00161 } 00162 return; 00163 err: 00164 *flag=-1; 00165 }
Here is the call graph for this function:

Here is the caller graph for this function:

| integer C2F() scierr | ( | ) |
| void C2F() scifunc | ( | ) |
| void C2F() scitod | ( | ) |
| void C2F() scitovv | ( | ) |
| void C2F() skipvars | ( | ) |
| void C2F() vvtosci | ( | ) |
1.5.1