/*--------------------------------------------------------------------------*/ int gw_special_functions(void) { Rhs = Max(0, Rhs); if (setjmp_slatec_jmp_env()) { Scierror(999, "%s: Wrong value for input argument: Positive expected.\n", Tab[Fin - 1].name); return 0; } if (pvApiCtx == NULL) { pvApiCtx = (StrCtx*)MALLOC(sizeof(StrCtx)); } pvApiCtx->pstName = (char*)Tab[Fin - 1].name; callFunctionFromGateway(Tab, SIZE_CURRENT_GENERIC_TABLE(Tab)); return 0; }
void C2F(dassl)(void *res, int *neq, double *t, double *y, double *yprime, double *tout, int *info, double *rtol, double *atol, int *idid, double *rwork, int *lrw, int *iwork, int *liw, double *rpar, int *ipar, void *jac) { int itemp[12], i; if (setjmp_slatec_jmp_env()) { return; } /* Nest instruction is a patch for sun solaris 5.8, without this trick the call to ddassl hangs Scilab */ for (i = 0; i < 11; i++) { itemp[i] = info[i]; } C2F(ddassl)(res, neq, t, y, yprime, tout, itemp, rtol, atol, idid, rwork, lrw, iwork, liw, rpar, ipar, jac); }